mirror of
https://github.com/systemd/systemd.git
synced 2024-12-01 06:13:38 +08:00
ff12a7954c
As in2a5fcfae02
and in3e67e5c992
using /usr/bin/env allows bash to be looked up in PATH rather than being hard-coded. As with the previous changes the same arguments apply - distributions have scripts to rewrite shebangs on installation and they know what locations to rely on. - For tests/compilation we should rather rely on the user to have setup there PATH correctly. In particular this makes testing from git easier on NixOS where do not provide /bin/bash to improve compose-ability.
52 lines
931 B
Bash
Executable File
52 lines
931 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
BUILD_DIR="$($(dirname "$0")/../tools/find-build-dir.sh)"
|
|
if [ $# -gt 0 ]; then
|
|
args="$@"
|
|
else
|
|
args="clean setup run clean-again"
|
|
fi
|
|
|
|
ninja -C "$BUILD_DIR"
|
|
|
|
declare -A results
|
|
|
|
COUNT=0
|
|
FAILURES=0
|
|
|
|
cd "$(dirname "$0")"
|
|
for TEST in TEST-??-* ; do
|
|
COUNT=$(($COUNT+1))
|
|
|
|
echo -e "\n--x-- Running $TEST --x--"
|
|
set +e
|
|
( set -x ; make -C "$TEST" "BUILD_DIR=$BUILD_DIR" $args )
|
|
RESULT=$?
|
|
set -e
|
|
echo "--x-- Result of $TEST: $RESULT --x--"
|
|
|
|
results["$TEST"]="$RESULT"
|
|
|
|
[ "$RESULT" -ne "0" ] && FAILURES=$(($FAILURES+1))
|
|
done
|
|
|
|
echo ""
|
|
|
|
for TEST in ${!results[@]}; do
|
|
RESULT="${results[$TEST]}"
|
|
if [ "$RESULT" -eq "0" ] ; then
|
|
echo "$TEST: SUCCESS"
|
|
else
|
|
echo "$TEST: FAIL"
|
|
fi
|
|
done | sort
|
|
|
|
if [ "$FAILURES" -eq 0 ] ; then
|
|
echo -e "\nALL $COUNT TESTS PASSED"
|
|
else
|
|
echo -e "\nTOTAL FAILURES: $FAILURES OF $COUNT"
|
|
fi
|
|
|
|
exit "$FAILURES"
|