RFA/RFC: Enable both gold and ld in a single toolchain

H.J. Lu hjl.tools@gmail.com
Fri Apr 9 16:37:00 GMT 2010


On Fri, Apr 9, 2010 at 1:46 AM, Nick Clifton <nickc@redhat.com> wrote:
> Hi Guys,
>
>  Now that the GCC mainline sources are back in stage 1, and I am back from
> vacation, here is another revised version of the gold-and-ld patch for
> consideration, and I hope, approval.
>
>  This version fixes collect2.c so that it will build even if the
> DEFAULT_LINKER environment variable is defined.  It also changes the name of
> the installed version of the gold linker to be ld.gold in order to use a
> consistent naming scheme.
>
>  OK to apply ?
>
> Cheers
>  Nick
>
> ./ChangeLog
> 2010-04-09  Roland McGrath  <roland@redhat.com>
>        H.J. Lu  <hongjiu.lu@intel.com>
>
>    * configure.ac (--enable-gold): Support both, both/gold and
>    both/bfd to add gold to configdirs without removing ld.
>    * configure: Regenerated.

You didn't mention toplevel Makefile.in change. You
should change Makefile.def and regenerate Makefile.in
instead.


H.J.
---
> gold/ChangeLog
> 2010-04-09  H.J. Lu  <hongjiu.lu@intel.com>
>        Nick Clifton  <nickc@redhat.com>
>
>    * configure.ac (install_as_default): Define and set to false
>    unless --enable-gold or --enable-gold=both/gold has been
>    specified.
>    * configure: Regenerate.
>    * Makefile.am (install-exec-local): Install the executable as
>    'ld.gold'.  If install_as_default is true then also install it as
>    'ld'.
>    * Makefile.in: Regenerated.
>
> ld/ChangeLog
> 2010-04-09  H.J. Lu  <hongjiu.lu@intel.com>
>        Nick Clifton  <nickc@redhat.com>
>
>    * configure.in (install_as_default): Define and set to true
>    unless --enable-gold=both/gold has been specified.
>    * configure: Regenerate.
>    * Makefile.am (transform): Use ld.bfd as the default name of
>    the linker.
>    (install-exec-local): Also install the executable as a binary
>    named 'ld' if install_as_default is true.
>    * Makefile.in: Regenerate.
>
> gcc/ChangeLog
> 2010-04-09  Nick Clifton  <nickc@redhat.com>
>
>    * configure.ac (gcc_cv_gold_srcdir): New cached variable -
>    contains the location of the gold sources.
>    (ORIGINAL_GOLD_FOR_TARGET): New substituted variable - contains
>    the name of the locally built gold executable.
>    * configure: Regenerate.
>    * collect2.c (main): Detect the -use-gold and -use-ld switches
>    and select the appropriate linker, if found.
>    If a linker cannot be found and collect2 is executing in
>    verbose mode then report the search paths examined.
>    * exec-tool.in: Detect the -use-gold and -use-ld switches and
>    select the appropriate linker, if found.
>    Add support for -v switch.
>    Report problems locating linker executable.
>    * gcc.c (LINK_COMMAND_SPEC): Translate -fuse-ld=gold into
>    -use-gold and -fuse-ld=bfd into -use-ld.
>    * common.opt: Add fuse-ld=gold and fuse-ld=bfd.
>    * opts.c (comman_handle_option): Ignore -fuse-ld=gold and
>    -fuse-ld=bfd.
>    * doc/invoke.texi: Document the new options.
>
>



More information about the Binutils mailing list