mirror of
https://review.haiku-os.org/buildtools
synced 2025-01-31 10:34:41 +01:00
465fb4d4a7
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>
The files in this directory are sourced by genscripts.sh, after setting some variables to substitute in, to produce C source files that contain jump tables for each emulation.