From: Joel Rosdahl Date: Sun, 5 Jul 2020 18:34:54 +0000 (+0200) Subject: Skip “Directory is not hashed if using -gz[=zlib]” tests for GCC 6 X-Git-Tag: v3.7.11~7 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=62c2db048859206baa82b87d42d6e9e94e074efc;p=thirdparty%2Fccache.git Skip “Directory is not hashed if using -gz[=zlib]” tests for GCC 6 The GCC 6 (tested with GCC 6.3) preprocessor includes the current working directory in the preprocessed output if run with -gz, which means that there won’t be cache hits between directories, thus failing the “Directory is not hashed if using -gz[=zlib]” tests. Fix this by skipping the test if the preprocessor behaves that way. Fixes #602. (cherry picked from commit 8b58982dc099a5ea2bbd8abc7803a9f5a3b1148d) --- diff --git a/test/suites/base.bash b/test/suites/base.bash index 7a864e940..bd5bbcbc4 100644 --- a/test/suites/base.bash +++ b/test/suites/base.bash @@ -373,7 +373,8 @@ base_tests() { # ------------------------------------------------------------------------- TEST "Directory is not hashed if using -gz" - if $REAL_COMPILER -c test1.c -gz -o /dev/null 2>/dev/null; then + $REAL_COMPILER -E test1.c -gz >preprocessed.i 2>/dev/null + if [ -s preprocessed.i ] && ! fgrep -q $PWD preprocessed.i; then mkdir dir1 dir2 cp test1.c dir1 cp test1.c dir2 @@ -395,7 +396,8 @@ base_tests() { # ------------------------------------------------------------------------- TEST "Directory is not hashed if using -gz=zlib" - if $REAL_COMPILER -c test1.c -gz=zlib -o /dev/null 2>/dev/null; then + $REAL_COMPILER -E test1.c -gz=zlib >preprocessed.i 2>/dev/null + if [ -s preprocessed.i ] && ! fgrep -q $PWD preprocessed.i; then mkdir dir1 dir2 cp test1.c dir1 cp test1.c dir2