X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=contrib%2Fcompare-debug;h=98c80f93e98d05b3a275bc5d5a9b4a1e3794aaca;hb=56633c1f7ddc0e0d0834289483a99f75c188fd1e;hp=9864ee91f307d176f03201370c491687a0afbcb7;hpb=dfd3ea34821fac7d792ce6c6a752f5fa2d07f7d2;p=pf3gnuchains%2Fgcc-fork.git diff --git a/contrib/compare-debug b/contrib/compare-debug index 9864ee91f30..98c80f93e98 100755 --- a/contrib/compare-debug +++ b/contrib/compare-debug @@ -57,11 +57,19 @@ done trap 'rm -f "$1.$suf1" "$2.$suf2"' 0 1 2 15 -cp "$1" "$1.$suf1" -strip "$1.$suf1" +case `uname -s` in +Darwin) + ld -S -x -r -no_uuid "$1" -o "$1.$suf1" + ld -S -x -r -no_uuid "$2" -o "$2.$suf2" + ;; +*) + cp "$1" "$1.$suf1" + strip "$1.$suf1" -cp "$2" "$2.$suf2" -strip "$2.$suf2" + cp "$2" "$2.$suf2" + strip "$2.$suf2" + ;; +esac if cmp "$1.$suf1" "$2.$suf2"; then status=0 @@ -78,7 +86,7 @@ else cmp2= for t in objdump readelf eu-readelf; do - if ($t --help) 2>&1 | grep -e '--\[*section-\]*headers' > /dev/null; then + if ($t --help) 2>&1 | grep ' --\[*section-\]*headers' > /dev/null; then cmd=$t $cmd --section-headers "$1.$suf1" | grep '\.eh_frame' > /dev/null @@ -109,13 +117,13 @@ else echo stripping off .eh_frame, then retrying >&2 - if (objcopy -v) 2>&1 | grep -e "--remove-section" > /dev/null; then + if (objcopy -v) 2>&1 | grep ' --remove-section' > /dev/null; then objcopy --remove-section .eh_frame --remove-section .rel.eh_frame --remove-section .rela.eh_frame "$1.$suf1" "$1.$suf3" mv "$1.$suf3" "$1.$suf1" objcopy --remove-section .eh_frame --remove-section .rel.eh_frame --remove-section .rela.eh_frame "$2.$suf2" "$2.$suf4" mv "$2.$suf4" "$2.$suf2" - elif (strip --help) 2>&1 | grep -e --remove-section > /dev/null; then + elif (strip --help) 2>&1 | grep ' --remove-section' > /dev/null; then cp "$1.$suf1" "$1.$suf3" strip --remove-section .eh_frame --remove-section .rel.eh_frame --remove-section .rela.eh_frame "$1.$suf3" mv "$1.$suf3" "$1.$suf1" @@ -141,4 +149,12 @@ $rm "$1.$suf1" "$2.$suf2" trap "exit $status; exit" 0 1 2 15 +if test -f "$1".gkd || test -f "$2".gkd; then + if cmp "$1".gkd "$2".gkd; then + : + else + status=$? + fi +fi + exit $status