From: Timofei Kushnir Date: Wed, 28 Feb 2018 07:48:10 +0000 (+0300) Subject: Fix debug_prefix_map suite X-Git-Tag: v3.4.2~15 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=82010e0eb9cb629f61ea516542daf05a53010716;p=thirdparty%2Fccache.git Fix debug_prefix_map suite --- diff --git a/test/suites/debug_prefix_map.bash b/test/suites/debug_prefix_map.bash index a3a22a8e0..256d4cbc2 100644 --- a/test/suites/debug_prefix_map.bash +++ b/test/suites/debug_prefix_map.bash @@ -19,6 +19,22 @@ EOF backdate dir1/include/test.h dir2/include/test.h } +objdump_cmd() { + if $HOST_OS_APPLE; then + xcrun dwarfdump -r0 $1 + else + objdump -g $1 + fi +} + +grep_cmd() { + if $HOST_OS_APPLE; then + grep "( \"$1\" )" + else + grep ": $1[[:space:]]*$" + fi +} + SUITE_debug_prefix_map() { # ------------------------------------------------------------------------- TEST "Mapping of debug info CWD" @@ -29,7 +45,7 @@ SUITE_debug_prefix_map() { expect_stat 'cache hit (preprocessed)' 0 expect_stat 'cache miss' 1 expect_stat 'files in cache' 2 - if grep -E "[^=]`pwd`[^=]" test.o >/dev/null 2>&1; then + if objdump_cmd test.o | grep_cmd "`pwd`" >/dev/null 2>&1; then test_failed "Source dir (`pwd`) found in test.o" fi @@ -39,7 +55,7 @@ SUITE_debug_prefix_map() { expect_stat 'cache hit (preprocessed)' 0 expect_stat 'cache miss' 1 expect_stat 'files in cache' 2 - if grep -E "[^=]`pwd`[^=]" test.o >/dev/null 2>&1; then + if objdump_cmd test.o | grep_cmd "`pwd`" >/dev/null 2>&1; then test_failed "Source dir (`pwd`) found in test.o" fi @@ -52,10 +68,10 @@ SUITE_debug_prefix_map() { expect_stat 'cache hit (preprocessed)' 0 expect_stat 'cache miss' 1 expect_stat 'files in cache' 2 - if grep -E "[^=]`pwd`[^=]" test.o >/dev/null 2>&1; then + if objdump_cmd test.o | grep_cmd "`pwd`" >/dev/null 2>&1; then test_failed "Source dir (`pwd`) found in test.o" fi - if ! grep "name" test.o >/dev/null 2>&1; then + if ! objdump_cmd test.o | grep_cmd "name" >/dev/null 2>&1; then test_failed "Relocation (name) not found in test.o" fi @@ -65,7 +81,7 @@ SUITE_debug_prefix_map() { expect_stat 'cache hit (preprocessed)' 0 expect_stat 'cache miss' 1 expect_stat 'files in cache' 2 - if grep -E "[^=]`pwd`[^=]" test.o >/dev/null 2>&1; then + if objdump_cmd test.o | grep_cmd "`pwd`" >/dev/null 2>&1; then test_failed "Source dir (`pwd`) found in test.o" fi }