Commit c0420911 by Joern Rennecke

(SUBTARGET_CC1_SPEC): Define.

(STARTFILE_SPEC, LINK_SPEC): Support -static.

From-SVN: r13842
parent 13a61c29
...@@ -34,6 +34,9 @@ Boston, MA 02111-1307, USA. */ ...@@ -34,6 +34,9 @@ Boston, MA 02111-1307, USA. */
#undef TARGET_LONG64 #undef TARGET_LONG64
#define TARGET_LONG64 (mips_abi == ABI_64) #define TARGET_LONG64 (mips_abi == ABI_64)
#undef SUBTARGET_CC1_SPEC
#define SUBTARGET_CC1_SPEC "%{static: -mno-abicalls}"
/* We must pass -D_LONGLONG always, even when -ansi is used, because irix6 /* We must pass -D_LONGLONG always, even when -ansi is used, because irix6
system header files require it. This is OK, because gcc never warns system header files require it. This is OK, because gcc never warns
when long long is used in system header files. Alternatively, we can when long long is used in system header files. Alternatively, we can
...@@ -417,7 +420,7 @@ do { \ ...@@ -417,7 +420,7 @@ do { \
on the mipsX option. */ on the mipsX option. */
#undef STARTFILE_SPEC #undef STARTFILE_SPEC
#define STARTFILE_SPEC \ #define STARTFILE_SPEC \
"%{!shared: \ "%{!static:%{!shared: \
%{mabi=32:%{pg:gcrt1.o%s} \ %{mabi=32:%{pg:gcrt1.o%s} \
%{!pg:%{p:mcrt1.o%s libprof1.a%s}%{!p:crt1.o%s}}} \ %{!pg:%{p:mcrt1.o%s libprof1.a%s}%{!p:crt1.o%s}}} \
%{mabi=n32: \ %{mabi=n32: \
...@@ -440,7 +443,40 @@ do { \ ...@@ -440,7 +443,40 @@ do { \
%{!p:/usr/lib32/mips4/crt1.o%s}}} \ %{!p:/usr/lib32/mips4/crt1.o%s}}} \
%{!mips4:%{pg:/usr/lib32/mips3/gcrt1.o%s} \ %{!mips4:%{pg:/usr/lib32/mips3/gcrt1.o%s} \
%{!pg:%{p:/usr/lib32/mips3/mcrt1.o%s /usr/lib32/mips3/libprof1.a%s} \ %{!pg:%{p:/usr/lib32/mips3/mcrt1.o%s /usr/lib32/mips3/libprof1.a%s} \
%{!p:/usr/lib32/mips3/crt1.o%s}}}}} \ %{!p:/usr/lib32/mips3/crt1.o%s}}}}}} \
%{static: \
%{mabi=32:%{pg:/usr/lib/nonshared/gcrt1.o%s} \
%{!pg:%{p:/usr/lib/nonshared/mcrt1.o%s /usr/lib/nonshared/libprof1.a%s} \
%{!p:/usr/lib/nonshared/crt1.o%s}}} \
%{mabi=n32: \
%{mips4:%{pg:/usr/lib32/mips4/nonshared/gcrt1.o%s} \
%{!pg:%{p:/usr/lib32/mips4/nonshared/mcrt1.o%s \
/usr/lib32/mips4/nonshared/libprof1.a%s} \
%{!p:/usr/lib32/mips4/nonshared/crt1.o%s}}} \
%{!mips4:%{pg:/usr/lib32/mips3/nonshared/gcrt1.o%s} \
%{!pg:%{p:/usr/lib32/mips3/nonshared/mcrt1.o%s \
/usr/lib32/mips3/nonshared/libprof1.a%s} \
%{!p:/usr/lib32/mips3/nonshared/crt1.o%s}}}} \
%{mabi=64: \
%{mips4:%{pg:/usr/lib64/mips4/nonshared/gcrt1.o} \
%{!pg:%{p:/usr/lib64/mips4/nonshared/mcrt1.o \
/usr/lib64/mips4/nonshared/libprof1.a} \
%{!p:/usr/lib64/mips4/nonshared/crt1.o}}} \
%{!mips4:%{pg:/usr/lib64/mips3/nonshared/gcrt1.o} \
%{!pg:%{p:/usr/lib64/mips3/nonshared/mcrt1.o \
/usr/lib64/mips3/nonshared/libprof1.a} \
%{!p:/usr/lib64/mips3/nonshared/crt1.o}}}} \
%{!mabi*: \
%{mips4:%{pg:/usr/lib32/mips4/nonshared/gcrt1.o%s} \
%{!pg:%{p:/usr/lib32/mips4/nonshared/mcrt1.o%s \
/usr/lib32/mips4/nonshared/libprof1.a%s} \
%{!p:/usr/lib32/mips4/nonshared/crt1.o%s}}} \
%{!mips4:%{pg:/usr/lib32/mips3/nonshared/gcrt1.o%s} \
%{!pg:%{p:/usr/lib32/mips3/nonshared/mcrt1.o%s \
/usr/lib32/mips3/nonshared/libprof1.a%s} \
%{!pg:%{p:/usr/lib32/mips3/nonshared/mcrt1.o%s \
/usr/lib32/mips3/nonshared/libprof1.a%s} \
%{!p:/usr/lib32/mips3/nonshared/crt1.o%s}}}}}} \
%{mabi=n32: %{mips4:-L/usr/lib32/mips4} %{!mips4:-L/usr/lib32/mips3} \ %{mabi=n32: %{mips4:-L/usr/lib32/mips4} %{!mips4:-L/usr/lib32/mips3} \
-L/usr/lib32} \ -L/usr/lib32} \
%{mabi=64: %{mips4:-L/usr/lib64/mips4} %{!mips4:-L/usr/lib64/mips3} \ %{mabi=64: %{mips4:-L/usr/lib64/mips4} %{!mips4:-L/usr/lib64/mips3} \
...@@ -479,7 +515,9 @@ do { \ ...@@ -479,7 +515,9 @@ do { \
%{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} %{mips4} \ %{G*} %{EB} %{EL} %{mips1} %{mips2} %{mips3} %{mips4} \
%{bestGnum} %{shared} %{non_shared} \ %{bestGnum} %{shared} %{non_shared} \
%{call_shared} %{no_archive} %{exact_version} %{w} \ %{call_shared} %{no_archive} %{exact_version} %{w} \
%{!shared: %{!non_shared: %{!call_shared: -call_shared -no_unresolved}}} \ %{static: -non_shared} \
%{!static: \
%{!shared: %{!non_shared: %{!call_shared: -call_shared -no_unresolved}}}} \
%{rpath} -init __do_global_ctors -fini __do_global_dtors \ %{rpath} -init __do_global_ctors -fini __do_global_dtors \
%{shared:-hidden_symbol __do_global_ctors,__do_global_dtors} \ %{shared:-hidden_symbol __do_global_ctors,__do_global_dtors} \
-_SYSTYPE_SVR4 %{mabi=32: -32}%{mabi=n32: -n32}%{mabi=64: -64} %{!mabi*: -n32}" -_SYSTYPE_SVR4 %{mabi=32: -32}%{mabi=n32: -n32}%{mabi=64: -64} %{!mabi*: -n32}"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment