From 2055b15849e7fda31c96cbb3ef74f3404a78ca4e Mon Sep 17 00:00:00 2001 From: Nicholas Clifton Date: Oct 12 2009 11:18:37 +0000 Subject: - Rebase on 2.20 tarball. - Remove redundant moxie patch. - Remove redundant unique is global patch. - Remove redundant cxxfilt java doc patch. --- diff --git a/.cvsignore b/.cvsignore index 3ef1fb0..849e05d 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -binutils-2.19.51.0.14.tar.bz2 +binutils-2.20.51.0.2.tar.bz2 diff --git a/binutils-2.19.50.0.1-ia64-lib64.patch b/binutils-2.19.50.0.1-ia64-lib64.patch deleted file mode 100644 index 5f26b21..0000000 --- a/binutils-2.19.50.0.1-ia64-lib64.patch +++ /dev/null @@ -1,21 +0,0 @@ -2004-05-14 Jakub Jelinek - - * emulparams/elf64_ia64.sh (LIBPATH_SUFFIX): Use */lib64 paths on - ia64-linux if /lib64 tree is present. - ---- ../binutils-2.19.50.0.1.orig/ld/emulparams/elf64_ia64.sh 2008-11-21 16:45:00.000000000 +0000 -+++ ld/emulparams/elf64_ia64.sh 2008-11-21 16:55:46.000000000 +0000 -@@ -38,3 +38,13 @@ OTHER_READONLY_SECTIONS="${OTHER_READONL - SMALL_DATA_CTOR=" " - SMALL_DATA_DTOR=" " - SHARABLE_SECTIONS=yes -+ -+# For Linux modify the default library search path -+# to first include a 64-bit specific directory. -+case "$target" in -+ ia64*-linux*) -+ case "$EMULATION_NAME" in -+ *64*) test -d /lib64 && LIBPATH_SUFFIX=64 ;; -+ esac -+ ;; -+esac diff --git a/binutils-2.19.51.0.10-build-id.patch b/binutils-2.19.51.0.10-build-id.patch deleted file mode 100644 index 35a8016..0000000 --- a/binutils-2.19.51.0.10-build-id.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff -rup ../binutils-2.19.51.0.11.orig/bfd/elfcode.h bfd/elfcode.h ---- ../binutils-2.19.51.0.11.orig/bfd/elfcode.h 2009-07-14 11:23:27.000000000 +0100 -+++ bfd/elfcode.h 2009-07-14 11:33:56.000000000 +0100 -@@ -1170,6 +1170,24 @@ elf_checksum_contents (bfd *abfd, - - if (i_shdr.contents) - (*process) (i_shdr.contents, i_shdr.sh_size, arg); -+ else -+ { -+ asection *sec; -+ -+ sec = bfd_section_from_elf_index (abfd, count); -+ if (sec != NULL) -+ { -+ if (sec->contents == NULL) -+ { -+ /* Force rereading from file. */ -+ sec->flags &= ~SEC_IN_MEMORY; -+ if (! bfd_malloc_and_get_section (abfd, sec, & sec->contents)) -+ continue; -+ } -+ if (sec->contents != NULL) -+ (*process) (sec->contents, i_shdr.sh_size, arg); -+ } -+ } - } - - return TRUE; -diff -rup ../binutils-2.19.51.0.11.orig/bfd/section.c bfd/section.c ---- ../binutils-2.19.51.0.11.orig/bfd/section.c 2009-07-14 11:23:27.000000000 +0100 -+++ bfd/section.c 2009-07-14 11:33:26.000000000 +0100 -@@ -1477,7 +1477,7 @@ bfd_malloc_and_get_section (bfd *abfd, s - if (sz == 0) - return TRUE; - -- p = bfd_malloc (sec->rawsize > sec->size ? sec->rawsize : sec->size); -+ p = bfd_zmalloc (sec->rawsize > sec->size ? sec->rawsize : sec->size); - if (p == NULL) - return FALSE; - *buf = p; diff --git a/binutils-2.19.51.0.10-envvar-revert.patch b/binutils-2.19.51.0.10-envvar-revert.patch deleted file mode 100644 index 8001937..0000000 --- a/binutils-2.19.51.0.10-envvar-revert.patch +++ /dev/null @@ -1,72 +0,0 @@ -diff -rup ../binutils-2.19.51.0.10.orig/ld/ldmain.c ./ld/ldmain.c ---- ../binutils-2.19.51.0.10.orig/ld/ldmain.c 2009-06-22 15:56:54.000000000 +0100 -+++ ./ld/ldmain.c 2009-06-22 16:05:54.000000000 +0100 -@@ -256,14 +256,6 @@ main (int argc, char **argv) - command_line.warn_search_mismatch = TRUE; - command_line.check_section_addresses = -1; - -- if (getenv ("LD_SYMBOLIC") != NULL) -- command_line.symbolic = symbolic; -- else if (getenv ("LD_SYMBOLIC_FUNCTIONS") != NULL) -- command_line.symbolic = symbolic_functions; -- -- if (getenv ("LD_AS_NEEDED") != NULL) -- as_needed = TRUE; -- - /* We initialize DEMANGLING based on the environment variable - COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the - output of the linker, unless COLLECT_NO_DEMANGLE is set in the -diff -rup ../binutils-2.19.51.0.10.orig/ld/ld.texinfo ./ld/ld.texinfo ---- ../binutils-2.19.51.0.10.orig/ld/ld.texinfo 2009-06-22 15:56:53.000000000 +0100 -+++ ./ld/ld.texinfo 2009-06-22 16:05:42.000000000 +0100 -@@ -1118,10 +1118,7 @@ for a library that satisfies a symbol re - which is undefined at the point that the library was linked, or, if - the library is not found in the DT_NEEDED lists of other libraries - linked up to that point, a reference from another dynamic library. --@option{--no-as-needed} restores the default behaviour. If the --environment variable @code{LD_AS_NEEDED} is set, the linker will --behave as if the @option{--as-needed} option is passed to the linker as --the first command line option. -+@option{--no-as-needed} restores the default behaviour. - - @kindex --add-needed - @kindex --no-add-needed -@@ -1185,21 +1182,14 @@ When creating a shared library, bind ref - definition within the shared library, if any. Normally, it is possible - for a program linked against a shared library to override the definition - within the shared library. This option is only meaningful on ELF --platforms which support shared libraries. If @option{-Bsymbolic} is not --used when linking a shared library, the linker will also turn on this --option if the environment variable @code{LD_SYMBOLIC} is set. -+platforms which support shared libraries. - - @kindex -Bsymbolic-functions - @item -Bsymbolic-functions - When creating a shared library, bind references to global function - symbols to the definition within the shared library, if any. - This option is only meaningful on ELF platforms which support shared --libraries. If @option{-Bsymbolic-functions} is not used when linking a --shared library, the linker will also turn on this option if the --environment variable @code{LD_SYMBOLIC_FUNCTIONS} is set. When --both environment variables @code{LD_SYMBOLIC} and --@code{LD_SYMBOLIC_FUNCTIONS} are set, @code{LD_SYMBOLIC} will take --precedent. -+libraries. - - @kindex --dynamic-list=@var{dynamic-list-file} - @item --dynamic-list=@var{dynamic-list-file} -diff -rup ../binutils-2.19.51.0.10.orig/ld/NEWS ./ld/NEWS ---- ../binutils-2.19.51.0.10.orig/ld/NEWS 2009-06-22 15:56:54.000000000 +0100 -+++ ./ld/NEWS 2009-06-22 16:04:15.000000000 +0100 -@@ -55,11 +55,6 @@ - For the switch --enable-runtime-pseudo-reloc it uses for 32-bit - runtime pseudo relocation version one, for 64-bit the version two. - --* ELF: Support environment variable LD_AS_NEEDED for --as-needed. -- --* ELF: Support environment variables, LD_SYMBOLIC for -Bsymbolic and -- LD_SYMBOLIC_FUNCTIONS for -Bsymbolic-functions. -- - Changes in 2.19: - - * Linker scripts support a new INSERT command that makes it easier to diff --git a/binutils-2.19.51.0.10-libtool-lib64.patch b/binutils-2.19.51.0.10-libtool-lib64.patch deleted file mode 100644 index a0f39c2..0000000 --- a/binutils-2.19.51.0.10-libtool-lib64.patch +++ /dev/null @@ -1,276 +0,0 @@ -diff -rup ../binutils-2.19.51.0.10.orig/bfd/configure ./bfd/configure ---- ../binutils-2.19.51.0.10.orig/bfd/configure 2009-06-22 15:56:55.000000000 +0100 -+++ ./bfd/configure 2009-06-22 15:58:46.000000000 +0100 -@@ -10137,10 +10137,34 @@ fi - # before this can be enabled. - hardcode_into_libs=yes - -+ # find out which ABI we are using -+ libsuff= -+ case "$host_cpu" in -+ x86_64*|s390*|powerpc*|ppc*|sparc*) -+ echo 'int i;' > conftest.$ac_ext -+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *64-bit*) -+ libsuff=64 -+ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then -+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" -+ fi -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ esac -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on -Only in ./bfd: configure.orig -diff -rup ../binutils-2.19.51.0.10.orig/binutils/configure ./binutils/configure ---- ../binutils-2.19.51.0.10.orig/binutils/configure 2009-06-22 15:56:54.000000000 +0100 -+++ ./binutils/configure 2009-06-22 15:58:46.000000000 +0100 -@@ -10362,10 +10362,34 @@ fi - # before this can be enabled. - hardcode_into_libs=yes - -+ # find out which ABI we are using -+ libsuff= -+ case "$host_cpu" in -+ x86_64*|s390*|powerpc*|ppc*|sparc*) -+ echo 'int i;' > conftest.$ac_ext -+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *64-bit*) -+ libsuff=64 -+ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then -+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" -+ fi -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ esac -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on -Only in ./binutils: configure.orig -diff -rup ../binutils-2.19.51.0.10.orig/gas/configure ./gas/configure ---- ../binutils-2.19.51.0.10.orig/gas/configure 2009-06-22 15:56:55.000000000 +0100 -+++ ./gas/configure 2009-06-22 15:58:46.000000000 +0100 -@@ -10330,10 +10330,34 @@ fi - # before this can be enabled. - hardcode_into_libs=yes - -+ # find out which ABI we are using -+ libsuff= -+ case "$host_cpu" in -+ x86_64*|s390*|powerpc*|ppc*|sparc*) -+ echo 'int i;' > conftest.$ac_ext -+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *64-bit*) -+ libsuff=64 -+ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then -+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" -+ fi -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ esac -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on -Only in ./gas: configure.orig -diff -rup ../binutils-2.19.51.0.10.orig/gprof/configure ./gprof/configure ---- ../binutils-2.19.51.0.10.orig/gprof/configure 2009-06-22 15:56:54.000000000 +0100 -+++ ./gprof/configure 2009-06-22 15:58:46.000000000 +0100 -@@ -10422,10 +10422,34 @@ fi - # before this can be enabled. - hardcode_into_libs=yes - -+ # find out which ABI we are using -+ libsuff= -+ case "$host_cpu" in -+ x86_64*|s390*|powerpc*|ppc*|sparc*) -+ echo 'int i;' > conftest.$ac_ext -+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *64-bit*) -+ libsuff=64 -+ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then -+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" -+ fi -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ esac -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on -Only in ./gprof: configure.orig -diff -rup ../binutils-2.19.51.0.10.orig/ld/configure ./ld/configure ---- ../binutils-2.19.51.0.10.orig/ld/configure 2009-06-22 15:56:54.000000000 +0100 -+++ ./ld/configure 2009-06-22 15:58:46.000000000 +0100 -@@ -10622,10 +10622,34 @@ fi - # before this can be enabled. - hardcode_into_libs=yes - -+ # find out which ABI we are using -+ libsuff= -+ case "$host_cpu" in -+ x86_64*|s390*|powerpc*|ppc*|sparc*) -+ echo 'int i;' > conftest.$ac_ext -+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *64-bit*) -+ libsuff=64 -+ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then -+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" -+ fi -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ esac -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on -Only in ./ld: configure.orig -diff -rup ../binutils-2.19.51.0.10.orig/libtool.m4 ./libtool.m4 ---- ../binutils-2.19.51.0.10.orig/libtool.m4 2009-06-22 15:56:54.000000000 +0100 -+++ ./libtool.m4 2009-06-22 15:58:46.000000000 +0100 -@@ -2475,10 +2475,30 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu) - # before this can be enabled. - hardcode_into_libs=yes - -+ # find out which ABI we are using -+ libsuff= -+ case "$host_cpu" in -+ x86_64*|s390*|powerpc*|ppc*|sparc*) -+ echo 'int i;' > conftest.$ac_ext -+ if AC_TRY_EVAL(ac_compile); then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *64-bit*) -+ libsuff=64 -+ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then -+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" -+ fi -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ esac -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on -Only in .: libtool.m4.orig -diff -rup ../binutils-2.19.51.0.10.orig/opcodes/configure ./opcodes/configure ---- ../binutils-2.19.51.0.10.orig/opcodes/configure 2009-06-22 15:56:54.000000000 +0100 -+++ ./opcodes/configure 2009-06-22 15:58:46.000000000 +0100 -@@ -10132,10 +10132,34 @@ fi - # before this can be enabled. - hardcode_into_libs=yes - -+ # find out which ABI we are using -+ libsuff= -+ case "$host_cpu" in -+ x86_64*|s390*|powerpc*|ppc*|sparc*) -+ echo 'int i;' > conftest.$ac_ext -+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 -+ (eval $ac_compile) 2>&5 -+ ac_status=$? -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); }; then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *64-bit*) -+ libsuff=64 -+ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then -+ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" -+ fi -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ esac -+ - # Append ld.so.conf contents to the search path - if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` -- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" -+ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" - fi - - # We used to test for /lib/ld.so.1 and disable shared libraries on -Only in ./opcodes: configure.orig diff --git a/binutils-2.19.51.0.10-ppc64-pie.patch b/binutils-2.19.51.0.10-ppc64-pie.patch deleted file mode 100644 index d27494c..0000000 --- a/binutils-2.19.51.0.10-ppc64-pie.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- ../binutils-2.19.51.0.10.orig/bfd/elf64-ppc.c 2009-06-22 15:56:55.000000000 +0100 -+++ ./bfd/elf64-ppc.c 2009-06-22 16:00:39.000000000 +0100 -@@ -11466,7 +11466,12 @@ ppc64_elf_relocate_section (bfd *output_ - else if (!SYMBOL_REFERENCES_LOCAL (info, &h->elf) - && !is_opd - && r_type != R_PPC64_TOC) -- outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type); -+ { -+ outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type); -+ if (h->elf.dynindx == -1 -+ && h->elf.root.type == bfd_link_hash_undefweak) -+ memset (&outrel, 0, sizeof outrel); -+ } - else - { - /* This symbol is local, or marked to become local, diff --git a/binutils-2.19.51.0.10-set-long-long.patch b/binutils-2.19.51.0.10-set-long-long.patch deleted file mode 100644 index 4266bb1..0000000 --- a/binutils-2.19.51.0.10-set-long-long.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff -rup ../binutils-2.19.51.0.10.orig/bfd/configure ./bfd/configure ---- ../binutils-2.19.51.0.10.orig/bfd/configure 2009-06-22 16:16:08.000000000 +0100 -+++ ./bfd/configure 2009-06-22 16:16:14.000000000 +0100 -@@ -13924,11 +13924,13 @@ if test "x${ac_cv_sizeof_long}" = "x8"; - BFD_HOST_64BIT_LONG=1 - test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long" - test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long" --elif test "x${ac_cv_sizeof_long_long}" = "x8"; then -+fi -+if test "x${ac_cv_sizeof_long_long}" = "x8"; then - BFD_HOST_64BIT_LONG_LONG=1 - test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long long" - test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long long" -- if test "x${ac_cv_sizeof_void_p}" = "x8"; then -+ if test "x${ac_cv_sizeof_void_p}" = "x8" \ -+ -a "x${ac_cv_sizeof_long}" != "x8"; then - BFD_HOSTPTR_T="unsigned long long" - fi - fi -diff -rup ../binutils-2.19.51.0.10.orig/bfd/configure.in ./bfd/configure.in ---- ../binutils-2.19.51.0.10.orig/bfd/configure.in 2009-06-22 16:16:08.000000000 +0100 -+++ ./bfd/configure.in 2009-06-22 16:16:14.000000000 +0100 -@@ -172,11 +172,13 @@ if test "x${ac_cv_sizeof_long}" = "x8"; - BFD_HOST_64BIT_LONG=1 - test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long" - test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long" --elif test "x${ac_cv_sizeof_long_long}" = "x8"; then -+fi -+if test "x${ac_cv_sizeof_long_long}" = "x8"; then - BFD_HOST_64BIT_LONG_LONG=1 - test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long long" - test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long long" -- if test "x${ac_cv_sizeof_void_p}" = "x8"; then -+ if test "x${ac_cv_sizeof_void_p}" = "x8" \ -+ -a "x${ac_cv_sizeof_long}" != "x8"; then - BFD_HOSTPTR_T="unsigned long long" - fi - fi diff --git a/binutils-2.19.51.0.10-version.patch b/binutils-2.19.51.0.10-version.patch deleted file mode 100644 index 63263ac..0000000 --- a/binutils-2.19.51.0.10-version.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- ../binutils-2.19.51.0.10.orig/bfd/Makefile.am 2009-06-22 15:56:55.000000000 +0100 -+++ ./bfd/Makefile.am 2009-06-22 16:13:31.000000000 +0100 -@@ -1038,12 +1038,12 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/ - report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\ - if test "x$(RELEASE)" = x ; then \ - bfd_version_date=`sed -n -e 's/.*DATE //p' < $(srcdir)/version.h` ;\ -- bfd_version_string="\"$(VERSION).$${bfd_version_date}\"" ;\ -- bfd_soversion="$(VERSION).$${bfd_version_date}" ;\ -+ bfd_version_string="\"$(VERSION)-%{release} $${bfd_version_date}\"" ;\ -+ bfd_soversion="$(VERSION)-%{release}" ;\ - fi ;\ - sed -e "s,@bfd_version@,$$bfd_version," \ - -e "s,@bfd_version_string@,$$bfd_version_string," \ -- -e "s,@bfd_version_package@,$$bfd_version_package," \ -+ -e "s,@bfd_version_package@,\"version \"," \ - -e "s,@report_bugs_to@,$$report_bugs_to," \ - < $(srcdir)/version.h > $@; \ - echo "$${bfd_soversion}" > libtool-soversion ---- ../binutils-2.19.51.0.10.orig/bfd/Makefile.in 2009-06-22 15:56:55.000000000 +0100 -+++ ./bfd/Makefile.in 2009-06-22 16:13:31.000000000 +0100 -@@ -1639,12 +1639,12 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/ - report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\ - if test "x$(RELEASE)" = x ; then \ - bfd_version_date=`sed -n -e 's/.*DATE //p' < $(srcdir)/version.h` ;\ -- bfd_version_string="\"$(VERSION).$${bfd_version_date}\"" ;\ -- bfd_soversion="$(VERSION).$${bfd_version_date}" ;\ -+ bfd_version_string="\"$(VERSION)-%{release} $${bfd_version_date}\"" ;\ -+ bfd_soversion="$(VERSION)-%{release}" ;\ - fi ;\ - sed -e "s,@bfd_version@,$$bfd_version," \ - -e "s,@bfd_version_string@,$$bfd_version_string," \ -- -e "s,@bfd_version_package@,$$bfd_version_package," \ -+ -e "s,@bfd_version_package@,\"version \"," \ - -e "s,@report_bugs_to@,$$report_bugs_to," \ - < $(srcdir)/version.h > $@; \ - echo "$${bfd_soversion}" > libtool-soversion diff --git a/binutils-2.19.51.0.11-moxie.patch b/binutils-2.19.51.0.11-moxie.patch deleted file mode 100644 index 84c37aa..0000000 --- a/binutils-2.19.51.0.11-moxie.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- ../binutils-2.19.51.0.11.orig/bfd/elf32-moxie.c 2009-07-14 11:42:48.000000000 +0100 -+++ bfd/elf32-moxie.c 2009-07-14 12:28:32.000000000 +0100 -@@ -242,12 +242,12 @@ moxie_elf_relocate_section (bfd *output_ - } - else - { -- bfd_boolean unresolved_reloc, warned; -+ bfd_boolean unresolved_reloc, warned, ignored; - - RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel, - r_symndx, symtab_hdr, sym_hashes, - h, sec, relocation, -- unresolved_reloc, warned); -+ unresolved_reloc, warned, ignored); - - name = h->root.root.string; - } diff --git a/binutils-2.19.51.0.14-cxxfilt-java-doc.patch b/binutils-2.19.51.0.14-cxxfilt-java-doc.patch deleted file mode 100644 index e15222f..0000000 --- a/binutils-2.19.51.0.14-cxxfilt-java-doc.patch +++ /dev/null @@ -1,28 +0,0 @@ -http://sourceware.org/ml/binutils/2009-09/msg00701.html -http://sourceware.org/ml/binutils-cvs/2009-09/msg00335.html - -### binutils/ChangeLog 2009/09/29 14:17:04 1.1543 -### binutils/ChangeLog 2009/09/29 15:34:08 1.1544 -## -1,3 +1,8 @@ -+2009-09-29 Nick Clifton -+ -+ * doc/binutils.texi (c++filt): Remove spurious description of -+ nonexistent --java command line switch for cxxfilt. -+ - 2009-09-29 DJ Delorie - - * readelf.c: Add support for RX target. ---- binutils/doc/binutils.texi 2009/09/11 11:16:19 1.154 -+++ binutils/doc/binutils.texi 2009/09/29 15:34:08 1.155 -@@ -2814,11 +2814,6 @@ - name @code{_foo}. This option removes the initial underscore. Whether - @command{c++filt} removes the underscore by default is target dependent. - --@item -j --@itemx --java --Prints demangled names using Java syntax. The default is to use C++ --syntax. -- - @item -n - @itemx --no-strip-underscores - Do not remove the initial underscore. diff --git a/binutils-2.19.51.0.14-unique-is-global.patch b/binutils-2.19.51.0.14-unique-is-global.patch deleted file mode 100644 index ad5b19e..0000000 --- a/binutils-2.19.51.0.14-unique-is-global.patch +++ /dev/null @@ -1,42 +0,0 @@ -2009-08-06 Jakub Jelinek - Alan Modra - - PR binutils/10492 - * elf.c (sym_is_global): Return true even for BSF_GNU_UNIQUE - symbols. - * elf32-mips.c (mips_elf_sym_is_global): Likewise. - * elfn32-mips.c (mips_elf_sym_is_global): Likewise. - ---- bfd/elf.c.jj 2009-08-06 14:20:38.000000000 +0200 -+++ bfd/elf.c 2009-08-06 14:41:06.000000000 +0200 -@@ -3084,7 +3084,7 @@ sym_is_global (bfd *abfd, asymbol *sym) - if (bed->elf_backend_sym_is_global) - return (*bed->elf_backend_sym_is_global) (abfd, sym); - -- return ((sym->flags & (BSF_GLOBAL | BSF_WEAK)) != 0 -+ return ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_GNU_UNIQUE)) != 0 - || bfd_is_und_section (bfd_get_section (sym)) - || bfd_is_com_section (bfd_get_section (sym))); - } ---- bfd/elf32-mips.c.jj 2009-08-06 14:17:48.000000000 +0200 -+++ bfd/elf32-mips.c 2009-08-06 14:41:52.000000000 +0200 -@@ -1450,7 +1450,7 @@ mips_elf_sym_is_global (bfd *abfd ATTRIB - if (SGI_COMPAT (abfd)) - return (sym->flags & BSF_SECTION_SYM) == 0; - else -- return ((sym->flags & (BSF_GLOBAL | BSF_WEAK)) != 0 -+ return ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_GNU_UNIQUE)) != 0 - || bfd_is_und_section (bfd_get_section (sym)) - || bfd_is_com_section (bfd_get_section (sym))); - } ---- bfd/elfn32-mips.c.jj 2008-11-19 15:50:38.000000000 +0100 -+++ bfd/elfn32-mips.c 2009-08-06 14:42:32.000000000 +0200 -@@ -2289,7 +2289,7 @@ mips_elf_sym_is_global (bfd *abfd ATTRIB - if (SGI_COMPAT (abfd)) - return (sym->flags & BSF_SECTION_SYM) == 0; - else -- return ((sym->flags & (BSF_GLOBAL | BSF_WEAK)) != 0 -+ return ((sym->flags & (BSF_GLOBAL | BSF_WEAK | BSF_GNU_UNIQUE)) != 0 - || bfd_is_und_section (bfd_get_section (sym)) - || bfd_is_com_section (bfd_get_section (sym))); - } diff --git a/binutils-2.20.51.0.2-build-id.patch b/binutils-2.20.51.0.2-build-id.patch new file mode 100644 index 0000000..6885a24 --- /dev/null +++ b/binutils-2.20.51.0.2-build-id.patch @@ -0,0 +1,38 @@ +--- ../binutils-2.20.51.0.2.orig/bfd/elfcode.h 2009-10-12 11:45:05.000000000 +0100 ++++ bfd/elfcode.h 2009-10-12 11:47:14.000000000 +0100 +@@ -1175,6 +1175,24 @@ elf_checksum_contents (bfd *abfd, + + if (i_shdr.contents) + (*process) (i_shdr.contents, i_shdr.sh_size, arg); ++ else ++ { ++ asection *sec; ++ ++ sec = bfd_section_from_elf_index (abfd, count); ++ if (sec != NULL) ++ { ++ if (sec->contents == NULL) ++ { ++ /* Force rereading from file. */ ++ sec->flags &= ~SEC_IN_MEMORY; ++ if (! bfd_malloc_and_get_section (abfd, sec, & sec->contents)) ++ continue; ++ } ++ if (sec->contents != NULL) ++ (*process) (sec->contents, i_shdr.sh_size, arg); ++ } ++ } + } + + return TRUE; +--- ../binutils-2.20.51.0.2.orig/bfd/section.c 2009-10-12 11:45:05.000000000 +0100 ++++ bfd/section.c 2009-10-12 11:48:44.000000000 +0100 +@@ -1553,7 +1553,7 @@ bfd_malloc_and_get_section (bfd *abfd, s + return TRUE; + + p = (bfd_byte *) +- bfd_malloc (sec->rawsize > sec->size ? sec->rawsize : sec->size); ++ bfd_zmalloc (sec->rawsize > sec->size ? sec->rawsize : sec->size); + if (p == NULL) + return FALSE; + *buf = p; diff --git a/binutils-2.20.51.0.2-envvar-revert.patch b/binutils-2.20.51.0.2-envvar-revert.patch new file mode 100644 index 0000000..356b506 --- /dev/null +++ b/binutils-2.20.51.0.2-envvar-revert.patch @@ -0,0 +1,69 @@ +--- ../binutils-2.20.51.0.2.orig/ld/ldmain.c 2009-10-12 11:28:44.000000000 +0100 ++++ ld/ldmain.c 2009-10-12 11:38:36.000000000 +0100 +@@ -256,14 +256,6 @@ main (int argc, char **argv) + command_line.warn_search_mismatch = TRUE; + command_line.check_section_addresses = -1; + +- if (getenv ("LD_SYMBOLIC") != NULL) +- command_line.symbolic = symbolic; +- else if (getenv ("LD_SYMBOLIC_FUNCTIONS") != NULL) +- command_line.symbolic = symbolic_functions; +- +- if (getenv ("LD_AS_NEEDED") != NULL) +- as_needed = TRUE; +- + /* We initialize DEMANGLING based on the environment variable + COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the + output of the linker, unless COLLECT_NO_DEMANGLE is set in the +--- ../binutils-2.20.51.0.2.orig/ld/ld.texinfo 2009-10-12 11:28:44.000000000 +0100 ++++ ld/ld.texinfo 2009-10-12 11:38:36.000000000 +0100 +@@ -1140,10 +1140,7 @@ for a library that satisfies a symbol re + which is undefined at the point that the library was linked, or, if + the library is not found in the DT_NEEDED lists of other libraries + linked up to that point, a reference from another dynamic library. +-@option{--no-as-needed} restores the default behaviour. If the +-environment variable @code{LD_AS_NEEDED} is set, the linker will +-behave as if the @option{--as-needed} option is passed to the linker as +-the first command line option. ++@option{--no-as-needed} restores the default behaviour. + + @kindex --add-needed + @kindex --no-add-needed +@@ -1207,21 +1204,14 @@ When creating a shared library, bind ref + definition within the shared library, if any. Normally, it is possible + for a program linked against a shared library to override the definition + within the shared library. This option is only meaningful on ELF +-platforms which support shared libraries. If @option{-Bsymbolic} is not +-used when linking a shared library, the linker will also turn on this +-option if the environment variable @code{LD_SYMBOLIC} is set. ++platforms which support shared libraries. + + @kindex -Bsymbolic-functions + @item -Bsymbolic-functions + When creating a shared library, bind references to global function + symbols to the definition within the shared library, if any. + This option is only meaningful on ELF platforms which support shared +-libraries. If @option{-Bsymbolic-functions} is not used when linking a +-shared library, the linker will also turn on this option if the +-environment variable @code{LD_SYMBOLIC_FUNCTIONS} is set. When +-both environment variables @code{LD_SYMBOLIC} and +-@code{LD_SYMBOLIC_FUNCTIONS} are set, @code{LD_SYMBOLIC} will take +-precedent. ++libraries. + + @kindex --dynamic-list=@var{dynamic-list-file} + @item --dynamic-list=@var{dynamic-list-file} +--- ../binutils-2.20.51.0.2.orig/ld/NEWS 2009-10-12 11:28:44.000000000 +0100 ++++ ld/NEWS 2009-10-12 11:38:36.000000000 +0100 +@@ -64,11 +64,6 @@ Changes in 2.20: + For the switch --enable-runtime-pseudo-reloc it uses for 32-bit + runtime pseudo relocation version one, for 64-bit the version two. + +-* ELF: Support environment variable LD_AS_NEEDED for --as-needed. +- +-* ELF: Support environment variables, LD_SYMBOLIC for -Bsymbolic and +- LD_SYMBOLIC_FUNCTIONS for -Bsymbolic-functions. +- + Changes in 2.19: + + * Linker scripts support a new INSERT command that makes it easier to diff --git a/binutils-2.20.51.0.2-ia64-lib64.patch b/binutils-2.20.51.0.2-ia64-lib64.patch new file mode 100644 index 0000000..5f26b21 --- /dev/null +++ b/binutils-2.20.51.0.2-ia64-lib64.patch @@ -0,0 +1,21 @@ +2004-05-14 Jakub Jelinek + + * emulparams/elf64_ia64.sh (LIBPATH_SUFFIX): Use */lib64 paths on + ia64-linux if /lib64 tree is present. + +--- ../binutils-2.19.50.0.1.orig/ld/emulparams/elf64_ia64.sh 2008-11-21 16:45:00.000000000 +0000 ++++ ld/emulparams/elf64_ia64.sh 2008-11-21 16:55:46.000000000 +0000 +@@ -38,3 +38,13 @@ OTHER_READONLY_SECTIONS="${OTHER_READONL + SMALL_DATA_CTOR=" " + SMALL_DATA_DTOR=" " + SHARABLE_SECTIONS=yes ++ ++# For Linux modify the default library search path ++# to first include a 64-bit specific directory. ++case "$target" in ++ ia64*-linux*) ++ case "$EMULATION_NAME" in ++ *64*) test -d /lib64 && LIBPATH_SUFFIX=64 ;; ++ esac ++ ;; ++esac diff --git a/binutils-2.20.51.0.2-libtool-lib64.patch b/binutils-2.20.51.0.2-libtool-lib64.patch new file mode 100644 index 0000000..007c709 --- /dev/null +++ b/binutils-2.20.51.0.2-libtool-lib64.patch @@ -0,0 +1,275 @@ +diff -rup ../binutils-2.20.51.0.2.orig/bfd/configure ./bfd/configure +--- ../binutils-2.20.51.0.2.orig/bfd/configure 2009-10-12 11:28:45.000000000 +0100 ++++ ./bfd/configure 2009-10-12 11:31:43.000000000 +0100 +@@ -10670,10 +10670,34 @@ fi + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +Only in ./bfd: configure.orig +diff -rup ../binutils-2.20.51.0.2.orig/binutils/configure ./binutils/configure +--- ../binutils-2.20.51.0.2.orig/binutils/configure 2009-10-12 11:28:44.000000000 +0100 ++++ ./binutils/configure 2009-10-12 11:31:43.000000000 +0100 +@@ -10461,10 +10461,34 @@ fi + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +Only in ./binutils: configure.orig +diff -rup ../binutils-2.20.51.0.2.orig/gas/configure ./gas/configure +--- ../binutils-2.20.51.0.2.orig/gas/configure 2009-10-12 11:28:45.000000000 +0100 ++++ ./gas/configure 2009-10-12 11:31:43.000000000 +0100 +@@ -10418,10 +10418,34 @@ fi + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +Only in ./gas: configure.orig +diff -rup ../binutils-2.20.51.0.2.orig/gprof/configure ./gprof/configure +--- ../binutils-2.20.51.0.2.orig/gprof/configure 2009-10-12 11:28:44.000000000 +0100 ++++ ./gprof/configure 2009-10-12 11:31:43.000000000 +0100 +@@ -10356,10 +10356,34 @@ fi + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +Only in ./gprof: configure.orig +diff -rup ../binutils-2.20.51.0.2.orig/ld/configure ./ld/configure +--- ../binutils-2.20.51.0.2.orig/ld/configure 2009-10-12 11:28:44.000000000 +0100 ++++ ./ld/configure 2009-10-12 11:31:43.000000000 +0100 +@@ -10806,10 +10806,34 @@ fi + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +Only in ./ld: configure.orig +diff -rup ../binutils-2.20.51.0.2.orig/libtool.m4 ./libtool.m4 +--- ../binutils-2.20.51.0.2.orig/libtool.m4 2009-10-12 11:28:44.000000000 +0100 ++++ ./libtool.m4 2009-10-12 11:31:43.000000000 +0100 +@@ -2475,10 +2475,30 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu) + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if AC_TRY_EVAL(ac_compile); then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +diff -rup ../binutils-2.20.51.0.2.orig/opcodes/configure ./opcodes/configure +--- ../binutils-2.20.51.0.2.orig/opcodes/configure 2009-10-12 11:28:44.000000000 +0100 ++++ ./opcodes/configure 2009-10-12 11:31:43.000000000 +0100 +@@ -10406,10 +10406,34 @@ fi + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on +Only in ./opcodes: configure.orig diff --git a/binutils-2.20.51.0.2-ppc64-pie.patch b/binutils-2.20.51.0.2-ppc64-pie.patch new file mode 100644 index 0000000..321687e --- /dev/null +++ b/binutils-2.20.51.0.2-ppc64-pie.patch @@ -0,0 +1,16 @@ +--- ../binutils-2.20.51.0.2.orig/bfd/elf64-ppc.c 2009-10-12 11:28:45.000000000 +0100 ++++ bfd/elf64-ppc.c 2009-10-12 11:34:17.000000000 +0100 +@@ -11992,7 +11992,12 @@ ppc64_elf_relocate_section (bfd *output_ + else if (!SYMBOL_REFERENCES_LOCAL (info, &h->elf) + && !is_opd + && r_type != R_PPC64_TOC) +- outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type); ++ { ++ outrel.r_info = ELF64_R_INFO (h->elf.dynindx, r_type); ++ if (h->elf.dynindx == -1 ++ && h->elf.root.type == bfd_link_hash_undefweak) ++ memset (&outrel, 0, sizeof outrel); ++ } + else + { + /* This symbol is local, or marked to become local, diff --git a/binutils-2.20.51.0.2-set-long-long.patch b/binutils-2.20.51.0.2-set-long-long.patch new file mode 100644 index 0000000..15a21ac --- /dev/null +++ b/binutils-2.20.51.0.2-set-long-long.patch @@ -0,0 +1,77 @@ +diff -rup ../binutils-2.20.51.0.2.orig/bfd/configure bfd/configure +--- ../binutils-2.20.51.0.2.orig/bfd/configure 2009-10-12 11:45:05.000000000 +0100 ++++ bfd/configure 2009-10-12 11:45:13.000000000 +0100 +@@ -12694,11 +12694,13 @@ if test "x${ac_cv_sizeof_long}" = "x8"; + BFD_HOST_64BIT_LONG=1 + test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long" + test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long" +-elif test "x${ac_cv_sizeof_long_long}" = "x8"; then ++fi ++if test "x${ac_cv_sizeof_long_long}" = "x8"; then + BFD_HOST_64BIT_LONG_LONG=1 + test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long long" + test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long long" +- if test "x${ac_cv_sizeof_void_p}" = "x8"; then ++ if test "x${ac_cv_sizeof_void_p}" = "x8" \ ++ -a "x${ac_cv_sizeof_long}" != "x8"; then + BFD_HOSTPTR_T="unsigned long long" + fi + fi +diff -rup ../binutils-2.20.51.0.2.orig/bfd/configure.in bfd/configure.in +--- ../binutils-2.20.51.0.2.orig/bfd/configure.in 2009-10-12 11:45:05.000000000 +0100 ++++ bfd/configure.in 2009-10-12 11:45:13.000000000 +0100 +@@ -172,11 +172,13 @@ if test "x${ac_cv_sizeof_long}" = "x8"; + BFD_HOST_64BIT_LONG=1 + test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long" + test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long" +-elif test "x${ac_cv_sizeof_long_long}" = "x8"; then ++fi ++if test "x${ac_cv_sizeof_long_long}" = "x8"; then + BFD_HOST_64BIT_LONG_LONG=1 + test -n "${HOST_64BIT_TYPE}" || HOST_64BIT_TYPE="long long" + test -n "${HOST_U_64BIT_TYPE}" || HOST_U_64BIT_TYPE="unsigned long long" +- if test "x${ac_cv_sizeof_void_p}" = "x8"; then ++ if test "x${ac_cv_sizeof_void_p}" = "x8" \ ++ -a "x${ac_cv_sizeof_long}" != "x8"; then + BFD_HOSTPTR_T="unsigned long long" + fi + fi +diff -rup ../binutils-2.20.51.0.2.orig/bfd/configure.orig bfd/configure.orig +--- ../binutils-2.20.51.0.2.orig/bfd/configure.orig 2009-10-12 11:45:05.000000000 +0100 ++++ bfd/configure.orig 2009-10-12 11:31:43.000000000 +0100 +@@ -10670,10 +10670,34 @@ fi + # before this can be enabled. + hardcode_into_libs=yes + ++ # find out which ABI we are using ++ libsuff= ++ case "$host_cpu" in ++ x86_64*|s390*|powerpc*|ppc*|sparc*) ++ echo 'int i;' > conftest.$ac_ext ++ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; then ++ case `/usr/bin/file conftest.$ac_objext` in ++ *64-bit*) ++ libsuff=64 ++ if test x"$sys_lib_search_path_spec" = x"/lib /usr/lib /usr/local/lib"; then ++ sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}" ++ fi ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff}" ++ ;; ++ esac ++ fi ++ rm -rf conftest* ++ ;; ++ esac ++ + # Append ld.so.conf contents to the search path + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` +- sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" ++ sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on diff --git a/binutils-2.20.51.0.2-version.patch b/binutils-2.20.51.0.2-version.patch new file mode 100644 index 0000000..ad61e37 --- /dev/null +++ b/binutils-2.20.51.0.2-version.patch @@ -0,0 +1,36 @@ +--- ../binutils-2.20.51.0.2.orig/bfd/Makefile.am 2009-10-12 11:28:45.000000000 +0100 ++++ bfd/Makefile.am 2009-10-12 11:42:24.000000000 +0100 +@@ -951,12 +951,12 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/ + report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\ + if test "x$(RELEASE)" = x ; then \ + bfd_version_date=`sed -n -e 's/.*DATE //p' < $(srcdir)/version.h` ;\ +- bfd_version_string="\"$(VERSION).$${bfd_version_date}\"" ;\ +- bfd_soversion="$(VERSION).$${bfd_version_date}" ;\ ++ bfd_version_string="\"$(VERSION)-%{release} $${bfd_version_date}\"" ;\ ++ bfd_soversion="$(VERSION)-%{release}" ;\ + fi ;\ + sed -e "s,@bfd_version@,$$bfd_version," \ + -e "s,@bfd_version_string@,$$bfd_version_string," \ +- -e "s,@bfd_version_package@,$$bfd_version_package," \ ++ -e "s,@bfd_version_package@,\"version \"," \ + -e "s,@report_bugs_to@,$$report_bugs_to," \ + < $(srcdir)/version.h > $@; \ + echo "$${bfd_soversion}" > libtool-soversion +--- ../binutils-2.20.51.0.2.orig/bfd/Makefile.in 2009-10-12 11:28:45.000000000 +0100 ++++ bfd/Makefile.in 2009-10-12 11:42:24.000000000 +0100 +@@ -1978,12 +1978,12 @@ bfdver.h: $(srcdir)/version.h $(srcdir)/ + report_bugs_to="\"$(REPORT_BUGS_TO)\"" ;\ + if test "x$(RELEASE)" = x ; then \ + bfd_version_date=`sed -n -e 's/.*DATE //p' < $(srcdir)/version.h` ;\ +- bfd_version_string="\"$(VERSION).$${bfd_version_date}\"" ;\ +- bfd_soversion="$(VERSION).$${bfd_version_date}" ;\ ++ bfd_version_string="\"$(VERSION)-%{release} $${bfd_version_date}\"" ;\ ++ bfd_soversion="$(VERSION)-%{release}" ;\ + fi ;\ + sed -e "s,@bfd_version@,$$bfd_version," \ + -e "s,@bfd_version_string@,$$bfd_version_string," \ +- -e "s,@bfd_version_package@,$$bfd_version_package," \ ++ -e "s,@bfd_version_package@,\"version \"," \ + -e "s,@report_bugs_to@,$$report_bugs_to," \ + < $(srcdir)/version.h > $@; \ + echo "$${bfd_soversion}" > libtool-soversion diff --git a/binutils.spec b/binutils.spec index 47e46eb..fe3d3fd 100644 --- a/binutils.spec +++ b/binutils.spec @@ -16,23 +16,20 @@ Summary: A GNU collection of binary utilities Name: %{?cross}binutils%{?_with_debug:-debug} -Version: 2.19.51.0.14 -Release: 32%{?dist} +Version: 2.20.51.0.2 +Release: 1%{?dist} License: GPLv3+ Group: Development/Tools URL: http://sources.redhat.com/binutils Source: ftp://ftp.kernel.org/pub/linux/devel/binutils/binutils-%{version}.tar.bz2 Source2: binutils-2.19.50.0.1-output-format.sed -Patch01: binutils-2.19.51.0.10-libtool-lib64.patch -Patch02: binutils-2.19.51.0.10-ppc64-pie.patch -Patch03: binutils-2.19.50.0.1-ia64-lib64.patch -Patch04: binutils-2.19.51.0.10-envvar-revert.patch -Patch05: binutils-2.19.51.0.10-version.patch -Patch06: binutils-2.19.51.0.10-set-long-long.patch -Patch07: binutils-2.19.51.0.10-build-id.patch -Patch09: binutils-2.19.51.0.11-moxie.patch -Patch10: binutils-2.19.51.0.14-unique-is-global.patch -Patch11: binutils-2.19.51.0.14-cxxfilt-java-doc.patch +Patch01: binutils-2.20.51.0.2-libtool-lib64.patch +Patch02: binutils-2.20.51.0.2-ppc64-pie.patch +Patch03: binutils-2.20.51.0.2-ia64-lib64.patch +Patch04: binutils-2.20.51.0.2-envvar-revert.patch +Patch05: binutils-2.20.51.0.2-version.patch +Patch06: binutils-2.20.51.0.2-set-long-long.patch +Patch07: binutils-2.20.51.0.2-build-id.patch %if 0%{?_with_debug:1} # Define this if you want to skip the strip step and preserve debug info. @@ -104,9 +101,6 @@ to consider using libelf instead of BFD. %patch05 -p0 -b .version~ %patch06 -p0 -b .set-long-long~ %patch07 -p0 -b .build-id~ -%patch09 -p0 -b .moxie~ -%patch10 -p0 -b .unique-is-global~ -%patch11 -p0 -b .cxxfilt-java-doc~ # We cannot run autotools as there is an exact requirement of autoconf-2.59. @@ -357,6 +351,12 @@ fi %endif # %{isnative} %changelog +* Mon Oct 12 2009 Nick Clifton 2.20.51.0.2-1 +- Rebase on 2.20 tarball. +- Remove redundant moxie patch. +- Remove redundant unique is global patch. +- Remove redundant cxxfilt java doc patch. + * Tue Sep 29 2009 Jan Kratochvil 2.19.51.0.14-32 - Remove spurious description of nonexistent --java switch for cxxfilt. diff --git a/sources b/sources index 1f34f8c..74a6fad 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e0b485a3ff9392da1351dc3fb61a3d10 binutils-2.19.51.0.14.tar.bz2 +b01b185a5eab43190fb83efaeb2ffef9 binutils-2.20.51.0.2.tar.bz2