]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/blame - src/patches/gcc-4.1.2-specs-1.patch
Add recently changed files to core update.
[people/teissler/ipfire-2.x.git] / src / patches / gcc-4.1.2-specs-1.patch
CommitLineData
51f9e7ac
MT
1diff -Naur gcc-4.1.2.orig/gcc/config/alpha/linux-elf.h gcc-4.1.2/gcc/config/alpha/linux-elf.h
2--- gcc-4.1.2.orig/gcc/config/alpha/linux-elf.h 2005-06-25 01:22:41.000000000 +0000
3+++ gcc-4.1.2/gcc/config/alpha/linux-elf.h 2011-09-01 17:11:11.000000000 +0000
4@@ -27,7 +27,7 @@
5 #define SUBTARGET_EXTRA_SPECS \
6 { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
7
8-#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
9+#define ELF_DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
10
11 #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
12 %{O*:-O3} %{!O*:-O1} \
13diff -Naur gcc-4.1.2.orig/gcc/config/arm/linux-eabi.h gcc-4.1.2/gcc/config/arm/linux-eabi.h
14--- gcc-4.1.2.orig/gcc/config/arm/linux-eabi.h 2005-11-15 14:32:13.000000000 +0000
15+++ gcc-4.1.2/gcc/config/arm/linux-eabi.h 2011-09-01 17:11:47.000000000 +0000
16@@ -53,7 +53,7 @@
17 /* Use ld-linux.so.3 so that it will be possible to run "classic"
18 GNU/Linux binaries on an EABI system. */
19 #undef LINUX_TARGET_INTERPRETER
20-#define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.3"
21+#define LINUX_TARGET_INTERPRETER "/tools/lib/ld-linux.so.3"
22
23 /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
24 use the GNU/Linux version, not the generic BPABI version. */
25diff -Naur gcc-4.1.2.orig/gcc/config/arm/linux-elf.h gcc-4.1.2/gcc/config/arm/linux-elf.h
26--- gcc-4.1.2.orig/gcc/config/arm/linux-elf.h 2005-10-10 01:04:31.000000000 +0000
27+++ gcc-4.1.2/gcc/config/arm/linux-elf.h 2011-09-01 17:11:11.000000000 +0000
28@@ -51,7 +51,7 @@
29
30 #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
31
32-#define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.2"
33+#define LINUX_TARGET_INTERPRETER "/tools/lib/ld-linux.so.2"
34
35 #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \
36 %{b} \
37diff -Naur gcc-4.1.2.orig/gcc/config/frv/linux.h gcc-4.1.2/gcc/config/frv/linux.h
38--- gcc-4.1.2.orig/gcc/config/frv/linux.h 2005-06-25 01:22:41.000000000 +0000
39+++ gcc-4.1.2/gcc/config/frv/linux.h 2011-09-01 17:11:11.000000000 +0000
40@@ -41,7 +41,7 @@
41 %{mfdpic: -m elf32frvfd -z text} %{shared} %{pie} \
42 %{!shared: %{!static: \
43 %{rdynamic:-export-dynamic} \
44- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
45+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
46 %{static}}"
47
48 /* Support for compile-time default CPU. */
49diff -Naur gcc-4.1.2.orig/gcc/config/i386/gnu.h gcc-4.1.2/gcc/config/i386/gnu.h
50--- gcc-4.1.2.orig/gcc/config/i386/gnu.h 2004-09-08 00:17:19.000000000 +0000
51+++ gcc-4.1.2/gcc/config/i386/gnu.h 2011-09-01 17:11:11.000000000 +0000
52@@ -27,7 +27,7 @@
53 %{!shared: \
54 %{!static: \
55 %{rdynamic:-export-dynamic} \
56- %{!dynamic-linker:-dynamic-linker /lib/ld.so}} \
57+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so}} \
58 %{static:-static}}"
59
60 #undef STARTFILE_SPEC
61diff -Naur gcc-4.1.2.orig/gcc/config/i386/linux64.h gcc-4.1.2/gcc/config/i386/linux64.h
62--- gcc-4.1.2.orig/gcc/config/i386/linux64.h 2005-08-10 17:53:01.000000000 +0000
63+++ gcc-4.1.2/gcc/config/i386/linux64.h 2011-09-01 17:11:11.000000000 +0000
64@@ -60,8 +60,8 @@
65 %{!shared: \
66 %{!static: \
67 %{rdynamic:-export-dynamic} \
68- %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
69- %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \
70+ %{m32:%{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
71+ %{!m32:%{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux-x86-64.so.2}}} \
72 %{static:-static}}"
73
74 /* Similar to standard Linux, but adding -ffast-math support. */
75diff -Naur gcc-4.1.2.orig/gcc/config/i386/linux.h gcc-4.1.2/gcc/config/i386/linux.h
76--- gcc-4.1.2.orig/gcc/config/i386/linux.h 2005-08-10 17:53:01.000000000 +0000
77+++ gcc-4.1.2/gcc/config/i386/linux.h 2011-09-01 17:11:11.000000000 +0000
78@@ -105,7 +105,7 @@
79 /* If ELF is the default format, we should not use /lib/elf. */
80
81 #define LINK_EMULATION "elf_i386"
82-#define DYNAMIC_LINKER "/lib/ld-linux.so.2"
83+#define DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
84
85 #undef SUBTARGET_EXTRA_SPECS
86 #define SUBTARGET_EXTRA_SPECS \
87diff -Naur gcc-4.1.2.orig/gcc/config/ia64/linux.h gcc-4.1.2/gcc/config/ia64/linux.h
88--- gcc-4.1.2.orig/gcc/config/ia64/linux.h 2006-12-12 15:24:07.000000000 +0000
89+++ gcc-4.1.2/gcc/config/ia64/linux.h 2011-09-01 17:11:11.000000000 +0000
90@@ -43,7 +43,7 @@
91 %{!shared: \
92 %{!static: \
93 %{rdynamic:-export-dynamic} \
94- %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \
95+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux-ia64.so.2}} \
96 %{static:-static}}"
97
98 #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
99diff -Naur gcc-4.1.2.orig/gcc/config/ia64/linux.h.orig gcc-4.1.2/gcc/config/ia64/linux.h.orig
100--- gcc-4.1.2.orig/gcc/config/ia64/linux.h.orig 1970-01-01 00:00:00.000000000 +0000
101+++ gcc-4.1.2/gcc/config/ia64/linux.h.orig 2006-12-12 15:24:07.000000000 +0000
102@@ -0,0 +1,59 @@
103+/* Definitions for ia64-linux target. */
104+
105+/* This macro is a C statement to print on `stderr' a string describing the
106+ particular machine description choice. */
107+
108+#define TARGET_VERSION fprintf (stderr, " (IA-64) Linux");
109+
110+/* This is for -profile to use -lc_p instead of -lc. */
111+#undef CC1_SPEC
112+#define CC1_SPEC "%{profile:-p} %{G*}"
113+
114+/* Target OS builtins. */
115+#define TARGET_OS_CPP_BUILTINS() \
116+do { \
117+ LINUX_TARGET_OS_CPP_BUILTINS(); \
118+ builtin_define("_LONGLONG"); \
119+} while (0)
120+
121+/* Need to override linux.h STARTFILE_SPEC, since it has crtbeginT.o in. */
122+#undef STARTFILE_SPEC
123+#ifdef HAVE_LD_PIE
124+#define STARTFILE_SPEC \
125+ "%{!shared: %{pg|p|profile:gcrt1.o%s;pie:Scrt1.o%s;:crt1.o%s}}\
126+ crti.o%s %{shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
127+#else
128+#define STARTFILE_SPEC \
129+ "%{!shared: %{pg|p|profile:gcrt1.o%s;:crt1.o%s}}\
130+ crti.o%s %{shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
131+#endif
132+
133+/* Similar to standard Linux, but adding -ffast-math support. */
134+#undef ENDFILE_SPEC
135+#define ENDFILE_SPEC \
136+ "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
137+ %{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
138+
139+/* Define this for shared library support because it isn't in the main
140+ linux.h file. */
141+
142+#undef LINK_SPEC
143+#define LINK_SPEC "\
144+ %{shared:-shared} \
145+ %{!shared: \
146+ %{!static: \
147+ %{rdynamic:-export-dynamic} \
148+ %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \
149+ %{static:-static}}"
150+
151+#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
152+
153+#define JMP_BUF_SIZE 76
154+
155+/* Override linux.h LINK_EH_SPEC definition.
156+ Signalize that because we have fde-glibc, we don't need all C shared libs
157+ linked against -lgcc_s. */
158+#undef LINK_EH_SPEC
159+#define LINK_EH_SPEC ""
160+
161+#define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
162diff -Naur gcc-4.1.2.orig/gcc/config/linux.h gcc-4.1.2/gcc/config/linux.h
163--- gcc-4.1.2.orig/gcc/config/linux.h 2005-08-06 13:26:35.000000000 +0000
164+++ gcc-4.1.2/gcc/config/linux.h 2011-09-01 17:11:11.000000000 +0000
165@@ -104,3 +104,7 @@
166 #define TARGET_C99_FUNCTIONS 1
167
168 #define TARGET_POSIX_IO
169+
170+/* Remove /usr/include from the end of the include search path. */
171+#undef STANDARD_INCLUDE_DIR
172+#define STANDARD_INCLUDE_DIR 0
173diff -Naur gcc-4.1.2.orig/gcc/config/m32r/linux.h gcc-4.1.2/gcc/config/m32r/linux.h
174--- gcc-4.1.2.orig/gcc/config/m32r/linux.h 2005-07-08 10:00:15.000000000 +0000
175+++ gcc-4.1.2/gcc/config/m32r/linux.h 2011-09-01 17:11:11.000000000 +0000
176@@ -66,7 +66,7 @@
177 %{!ibcs: \
178 %{!static: \
179 %{rdynamic:-export-dynamic} \
180- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
181+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
182 %{static:-static}}}"
183 #else
184 #define LINK_SPEC "%(link_cpu) -m m32relf_linux %{shared:-shared} \
185@@ -74,7 +74,7 @@
186 %{!ibcs: \
187 %{!static: \
188 %{rdynamic:-export-dynamic} \
189- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
190+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
191 %{static:-static}}}"
192 #endif
193
194diff -Naur gcc-4.1.2.orig/gcc/config/m68k/linux.h gcc-4.1.2/gcc/config/m68k/linux.h
195--- gcc-4.1.2.orig/gcc/config/m68k/linux.h 2005-06-25 01:22:41.000000000 +0000
196+++ gcc-4.1.2/gcc/config/m68k/linux.h 2011-09-01 17:11:11.000000000 +0000
197@@ -128,7 +128,7 @@
198 %{!shared: \
199 %{!static: \
200 %{rdynamic:-export-dynamic} \
201- %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \
202+ %{!dynamic-linker*:-dynamic-linker /tools/lib/ld.so.1}} \
203 %{static}}"
204
205 /* For compatibility with linux/a.out */
206diff -Naur gcc-4.1.2.orig/gcc/config/mips/linux64.h gcc-4.1.2/gcc/config/mips/linux64.h
207--- gcc-4.1.2.orig/gcc/config/mips/linux64.h 2005-06-25 01:22:41.000000000 +0000
208+++ gcc-4.1.2/gcc/config/mips/linux64.h 2011-09-01 17:11:11.000000000 +0000
209@@ -47,9 +47,9 @@
210 %{!static: \
211 %{rdynamic:-export-dynamic} \
212 %{!dynamic-linker: \
213- %{mabi=n32: -dynamic-linker /lib32/ld.so.1} \
214- %{mabi=64: -dynamic-linker /lib64/ld.so.1} \
215- %{mabi=32: -dynamic-linker /lib/ld.so.1}}} \
216+ %{mabi=n32: -dynamic-linker /tools/lib32/ld.so.1} \
217+ %{mabi=64: -dynamic-linker /tools/lib64/ld.so.1} \
218+ %{mabi=32: -dynamic-linker /tools/lib/ld.so.1}}} \
219 %{static:-static}}} \
220 %{mabi=n32:-melf32%{EB:b}%{EL:l}tsmipn32} \
221 %{mabi=64:-melf64%{EB:b}%{EL:l}tsmip} \
222diff -Naur gcc-4.1.2.orig/gcc/config/mips/linux.h gcc-4.1.2/gcc/config/mips/linux.h
223--- gcc-4.1.2.orig/gcc/config/mips/linux.h 2006-12-17 13:57:31.000000000 +0000
224+++ gcc-4.1.2/gcc/config/mips/linux.h 2011-09-01 17:11:11.000000000 +0000
225@@ -112,7 +112,7 @@
226 %{!ibcs: \
227 %{!static: \
228 %{rdynamic:-export-dynamic} \
229- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
230+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
231 %{static:-static}}}"
232
233 #undef SUBTARGET_ASM_SPEC
234diff -Naur gcc-4.1.2.orig/gcc/config/mn10300/linux.h gcc-4.1.2/gcc/config/mn10300/linux.h
235--- gcc-4.1.2.orig/gcc/config/mn10300/linux.h 2005-06-25 01:22:41.000000000 +0000
236+++ gcc-4.1.2/gcc/config/mn10300/linux.h 2011-09-01 17:11:11.000000000 +0000
237@@ -37,7 +37,7 @@
238 #define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \
239 %{!static: \
240 %{rdynamic:-export-dynamic} \
241- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
242+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
243 %{static:-static}"
244
245 #undef PROCESSOR_DEFAULT
246diff -Naur gcc-4.1.2.orig/gcc/config/pa/pa-linux.h gcc-4.1.2/gcc/config/pa/pa-linux.h
247--- gcc-4.1.2.orig/gcc/config/pa/pa-linux.h 2007-01-12 02:23:38.000000000 +0000
248+++ gcc-4.1.2/gcc/config/pa/pa-linux.h 2011-09-01 17:11:11.000000000 +0000
249@@ -55,7 +55,7 @@
250 %{!shared: \
251 %{!static: \
252 %{rdynamic:-export-dynamic} \
253- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
254+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
255 %{static:-static}}"
256
257 /* glibc's profiling functions don't need gcc to allocate counters. */
258diff -Naur gcc-4.1.2.orig/gcc/config/rs6000/linux64.h gcc-4.1.2/gcc/config/rs6000/linux64.h
259--- gcc-4.1.2.orig/gcc/config/rs6000/linux64.h 2006-02-10 20:58:33.000000000 +0000
260+++ gcc-4.1.2/gcc/config/rs6000/linux64.h 2011-09-01 17:11:11.000000000 +0000
261@@ -339,11 +339,11 @@
262
263 #define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \
264 %{rdynamic:-export-dynamic} \
265- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
266+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}"
267
268 #define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \
269 %{rdynamic:-export-dynamic} \
270- %{!dynamic-linker:-dynamic-linker /lib64/ld64.so.1}}}"
271+ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld64.so.1}}}"
272
273 #undef TOC_SECTION_ASM_OP
274 #define TOC_SECTION_ASM_OP \
275diff -Naur gcc-4.1.2.orig/gcc/config/rs6000/sysv4.h gcc-4.1.2/gcc/config/rs6000/sysv4.h
276--- gcc-4.1.2.orig/gcc/config/rs6000/sysv4.h 2006-02-10 20:58:33.000000000 +0000
277+++ gcc-4.1.2/gcc/config/rs6000/sysv4.h 2011-09-01 17:11:11.000000000 +0000
278@@ -1041,7 +1041,7 @@
279
280 #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
281 %{rdynamic:-export-dynamic} \
282- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
283+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}"
284
285 #if defined(HAVE_LD_EH_FRAME_HDR)
286 # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
287@@ -1072,7 +1072,7 @@
288
289 #define LINK_OS_GNU_SPEC "-m elf32ppclinux %{!shared: %{!static: \
290 %{rdynamic:-export-dynamic} \
291- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
292+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}"
293
294 #define CPP_OS_GNU_SPEC "-D__unix__ -D__gnu_hurd__ -D__GNU__ \
295 %{!undef: \
296diff -Naur gcc-4.1.2.orig/gcc/config/s390/linux.h gcc-4.1.2/gcc/config/s390/linux.h
297--- gcc-4.1.2.orig/gcc/config/s390/linux.h 2006-12-12 15:24:07.000000000 +0000
298+++ gcc-4.1.2/gcc/config/s390/linux.h 2011-09-01 17:11:11.000000000 +0000
299@@ -86,8 +86,8 @@
300 %{!static: \
301 %{rdynamic:-export-dynamic} \
302 %{!dynamic-linker: \
303- %{m31:-dynamic-linker /lib/ld.so.1} \
304- %{m64:-dynamic-linker /lib/ld64.so.1}}}}"
305+ %{m31:-dynamic-linker /tools/lib/ld.so.1} \
306+ %{m64:-dynamic-linker /tools/lib/ld64.so.1}}}}"
307
308 #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
309
310diff -Naur gcc-4.1.2.orig/gcc/config/s390/linux.h.orig gcc-4.1.2/gcc/config/s390/linux.h.orig
311--- gcc-4.1.2.orig/gcc/config/s390/linux.h.orig 1970-01-01 00:00:00.000000000 +0000
312+++ gcc-4.1.2/gcc/config/s390/linux.h.orig 2006-12-12 15:24:07.000000000 +0000
313@@ -0,0 +1,107 @@
314+/* Definitions for Linux for S/390.
315+ Copyright (C) 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
316+ Contributed by Hartmut Penner (hpenner@de.ibm.com) and
317+ Ulrich Weigand (uweigand@de.ibm.com).
318+
319+This file is part of GCC.
320+
321+GCC is free software; you can redistribute it and/or modify it under
322+the terms of the GNU General Public License as published by the Free
323+Software Foundation; either version 2, or (at your option) any later
324+version.
325+
326+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
327+WARRANTY; without even the implied warranty of MERCHANTABILITY or
328+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
329+for more details.
330+
331+You should have received a copy of the GNU General Public License
332+along with GCC; see the file COPYING. If not, write to the Free
333+Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
334+02110-1301, USA. */
335+
336+#ifndef _LINUX_H
337+#define _LINUX_H
338+
339+/* Target specific version string. */
340+
341+#ifdef DEFAULT_TARGET_64BIT
342+#undef TARGET_VERSION
343+#define TARGET_VERSION fprintf (stderr, " (Linux for zSeries)");
344+#else
345+#undef TARGET_VERSION
346+#define TARGET_VERSION fprintf (stderr, " (Linux for S/390)");
347+#endif
348+
349+
350+/* Target specific type definitions. */
351+
352+/* ??? Do we really want long as size_t on 31-bit? */
353+#undef SIZE_TYPE
354+#define SIZE_TYPE (TARGET_64BIT ? "long unsigned int" : "long unsigned int")
355+#undef PTRDIFF_TYPE
356+#define PTRDIFF_TYPE (TARGET_64BIT ? "long int" : "int")
357+
358+#undef WCHAR_TYPE
359+#define WCHAR_TYPE "int"
360+#undef WCHAR_TYPE_SIZE
361+#define WCHAR_TYPE_SIZE 32
362+
363+
364+/* Target specific preprocessor settings. */
365+
366+#define TARGET_OS_CPP_BUILTINS() \
367+ do \
368+ { \
369+ LINUX_TARGET_OS_CPP_BUILTINS(); \
370+ if (flag_pic) \
371+ { \
372+ builtin_define ("__PIC__"); \
373+ builtin_define ("__pic__"); \
374+ } \
375+ } \
376+ while (0)
377+
378+
379+/* Target specific assembler settings. */
380+
381+#undef ASM_SPEC
382+#define ASM_SPEC "%{m31&m64}%{mesa&mzarch}%{march=*}"
383+
384+
385+/* Target specific linker settings. */
386+
387+#ifdef DEFAULT_TARGET_64BIT
388+#define MULTILIB_DEFAULTS { "m64" }
389+#else
390+#define MULTILIB_DEFAULTS { "m31" }
391+#endif
392+
393+#undef LINK_SPEC
394+#define LINK_SPEC \
395+ "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
396+ %{shared:-shared} \
397+ %{!shared: \
398+ %{static:-static} \
399+ %{!static: \
400+ %{rdynamic:-export-dynamic} \
401+ %{!dynamic-linker: \
402+ %{m31:-dynamic-linker /lib/ld.so.1} \
403+ %{m64:-dynamic-linker /lib/ld64.so.1}}}}"
404+
405+#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
406+
407+#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
408+
409+#define MD_UNWIND_SUPPORT "config/s390/linux-unwind.h"
410+
411+#ifdef TARGET_LIBC_PROVIDES_SSP
412+/* s390 glibc provides __stack_chk_guard in 0x14(tp),
413+ s390x glibc provides it at 0x28(tp). */
414+#define TARGET_THREAD_SSP_OFFSET (TARGET_64BIT ? 0x28 : 0x14)
415+#endif
416+
417+/* Define if long doubles should be mangled as 'g'. */
418+#define TARGET_ALTERNATE_LONG_DOUBLE_MANGLING
419+
420+#endif
421diff -Naur gcc-4.1.2.orig/gcc/config/sh/linux.h gcc-4.1.2/gcc/config/sh/linux.h
422--- gcc-4.1.2.orig/gcc/config/sh/linux.h 2005-06-25 01:22:41.000000000 +0000
423+++ gcc-4.1.2/gcc/config/sh/linux.h 2011-09-01 17:11:11.000000000 +0000
424@@ -60,7 +60,7 @@
425 "%{shared:-shared} \
426 %{!static: \
427 %{rdynamic:-export-dynamic} \
428- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
429+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
430 %{static:-static}"
431
432 /* Output assembler code to STREAM to call the profiler. */
433diff -Naur gcc-4.1.2.orig/gcc/config/sparc/linux64.h gcc-4.1.2/gcc/config/sparc/linux64.h
434--- gcc-4.1.2.orig/gcc/config/sparc/linux64.h 2006-02-11 08:38:51.000000000 +0000
435+++ gcc-4.1.2/gcc/config/sparc/linux64.h 2011-09-01 17:11:11.000000000 +0000
436@@ -162,21 +162,21 @@
437 { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
438 { "link_arch", LINK_ARCH_SPEC },
439
440-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
441+#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/tools/lib %{shared:-shared} \
442 %{!shared: \
443 %{!ibcs: \
444 %{!static: \
445 %{rdynamic:-export-dynamic} \
446- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
447+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
448 %{static:-static}}} \
449 "
450
451-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
452+#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/tools/lib64 %{shared:-shared} \
453 %{!shared: \
454 %{!ibcs: \
455 %{!static: \
456 %{rdynamic:-export-dynamic} \
457- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \
458+ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux.so.2}} \
459 %{static:-static}}} \
460 "
461
462@@ -252,12 +252,12 @@
463 #else /* !SPARC_BI_ARCH */
464
465 #undef LINK_SPEC
466-#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
467+#define LINK_SPEC "-m elf64_sparc -Y P,/tools/lib64 %{shared:-shared} \
468 %{!shared: \
469 %{!ibcs: \
470 %{!static: \
471 %{rdynamic:-export-dynamic} \
472- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \
473+ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux.so.2}} \
474 %{static:-static}}} \
475 %{mlittle-endian:-EL} \
476 %{!mno-relax:%{!r:-relax}} \
477diff -Naur gcc-4.1.2.orig/gcc/config/sparc/linux.h gcc-4.1.2/gcc/config/sparc/linux.h
478--- gcc-4.1.2.orig/gcc/config/sparc/linux.h 2006-02-11 08:38:51.000000000 +0000
479+++ gcc-4.1.2/gcc/config/sparc/linux.h 2011-09-01 17:11:11.000000000 +0000
480@@ -126,13 +126,13 @@
481 /* If ELF is the default format, we should not use /lib/elf. */
482
483 #undef LINK_SPEC
484-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
485+#define LINK_SPEC "-m elf32_sparc -Y P,/tools/lib %{shared:-shared} \
486 %{!mno-relax:%{!r:-relax}} \
487 %{!shared: \
488 %{!ibcs: \
489 %{!static: \
490 %{rdynamic:-export-dynamic} \
491- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
492+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
493 %{static:-static}}}"
494
495 /* The sun bundled assembler doesn't accept -Yd, (and neither does gas).
496diff -Naur gcc-4.1.2.orig/gcc/config/xtensa/linux.h gcc-4.1.2/gcc/config/xtensa/linux.h
497--- gcc-4.1.2.orig/gcc/config/xtensa/linux.h 2005-06-25 01:22:41.000000000 +0000
498+++ gcc-4.1.2/gcc/config/xtensa/linux.h 2011-09-01 17:11:11.000000000 +0000
499@@ -50,7 +50,7 @@
500 %{!ibcs: \
501 %{!static: \
502 %{rdynamic:-export-dynamic} \
503- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
504+ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
505 %{static:-static}}}"
506
507 #undef LOCAL_LABEL_PREFIX