gcc2, gcc4: Correct LINK_SPEC

Correct LINK_SPEC so it

* Sets appropriate dynamic-link options for any type of dynamically
  linked executable, not only position-independent ones.
* Does not omit these options if "-pie" is specified by the user.
* Recognizes the "-static" option.
* Includes a hyphen previously missing from "--no-undefined".

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
This commit is contained in:
Simon South
2015-11-04 04:07:34 -05:00
committed by Jérôme Duval
parent f2b5a31fc1
commit 7af7a81a60
7 changed files with 21 additions and 20 deletions

View File

@@ -187,9 +187,9 @@ Boston, MA 02111-1307, USA. */
#undef LINK_SPEC
#define LINK_SPEC \
"%{!o*:-o %b} -m elf_i386_haiku \
%{!shared:%{!r:%{!fno-pic:%{!fno-PIC:-pie --export-dynamic}} \
%{!static:--no-add-needed --allow-shlib-undefined}}} \
%{shared:-shared -Bsymbolic} %{nostart|shared:-e 0} \
%{!shared:%{!r:%{!fno-pic:%{!fno-PIC:-pie}} \
%{!static:--no-add-needed --export-dynamic --allow-shlib-undefined}}} \
%{shared:-shared -Bsymbolic} %{static:-static} %{nostart|shared:-e 0} \
%{!nostart:%{!shared:--no-undefined}}"
/* Provide start and end file specs appropriate to glibc. */