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 Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
contrib Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
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 Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
INSTALL * joined 'install' & 'INSTALL' into one folder (INSTALL) in order to fix 2006-09-19 08:11:25 +00:00
libchill Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
libf2c Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
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 Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
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 Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
.cvsignore Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
ChangeLog Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
config-ml.in Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
config.guess Part of #3298: 2010-08-30 16:06:12 +00:00
config.if Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
config.sub Part of #3298: 2010-08-30 16:06:12 +00:00
configure Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
configure.in * Created a Haiku configuration by copying the BeOS configuration and 2008-03-21 23:52:23 +00:00
COPYING Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
COPYING.LIB Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
FAQ Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
faq.html Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
install-sh Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
ltconfig Auto-generated files. Manually adjusted, since I don't trust the current 2008-03-22 00:13:53 +00:00
ltmain.sh Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
MAINTAINERS Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
Makefile.in Drop libio and libstdc++ from buildsystem of legacy gcc. 2013-07-17 19:11:17 +02:00
missing Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
mkinstalldirs Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
move-if-change Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
README Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
symlink-tree Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00
ylwrap Moved the old gcc to its new home. 2005-11-22 15:53:32 +00:00

		   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.