buildtools/legacy
Simon South 465fb4d4a7 gcc2: Allow the user to build non-PI executables
This aligns legacy gcc with the changes to gcc4 committed in 4192115 and
the two subsequent commits.  It also disables legacy ld's default
behaviour of recursively resolving shared-library dependencies at link
time, preventing missing-library warnings during the build and aligning
ld's behaviour with that of more recent versions.

gcc2:

* CPP_SPEC: Replace non-existent command-line options with valid
  equivalents.
* CC1_SPEC: Remove non-existent "no-fpic" option; add "fno-pic" and
  "fno-PIC" as options that disable the generation of
  position-independent code; use "-fPIC" by default.
* LINK_SPEC: Pass "-shared" to the linker only if it was passed to gcc;
  output position-independent executables by default, exporting all
  symbols to match the behaviour of "-shared"; when building a
  dynamically linked executable, do not recursively add shared libraries
  as dependencies but do allow unresolved symbols in them; specify
  "-Bsymbolic" only when building a shared library.
* All: Wrap lines at 80 columns; use more compact notation where
  available.

ld:

* Do not recursively resolve shared-library dependencies when building
  an executable if the "--no-add-needed" and "--allow-shlib-undefined"
  options are in effect.  This effectively backports binutils commits
  8fbb09e and 4706eab.

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2015-11-02 21:09:55 +01:00
..
autoconf Added machine i586-pc-haiku. 2005-12-05 13:52:01 +00:00
binutils gcc2: Allow the user to build non-PI executables 2015-11-02 21:09:55 +01:00
gcc gcc2: Allow the user to build non-PI executables 2015-11-02 21:09:55 +01:00
gcc_distribution - cleaned up contents to only list user relevant changes. 2006-07-10 22:32:11 +00:00
compile-binutils * drop 'packages/contents' from base paths again (we are back to 2011-07-17 17:02:44 +02:00
compile-gcc * drop 'packages/contents' from base paths again (we are back to 2011-07-17 17:02:44 +02:00