Message ID | 1352988528-20158-1-git-send-email-gustavo@zacarias.com.ar |
---|---|
State | Superseded |
Headers | show |
>>>>> "Gustavo" == Gustavo Zacarias <gustavo@zacarias.com.ar> writes:
Gustavo> Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Gustavo> ---
Gustavo> package/binutils/Config.in.host | 5 +++
Gustavo> package/binutils/binutils-2.23.1/120-sh-conf.patch | 29 +++++++++++++++
Gustavo> .../300-001_ld_makefile_patch.patch | 24 +++++++++++++
Gustavo> .../300-012_check_ldrunpath_length.patch | 21 +++++++++++
Gustavo> package/binutils/binutils-2.23.1/500-sysroot.patch | 37 ++++++++++++++++++++
Gustavo> 5 files changed, 116 insertions(+), 0 deletions(-)
Gustavo> create mode 100644 package/binutils/binutils-2.23.1/120-sh-conf.patch
Gustavo> create mode 100644 package/binutils/binutils-2.23.1/300-001_ld_makefile_patch.patch
Gustavo> create mode 100644 package/binutils/binutils-2.23.1/300-012_check_ldrunpath_length.patch
Gustavo> create mode 100644 package/binutils/binutils-2.23.1/500-sysroot.patch
Gustavo> diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host
Gustavo> index 26c5f73..7a9eae8 100644
Gustavo> --- a/package/binutils/Config.in.host
Gustavo> +++ b/package/binutils/Config.in.host
Gustavo> @@ -36,6 +36,10 @@ choice
Gustavo> depends on !(BR2_avr32 || BR2_UCLIBC_VERSION_0_9_31)
Gustavo> bool "binutils 2.23"
Gustavo> + config BR2_BINUTILS_VERSION_2_23_1
Gustavo> + depends on !(BR2_avr32 || BR2_UCLIBC_VERSION_0_9_31)
Gustavo> + bool "binutils 2.23.1"
Gustavo> +
I know we have been doing it in the past because of various arch issues,
but does it make sense to keep both 2.23 and 2.23.1?
On 11/15/2012 12:12 PM, Peter Korsgaard wrote: > I know we have been doing it in the past because of various arch issues, > but does it make sense to keep both 2.23 and 2.23.1? I've tested 2.23.1 only for ppc targets so far, and 2.23 for many more architectures. Common sense says 2.23.1 alone should be enough, but i haven't tested that scenario. We also have other dot versions that could also be dropped like 2.20. Regards.
On Thu, Nov 15, 2012 at 3:12 PM, Peter Korsgaard <jacmet@uclibc.org> wrote: >>>>>> "Gustavo" == Gustavo Zacarias <gustavo@zacarias.com.ar> writes: > > Gustavo> Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> > Gustavo> --- > Gustavo> package/binutils/Config.in.host | 5 +++ > Gustavo> package/binutils/binutils-2.23.1/120-sh-conf.patch | 29 +++++++++++++++ > Gustavo> .../300-001_ld_makefile_patch.patch | 24 +++++++++++++ > Gustavo> .../300-012_check_ldrunpath_length.patch | 21 +++++++++++ > Gustavo> package/binutils/binutils-2.23.1/500-sysroot.patch | 37 ++++++++++++++++++++ > Gustavo> 5 files changed, 116 insertions(+), 0 deletions(-) > Gustavo> create mode 100644 package/binutils/binutils-2.23.1/120-sh-conf.patch > Gustavo> create mode 100644 package/binutils/binutils-2.23.1/300-001_ld_makefile_patch.patch > Gustavo> create mode 100644 package/binutils/binutils-2.23.1/300-012_check_ldrunpath_length.patch > Gustavo> create mode 100644 package/binutils/binutils-2.23.1/500-sysroot.patch > > Gustavo> diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host > Gustavo> index 26c5f73..7a9eae8 100644 > Gustavo> --- a/package/binutils/Config.in.host > Gustavo> +++ b/package/binutils/Config.in.host > Gustavo> @@ -36,6 +36,10 @@ choice > Gustavo> depends on !(BR2_avr32 || BR2_UCLIBC_VERSION_0_9_31) > Gustavo> bool "binutils 2.23" > > Gustavo> + config BR2_BINUTILS_VERSION_2_23_1 > Gustavo> + depends on !(BR2_avr32 || BR2_UCLIBC_VERSION_0_9_31) > Gustavo> + bool "binutils 2.23.1" > Gustavo> + > > I know we have been doing it in the past because of various arch issues, > but does it make sense to keep both 2.23 and 2.23.1? I believe that 2.23 was never officially packaged so it is probably better to remove it.
On 11/15/2012 12:17 PM, Will Newton wrote: > I believe that 2.23 was never officially packaged so it is probably > better to remove it. It's in official GNU mirrors, i'd say it has been. Doesn't mean we should keep it though. Regards.
On Thu, Nov 15, 2012 at 3:25 PM, Gustavo Zacarias <gustavo@zacarias.com.ar> wrote: > On 11/15/2012 12:17 PM, Will Newton wrote: > >> I believe that 2.23 was never officially packaged so it is probably >> better to remove it. > > It's in official GNU mirrors, i'd say it has been. > Doesn't mean we should keep it though. From the 2.23.1 release announcement: "Thanks to everyone who contributed to the release. The branch remains open for bug fixes. Note that because of packaging issues, binutils 2.23 was not released." I'm not sure what the precise issues were but it seems safer to move to 2.23.1.
On 11/15/2012 12:27 PM, Will Newton wrote: > From the 2.23.1 release announcement: > > "Thanks to everyone who contributed to the release. The branch remains > open for bug fixes. > > Note that because of packaging issues, binutils 2.23 was not released." > > I'm not sure what the precise issues were but it seems safer to move to 2.23.1. From what i've read in the mailing list there were some tagging issues and whatnot. There was also the vanishing tarball issue, when i sent the initial 2.23 bump there was a tar.bz2 for 2.23 and then it was gone with only the tar.gz remaining. I'm not for or against the move, since it's not a default i see no big issue removing it, but then we always gave some choice regarding toolchain components. Regards.
>>>>> "Will" == Will Newton <will.newton@gmail.com> writes: Will> On Thu, Nov 15, 2012 at 3:25 PM, Gustavo Zacarias Will> <gustavo@zacarias.com.ar> wrote: >> On 11/15/2012 12:17 PM, Will Newton wrote: >> >>> I believe that 2.23 was never officially packaged so it is probably >>> better to remove it. >> >> It's in official GNU mirrors, i'd say it has been. >> Doesn't mean we should keep it though. >> From the 2.23.1 release announcement: Will> "Thanks to everyone who contributed to the release. The branch remains Will> open for bug fixes. Will> Note that because of packaging issues, binutils 2.23 was not released." Will> I'm not sure what the precise issues were but it seems safer to Will> move to 2.23.1. I agree. Gustavo, could you respin the patch to replace 2.23 with 2.23.1 instead?
On 11/15/2012 12:39 PM, Peter Korsgaard wrote: > I agree. Gustavo, could you respin the patch to replace 2.23 with 2.23.1 > instead? And what about 2.20? Hint: you can't say mark it as deprecated and throw the kill switch to 2.23 ;-) Regards.
>>>>> "Gustavo" == Gustavo Zacarias <gustavo@zacarias.com.ar> writes: Gustavo> On 11/15/2012 12:39 PM, Peter Korsgaard wrote: >> I agree. Gustavo, could you respin the patch to replace 2.23 with 2.23.1 >> instead? Gustavo> And what about 2.20? Gustavo> Hint: you can't say mark it as deprecated and throw the kill Gustavo> switch to 2.23 ;-) Well, the difference is that we have already done releases with 2.20 and haven't marked it as deprecated yet, whereas 2.23 hasn't been in any release yet. It probably makes sense to deprecate 2.20 now, yes.
diff --git a/package/binutils/Config.in.host b/package/binutils/Config.in.host index 26c5f73..7a9eae8 100644 --- a/package/binutils/Config.in.host +++ b/package/binutils/Config.in.host @@ -36,6 +36,10 @@ choice depends on !(BR2_avr32 || BR2_UCLIBC_VERSION_0_9_31) bool "binutils 2.23" + config BR2_BINUTILS_VERSION_2_23_1 + depends on !(BR2_avr32 || BR2_UCLIBC_VERSION_0_9_31) + bool "binutils 2.23.1" + endchoice config BR2_BINUTILS_VERSION @@ -47,6 +51,7 @@ config BR2_BINUTILS_VERSION default "2.21.1" if BR2_BINUTILS_VERSION_2_21_1 default "2.22" if BR2_BINUTILS_VERSION_2_22 default "2.23" if BR2_BINUTILS_VERSION_2_23 + default "2.23.1" if BR2_BINUTILS_VERSION_2_23_1 config BR2_BINUTILS_EXTRA_CONFIG_OPTIONS string "Additional binutils options" diff --git a/package/binutils/binutils-2.23.1/120-sh-conf.patch b/package/binutils/binutils-2.23.1/120-sh-conf.patch new file mode 100644 index 0000000..ea3d1b6 --- /dev/null +++ b/package/binutils/binutils-2.23.1/120-sh-conf.patch @@ -0,0 +1,29 @@ +r10231 | lethal | 2005-05-02 09:58:00 -0400 (Mon, 02 May 2005) | 13 lines + +Likewise, binutils has no idea about any of these new targets either, so we +fix that up too.. now we're able to actually build a real toolchain for +sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more +inept targets than that one, really. Go look, I promise). + +--- a/configure ++++ b/configure +@@ -1495,7 +1495,7 @@ + mips*-*-*) + noconfigdirs="$noconfigdirs gprof" + ;; +- sh-*-* | sh64-*-*) ++ sh*-*-* | sh64-*-*) + case "${target}" in + sh*-*-elf) + ;; +--- a/configure.ac ++++ b/configure.ac +@@ -712,7 +712,7 @@ + mips*-*-*) + noconfigdirs="$noconfigdirs gprof" + ;; +- sh-*-* | sh64-*-*) ++ sh*-*-* | sh64-*-*) + case "${target}" in + sh*-*-elf) + ;; diff --git a/package/binutils/binutils-2.23.1/300-001_ld_makefile_patch.patch b/package/binutils/binutils-2.23.1/300-001_ld_makefile_patch.patch new file mode 100644 index 0000000..5cb0f61 --- /dev/null +++ b/package/binutils/binutils-2.23.1/300-001_ld_makefile_patch.patch @@ -0,0 +1,24 @@ +diff -u binutils-2.17.50.0.17.oorig/ld/Makefile.am binutils-2.17.50.0.17/ld/Makefile.am +--- binutils-2.17.50.0.17.oorig/ld/Makefile.am 2007-06-18 19:29:29.000000000 +0200 ++++ binutils-2.17.50.0.17/ld/Makefile.am 2007-06-25 10:00:36.000000000 +0200 +@@ -18,7 +18,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 -u binutils-2.17.50.0.17.oorig/ld/Makefile.in binutils-2.17.50.0.17/ld/Makefile.in +--- binutils-2.17.50.0.17.oorig/ld/Makefile.in 2007-06-18 19:29:29.000000000 +0200 ++++ binutils-2.17.50.0.17/ld/Makefile.in 2007-06-25 10:00:36.000000000 +0200 +@@ -287,7 +287,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) + BASEDIR = $(srcdir)/.. + BFDDIR = $(BASEDIR)/bfd + INCDIR = $(BASEDIR)/include diff --git a/package/binutils/binutils-2.23.1/300-012_check_ldrunpath_length.patch b/package/binutils/binutils-2.23.1/300-012_check_ldrunpath_length.patch new file mode 100644 index 0000000..df78310 --- /dev/null +++ b/package/binutils/binutils-2.23.1/300-012_check_ldrunpath_length.patch @@ -0,0 +1,21 @@ +diff -Nura binutils-2.21.orig/ld/emultempl/elf32.em binutils-2.21/ld/emultempl/elf32.em +--- binutils-2.21.orig/ld/emultempl/elf32.em 2010-10-29 09:10:36.000000000 -0300 ++++ binutils-2.21/ld/emultempl/elf32.em 2010-12-10 09:26:56.746102724 -0300 +@@ -1270,6 +1270,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; +@@ -1497,6 +1499,8 @@ + rpath = command_line.rpath; + if (rpath == NULL) + rpath = (const char *) getenv ("LD_RUN_PATH"); ++ if ((rpath) && (strlen (rpath) == 0)) ++ rpath = NULL; + + for (abfd = link_info.input_bfds; abfd; abfd = abfd->link_next) + if (bfd_get_flavour (abfd) == bfd_target_elf_flavour) diff --git a/package/binutils/binutils-2.23.1/500-sysroot.patch b/package/binutils/binutils-2.23.1/500-sysroot.patch new file mode 100644 index 0000000..e49c795 --- /dev/null +++ b/package/binutils/binutils-2.23.1/500-sysroot.patch @@ -0,0 +1,37 @@ +Signed-off-by: Sven Rebhan <odinshorse@googlemail.com> + +Always try to prepend the sysroot prefix to absolute filenames first. + +http://bugs.gentoo.org/275666 +http://sourceware.org/bugzilla/show_bug.cgi?id=10340 + +--- a/ld/ldfile.c ++++ b/ld/ldfile.c +@@ -308,18 +308,25 @@ + directory first. */ + if (! entry->flags.maybe_archive) + { +- if (entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename)) ++ /* For absolute pathnames, try to always open the file in the ++ sysroot first. If this fails, try to open the file at the ++ given location. */ ++ entry->flags.sysrooted = is_sysrooted_pathname (entry->filename); ++ if (!entry->flags.sysrooted && IS_ABSOLUTE_PATH (entry->filename) ++ && ld_sysroot) + { + char *name = concat (ld_sysroot, entry->filename, + (const char *) NULL); + if (ldfile_try_open_bfd (name, entry)) + { + entry->filename = name; ++ entry->flags.sysrooted = TRUE; + return TRUE; + } + free (name); + } +- else if (ldfile_try_open_bfd (entry->filename, entry)) ++ ++ if (ldfile_try_open_bfd (entry->filename, entry)) + return TRUE; + + if (IS_ABSOLUTE_PATH (entry->filename))
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> --- package/binutils/Config.in.host | 5 +++ package/binutils/binutils-2.23.1/120-sh-conf.patch | 29 +++++++++++++++ .../300-001_ld_makefile_patch.patch | 24 +++++++++++++ .../300-012_check_ldrunpath_length.patch | 21 +++++++++++ package/binutils/binutils-2.23.1/500-sysroot.patch | 37 ++++++++++++++++++++ 5 files changed, 116 insertions(+), 0 deletions(-) create mode 100644 package/binutils/binutils-2.23.1/120-sh-conf.patch create mode 100644 package/binutils/binutils-2.23.1/300-001_ld_makefile_patch.patch create mode 100644 package/binutils/binutils-2.23.1/300-012_check_ldrunpath_length.patch create mode 100644 package/binutils/binutils-2.23.1/500-sysroot.patch