From 65a119ddfdcf38a929c3ebf8ce2c9f2b0a480be4 Mon Sep 17 00:00:00 2001 From: Eric Biggers Date: Mon, 29 May 2017 18:12:00 -0700 Subject: [PATCH] run_tests.sh: test for same output on big endian CPU --- tools/mips_build.sh | 2 +- tools/run_tests.sh | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/tools/mips_build.sh b/tools/mips_build.sh index 3cbfd02..c28ff55 100755 --- a/tools/mips_build.sh +++ b/tools/mips_build.sh @@ -4,6 +4,6 @@ set -eu TOOLCHAIN_DIR=$HOME/src/ddwrt-toolchains/toolchain-mips_34kc_gcc-5.1.0_musl-1.1.9 -make -j$(grep -c processor /proc/cpuinfo) test_programs \ +make -j$(grep -c processor /proc/cpuinfo) all test_programs \ CC="$TOOLCHAIN_DIR/bin/mips-openwrt-linux-musl-gcc" \ CFLAGS="-DNEED_PRINTF -Werror" diff --git a/tools/run_tests.sh b/tools/run_tests.sh index 772a9db..d468eef 100755 --- a/tools/run_tests.sh +++ b/tools/run_tests.sh @@ -225,6 +225,22 @@ mips_tests() { run_cmd ./tools/mips_build.sh run_cmd scp "${FILES[@]}" root@dd-wrt: run_cmd ssh root@dd-wrt "$EXEC_TESTS_CMD" + + log "Checking that compression on big endian CPU produces same output" + run_cmd scp gzip root@dd-wrt: + run_cmd ssh root@dd-wrt \ + "rm -f big*.gz; + ./gzip -c -6 $(basename $SMOKEDATA) > big6.gz; + ./gzip -c -10 $(basename $SMOKEDATA) > big10.gz" + run_cmd scp root@dd-wrt:big*.gz . + make -j$NPROC gzip > /dev/null + ./gzip -c -6 "$SMOKEDATA" > little6.gz + ./gzip -c -10 "$SMOKEDATA" > little10.gz + if ! cmp big6.gz little6.gz || ! cmp big10.gz little10.gz; then + echo 1>&2 "Compressed data differed on big endian vs. little endian!" + return 1 + fi + rm big*.gz little*.gz } ###############################################################################