mirror of
https://abf.rosa.ru/djam/glibc.git
synced 2025-02-23 15:02:47 +00:00
59 lines
1.1 KiB
Bash
59 lines
1.1 KiB
Bash
#!/bin/sh
|
|
##
|
|
## Glibc "make check" helper script
|
|
##
|
|
|
|
while [[ $# -gt 0 ]]; do
|
|
opt=$1
|
|
shift 1
|
|
optarg=$1
|
|
case $opt in
|
|
-d) DIR=$optarg; shift 1;;
|
|
-k) K=$opt;;
|
|
-l) LDSO=$optarg; shift 1;;
|
|
-j) JOBS=-j$optarg; shift 1;;
|
|
-j[0-9]*) JOBS=$opt;;
|
|
esac
|
|
done
|
|
|
|
[[ -n "$DIR" ]] || {
|
|
echo "ERROR: check dir not specified"
|
|
exit 1
|
|
}
|
|
|
|
function CMD() {
|
|
echo + ${1+"$@"}
|
|
${1+"$@"} || return $?
|
|
}
|
|
|
|
echo "########################################################################"
|
|
echo "##"
|
|
echo "## Testing in $DIR with ${LDSO:-default ld.so}"
|
|
echo "##"
|
|
echo "########################################################################"
|
|
|
|
[[ -n "$LDSO" ]] && {
|
|
CMD mv -f $DIR/elf/ld.so $DIR/elf/ld.so.orig
|
|
CMD cp -a $LDSO $DIR/elf/ld.so
|
|
CMD find $DIR -name \*.out -exec mv -f '{}' '{}'.origldso \;
|
|
}
|
|
|
|
CMD make $JOBS -C $DIR check $K PARALLELMFLAGS=-s
|
|
rc=$?
|
|
if [[ $rc -eq 0 ]]; then
|
|
STATUS="PASS"
|
|
else
|
|
STATUS="FAIL"
|
|
if [[ -n "$K" ]]; then
|
|
rc=0
|
|
fi
|
|
fi
|
|
|
|
[[ -n "$LDSO" ]] && {
|
|
CMD mv -f $DIR/elf/ld.so.orig $DIR/elf/ld.so
|
|
}
|
|
|
|
echo "##"
|
|
echo "## Result: $STATUS"
|
|
echo "##"
|
|
exit $rc
|