#!/bin/bash # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # runtest.sh of /tools/systemtap/Regression/dtrace-create-Wall-Wextra-pedantic-clean-code # Description: dtrace-create-Wall-Wextra-pedantic-clean-code # Author: Martin Cermak # # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # # Copyright (c) 2013 Red Hat, Inc. All rights reserved. # # This copyrighted material is made available to anyone wishing # to use, modify, copy, or redistribute it subject to the terms # and conditions of the GNU General Public License version 2. # # This program is distributed in the hope that it will be # useful, but WITHOUT ANY WARRANTY; without even the implied # warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR # PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public # License along with this program; if not, write to the Free # Software Foundation, Inc., 51 Franklin Street, Fifth Floor, # Boston, MA 02110-1301, USA. # # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # Include Beaker environment . /usr/share/beakerlib/beakerlib.sh || exit 1 rlJournalStart rlPhaseStartSetup rlRun "TMPDIR=$(mktemp -d)" rlRun "pushd $TMPDIR" rlPhaseEnd rlPhaseStart WARN "Info" rlRun "which dtrace" rlPhaseEnd rlPhaseStartTest rlRun "printf \"provider xxx { probe xxx(); };\n\" > xxx" rlRun "dtrace -G -k -s xxx &> dtrace.out" rlRun "cat dtrace.out" rlRun "CF=$( awk '/^source:/ {print $2}' dtrace.out )" rlRun "gcc -c -Wall -Wextra -pedantic $CF 2>&1 | tee gcc.out" rlRun "grep -i warning gcc.out" 1 rlRun "grep -i error gcc.out" 1 rlPhaseEnd rlPhaseStartCleanup rlRun "popd" rlRun "rm -r $TMPDIR" rlPhaseEnd rlJournalPrintText rlJournalEnd