[Darwin, config] Arrange for ld64 to be detected as Darwin's linker.
authorIain Sandoe <iain@codesourcery.com>
Sun, 27 Nov 2016 14:29:36 +0000 (14:29 +0000)
committerIain Sandoe <iains@gcc.gnu.org>
Sun, 27 Nov 2016 14:29:36 +0000 (14:29 +0000)
commiteb89c82f46a10585c98e2019d775d920cf2fdea0
tree3025ca76070f4fc7fb893b3a09ca0f62f3d28227
parent7881b63fef5c682fb6c4e5b4009f5afc7971595b
[Darwin, config] Arrange for ld64 to be detected as Darwin's linker.

 This is an initial patch in a series that converts Darwin's configury
 to detect ld64 features, rather than the current process of hard-coding
 them on target system version.

 A ld64-compatible linker is currently required and assumed by Darwin.
 If a DEFAULT_LINKER is set via --with-ld= then this will be tested to
 see if it is ld64.

 The ld64 version is determined for the chosen ld and this is exported for
 use in setting a default value for -mtarget-linker (needed for run-time
 code-gen changes to section choices).
 The support for -rdynamic is converted to be detected at config time, or
 by the ld64 version if that is found.

gcc/

2016-11-27  Iain Sandoe  <iain@codesourcery.com>

PR target/71767
* configure.ac (with-ld64): New var, set for Darwin, set on
detection of ld64, gcc_cv_ld64_export_dynamic: New, New test.
* config/darwin.h: Use LD64_HAS_DYNAMIC export. DEF_LD64: New,
define.
* config/darwin10.h(DEF_LD64): Update for this target version.
* config/darwin12.h(LINK_GCC_C_SEQUENCE_SPEC): Remove rdynamic
test.  (DEF_LD64): Update for this target version.
* configure: Regenerated.
* config.in: Regenerated.

From-SVN: r242894
gcc/ChangeLog
gcc/config.in
gcc/config/darwin.h
gcc/config/darwin10.h
gcc/config/darwin12.h
gcc/configure
gcc/configure.ac