summaryrefslogtreecommitdiff
path: root/gcc/Makefile.in
diff options
context:
space:
mode:
authormrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>2006-07-06 23:24:51 +0000
committermrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>2006-07-06 23:24:51 +0000
commit108cf1776caa5e59c4cb1ab3dedcdcf5c5ba5ef5 (patch)
treefb41ac292252903edcd6ef7a56a825224d78fa07 /gcc/Makefile.in
parent499c8b1ed3d898eff2c9b74468aad9b8fdee184f (diff)
downloadgcc-108cf1776caa5e59c4cb1ab3dedcdcf5c5ba5ef5.tar.gz
Port to hosts whose 'sort' and 'tail' implementations
treat operands with leading '+' as file names, as POSIX has required since 2001. However, make sure the code still works on pre-POSIX hosts. * ltmain.sh: Don't assume "sort +2" is equivalent to "sort -k 3", since POSIX 1003.1-2001 no longer requires this. contrib: * compare_tests: Don't assume "sort +2" is equivalent to "sort -k 3", since POSIX 1003.1-2001 no longer requires this. gcc: * Makefile.in (slowcompare): Port to POSIX 1003.1-2001, which says you should use "tail -c +N" rather than "tail +Nc". Fix a bug: the old code incorrectly skipped 15 bytes, not 16. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@115234 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/Makefile.in')
-rw-r--r--gcc/Makefile.in9
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index 9f29c7bfe4d..3287de9a605 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -4384,8 +4384,13 @@ fastcompare fastcompare3 fastcompare4 fastcompare-lean fastcompare3-lean fastcom
for file in $$dir/*$(objext); do \
case "$@" in \
slowcompare* ) \
- tail +16c ./$$file > tmp-foo1; \
- tail +16c stage$$stage/$$file > tmp-foo2; \
+ if tail -c +1 </dev/null >/dev/null 2>&1; then \
+ skip16='-c +17'; \
+ else \
+ skip16='+17c'; \
+ fi; \
+ tail $$skip16 ./$$file > tmp-foo1; \
+ tail $$skip16 stage$$stage/$$file > tmp-foo2; \
cmp tmp-foo1 tmp-foo2 > /dev/null 2>&1; \
cmpret=$$?; \
;; \