buildtools/legacy/gcc
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
..
config
contrib
etc Trying to fix #8063 (failure to build gcc2 when updating info files): 2013-04-19 21:58:21 +02:00
gcc gcc2: Allow the user to build non-PI executables 2015-11-02 21:09:55 +01:00
include
INSTALL
libchill
libf2c
libiberty * Created a Haiku configuration by copying the BeOS configuration and 2008-03-21 23:52:23 +00:00
libio * Created a Haiku configuration by copying the BeOS configuration and 2008-03-21 23:52:23 +00:00
libobjc
libstdc++ Fix prototype for atomic_add 2014-01-17 10:02:13 +01:00
texinfo The strcpy() usage would overwrite its own buffer. The behaviour somehow 2010-07-19 01:41:31 +00:00
.brik
.cvsignore
ChangeLog
config-ml.in
config.guess Part of #3298: 2010-08-30 16:06:12 +00:00
config.if
config.sub Part of #3298: 2010-08-30 16:06:12 +00:00
configure
configure.in * Created a Haiku configuration by copying the BeOS configuration and 2008-03-21 23:52:23 +00:00
COPYING
COPYING.LIB
FAQ
faq.html
install-sh
ltconfig Auto-generated files. Manually adjusted, since I don't trust the current 2008-03-22 00:13:53 +00:00
ltmain.sh
MAINTAINERS
Makefile.in Drop libio and libstdc++ from buildsystem of legacy gcc. 2013-07-17 19:11:17 +02:00
missing
mkinstalldirs
move-if-change
README
symlink-tree
ylwrap

		   README for GNU development tools

This directory contains various GNU compilers, assemblers, linkers, 
debuggers, etc., plus their support routines, definitions, and documentation.


Check the INSTALL directory for detailed configuration and installation
instructions.


Much of the code and documentation enclosed is copyright by
the Free Software Foundation, Inc.  See the file COPYING or
COPYING.LIB in the various directories, for a description of the
GNU General Public License terms under which you can copy the files.

REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info
on where and how to report problems.