Submitted By: Jim Gifford (jim at linuxfromscratch dot org)
Date: 2004-02-20
Initial Package Version: 2.14.90.0.8
Origin: http://ttervo.vectorstar.net/nptl/posix-patches/binutils-2.14.90.0.7-posix-head-tail.patch
Upstream Status: Accepted
Description: Makes Posix Compliant
 
diff -Naur binutils-2.14.90.0.8.orig/gas/Makefile.am binutils-2.14.90.0.8/gas/Makefile.am
--- binutils-2.14.90.0.8.orig/gas/Makefile.am	2004-01-14 21:07:45.000000000 +0000
+++ binutils-2.14.90.0.8/gas/Makefile.am	2004-02-20 19:45:10.684174417 +0000
@@ -753,13 +753,13 @@
 against=stage2
 
 # This rule is derived from corresponding code in the Makefile.in for gcc.
-# The "tail +16c" is to bypass headers which may include timestamps or
+# The "tail -c +16" is to bypass headers which may include timestamps or
 # temporary assembly file names.
 comparison:
 	x=0 ; \
 	for file in *.o ; do \
-	  tail +16c ./$$file > tmp-foo1; \
-	  if tail +16c ${against}/$$file > tmp-foo2 2>/dev/null ; then \
+	  tail -c +16 ./$$file > tmp-foo1; \
+	  if tail -c +16 ${against}/$$file > tmp-foo2 2>/dev/null ; then \
 	    if cmp tmp-foo1 tmp-foo2 ; then \
 	      true ; \
 	    else \
diff -Naur binutils-2.14.90.0.8.orig/gas/Makefile.in binutils-2.14.90.0.8/gas/Makefile.in
--- binutils-2.14.90.0.8.orig/gas/Makefile.in	2004-01-14 21:07:45.000000000 +0000
+++ binutils-2.14.90.0.8/gas/Makefile.in	2004-02-20 19:45:39.113241965 +0000
@@ -3137,13 +3137,13 @@
 	if [ -f stage3/as-new$(EXEEXT) -a ! -f stage3/as$(EXEEXT) ] ; then (cd stage3 ; ln -s as-new as$(EXEEXT)) ; fi
 
 # This rule is derived from corresponding code in the Makefile.in for gcc.
-# The "tail +16c" is to bypass headers which may include timestamps or
+# The "tail -c +16" is to bypass headers which may include timestamps or
 # temporary assembly file names.
 comparison:
 	x=0 ; \
 	for file in *.o ; do \
-	  tail +16c ./$$file > tmp-foo1; \
-	  if tail +16c ${against}/$$file > tmp-foo2 2>/dev/null ; then \
+	  tail -c +16 ./$$file > tmp-foo1; \
+	  if tail -c +16 ${against}/$$file > tmp-foo2 2>/dev/null ; then \
 	    if cmp tmp-foo1 tmp-foo2 ; then \
 	      true ; \
 	    else \
diff -Naur binutils-2.14.90.0.8.orig/ld/testsuite/ld-bootstrap/bootstrap.exp binutils-2.14.90.0.8/ld/testsuite/ld-bootstrap/bootstrap.exp
--- binutils-2.14.90.0.8.orig/ld/testsuite/ld-bootstrap/bootstrap.exp	2002-06-08 02:22:17.000000000 +0000
+++ binutils-2.14.90.0.8/ld/testsuite/ld-bootstrap/bootstrap.exp	2004-02-20 19:46:57.655614839 +0000
@@ -143,8 +143,8 @@
         # Although this works, a way to set the date would be better.
         # Removing or zeroing the date stamp in the binary produced by
         # the linker is not possible as it is required by the target OS.
-        exec tail +140 tmpdir/ld2 >tmpdir/ld2tail
-        exec tail +140 tmpdir/ld3 >tmpdir/ld3tail
+        exec tail -n +140 tmpdir/ld2 >tmpdir/ld2tail
+        exec tail -n +140 tmpdir/ld3 >tmpdir/ld3tail
         catch "exec cmp tmpdir/ld2tail tmpdir/ld3tail" exec_output
         exec rm tmpdir/ld2tail tmpdir/ld3tail
     } else {
diff -Naur binutils-2.14.90.0.8.orig/ltcf-c.sh binutils-2.14.90.0.8/ltcf-c.sh
--- binutils-2.14.90.0.8.orig/ltcf-c.sh	2002-12-16 20:22:51.000000000 +0000
+++ binutils-2.14.90.0.8/ltcf-c.sh	2004-02-20 19:47:48.939717031 +0000
@@ -153,7 +153,7 @@
     # If the export-symbols file already is a .def file (1st line
     # is EXPORTS), use it as is.
     # If DATA tags from a recent dlltool are present, honour them!
-    archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
+    archive_expsym_cmds='if test "x`head -n 1 $export_symbols`" = xEXPORTS; then
         cp $export_symbols $output_objdir/$soname-def;
       else
         echo EXPORTS > $output_objdir/$soname-def;
diff -Naur binutils-2.14.90.0.8.orig/ltcf-gcj.sh binutils-2.14.90.0.8/ltcf-gcj.sh
--- binutils-2.14.90.0.8.orig/ltcf-gcj.sh	2003-03-19 17:19:13.000000000 +0000
+++ binutils-2.14.90.0.8/ltcf-gcj.sh	2004-02-20 19:47:56.052482964 +0000
@@ -156,7 +156,7 @@
     # If the export-symbols file already is a .def file (1st line
     # is EXPORTS), use it as is.
     # If DATA tags from a recent dlltool are present, honour them!
-    archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
+    archive_expsym_cmds='if test "x`head -n 1 $export_symbols`" = xEXPORTS; then
         cp $export_symbols $output_objdir/$soname-def;
       else
         echo EXPORTS > $output_objdir/$soname-def;
diff -Naur binutils-2.14.90.0.8.orig/src-release binutils-2.14.90.0.8/src-release
--- binutils-2.14.90.0.8.orig/src-release	2004-01-14 21:07:42.000000000 +0000
+++ binutils-2.14.90.0.8/src-release	2004-02-20 19:48:21.806014718 +0000
@@ -70,7 +70,7 @@
 	elif grep AM_INIT_AUTOMAKE $(TOOL)/configure.in >/dev/null 2>&1; then \
 	  sed < $(TOOL)/configure.in -n 's/AM_INIT_AUTOMAKE[^,]*, *\([^)]*\))/\1/p'; \
 	elif test -f $(TOOL)/version.in; then \
-	  head -1 $(TOOL)/version.in; \
+	  head -n 1 $(TOOL)/version.in; \
 	elif grep VERSION $(TOOL)/Makefile.in > /dev/null 2>&1; then \
 	  sed < $(TOOL)/Makefile.in -n 's/^VERSION *= *//p'; \
 	else \
