diff options
| author | Mike Frysinger <vapier@gentoo.org> | 2005-05-11 02:21:43 +0000 | 
|---|---|---|
| committer | Mike Frysinger <vapier@gentoo.org> | 2005-05-11 02:21:43 +0000 | 
| commit | 1ab7a7e885cc36c89b457e5d8285131d8d098c75 (patch) | |
| tree | 50fa1c722b19664f3aefc465279d2e6fd793d4c5 | |
| parent | d66db536c3dd1565c31aad63ce95dbe9c4cb3d21 (diff) | |
| download | buildroot-novena-1ab7a7e885cc36c89b457e5d8285131d8d098c75.tar.gz buildroot-novena-1ab7a7e885cc36c89b457e5d8285131d8d098c75.zip | |
2.16.90.0.3 released
7 files changed, 505 insertions, 0 deletions
| diff --git a/toolchain/binutils/2.16.90.0.3/100-uclibc-conf.patch b/toolchain/binutils/2.16.90.0.3/100-uclibc-conf.patch new file mode 100644 index 000000000..c7e2c63ef --- /dev/null +++ b/toolchain/binutils/2.16.90.0.3/100-uclibc-conf.patch @@ -0,0 +1,240 @@ +diff -urN binutils-2.16.90.0.2-dist/bfd/configure binutils-2.16.90.0.2/bfd/configure +--- binutils-2.16.90.0.2-dist/bfd/configure	2005-04-29 12:50:24.000000000 -0500 ++++ binutils-2.16.90.0.2/bfd/configure	2005-04-30 11:34:59.246377032 -0500 +@@ -3584,6 +3584,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +diff -urN binutils-2.16.90.0.2-dist/binutils/configure binutils-2.16.90.0.2/binutils/configure +--- binutils-2.16.90.0.2-dist/binutils/configure	2005-04-29 12:50:26.000000000 -0500 ++++ binutils-2.16.90.0.2/binutils/configure	2005-04-30 11:35:28.900868864 -0500 +@@ -1577,6 +1577,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +diff -urN binutils-2.16.90.0.2-dist/configure binutils-2.16.90.0.2/configure +--- binutils-2.16.90.0.2-dist/configure	2005-04-29 12:50:23.000000000 -0500 ++++ binutils-2.16.90.0.2/configure	2005-04-30 11:31:12.525843792 -0500 +@@ -1111,7 +1111,7 @@ +     ;; + "") +     case "${target}" in +-    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) ++    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) +         # Enable libmudflap by default in GNU and friends. + 	;; +     *-*-freebsd*) +@@ -1207,7 +1207,7 @@ +   am33_2.0-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;; +-  sh-*-linux*) ++  sh*-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;;     +   sh*-*-pe|mips*-*-pe|*arm-wince-pe) +@@ -1495,7 +1495,7 @@ +   romp-*-*) +     noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" +     ;; +-  sh-*-* | sh64-*-*) ++  sh*-*-* | sh64-*-*) +     case "${host}" in +       i[3456789]86-*-vsta) ;; # don't add gprof back in +       i[3456789]86-*-go32*) ;; # don't add gprof back in +diff -urN binutils-2.16.90.0.2-dist/configure.in binutils-2.16.90.0.2/configure.in +--- binutils-2.16.90.0.2-dist/configure.in	2005-04-29 12:50:23.000000000 -0500 ++++ binutils-2.16.90.0.2/configure.in	2005-04-30 11:29:51.643139832 -0500 +@@ -328,7 +328,7 @@ +     ;; + "") +     case "${target}" in +-    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu) ++    *-*-linux*-gnu | *-*-gnu* | *-*-k*bsd*-gnu | *-*-linux-uclibc*) +         # Enable libmudflap by default in GNU and friends. + 	;; +     *-*-freebsd*) +@@ -424,7 +424,7 @@ +   am33_2.0-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;; +-  sh-*-linux*) ++  sh*-*-linux*) +     noconfigdirs="$noconfigdirs ${libgcj} target-newlib target-libgloss" +     ;;     +   sh*-*-pe|mips*-*-pe|*arm-wince-pe) +@@ -712,7 +712,7 @@ +   romp-*-*) +     noconfigdirs="$noconfigdirs bfd binutils ld gas opcodes target-libgloss ${libgcj}" +     ;; +-  sh-*-* | sh64-*-*) ++  sh*-*-* | sh64-*-*) +     case "${host}" in +       i[[3456789]]86-*-vsta) ;; # don't add gprof back in +       i[[3456789]]86-*-go32*) ;; # don't add gprof back in +diff -urN binutils-2.16.90.0.2-dist/gas/configure binutils-2.16.90.0.2/gas/configure +--- binutils-2.16.90.0.2-dist/gas/configure	2005-04-29 12:50:27.000000000 -0500 ++++ binutils-2.16.90.0.2/gas/configure	2005-04-30 11:35:21.097055224 -0500 +@@ -3421,6 +3421,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +diff -urN binutils-2.16.90.0.2-dist/gprof/configure binutils-2.16.90.0.2/gprof/configure +--- binutils-2.16.90.0.2-dist/gprof/configure	2005-04-29 12:50:29.000000000 -0500 ++++ binutils-2.16.90.0.2/gprof/configure	2005-04-30 11:35:36.880655752 -0500 +@@ -3419,6 +3419,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +diff -urN binutils-2.16.90.0.2-dist/ld/configure binutils-2.16.90.0.2/ld/configure +--- binutils-2.16.90.0.2-dist/ld/configure	2005-04-29 12:50:30.000000000 -0500 ++++ binutils-2.16.90.0.2/ld/configure	2005-04-30 11:46:15.974498720 -0500 +@@ -1581,6 +1581,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +diff -urN binutils-2.16.90.0.2-dist/libtool.m4 binutils-2.16.90.0.2/libtool.m4 +--- binutils-2.16.90.0.2-dist/libtool.m4	2004-07-27 23:36:06.000000000 -0500 ++++ binutils-2.16.90.0.2/libtool.m4	2005-04-30 11:35:54.062043784 -0500 +@@ -645,6 +645,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     [lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] +diff -urN binutils-2.16.90.0.2-dist/ltconfig binutils-2.16.90.0.2/ltconfig +--- binutils-2.16.90.0.2-dist/ltconfig	2004-11-22 14:33:30.000000000 -0600 ++++ binutils-2.16.90.0.2/ltconfig	2005-04-30 11:22:10.594229920 -0500 +@@ -602,6 +602,7 @@ +  + # Transform linux* to *-*-linux-gnu*, to support old configure scripts. + case $host_os in ++linux-uclibc*) ;; + linux-gnu*) ;; + linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` + esac +@@ -1270,6 +1271,23 @@ +   dynamic_linker='GNU/Linux ld.so' +   ;; +  ++linux-uclibc*) ++  version_type=linux ++  need_lib_prefix=no ++  need_version=no ++  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' ++  soname_spec='${libname}${release}.so$major' ++  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' ++  shlibpath_var=LD_LIBRARY_PATH ++  shlibpath_overrides_runpath=no ++  # This implies no fast_install, which is unacceptable. ++  # Some rework will be needed to allow for fast_install ++  # before this can be enabled. ++  hardcode_into_libs=yes ++  # Assume using the uClibc dynamic linker. ++  dynamic_linker="uClibc ld.so" ++  ;; ++ + netbsd*) +   need_lib_prefix=no +   need_version=no +diff -urN binutils-2.16.90.0.2-dist/opcodes/configure binutils-2.16.90.0.2/opcodes/configure +--- binutils-2.16.90.0.2-dist/opcodes/configure	2005-04-29 12:50:31.000000000 -0500 ++++ binutils-2.16.90.0.2/opcodes/configure	2005-04-30 11:17:07.168357664 -0500 +@@ -3588,6 +3588,11 @@ +   lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` +   ;; +  ++linux-uclibc*) ++  lt_cv_deplibs_check_method=pass_all ++  lt_cv_file_magic_test_file=`echo /lib/libuClibc-*.so` ++  ;; ++ + netbsd* | knetbsd*-gnu) +   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then +     lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' +diff -urN binutils-2.16.90.0.2.orig/config.sub binutils-2.16.90.0.2/config.sub +--- binutils-2.16.90.0.2.orig/config.sub	2005-04-29 20:50:23.000000000 +0300 ++++ binutils-2.16.90.0.2/config.sub	2005-05-02 13:34:38.400457452 +0300 +@@ -265,7 +265,7 @@ + 	| pdp10 | pdp11 | pj | pjl \ + 	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ + 	| pyramid \ +-	| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ ++	| sh | sh[1234]* | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \ + 	| sh64 | sh64le \ + 	| sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \ + 	| sparcv8 | sparcv9 | sparcv9b \ +@@ -340,7 +340,7 @@ + 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ + 	| pyramid-* \ + 	| romp-* | rs6000-* \ +-	| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \ ++	| sh-* | sh[1234]*-* | sh[23]e-* | sh[34]eb-* | shbe-* \ + 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ + 	| sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \ + 	| sparclite-* \ +@@ -891,9 +891,6 @@ + 		basic_machine=sh-hitachi + 		os=-hms + 		;; +-	sh64) +-		basic_machine=sh64-unknown +-		;; + 	sparclite-wrs | simso-wrs) + 		basic_machine=sparclite-wrs + 		os=-vxworks +@@ -1093,7 +1090,7 @@ + 	we32k) + 		basic_machine=we32k-att + 		;; +-	sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) ++	sh2* | sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele) + 		basic_machine=sh-unknown + 		;; + 	sh64) diff --git a/toolchain/binutils/2.16.90.0.3/300-001_ld_makefile_patch.patch b/toolchain/binutils/2.16.90.0.3/300-001_ld_makefile_patch.patch new file mode 100644 index 000000000..b25d5b7e2 --- /dev/null +++ b/toolchain/binutils/2.16.90.0.3/300-001_ld_makefile_patch.patch @@ -0,0 +1,52 @@ +#!/bin/sh -e +## 001_ld_makefile_patch.dpatch +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Description: correct where ld scripts are installed +## DP: Author: Chris Chimelis <chris@debian.org> +## DP: Upstream status: N/A +## DP: Date: ?? + +if [ $# -ne 1 ]; then +    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +    exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in +       -patch) patch $patch_opts -p1 < $0;; +       -unpatch) patch $patch_opts -p1 -R < $0;; +        *) +                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +                exit 1;; +esac + +exit 0 + +@DPATCH@ +diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am binutils-2.14.90.0.6/ld/Makefile.am +--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.am	2003-08-21 16:28:48.000000000 +0100 ++++ binutils-2.14.90.0.6/ld/Makefile.am	2003-09-10 23:12:09.000000000 +0100 +@@ -19,7 +19,7 @@ + # We put the scripts in the directory $(scriptdir)/ldscripts. + # We can't put the scripts in $(datadir) because the SEARCH_DIR + # directives need to be different for native and cross linkers. +-scriptdir = $(tooldir)/lib ++scriptdir = $(libdir) +  + EMUL = @EMUL@ + EMULATION_OFILES = @EMULATION_OFILES@ +diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in binutils-2.14.90.0.6/ld/Makefile.in +--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/ld/Makefile.in	2003-08-21 16:28:48.000000000 +0100 ++++ binutils-2.14.90.0.6/ld/Makefile.in	2003-09-10 23:12:09.000000000 +0100 +@@ -128,7 +128,7 @@ + # We put the scripts in the directory $(scriptdir)/ldscripts. + # We can't put the scripts in $(datadir) because the SEARCH_DIR + # directives need to be different for native and cross linkers. +-scriptdir = $(tooldir)/lib ++scriptdir = $(libdir) +  + EMUL = @EMUL@ + EMULATION_OFILES = @EMULATION_OFILES@ diff --git a/toolchain/binutils/2.16.90.0.3/300-006_better_file_error.patch b/toolchain/binutils/2.16.90.0.3/300-006_better_file_error.patch new file mode 100644 index 000000000..f337611ed --- /dev/null +++ b/toolchain/binutils/2.16.90.0.3/300-006_better_file_error.patch @@ -0,0 +1,43 @@ +#!/bin/sh -e +## 006_better_file_error.dpatch by David Kimdon <dwhedon@gordian.com> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Specify which filename is causing an error if the filename is a +## DP: directory. (#45832) + +if [ $# -ne 1 ]; then +    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +    exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in +       -patch) patch $patch_opts -p1 < $0;; +       -unpatch) patch $patch_opts -p1 -R < $0;; +        *) +                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +                exit 1;; +esac + +exit 0 + +@DPATCH@ +diff -urNad /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c binutils-2.14.90.0.6/bfd/opncls.c +--- /home/james/debian/packages/binutils/binutils-2.14.90.0.6/bfd/opncls.c	2003-07-23 16:08:09.000000000 +0100 ++++ binutils-2.14.90.0.6/bfd/opncls.c	2003-09-10 22:35:00.000000000 +0100 +@@ -150,6 +150,13 @@ + { +   bfd *nbfd; +   const bfd_target *target_vec; ++  struct stat s; ++ ++  if (stat (filename, &s) == 0) ++    if (S_ISDIR(s.st_mode)) { ++      bfd_set_error (bfd_error_file_not_recognized); ++      return NULL; ++    } +  +   nbfd = _bfd_new_bfd (); +   if (nbfd == NULL) diff --git a/toolchain/binutils/2.16.90.0.3/300-012_check_ldrunpath_length.patch b/toolchain/binutils/2.16.90.0.3/300-012_check_ldrunpath_length.patch new file mode 100644 index 000000000..498651a90 --- /dev/null +++ b/toolchain/binutils/2.16.90.0.3/300-012_check_ldrunpath_length.patch @@ -0,0 +1,47 @@ +#!/bin/sh -e +## 012_check_ldrunpath_length.dpatch by Chris Chimelis <chris@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Only generate an RPATH entry if LD_RUN_PATH is not empty, for +## DP: cases where -rpath isn't specified. (#151024) + +if [ $# -ne 1 ]; then +    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +    exit 1 +fi + +[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts +patch_opts="${patch_opts:--f --no-backup-if-mismatch}" + +case "$1" in +       -patch) patch $patch_opts -p1 < $0;; +       -unpatch) patch $patch_opts -p1 -R < $0;; +        *) +                echo >&2 "`basename $0`: script expects -patch|-unpatch as argument" +                exit 1;; +esac + +exit 0 + +@DPATCH@ +diff -urNad /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em binutils-2.15/ld/emultempl/elf32.em +--- /home/james/debian/packages/binutils/new/binutils-2.15/ld/emultempl/elf32.em	2004-05-21 23:12:58.000000000 +0100 ++++ binutils-2.15/ld/emultempl/elf32.em	2004-05-21 23:12:59.000000000 +0100 +@@ -692,6 +692,8 @@ + 	      && command_line.rpath == NULL) + 	    { + 	      lib_path = (const char *) getenv ("LD_RUN_PATH"); ++	      if ((lib_path) && (strlen (lib_path) == 0)) ++		  lib_path = NULL; + 	      if (gld${EMULATION_NAME}_search_needed (lib_path, &n, + 						      force)) + 		break; +@@ -871,6 +873,8 @@ +   rpath = command_line.rpath; +   if (rpath == NULL) +     rpath = (const char *) getenv ("LD_RUN_PATH"); ++  if ((rpath) && (strlen (rpath) == 0)) ++      rpath = NULL; +   if (! (bfd_elf_size_dynamic_sections + 	 (output_bfd, command_line.soname, rpath, + 	  command_line.filter_shlib, diff --git a/toolchain/binutils/2.16.90.0.3/400-mips-ELF_MAXPAGESIZE-4K.patch b/toolchain/binutils/2.16.90.0.3/400-mips-ELF_MAXPAGESIZE-4K.patch new file mode 100644 index 000000000..5959c718d --- /dev/null +++ b/toolchain/binutils/2.16.90.0.3/400-mips-ELF_MAXPAGESIZE-4K.patch @@ -0,0 +1,26 @@ +--- binutils/bfd/elf32-mips.c~ ++++ binutils/bfd/elf32-mips.c +@@ -1613,7 +1613,9 @@ +  + /* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses +    page sizes of up to that limit, so we need to respect it.  */ +-#define ELF_MAXPAGESIZE			0x10000 ++/*#define ELF_MAXPAGESIZE			0x10000*/ ++/* Use 4K to shrink the elf header.  NOT for general use! */ ++#define ELF_MAXPAGESIZE			0x1000 + #define elf32_bed			elf32_tradbed +  + /* Include the target file again for this target.  */ +--- binutils/bfd/elfn32-mips.c~ ++++ binutils/bfd/elfn32-mips.c +@@ -2399,7 +2399,9 @@ +  + /* The SVR4 MIPS ABI says that this should be 0x10000, and Linux uses +    page sizes of up to that limit, so we need to respect it.  */ +-#define ELF_MAXPAGESIZE			0x10000 ++/*#define ELF_MAXPAGESIZE			0x10000*/ ++/* Use 4K to shrink the elf header.  NOT for general use! */ ++#define ELF_MAXPAGESIZE			0x1000 + #define elf32_bed			elf32_tradbed +  + /* Include the target file again for this target.  */ diff --git a/toolchain/binutils/2.16.90.0.3/702-binutils-skip-comments.patch b/toolchain/binutils/2.16.90.0.3/702-binutils-skip-comments.patch new file mode 100644 index 000000000..9ef7a7c9e --- /dev/null +++ b/toolchain/binutils/2.16.90.0.3/702-binutils-skip-comments.patch @@ -0,0 +1,93 @@ +Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html +Fixes +localealias.s:544: Error: junk at end of line, first unrecognized character is `,'  +when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3 + +Paths adjusted to match crosstool's patcher. + +Message-Id: m3n052qw2g.fsf@whitebox.m5r.de +From: Andreas Schwab <schwab at suse dot de> +To: Nathan Sidwell <nathan at codesourcery dot com> +Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com +Date: Fri, 23 Apr 2004 22:27:19 +0200 +Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line + +Nathan Sidwell <nathan@codesourcery.com> writes: + +> Index: read.c +> =================================================================== +> RCS file: /cvs/src/src/gas/read.c,v +> retrieving revision 1.76 +> diff -c -3 -p -r1.76 read.c +> *** read.c	12 Mar 2004 17:48:12 -0000	1.76 +> --- read.c	18 Mar 2004 09:56:05 -0000 +> *************** read_a_source_file (char *name) +> *** 1053,1059 **** +>   #endif +>   	  input_line_pointer--; +>   	  /* Report unknown char as ignored.  */ +> ! 	  ignore_rest_of_line (); +>   	} +>    +>   #ifdef md_after_pass_hook +> --- 1053,1059 ---- +>   #endif +>   	  input_line_pointer--; +>   	  /* Report unknown char as ignored.  */ +> ! 	  demand_empty_rest_of_line (); +>   	} +>    +>   #ifdef md_after_pass_hook + +This means that the unknown character is no longer ignored, despite the +comment.  As a side effect a line starting with a line comment character +not followed by APP in NO_APP mode now triggers an error instead of just a +warning, breaking builds of glibc on m68k-linux.  Earlier in +read_a_source_file where #APP is handled there is another comment that +claims that unknown comments are ignored, when in fact they aren't (only +the initial line comment character is skipped). + +Note that the presence of #APP will mess up the line counters, but +that appears to be difficult to fix. + +Andreas. + +2004-04-23  Andreas Schwab  <schwab@suse.de> + +	* read.c (read_a_source_file): Ignore unknown text after line +	comment character.  Fix misleading comment. + +--- binutils/gas/read.c.~1.78.~	2004-04-23 08:58:23.000000000 +0200 ++++ binutils/gas/read.c	2004-04-23 21:49:01.000000000 +0200 +@@ -950,10 +950,14 @@ read_a_source_file (char *name) + 	      unsigned int new_length; + 	      char *tmp_buf = 0; +  +-	      bump_line_counters (); + 	      s = input_line_pointer; + 	      if (strncmp (s, "APP\n", 4)) +-		continue;	/* We ignore it */ ++		{ ++		  /* We ignore it */ ++		  ignore_rest_of_line (); ++		  continue; ++		} ++	      bump_line_counters (); + 	      s += 4; +  + 	      sb_new (&sbuf); +@@ -1052,7 +1056,7 @@ read_a_source_file (char *name) + 	    continue; + #endif + 	  input_line_pointer--; +-	  /* Report unknown char as ignored.  */ ++	  /* Report unknown char as error.  */ + 	  demand_empty_rest_of_line (); + 	} +  + +--  +Andreas Schwab, SuSE Labs, schwab@suse.de +SuSE Linux AG, MaxfeldstraÃe 5, 90409 NÃrnberg, Germany +Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5 +"And now for something completely different." diff --git a/toolchain/binutils/Config.in b/toolchain/binutils/Config.in index d91346bda..ea2cb6862 100644 --- a/toolchain/binutils/Config.in +++ b/toolchain/binutils/Config.in @@ -26,6 +26,9 @@ choice  	config BR2_BINUTILS_VERSION_2_16_90_0_2  		bool "binutils 2.16.90.0.2" +	config BR2_BINUTILS_VERSION_2_16_90_0_3 +		bool "binutils 2.16.90.0.3" +  endchoice  config BR2_BINUTILS_VERSION @@ -36,3 +39,4 @@ config BR2_BINUTILS_VERSION  	default "2.16"            if BR2_BINUTILS_VERSION_2_16  	default "2.16.90.0.1"     if BR2_BINUTILS_VERSION_2_16_90_0_1  	default "2.16.90.0.2"     if BR2_BINUTILS_VERSION_2_16_90_0_2 +	default "2.16.90.0.3"     if BR2_BINUTILS_VERSION_2_16_90_0_3 | 
