- Rebase on 2.21.51.0.5 tarball.
- Delete redundant patches. - Fix gold+ld configure command line option.
This commit is contained in:
parent
531a74d49f
commit
19db05c0fb
1
.gitignore
vendored
1
.gitignore
vendored
@ -4,3 +4,4 @@ i386
|
||||
binutils-2.20.51.0.10.tar.bz2
|
||||
/binutils-2.20.51.0.11.tar.bz2
|
||||
/binutils-2.20.51.0.12.tar.bz2
|
||||
/binutils-2.21.51.0.5.tar.bz2
|
||||
|
@ -1,19 +0,0 @@
|
||||
*** ../binutils-2.20.51.0.10.orig/ld/ldlex.l 2010-08-20 15:28:06.000000000 +0100
|
||||
--- ld/ldlex.l 2010-08-20 15:35:27.000000000 +0100
|
||||
*************** CMDFILENAMECHAR1 [_a-zA-Z0-9\/\.\\_\+\$
|
||||
*** 99,105 ****
|
||||
FILENAMECHAR1 [_a-zA-Z\/\.\\\$\_\~]
|
||||
SYMBOLCHARN [_a-zA-Z\/\.\\\$\_\~0-9]
|
||||
FILENAMECHAR [_a-zA-Z0-9\/\.\-\_\+\=\$\:\[\]\\\,\~]
|
||||
! WILDCHAR [_a-zA-Z0-9\/\.\-\_\+\=\$\:\[\]\\\,\~\?\*]
|
||||
WHITE [ \t\n\r]+
|
||||
|
||||
NOCFILENAMECHAR [_a-zA-Z0-9\/\.\-\_\+\$\:\[\]\\\~]
|
||||
--- 99,105 ----
|
||||
FILENAMECHAR1 [_a-zA-Z\/\.\\\$\_\~]
|
||||
SYMBOLCHARN [_a-zA-Z\/\.\\\$\_\~0-9]
|
||||
FILENAMECHAR [_a-zA-Z0-9\/\.\-\_\+\=\$\:\[\]\\\,\~]
|
||||
! WILDCHAR [_a-zA-Z0-9\/\.\-\_\+\=\$\:\[\]\\\,\~\?\*\^\!]
|
||||
WHITE [ \t\n\r]+
|
||||
|
||||
NOCFILENAMECHAR [_a-zA-Z0-9\/\.\-\_\+\$\:\[\]\\\~]
|
File diff suppressed because it is too large
Load Diff
@ -1,19 +0,0 @@
|
||||
*** ../binutils-2.20.51.0.11.orig/bfd/compress.c 2010-09-10 10:00:37.000000000 +0100
|
||||
--- bfd/compress.c 2010-09-10 10:02:20.000000000 +0100
|
||||
*************** bfd_compress_section_contents (bfd *abfd
|
||||
*** 94,100 ****
|
||||
bfd_set_error (bfd_error_invalid_operation);
|
||||
return FALSE;
|
||||
#else
|
||||
! bfd_size_type compressed_size;
|
||||
bfd_byte *compressed_buffer;
|
||||
|
||||
compressed_size = compressBound (uncompressed_size) + 12;
|
||||
--- 94,100 ----
|
||||
bfd_set_error (bfd_error_invalid_operation);
|
||||
return FALSE;
|
||||
#else
|
||||
! uLongf compressed_size;
|
||||
bfd_byte *compressed_buffer;
|
||||
|
||||
compressed_size = compressBound (uncompressed_size) + 12;
|
@ -1,67 +0,0 @@
|
||||
diff -rcp ../binutils-2.20.51.0.7.original/bfd/elfcode.h ./bfd/elfcode.h
|
||||
*** ../binutils-2.20.51.0.7.original/bfd/elfcode.h 2010-04-08 15:29:32.000000000 +0100
|
||||
--- ./bfd/elfcode.h 2010-04-08 15:29:39.000000000 +0100
|
||||
*************** elf_checksum_contents (bfd *abfd,
|
||||
*** 1188,1193 ****
|
||||
--- 1188,1211 ----
|
||||
|
||||
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 -rcp ../binutils-2.20.51.0.7.original/bfd/section.c.orig ./bfd/section.c.orig
|
||||
*** ../binutils-2.20.51.0.11.orig/bfd/compress.c 2010-09-10 08:44:47.000000000 +0100
|
||||
--- bfd/compress.c 2010-09-10 08:46:16.000000000 +0100
|
||||
*************** bfd_get_full_section_contents (bfd *abfd
|
||||
*** 174,180 ****
|
||||
case COMPRESS_SECTION_NONE:
|
||||
if (p == NULL)
|
||||
{
|
||||
! p = (bfd_byte *) bfd_malloc (sz);
|
||||
if (p == NULL)
|
||||
return FALSE;
|
||||
need_free = TRUE;
|
||||
--- 174,180 ----
|
||||
case COMPRESS_SECTION_NONE:
|
||||
if (p == NULL)
|
||||
{
|
||||
! p = (bfd_byte *) bfd_zmalloc (sz);
|
||||
if (p == NULL)
|
||||
return FALSE;
|
||||
need_free = TRUE;
|
||||
*************** fail_compressed:
|
||||
*** 234,240 ****
|
||||
uncompressed_buffer = p;
|
||||
else
|
||||
{
|
||||
! uncompressed_buffer = (bfd_byte *) bfd_malloc (uncompressed_size);
|
||||
if (uncompressed_buffer == NULL)
|
||||
goto fail_compressed;
|
||||
}
|
||||
--- 234,240 ----
|
||||
uncompressed_buffer = p;
|
||||
else
|
||||
{
|
||||
! uncompressed_buffer = (bfd_byte *) bfd_zmalloc (uncompressed_size);
|
||||
if (uncompressed_buffer == NULL)
|
||||
goto fail_compressed;
|
||||
}
|
@ -1,91 +0,0 @@
|
||||
diff -rcp ../binutils-2.20.51.0.7.original/ld/ldmain.c ./ld/ldmain.c
|
||||
*** ../binutils-2.20.51.0.7.original/ld/ldmain.c 2010-04-08 15:03:56.000000000 +0100
|
||||
--- ./ld/ldmain.c 2010-04-08 15:05:09.000000000 +0100
|
||||
*************** main (int argc, char **argv)
|
||||
*** 258,271 ****
|
||||
command_line.check_section_addresses = -1;
|
||||
command_line.disable_target_specific_optimizations = -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)
|
||||
- add_DT_NEEDED_for_regular = 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
|
||||
--- 258,263 ----
|
||||
diff -rcp ../binutils-2.20.51.0.7.original/ld/ld.texinfo ./ld/ld.texinfo
|
||||
*** ../binutils-2.20.51.0.7.original/ld/ld.texinfo 2010-04-08 15:03:55.000000000 +0100
|
||||
--- ./ld/ld.texinfo 2010-04-08 15:05:55.000000000 +0100
|
||||
*************** their names to the @option{--as-needed}
|
||||
*** 1152,1161 ****
|
||||
options. They have been replaced by @option{--copy-dt-needed-entries}
|
||||
and @option{--no-copy-dt-needed-entries}.
|
||||
|
||||
- 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.
|
||||
-
|
||||
@kindex -assert @var{keyword}
|
||||
@item -assert @var{keyword}
|
||||
This option is ignored for SunOS compatibility.
|
||||
--- 1152,1157 ----
|
||||
*************** When creating a shared library, bind ref
|
||||
*** 1206,1226 ****
|
||||
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.
|
||||
|
||||
@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.
|
||||
|
||||
@kindex --dynamic-list=@var{dynamic-list-file}
|
||||
@item --dynamic-list=@var{dynamic-list-file}
|
||||
--- 1202,1215 ----
|
||||
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.
|
||||
|
||||
@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.
|
||||
|
||||
@kindex --dynamic-list=@var{dynamic-list-file}
|
||||
@item --dynamic-list=@var{dynamic-list-file}
|
||||
diff -rcp ../binutils-2.20.51.0.7.original/ld/NEWS ./ld/NEWS
|
||||
*** ../binutils-2.20.51.0.7.original/ld/NEWS 2010-04-08 15:03:56.000000000 +0100
|
||||
--- ./ld/NEWS 2010-04-08 15:04:14.000000000 +0100
|
||||
*************** Changes in 2.20:
|
||||
*** 73,83 ****
|
||||
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
|
||||
--- 73,78 ----
|
@ -1,41 +0,0 @@
|
||||
diff -rcp ../binutils-2.20.51.0.7.original/bfd/ChangeLog ./bfd/ChangeLog
|
||||
*** ../binutils-2.20.51.0.7.original/bfd/ChangeLog 2010-04-08 15:35:35.000000000 +0100
|
||||
--- ./bfd/ChangeLog 2010-04-08 15:38:09.000000000 +0100
|
||||
***************
|
||||
*** 1,3 ****
|
||||
--- 1,12 ----
|
||||
+ 2010-04-07 Nick Clifton <nickc@redhat.com>
|
||||
+
|
||||
+ Import this patch from the mainline:
|
||||
+
|
||||
+ 2010-03-26 H.J. Lu <hongjiu.lu@intel.com>
|
||||
+
|
||||
+ PR ld/11434
|
||||
+ * elf-bfd.h (SYMBOLIC_BIND): Don't bind unique symbols locally.
|
||||
+
|
||||
2010-03-18 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR binutils/11396
|
||||
diff -rcp ../binutils-2.20.51.0.7.original/bfd/elf-bfd.h ./bfd/elf-bfd.h
|
||||
*** ../binutils-2.20.51.0.7.original/bfd/elf-bfd.h 2010-04-08 15:35:35.000000000 +0100
|
||||
--- ./bfd/elf-bfd.h 2010-04-08 15:37:41.000000000 +0100
|
||||
*************** extern asection _bfd_elf_large_com_secti
|
||||
*** 2351,2358 ****
|
||||
while (0)
|
||||
|
||||
/* Will a symbol be bound to the the definition within the shared
|
||||
! library, if any. */
|
||||
#define SYMBOLIC_BIND(INFO, H) \
|
||||
! ((INFO)->symbolic || ((INFO)->dynamic && !(H)->dynamic))
|
||||
|
||||
#endif /* _LIBELF_H_ */
|
||||
--- 2351,2359 ----
|
||||
while (0)
|
||||
|
||||
/* Will a symbol be bound to the the definition within the shared
|
||||
! library, if any. A unique symbol can never be bound locally. */
|
||||
#define SYMBOLIC_BIND(INFO, H) \
|
||||
! (! (H)->unique_global \
|
||||
! && ((INFO)->symbolic || ((INFO)->dynamic && !(H)->dynamic)))
|
||||
|
||||
#endif /* _LIBELF_H_ */
|
File diff suppressed because it is too large
Load Diff
@ -1,61 +0,0 @@
|
||||
diff -rcp ../binutils-2.20.51.0.7-original/gold/script.cc gold/script.cc
|
||||
*** ../binutils-2.20.51.0.7-original/gold/script.cc 2010-06-09 15:18:46.000000000 +0100
|
||||
--- gold/script.cc 2010-06-09 15:20:49.000000000 +0100
|
||||
*************** script_add_file(void* closurev, const ch
|
||||
*** 2589,2594 ****
|
||||
--- 2589,2612 ----
|
||||
closure->inputs()->add_file(file);
|
||||
}
|
||||
|
||||
+ // Called by the bison parser to add a library to the link.
|
||||
+
|
||||
+ extern "C" void
|
||||
+ script_add_library(void* closurev, const char* name, size_t length)
|
||||
+ {
|
||||
+ Parser_closure* closure = static_cast<Parser_closure*>(closurev);
|
||||
+ std::string name_string(name, length);
|
||||
+
|
||||
+ if (name_string[0] != 'l')
|
||||
+ gold_error(_("library name must be prefixed with -l"));
|
||||
+
|
||||
+ Input_file_argument file(name_string.c_str() + 1,
|
||||
+ Input_file_argument::INPUT_FILE_TYPE_LIBRARY,
|
||||
+ "", false,
|
||||
+ closure->position_dependent_options());
|
||||
+ closure->inputs()->add_file(file);
|
||||
+ }
|
||||
+
|
||||
// Called by the bison parser to start a group. If we are already in
|
||||
// a group, that means that this script was invoked within a
|
||||
// --start-group --end-group sequence on the command line, or that
|
||||
diff -rcp ../binutils-2.20.51.0.7-original/gold/script-c.h gold/script-c.h
|
||||
*** ../binutils-2.20.51.0.7-original/gold/script-c.h 2010-06-09 15:18:47.000000000 +0100
|
||||
--- gold/script-c.h 2010-06-09 15:21:05.000000000 +0100
|
||||
*************** script_add_extern(void* closure, const c
|
||||
*** 222,227 ****
|
||||
--- 222,232 ----
|
||||
extern void
|
||||
script_add_file(void* closure, const char*, size_t);
|
||||
|
||||
+ /* Called by the bison parser to add a library to the link. */
|
||||
+
|
||||
+ extern void
|
||||
+ script_add_library(void* closure, const char*, size_t);
|
||||
+
|
||||
/* Called by the bison parser to start and stop a group. */
|
||||
|
||||
extern void
|
||||
diff -rcp ../binutils-2.20.51.0.7-original/gold/yyscript.y gold/yyscript.y
|
||||
*** ../binutils-2.20.51.0.7-original/gold/yyscript.y 2010-06-09 15:18:46.000000000 +0100
|
||||
--- gold/yyscript.y 2010-06-09 15:21:21.000000000 +0100
|
||||
*************** input_list:
|
||||
*** 314,319 ****
|
||||
--- 314,321 ----
|
||||
input_list_element:
|
||||
string
|
||||
{ script_add_file(closure, $1.value, $1.length); }
|
||||
+ | '-' STRING
|
||||
+ { script_add_library(closure, $2.value, $2.length); }
|
||||
| AS_NEEDED
|
||||
{ script_start_as_needed(closure); }
|
||||
'(' input_list ')'
|
@ -1,31 +0,0 @@
|
||||
diff -rcp ../binutils-2.20.51.0.7-original/bfd/archive.c ./bfd/archive.c
|
||||
*** ../binutils-2.20.51.0.7-original/bfd/archive.c 2010-05-04 19:08:20.000000000 +0100
|
||||
--- ./bfd/archive.c 2010-05-04 19:09:40.000000000 +0100
|
||||
*************** _bfd_compute_and_write_armap (bfd *arch,
|
||||
*** 2196,2201 ****
|
||||
--- 2196,2202 ----
|
||||
if ((flags & BSF_GLOBAL
|
||||
|| flags & BSF_WEAK
|
||||
|| flags & BSF_INDIRECT
|
||||
+ || flags & BSF_GNU_UNIQUE
|
||||
|| bfd_is_com_section (sec))
|
||||
&& ! bfd_is_und_section (sec))
|
||||
{
|
||||
diff -rcp ../binutils-2.20.51.0.7-original/bfd/ChangeLog ./bfd/ChangeLog
|
||||
*** ../binutils-2.20.51.0.7-original/bfd/ChangeLog 2010-05-04 19:08:20.000000000 +0100
|
||||
--- ./bfd/ChangeLog 2010-05-04 19:11:04.000000000 +0100
|
||||
***************
|
||||
*** 1,3 ****
|
||||
--- 1,12 ----
|
||||
+ 2010-05-04 Nick Clifton <nickc@redhat.com>
|
||||
+
|
||||
+ Import this patch:
|
||||
+
|
||||
+ 2010-03-18 Matt Rice <ratmice@gmail.com>
|
||||
+
|
||||
+ * archive.c (_bfd_compute_and_write_armap): Allow symbols flagged
|
||||
+ as unique in the armap.
|
||||
+
|
||||
2010-04-08 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
Import these patches from the mainline:
|
@ -16,8 +16,8 @@
|
||||
|
||||
Summary: A GNU collection of binary utilities
|
||||
Name: %{?cross}binutils%{?_with_debug:-debug}
|
||||
Version: 2.20.51.0.12
|
||||
Release: 2%{?dist}
|
||||
Version: 2.21.51.0.5
|
||||
Release: 1%{?dist}
|
||||
License: GPLv3+
|
||||
Group: Development/Tools
|
||||
URL: http://sources.redhat.com/binutils
|
||||
@ -28,10 +28,8 @@ Patch02: binutils-2.20.51.0.10-ppc64-pie.patch
|
||||
Patch03: binutils-2.20.51.0.2-ia64-lib64.patch
|
||||
Patch04: binutils-2.20.51.0.2-version.patch
|
||||
Patch05: binutils-2.20.51.0.2-set-long-long.patch
|
||||
Patch06: binutils-2.20.51.0.2-build-id.patch
|
||||
Patch07: binutils-2.20.51.0.10-copy-osabi.patch
|
||||
Patch08: binutils-2.20.51.0.10-sec-merge-emit.patch
|
||||
Patch09: binutils-2.20.51.0.11-compress-compile.patch
|
||||
Patch06: binutils-2.20.51.0.10-copy-osabi.patch
|
||||
Patch07: binutils-2.20.51.0.10-sec-merge-emit.patch
|
||||
|
||||
%define gold_arches %ix86 x86_64
|
||||
|
||||
@ -127,10 +125,8 @@ using libelf instead of BFD.
|
||||
%endif
|
||||
%patch04 -p0 -b .version~
|
||||
%patch05 -p0 -b .set-long-long~
|
||||
%patch06 -p0 -b .build-id~
|
||||
%patch07 -p0 -b .copy-osabi~
|
||||
%patch08 -p0 -b .sec-merge-emit~
|
||||
%patch09 -p0 -b .compress~
|
||||
%patch06 -p0 -b .copy-osabi~
|
||||
%patch07 -p0 -b .sec-merge-emit~
|
||||
|
||||
# We cannot run autotools as there is an exact requirement of autoconf-2.59.
|
||||
|
||||
@ -186,7 +182,11 @@ CFLAGS="$CFLAGS -O0 -ggdb2"
|
||||
--build=%{_target_platform} --host=%{_target_platform} \
|
||||
--target=%{binutils_target} \
|
||||
%ifarch %gold_arches
|
||||
--enable-gold=%{build_gold} \
|
||||
%if "%{build_gold}" == "both"
|
||||
--enable-gold=default --enable-ld \
|
||||
%else
|
||||
--enable-gold \
|
||||
%endif
|
||||
%endif
|
||||
%if !%{isnative}
|
||||
--enable-targets=%{_host} \
|
||||
@ -415,6 +415,11 @@ exit 0
|
||||
%endif # %{isnative}
|
||||
|
||||
%changelog
|
||||
* Wed Jan 5 2011 Nick Clifton <nickc@redhat.com> - 2.21.51.0.5-1
|
||||
- Rebase on 2.21.51.0.5 tarball.
|
||||
- Delete redundant patches.
|
||||
- Fix gold+ld configure command line option.
|
||||
|
||||
* Fri Nov 4 2010 Dan Horák <dan[at]danny.cz> - 2.20.51.0.12-2
|
||||
- "no" is not valid option for --enable-gold
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user