]> git.ipfire.org Git - thirdparty/gcc.git/blame - libgcc/config.host
Add crtfastmath for AArch64.
[thirdparty/gcc.git] / libgcc / config.host
CommitLineData
fa958513 1# libgcc host-specific configuration file.
ac1dca3c 2# Copyright (C) 1997-2014 Free Software Foundation, Inc.
fa958513
DJ
3
4#This file is part of GCC.
5
6#GCC is free software; you can redistribute it and/or modify it under
7#the terms of the GNU General Public License as published by the Free
748086b7 8#Software Foundation; either version 3, or (at your option) any later
fa958513
DJ
9#version.
10
11#GCC is distributed in the hope that it will be useful, but WITHOUT
12#ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13#FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14#for more details.
15
16#You should have received a copy of the GNU General Public License
748086b7
JJ
17#along with GCC; see the file COPYING3. If not see
18#<http://www.gnu.org/licenses/>.
fa958513
DJ
19
20# This is the libgcc host-specific configuration file
21# where a configuration type is mapped to different system-specific
22# definitions and files. This is invoked by the autoconf-generated
23# configure script. Putting it in a separate shell file lets us skip
24# running autoconf when modifying host-specific information.
25
26# This file bears an obvious resemblance to gcc/config.gcc. The cases
27# should be kept similar, to ease moving library-specific settings
28# from config.gcc to this file. That is also why tmake_file is
29# left as tmake_file, rather than hmake_file, even though this library
30# switches on ${host}.
31
32# This file switches on the shell variable ${host}, and also uses the
33# following shell variables:
34#
35# with_* Various variables as set by configure.
36
37# This file sets the following shell variables for use by the
38# autoconf-generated configure script:
39#
40# asm_hidden_op The assembler pseudo-op to use for hide
41# lists for object files implemented in
42# assembly (with -fvisibility=hidden for C).
43# The default is ".hidden".
44# cpu_type The name of the cpu, if different from the first
45# chunk of the canonical host name.
10e48e39
RO
46# enable_execute_stack The name of a source file implementing
47# __enable_execute_stack.
fa958513
DJ
48# extra_parts List of extra object files that should be compiled
49# for this target machine. This may be overridden
50# by setting EXTRA_PARTS in a tmake_file fragment.
51# If either is set, EXTRA_PARTS and
52# EXTRA_MULTILIB_PARTS inherited from the GCC
53# subdirectory will be ignored.
58cd1d70
RO
54# md_unwind_header The name of a header file defining
55# MD_FALLBACK_FRAME_STATE_FOR.
aca0b0b3
RO
56# sfp_machine_header The name of a sfp-machine.h header file for soft-fp.
57# Defaults to "$cpu_type/sfp-machine.h" if it exists,
58# no-sfp-machine.h otherwise.
fa958513 59# tmake_file A list of machine-description-specific
200feb07 60# makefile fragments.
852b75ed
RO
61# tm_defines List of target macros to define for all compilations.
62# tm_file A list of target macro files used only for code
63# built for the target, not the host. These files
64# are relative to $srcdir/config and must not have
65# the same names as files in $srcdir/../gcc/config.
201cdb74
RO
66# unwind_header The name of the header file declaring the unwind
67# runtime interface routines.
fa958513
DJ
68
69asm_hidden_op=.hidden
10e48e39 70enable_execute_stack=
fa958513
DJ
71extra_parts=
72tmake_file=
852b75ed
RO
73tm_file=
74tm_define=
58cd1d70 75md_unwind_header=no-unwind.h
201cdb74 76unwind_header=unwind-generic.h
fa958513
DJ
77
78# Set default cpu_type so it can be updated in each machine entry.
79cpu_type=`echo ${host} | sed 's/-.*$//'`
80case ${host} in
81m32c*-*-*)
82 cpu_type=m32c
569dc494 83 tmake_file=t-fdpbit
fa958513 84 ;;
1e3d5096
IB
85aarch64*-*-*)
86 cpu_type=aarch64
87 ;;
fa958513
DJ
88alpha*-*-*)
89 cpu_type=alpha
90 ;;
91am33_2.0-*-linux*)
92 cpu_type=mn10300
93 ;;
d38a64b4
JR
94arc*-*-*)
95 cpu_type=arc
96 ;;
fa958513
DJ
97arm*-*-*)
98 cpu_type=arm
99 ;;
47583040
AH
100avr-*-*)
101 cpu_type=avr
102 ;;
fa958513
DJ
103bfin*-*)
104 cpu_type=bfin
105 ;;
b25364a0
S
106cr16-*-*)
107 ;;
0e499e75
HPN
108crisv32-*-*)
109 cpu_type=cris
110 ;;
7d33c31d
KH
111fido-*-*)
112 cpu_type=m68k
113 ;;
fa958513
DJ
114frv*) cpu_type=frv
115 ;;
cceb575c
AG
116moxie*) cpu_type=moxie
117 ;;
fa958513
DJ
118i[34567]86-*-*)
119 cpu_type=i386
120 ;;
121x86_64-*-*)
122 cpu_type=i386
123 ;;
124ia64-*-*)
125 ;;
cd985f66 126hppa*-*-*)
fa958513
DJ
127 cpu_type=pa
128 ;;
aa4945c1
JB
129lm32*-*-*)
130 cpu_type=lm32
131 ;;
fa958513
DJ
132m32r*-*-*)
133 cpu_type=m32r
134 ;;
fa958513
DJ
135m68k-*-*)
136 ;;
7acf4da6
DD
137mep*-*-*)
138 ;;
80920132
ME
139microblaze*-*-*)
140 cpu_type=microblaze
141 ;;
fa958513 142mips*-*-*)
1ea0a651 143 # All MIPS targets provide a full set of FP routines.
fa958513 144 cpu_type=mips
1c51d688
RS
145 tmake_file="mips/t-mips"
146 if test "${libgcc_cv_mips_hard_float}" = yes; then
147 tmake_file="${tmake_file} t-hardfp-sfdf t-hardfp"
148 else
149 tmake_file="${tmake_file} t-softfp-sfdf"
150 fi
1ea0a651
RS
151 if test "${ac_cv_sizeof_long_double}" = 16; then
152 tmake_file="${tmake_file} mips/t-softfp-tf"
153 fi
154 if test "${host_address}" = 64; then
155 tmake_file="${tmake_file} mips/t-mips64"
156 fi
157 tmake_file="${tmake_file} t-softfp"
fa958513 158 ;;
9304f876
CJW
159nds32*-*)
160 cpu_type=nds32
161 ;;
e430824f
CLT
162nios2*-*-*)
163 cpu_type=nios2
164 ;;
fa958513
DJ
165powerpc*-*-*)
166 cpu_type=rs6000
167 ;;
168rs6000*-*-*)
169 ;;
170score*-*-*)
171 cpu_type=score
172 ;;
173sparc64*-*-*)
174 cpu_type=sparc
175 ;;
176sparc*-*-*)
177 cpu_type=sparc
178 ;;
179spu*-*-*)
180 cpu_type=spu
181 ;;
182s390*-*-*)
183 cpu_type=s390
184 ;;
185# Note the 'l'; we need to be able to match e.g. "shle" or "shl".
186sh[123456789lbe]*-*-*)
187 cpu_type=sh
188 ;;
341c653c
WL
189tilegx*-*-*)
190 cpu_type=tilegx
191 ;;
192tilepro*-*-*)
193 cpu_type=tilepro
194 ;;
4be46d19
NC
195v850*-*-*)
196 cpu_type=v850
197 ;;
bcead286
BS
198tic6x-*-*)
199 cpu_type=c6x
200 ;;
fa958513
DJ
201esac
202
203# Common parts for widely ported systems.
204case ${host} in
205*-*-darwin*)
206 asm_hidden_op=.private_extern
f9989b51 207 tmake_file="$tmake_file t-darwin ${cpu_type}/t-darwin t-libgcc-pic t-slibgcc-darwin"
e2362f5d 208 extra_parts="crt3.o crttms.o crttme.o"
fa958513 209 ;;
dbed5a9b
JM
210*-*-dragonfly*)
211 tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip"
212 tmake_file="$tmake_file t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
213 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
214 ;;
fa958513
DJ
215*-*-freebsd*)
216 # This is the generic ELF configuration of FreeBSD. Later
217 # machine-specific sections may refine and add to this
218 # configuration.
f9989b51 219 tmake_file="$tmake_file t-freebsd t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
5f73c6cc 220 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
b040f2be
RO
221 case ${target_thread_file} in
222 posix)
f9989b51 223 tmake_file="${tmake_file} t-freebsd-thread"
b040f2be
RO
224 # Before 5.0, FreeBSD can't bind shared libraries to -lc
225 # when "optionally" threaded via weak pthread_* checks.
226 case ${host} in
227 *-*-freebsd[34] | *-*-freebsd[34].*)
228 tmake_file="${tmake_file} t-slibgcc-nolc-override"
229 ;;
230 esac
231 ;;
232 esac
fa958513 233 ;;
201cdb74 234*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-knetbsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu)
f9989b51 235 tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver t-linux"
227a7dc8
RO
236 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
237 if test x$enable_vtable_verify = xyes; then
238 extra_parts="$extra_parts vtv_start.o vtv_end.o vtv_start_preinit.o vtv_end_preinit.o"
239 fi
fa958513 240 ;;
5f73c6cc 241*-*-lynxos*)
f9989b51 242 tmake_file="$tmake_file t-lynx $cpu_type/t-crtstuff t-crtstuff-pic t-libgcc-pic"
5f73c6cc
RO
243 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
244 ;;
fa958513 245*-*-netbsd*)
f9989b51 246 tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
5f73c6cc
RO
247 # NetBSD 1.7 and later are set up to use GCC's crtstuff for
248 # ELF configurations. We will clear extra_parts in the
249 # a.out configurations.
250 case ${host} in
251 *-*-netbsd*1.[7-9]* | *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
252 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
253 ;;
254 esac
fa958513
DJ
255 ;;
256*-*-openbsd*)
8eaee0f0 257 tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-eh-dw2-dip"
f9989b51
RO
258 case ${target_thread_file} in
259 posix)
260 tmake_file="$tmake_file t-openbsd-thread"
261 ;;
262 esac
fa958513
DJ
263 ;;
264*-*-rtems*)
c9cd1a07 265 tmake_file="$tmake_file t-rtems"
5f73c6cc 266 extra_parts="crtbegin.o crtend.o"
fa958513 267 ;;
ca24c5ad 268*-*-solaris2*)
201cdb74
RO
269 # Unless linker support and dl_iterate_phdr are present,
270 # unwind-dw2-fde-dip.c automatically falls back to unwind-dw2-fde.c.
f9989b51 271 tmake_file="$tmake_file t-sol2 t-eh-dw2-dip t-libgcc-pic t-slibgcc t-slibgcc-elf-ver"
ca24c5ad
RO
272 if test $with_gnu_ld = yes; then
273 tmake_file="$tmake_file t-slibgcc-gld"
274 else
275 tmake_file="$tmake_file t-slibgcc-sld"
276 fi
277 # Add cpu-specific t-sol2 after t-slibgcc-* so it can augment SHLIB_MAPFILES.
278 tmake_file="$tmake_file $cpu_type/t-sol2"
279 extra_parts="gmon.o crtbegin.o crtend.o"
280 case ${host} in
fbdd5d87 281 i?86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*)
ca24c5ad
RO
282 # Solaris 10+/x86 provides crt1.o, crti.o, crtn.o, and gcrt1.o as
283 # part of the base system.
284 ;;
285 sparc*-*-solaris2.1[0-9]*)
286 # Solaris 10+/SPARC lacks crt1.o and gcrt1.o.
287 extra_parts="$extra_parts crt1.o gcrt1.o"
288 ;;
289 *)
ca24c5ad
RO
290 extra_parts="$extra_parts crt1.o crti.o crtn.o gcrt1.o"
291 ;;
292 esac
293 ;;
5f73c6cc
RO
294*-*-uclinux*)
295 extra_parts="crtbegin.o crtend.o"
296 ;;
297*-*-*vms*)
298 tmake_file="vms/t-vms"
4b12e93d 299 extra_parts="crt0.o crtbegin.o crtbeginS.o crtend.o crtendS.o"
5f73c6cc 300 ;;
fa958513 301*-*-vxworks*)
f9989b51 302 tmake_file=t-vxworks
fa958513
DJ
303 ;;
304*-*-elf)
5f73c6cc 305 extra_parts="crtbegin.o crtend.o"
fa958513
DJ
306 ;;
307esac
308
10e48e39 309case ${host} in
dbed5a9b
JM
310*-*-darwin* | *-*-dragonfly* | *-*-freebsd* | *-*-netbsd* | *-*-openbsd* | \
311 *-*-solaris2*)
10e48e39
RO
312 enable_execute_stack=enable-execute-stack-mprotect.c
313 ;;
314i[34567]86-*-mingw* | x86_64-*-mingw*)
315 enable_execute_stack=config/i386/enable-execute-stack-mingw32.c
316 ;;
317*)
318 enable_execute_stack=enable-execute-stack-empty.c;
319 ;;
320esac
321
fa958513 322case ${host} in
1e3d5096
IB
323aarch64*-*-elf)
324 extra_parts="$extra_parts crtbegin.o crtend.o crti.o crtn.o"
b677236a 325 extra_parts="$extra_parts crtfastmath.o"
1e3d5096 326 tmake_file="${tmake_file} ${cpu_type}/t-aarch64"
b677236a 327 tmake_file="${tmake_file} ${cpu_type}/t-softfp t-softfp t-crtfm"
1e3d5096
IB
328 ;;
329aarch64*-*-linux*)
b677236a 330 extra_parts="$extra_parts crtfastmath.o"
1e3d5096
IB
331 md_unwind_header=aarch64/linux-unwind.h
332 tmake_file="${tmake_file} ${cpu_type}/t-aarch64"
b677236a 333 tmake_file="${tmake_file} ${cpu_type}/t-softfp t-softfp t-crtfm"
1e3d5096 334 ;;
ebb9f8b0 335alpha*-*-linux*)
f9989b51 336 tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee t-crtfm alpha/t-linux"
5ea41e3a 337 extra_parts="$extra_parts crtfastmath.o"
58cd1d70 338 md_unwind_header=alpha/linux-unwind.h
fa958513 339 ;;
fa958513 340alpha*-*-freebsd*)
f9989b51 341 tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee t-crtfm"
5f73c6cc 342 extra_parts="$extra_parts crtbeginT.o crtfastmath.o"
fa958513
DJ
343 ;;
344alpha*-*-netbsd*)
f9989b51 345 tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
fa958513
DJ
346 ;;
347alpha*-*-openbsd*)
f9989b51 348 tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
fa958513 349 ;;
fa958513 350alpha64-dec-*vms*)
f9989b51 351 tmake_file="$tmake_file alpha/t-alpha alpha/t-ieee alpha/t-vms t-slibgcc-vms"
5f73c6cc 352 extra_parts="$extra_parts vms-dwarf2.o vms-dwarf2eh.o"
58cd1d70 353 md_unwind_header=alpha/vms-unwind.h
fa958513
DJ
354 ;;
355alpha*-dec-*vms*)
f9989b51 356 tmake_file="$tmake_file alpha/t-alpha alpha/t-ieee alpha/t-vms t-slibgcc-vms"
5f73c6cc 357 extra_parts="$extra_parts vms-dwarf2.o vms-dwarf2eh.o"
58cd1d70 358 md_unwind_header=alpha/vms-unwind.h
fa958513 359 ;;
d38a64b4
JR
360arc*-*-elf*)
361 tmake_file="arc/t-arc-newlib arc/t-arc"
362 extra_parts="crti.o crtn.o crtend.o crtbegin.o crtendS.o crtbeginS.o libgmon.a crtg.o crtgend.o"
363 ;;
364arc*-*-linux-uclibc*)
365 tmake_file="${tmake_file} t-slibgcc-libgcc t-slibgcc-nolc-override arc/t-arc700-uClibc arc/t-arc"
366 extra_parts="crti.o crtn.o crtend.o crtbegin.o crtendS.o crtbeginS.o libgmon.a crtg.o crtgend.o"
367 ;;
fa958513 368arm-wrs-vxworks)
1a80085d 369 tmake_file="$tmake_file arm/t-arm arm/t-elf t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp"
5f73c6cc 370 extra_parts="$extra_parts crti.o crtn.o"
fa958513 371 ;;
fa958513 372arm*-*-netbsdelf*)
f9989b51 373 tmake_file="$tmake_file arm/t-arm arm/t-netbsd t-slibgcc-gld-nover"
fa958513 374 ;;
fa958513 375arm*-*-linux*) # ARM GNU/Linux with ELF
45b86625 376 tmake_file="${tmake_file} arm/t-arm t-fixedpoint-gnu-prefix"
5005fe22
RE
377 tmake_file="${tmake_file} arm/t-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc"
378 tm_file="$tm_file arm/bpabi-lib.h"
379 unwind_header=config/arm/unwind-arm.h
aca0b0b3 380 tmake_file="$tmake_file t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp"
fa958513
DJ
381 ;;
382arm*-*-uclinux*) # ARM ucLinux
655b30bf 383 tmake_file="${tmake_file} t-fixedpoint-gnu-prefix"
064c4ff2 384 tmake_file="$tmake_file arm/t-arm arm/t-elf t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp"
5005fe22
RE
385 tmake_file="${tmake_file} arm/t-bpabi"
386 tm_file="$tm_file arm/bpabi-lib.h"
387 unwind_header=config/arm/unwind-arm.h
5f73c6cc 388 extra_parts="$extra_parts crti.o crtn.o"
fa958513 389 ;;
153c8397 390arm*-*-eabi* | arm*-*-symbianelf* | arm*-*-rtems*)
45b86625 391 tmake_file="${tmake_file} arm/t-arm arm/t-elf t-fixedpoint-gnu-prefix"
852b75ed 392 tm_file="$tm_file arm/bpabi-lib.h"
201cdb74 393 case ${host} in
153c8397 394 arm*-*-eabi* | arm*-*-rtems*)
201cdb74 395 tmake_file="${tmake_file} arm/t-bpabi"
5f73c6cc 396 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
201cdb74
RO
397 ;;
398 arm*-*-symbianelf*)
b040f2be 399 tmake_file="${tmake_file} arm/t-symbian t-slibgcc-nolc-override"
852b75ed 400 tm_file="$tm_file arm/symbian-lib.h"
5f73c6cc 401 # Symbian OS provides its own startup code.
201cdb74
RO
402 ;;
403 esac
aca0b0b3 404 tmake_file="$tmake_file t-softfp-sfdf t-softfp-excl arm/t-softfp t-softfp"
201cdb74 405 unwind_header=config/arm/unwind-arm.h
fa958513 406 ;;
fa958513 407avr-*-rtems*)
d618bb2c 408 tmake_file="$tmake_file avr/t-avr avr/t-rtems t-fpbit"
852b75ed 409 tm_file="$tm_file avr/avr-lib.h"
5f73c6cc
RO
410 # Don't use default.
411 extra_parts=
fa958513
DJ
412 ;;
413avr-*-*)
569dc494
RO
414 # Make HImode functions for AVR
415 tmake_file="${cpu_type}/t-avr t-fpbit"
b588ae30
GJL
416 if test x${with_avrlibc} != xno; then
417 tmake_file="$tmake_file ${cpu_type}/t-avrlibc"
418 fi
852b75ed 419 tm_file="$tm_file avr/avr-lib.h"
fa958513
DJ
420 ;;
421bfin*-elf*)
200feb07 422 tmake_file="bfin/t-bfin bfin/t-crtlibid bfin/t-crtstuff t-libgcc-pic t-fdpbit"
5f73c6cc 423 extra_parts="$extra_parts crtbeginS.o crtendS.o crti.o crtn.o crtlibid.o"
fa958513
DJ
424 ;;
425bfin*-uclinux*)
200feb07 426 tmake_file="bfin/t-bfin bfin/t-crtlibid bfin/t-crtstuff t-libgcc-pic t-fdpbit"
5f73c6cc 427 extra_parts="$extra_parts crtbeginS.o crtendS.o crtlibid.o"
58cd1d70 428 md_unwind_header=bfin/linux-unwind.h
fa958513 429 ;;
344189f9 430bfin*-linux-uclibc*)
200feb07 431 tmake_file="$tmake_file bfin/t-bfin bfin/t-crtstuff t-libgcc-pic t-fdpbit bfin/t-linux"
344189f9
BS
432 # No need to build crtbeginT.o on uClibc systems. Should probably
433 # be moved to the OS specific section above.
434 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
58cd1d70 435 md_unwind_header=bfin/linux-unwind.h
344189f9 436 ;;
569dc494 437bfin*-rtems*)
45b86625 438 tmake_file="$tmake_file bfin/t-bfin t-fdpbit"
5f73c6cc 439 extra_parts="$extra_parts crti.o crtn.o"
569dc494 440 ;;
fa958513 441bfin*-*)
45b86625 442 tmake_file="$tmake_file bfin/t-bfin t-fdpbit"
5f73c6cc 443 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
fa958513 444 ;;
b25364a0
S
445cr16-*-elf)
446 tmake_file="${tmake_file} cr16/t-cr16 cr16/t-crtlibid t-fdpbit"
447 extra_parts="$extra_parts crti.o crtn.o crtlibid.o"
448 ;;
5f73c6cc 449crisv32-*-elf)
0e499e75 450 tmake_file="$tmake_file cris/t-cris t-softfp-sfdf t-softfp"
5f73c6cc 451 ;;
5f73c6cc 452cris-*-elf)
0e499e75 453 tmake_file="$tmake_file cris/t-cris t-softfp-sfdf t-softfp cris/t-elfmulti"
5f73c6cc 454 ;;
4081d704 455cris-*-linux* | crisv32-*-linux*)
0e499e75 456 tmake_file="$tmake_file cris/t-cris t-softfp-sfdf t-softfp cris/t-linux"
fa958513 457 ;;
feeeff5c
JR
458epiphany-*-elf*)
459 tmake_file="epiphany/t-epiphany t-fdpbit epiphany/t-custom-eqsf"
460 extra_parts="$extra_parts crti.o crtint.o crtrunc.o crtm1reg-r43.o crtm1reg-r63.o crtn.o"
461 ;;
fa958513 462fr30-*-elf)
45b86625 463 tmake_file="$tmake_file fr30/t-fr30 t-fdpbit"
5f73c6cc 464 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
465 ;;
466frv-*-elf)
5f73c6cc 467 tmake_file="$tmake_file frv/t-frv t-fdpbit"
852b75ed 468 tm_file="$tm_file frv/frv-abi.h"
5f73c6cc
RO
469 # Don't use crtbegin.o, crtend.o.
470 extra_parts="frvbegin.o frvend.o"
fa958513
DJ
471 ;;
472frv-*-*linux*)
45b86625 473 tmake_file="$tmake_file frv/t-frv frv/t-linux t-fdpbit"
852b75ed 474 tm_file="$tm_file frv/frv-abi.h"
fa958513 475 ;;
fa958513 476h8300-*-rtems*)
45b86625 477 tmake_file="$tmake_file h8300/t-h8300 t-fpbit"
852b75ed 478 tm_file="$tm_file h8300/h8300-lib.h"
5f73c6cc 479 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
480 ;;
481h8300-*-elf*)
45b86625 482 tmake_file="$tmake_file h8300/t-h8300 t-fpbit"
852b75ed 483 tm_file="$tm_file h8300/h8300-lib.h"
5f73c6cc 484 extra_parts="$extra_parts crti.o crtn.o"
fa958513 485 ;;
cd985f66 486hppa*64*-*-linux*)
45b86625 487 tmake_file="$tmake_file pa/t-linux pa/t-linux64"
69778659 488 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
fa958513 489 ;;
cd985f66 490hppa*-*-linux*)
45b86625 491 tmake_file="$tmake_file pa/t-linux t-slibgcc-libgcc"
b040f2be
RO
492 # Set the libgcc version number
493 if test x$enable_sjlj_exceptions = xyes; then
494 tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
495 else
496 tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
497 fi
69778659 498 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
0defd786 499 md_unwind_header=pa/linux-unwind.h
fa958513
DJ
500 ;;
501hppa[12]*-*-hpux10*)
f9989b51 502 tmake_file="$tmake_file pa/t-hpux pa/t-hpux10 t-libgcc-pic t-slibgcc"
b040f2be
RO
503 # Set the libgcc version number
504 if test x$enable_sjlj_exceptions = xyes; then
505 tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
506 else
507 tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
508 fi
509 tmake_file="$tmake_file pa/t-slibgcc-hpux t-slibgcc-hpux"
58cd1d70 510 md_unwind_header=pa/hpux-unwind.h
fa958513
DJ
511 ;;
512hppa*64*-*-hpux11*)
9dfd5832 513 tmake_file="$tmake_file pa/t-hpux pa/t-pa64 pa/t-stublib t-libgcc-pic t-slibgcc"
b040f2be
RO
514 # Set the libgcc version number
515 if test x$enable_sjlj_exceptions = xyes; then
516 tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
517 else
518 tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
519 fi
520 tmake_file="$tmake_file pa/t-slibgcc-hpux t-slibgcc-hpux"
5f73c6cc
RO
521 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o \
522 libgcc_stub.a"
58cd1d70 523 md_unwind_header=pa/hpux-unwind.h
fa958513
DJ
524 ;;
525hppa[12]*-*-hpux11*)
f9989b51 526 tmake_file="$tmake_file pa/t-hpux pa/t-stublib t-libgcc-pic t-slibgcc"
b040f2be
RO
527 # Set the libgcc version number
528 if test x$enable_sjlj_exceptions = xyes; then
529 tmake_file="$tmake_file pa/t-slibgcc-sjlj-ver"
530 else
531 tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver"
532 fi
533 tmake_file="$tmake_file pa/t-slibgcc-hpux t-slibgcc-hpux"
5f73c6cc 534 extra_parts="libgcc_stub.a"
58cd1d70 535 md_unwind_header=pa/hpux-unwind.h
fa958513 536 ;;
17f293b0
MK
537hppa*-*-openbsd*)
538 tmake_file="$tmake_file pa/t-openbsd"
539 ;;
fa958513 540i[34567]86-*-darwin*)
b3fe1584 541 tmake_file="$tmake_file i386/t-crtpc i386/t-crtfm"
852b75ed 542 tm_file="$tm_file i386/darwin-lib.h"
b3fe1584 543 extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
fa958513
DJ
544 ;;
545x86_64-*-darwin*)
b040f2be 546 tmake_file="$tmake_file i386/t-crtpc i386/t-crtfm"
852b75ed 547 tm_file="$tm_file i386/darwin-lib.h"
b3fe1584 548 extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
fa958513
DJ
549 ;;
550i[34567]86-*-elf*)
f9989b51 551 tmake_file="$tmake_file i386/t-crtstuff t-crtstuff-pic t-libgcc-pic"
fa958513 552 ;;
3ae3dbd6 553x86_64-*-elf*)
f9989b51 554 tmake_file="$tmake_file i386/t-crtstuff t-crtstuff-pic t-libgcc-pic"
3ae3dbd6 555 ;;
dbed5a9b
JM
556i[34567]86-*-dragonfly*)
557 tmake_file="${tmake_file} i386/t-dragonfly i386/t-crtstuff"
558 md_unwind_header=i386/dragonfly-unwind.h
559 ;;
560x86_64-*-dragonfly*)
561 tmake_file="${tmake_file} i386/t-dragonfly i386/t-crtstuff"
562 md_unwind_header=i386/dragonfly-unwind.h
563 ;;
fa958513 564i[34567]86-*-freebsd*)
5f73c6cc 565 tmake_file="${tmake_file} i386/t-freebsd i386/t-crtstuff"
fa958513
DJ
566 ;;
567x86_64-*-freebsd*)
5f73c6cc 568 tmake_file="${tmake_file} i386/t-freebsd i386/t-crtstuff"
fa958513
DJ
569 ;;
570i[34567]86-*-netbsdelf*)
571 ;;
fa958513 572x86_64-*-netbsd*)
5f73c6cc 573 tmake_file="${tmake_file} i386/t-crtstuff"
fa958513
DJ
574 ;;
575i[34567]86-*-openbsd2.*|i[34567]86-*openbsd3.[0123])
576 ;;
577i[34567]86-*-openbsd*)
578 ;;
613061fd
MK
579x86_64-*-openbsd*)
580 ;;
9e7714f4 581i[34567]86-*-linux*)
577565f9 582 extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
5f73c6cc 583 tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm i386/t-crtstuff t-dfprules"
58cd1d70 584 md_unwind_header=i386/linux-unwind.h
fa958513 585 ;;
9e7714f4
TS
586i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* | i[34567]86-*-kopensolaris*-gnu)
587 extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
5f73c6cc 588 tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm i386/t-crtstuff t-dfprules"
9e7714f4
TS
589 ;;
590x86_64-*-linux*)
577565f9 591 extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
5f73c6cc 592 tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm i386/t-crtstuff t-dfprules"
58cd1d70 593 md_unwind_header=i386/linux-unwind.h
fa958513 594 ;;
9e7714f4
TS
595x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu)
596 extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
5f73c6cc 597 tmake_file="${tmake_file} i386/t-crtpc i386/t-crtfm i386/t-crtstuff t-dfprules"
9e7714f4 598 ;;
fa958513
DJ
599i[34567]86-pc-msdosdjgpp*)
600 ;;
601i[34567]86-*-lynxos*)
602 ;;
fa958513 603i[34567]86-*-nto-qnx*)
f9989b51 604 tmake_file="$tmake_file i386/t-nto t-libgcc-pic"
5f73c6cc 605 extra_parts=crtbegin.o
fa958513
DJ
606 ;;
607i[34567]86-*-rtems*)
02ac9503 608 tmake_file="$tmake_file i386/t-crtstuff t-softfp-sfdf t-softfp"
5f73c6cc 609 extra_parts="$extra_parts crti.o crtn.o"
fa958513 610 ;;
fbdd5d87 611i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*)
b3fe1584
RO
612 tmake_file="$tmake_file i386/t-crtpc i386/t-crtfm"
613 extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
58cd1d70 614 md_unwind_header=i386/sol2-unwind.h
fa958513 615 ;;
fa958513
DJ
616i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae)
617 ;;
58cd1d70 618i[34567]86-*-cygwin*)
25efdb9f 619 extra_parts="crtbegin.o crtbeginS.o crtend.o crtfastmath.o"
b040f2be
RO
620 # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
621 if test x$enable_sjlj_exceptions = xyes; then
622 tmake_eh_file="i386/t-sjlj-eh"
623 else
624 tmake_eh_file="i386/t-dw2-eh"
625 fi
626 # Shared libgcc DLL install dir depends on cross/native build.
627 if test x${build} = x${host} ; then
628 tmake_dlldir_file="i386/t-dlldir"
629 else
630 tmake_dlldir_file="i386/t-dlldir-x"
631 fi
45b86625 632 tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-slibgcc-cygming i386/t-cygming i386/t-cygwin i386/t-crtfm i386/t-chkstk t-dfprules"
9bd196f0 633 ;;
e9fd8c19 634x86_64-*-cygwin*)
25efdb9f 635 extra_parts="crtbegin.o crtbeginS.o crtend.o crtfastmath.o"
e9fd8c19
KT
636 # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
637 if test x$enable_sjlj_exceptions = xyes; then
638 tmake_eh_file="i386/t-sjlj-eh"
639 else
640 tmake_eh_file="i386/t-seh-eh"
641 fi
642 # Shared libgcc DLL install dir depends on cross/native build.
643 if test x${build} = x${host} ; then
644 tmake_dlldir_file="i386/t-dlldir"
645 else
646 tmake_dlldir_file="i386/t-dlldir-x"
647 fi
648 # FIXME - dj - t-chkstk used to be in here, need a 64-bit version of that
649 tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-slibgcc-cygming i386/t-cygming i386/t-cygwin i386/t-crtfm t-dfprules i386/t-chkstk"
650 ;;
58cd1d70
RO
651i[34567]86-*-mingw*)
652 extra_parts="crtbegin.o crtend.o crtfastmath.o"
f9989b51
RO
653 case ${target_thread_file} in
654 win32)
655 tmake_file="$tmake_file i386/t-gthr-win32"
656 ;;
e3d871e4
RO
657 posix)
658 tmake_file="i386/t-mingw-pthread $tmake_file"
659 ;;
f9989b51 660 esac
b040f2be
RO
661 # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
662 if test x$enable_sjlj_exceptions = xyes; then
663 tmake_eh_file="i386/t-sjlj-eh"
664 else
665 tmake_eh_file="i386/t-dw2-eh"
0c0c6398 666 md_unwind_header=i386/w32-unwind.h
b040f2be
RO
667 fi
668 # Shared libgcc DLL install dir depends on cross/native build.
669 if test x${build} = x${host} ; then
670 tmake_dlldir_file="i386/t-dlldir"
671 else
672 tmake_dlldir_file="i386/t-dlldir-x"
673 fi
45b86625 674 tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-slibgcc-cygming i386/t-cygming i386/t-mingw32 i386/t-crtfm i386/t-chkstk t-dfprules"
58cd1d70 675 ;;
9bd196f0 676x86_64-*-mingw*)
f9989b51
RO
677 case ${target_thread_file} in
678 win32)
679 tmake_file="$tmake_file i386/t-gthr-win32"
680 ;;
e3d871e4
RO
681 posix)
682 tmake_file="i386/t-mingw-pthread $tmake_file"
683 ;;
f9989b51 684 esac
b040f2be
RO
685 # This has to match the logic for DWARF2_UNWIND_INFO in gcc/config/i386/cygming.h
686 if test x$enable_sjlj_exceptions = xyes; then
687 tmake_eh_file="i386/t-sjlj-eh"
688 else
bf1431e3 689 tmake_eh_file="i386/t-seh-eh"
b040f2be
RO
690 fi
691 # Shared libgcc DLL install dir depends on cross/native build.
692 if test x${build} = x${host} ; then
693 tmake_dlldir_file="i386/t-dlldir"
694 else
695 tmake_dlldir_file="i386/t-dlldir-x"
696 fi
45b86625 697 tmake_file="${tmake_file} ${tmake_eh_file} ${tmake_dlldir_file} i386/t-slibgcc-cygming i386/t-mingw32 t-dfprules i386/t-crtfm i386/t-chkstk"
35d8090d 698 extra_parts="$extra_parts crtfastmath.o"
fa958513 699 ;;
daecebc8 700i[34567]86-*-interix[3-9]*)
f9989b51 701 tmake_file="$tmake_file i386/t-interix i386/t-chkstk"
fa958513 702 ;;
fa958513 703ia64*-*-elf*)
5f73c6cc 704 extra_parts="$extra_parts crtbeginS.o crtendS.o crtfastmath.o"
1ab3568b 705 tmake_file="ia64/t-ia64 ia64/t-ia64-elf ia64/t-eh-ia64 t-crtfm"
fa958513
DJ
706 ;;
707ia64*-*-freebsd*)
5f73c6cc 708 extra_parts="$extra_parts crtfastmath.o"
1ab3568b 709 tmake_file="$tmake_file ia64/t-ia64 ia64/t-ia64-elf ia64/t-eh-ia64 t-crtfm"
fa958513
DJ
710 ;;
711ia64*-*-linux*)
5f73c6cc 712 # Don't use crtbeginT.o from *-*-linux* default.
fa958513 713 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
1ab3568b 714 tmake_file="$tmake_file ia64/t-ia64 ia64/t-ia64-elf t-crtfm t-softfp-tf ia64/t-softfp t-softfp ia64/t-softfp-compat ia64/t-eh-ia64 t-libunwind ia64/t-linux"
201cdb74 715 if test x$with_system_libunwind != xyes ; then
b040f2be 716 tmake_file="${tmake_file} t-libunwind-elf ia64/t-linux-libunwind"
201cdb74 717 fi
58cd1d70 718 md_unwind_header=ia64/linux-unwind.h
fa958513
DJ
719 ;;
720ia64*-*-hpux*)
1ab3568b 721 tmake_file="ia64/t-ia64 ia64/t-ia64-elf ia64/t-hpux t-slibgcc ia64/t-slibgcc-hpux t-slibgcc-hpux"
fa958513 722 ;;
a9a25daa 723ia64-hp-*vms*)
45b86625 724 tmake_file="$tmake_file ia64/t-ia64 ia64/t-eh-ia64 ia64/t-vms t-slibgcc-vms"
5f73c6cc 725 extra_parts="$extra_parts crtinitS.o"
58cd1d70 726 md_unwind_header=ia64/vms-unwind.h
a9a25daa 727 ;;
fa958513 728iq2000*-*-elf*)
d4b4b542 729 tmake_file="iq2000/t-iq2000 t-fdpbit"
5f73c6cc
RO
730 # Don't use default.
731 extra_parts=
fa958513 732 ;;
c9cd1a07 733lm32-*-elf*)
5f73c6cc 734 extra_parts="$extra_parts crti.o crtn.o"
aca0b0b3 735 tmake_file="lm32/t-lm32 lm32/t-elf t-softfp-sfdf t-softfp"
aa4945c1 736 ;;
c9cd1a07
RO
737lm32-*-rtems*)
738 tmake_file="$tmake_file lm32/t-lm32 lm32/t-elf t-softfp-sfdf t-softfp"
739 extra_parts="$extra_parts crti.o crtn.o"
740 ;;
aa4945c1 741lm32-*-uclinux*)
5f73c6cc 742 extra_parts="$extra_parts crtbegin.o crtendS.o crtbeginT.o"
f9989b51 743 tmake_file="lm32/t-lm32 lm32/t-uclinux t-libgcc-pic t-softfp-sfdf t-softfp"
aa4945c1 744 ;;
5f73c6cc 745m32r-*-elf*)
569dc494 746 tmake_file=t-fdpbit
fa958513 747 ;;
5f73c6cc 748m32r-*-rtems*)
c9cd1a07 749 tmake_file="$tmake_file m32r/t-m32r t-fdpbit"
c1d4fa04 750 extra_parts="$extra_parts crtinit.o crtfini.o"
5f73c6cc 751 ;;
fa958513 752m32rle-*-elf*)
569dc494 753 tmake_file=t-fdpbit
fa958513
DJ
754 ;;
755m32r-*-linux*)
5f73c6cc 756 tmake_file="$tmake_file m32r/t-linux t-fdpbit"
fa958513
DJ
757 ;;
758m32rle-*-linux*)
5f73c6cc 759 tmake_file="$tmake_file m32r/t-linux t-fdpbit"
fa958513 760 ;;
45b86625
RO
761m68k-*-elf* | fido-*-elf)
762 tmake_file="$tmake_file m68k/t-floatlib"
fa958513 763 ;;
cd985f66 764m68k*-*-netbsdelf*)
fa958513
DJ
765 ;;
766m68k*-*-openbsd*)
767 ;;
8b281334
RH
768m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux with uClibc
769 tmake_file="$tmake_file m68k/t-floatlib m68k/t-linux"
58cd1d70 770 md_unwind_header=m68k/linux-unwind.h
fa958513 771 ;;
58cd1d70 772m68k-*-linux*) # Motorola m68k's running GNU/Linux
fa958513
DJ
773 # with ELF format using glibc 2
774 # aka the GNU/Linux C library 6.
8b281334 775 tmake_file="$tmake_file m68k/t-floatlib m68k/t-linux"
b040f2be
RO
776 # If not configured with --enable-sjlj-exceptions, bump the
777 # libgcc version number.
778 if test x$enable_sjlj_exceptions != xyes; then
779 tmake_file="$tmake_file m68k/t-slibgcc-elf-ver"
780 fi
58cd1d70 781 md_unwind_header=m68k/linux-unwind.h
fa958513
DJ
782 ;;
783m68k-*-rtems*)
45b86625 784 tmake_file="$tmake_file m68k/t-floatlib"
5f73c6cc 785 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
786 ;;
787mcore-*-elf)
45b86625 788 tmake_file="mcore/t-mcore t-fdpbit"
5f73c6cc 789 extra_parts="$extra_parts crti.o crtn.o"
fa958513 790 ;;
b040f2be 791microblaze*-linux*)
fbf0cf90 792 tmake_file="${tmake_file} microblaze/t-microblaze t-fdpbit t-slibgcc-libgcc"
b040f2be 793 ;;
6f14eef2
EI
794microblaze*-*-elf)
795 tmake_file="${tmake_file} microblaze/t-microblaze t-fdpbit"
796 extra_parts="$extra_parts crtbeginS.o crtendS.o crtbeginT.o crti.o crtn.o"
80920132 797 ;;
3fa2ccb4
RC
798microblaze*-*-rtems*)
799 tmake_file="${tmake_file} microblaze/t-microblaze t-fdpbit"
800 extra_parts="$extra_parts crtbeginS.o crtendS.o crtbeginT.o crti.o crtn.o"
801 ;;
fa958513
DJ
802mips*-*-netbsd*) # NetBSD/mips, either endian.
803 ;;
fa958513 804mips*-*-linux*) # Linux MIPS, either endian.
48b09a92 805 extra_parts="$extra_parts crtfastmath.o"
107eea2c 806 tmake_file="${tmake_file} t-crtfm"
107eea2c 807 case ${host} in
0f9bde1f
MR
808 mips64r5900* | mipsr5900*)
809 # The MIPS16 support code uses floating point
810 # instructions that are not supported on r5900.
811 ;;
812 *)
813 tmake_file="${tmake_file} mips/t-mips16 t-slibgcc-libgcc"
814 ;;
107eea2c 815 esac
58cd1d70 816 md_unwind_header=mips/linux-unwind.h
fa958513 817 ;;
569dc494 818mips*-sde-elf*)
eb028768 819 tmake_file="$tmake_file mips/t-crtstuff mips/t-mips16"
569dc494
RO
820 case "${with_newlib}" in
821 yes)
822 # newlib / libgloss.
823 ;;
824 *)
825 # MIPS toolkit libraries.
5f73c6cc 826 tmake_file="$tmake_file mips/t-sdemtk"
569dc494
RO
827 ;;
828 esac
5f73c6cc 829 extra_parts="$extra_parts crti.o crtn.o"
569dc494 830 ;;
c6412d86
RO
831mipsisa32-*-elf* | mipsisa32el-*-elf* | \
832mipsisa32r2-*-elf* | mipsisa32r2el-*-elf* | \
833mipsisa64-*-elf* | mipsisa64el-*-elf* | \
0a4a51c7 834mipsisa64r2-*-elf* | mipsisa64r2el-*-elf*)
f9989b51 835 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff mips/t-mips16"
5f73c6cc 836 extra_parts="$extra_parts crti.o crtn.o"
0a4a51c7 837 ;;
fa958513 838mipsisa64sr71k-*-elf*)
eb028768 839 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff t-fdpbit"
5f73c6cc 840 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
841 ;;
842mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*)
f9989b51 843 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff mips/t-mips16"
5f73c6cc 844 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
845 ;;
846mips-*-elf* | mipsel-*-elf*)
f9989b51 847 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff mips/t-mips16"
5f73c6cc 848 extra_parts="$extra_parts crti.o crtn.o"
fa958513 849 ;;
107eea2c
JU
850mipsr5900-*-elf* | mipsr5900el-*-elf*)
851 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff"
852 extra_parts="$extra_parts crti.o crtn.o"
853 ;;
fa958513 854mips64-*-elf* | mips64el-*-elf*)
f9989b51 855 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff mips/t-mips16"
5f73c6cc 856 extra_parts="$extra_parts crti.o crtn.o"
fa958513 857 ;;
107eea2c
JU
858mips64r5900-*-elf* | mips64r5900el-*-elf*)
859 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff"
860 extra_parts="$extra_parts crti.o crtn.o"
861 ;;
fa958513 862mips64vr-*-elf* | mips64vrel-*-elf*)
f9989b51 863 tmake_file="$tmake_file mips/t-elf mips/t-vr mips/t-crtstuff"
5f73c6cc 864 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
865 ;;
866mips64orion-*-elf* | mips64orionel-*-elf*)
f9989b51 867 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff mips/t-mips16"
5f73c6cc 868 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
869 ;;
870mips*-*-rtems*)
f9989b51 871 tmake_file="$tmake_file mips/t-elf mips/t-crtstuff mips/t-mips16"
5f73c6cc 872 extra_parts="$extra_parts crti.o crtn.o"
fa958513
DJ
873 ;;
874mips-wrs-vxworks)
875 ;;
fa958513 876mipstx39-*-elf* | mipstx39el-*-elf*)
5f73c6cc 877 tmake_file="$tmake_file mips/t-crtstuff mips/t-mips16"
fa958513
DJ
878 ;;
879mmix-knuth-mmixware)
e7c914db
HPN
880 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
881 tmake_file="${tmake_file} ${cpu_type}/t-${cpu_type}"
fa958513
DJ
882 ;;
883mn10300-*-*)
569dc494 884 tmake_file=t-fdpbit
fa958513 885 ;;
fa42c489 886moxie-*-elf | moxie-*-moxiebox* | moxie-*-uclinux*)
aca0b0b3 887 tmake_file="moxie/t-moxie t-softfp-sfdf t-softfp-excl t-softfp"
fa42c489 888 extra_parts="$extra_parts crti.o crtn.o crtbegin.o crtend.o"
5f73c6cc
RO
889 ;;
890moxie-*-rtems*)
c9cd1a07 891 tmake_file="$tmake_file moxie/t-moxie t-softfp-sfdf t-softfp-excl t-softfp"
5f73c6cc
RO
892 # Don't use default.
893 extra_parts=
cceb575c 894 ;;
f6a83b4a
DD
895msp430*-*-elf)
896 tmake_file="$tm_file t-crtstuff t-fdpbit msp430/t-msp430"
897 ;;
9304f876
CJW
898nds32*-elf*)
899 # Basic makefile fragment and extra_parts for crt stuff.
900 # We also append c-isr library implementation.
901 tmake_file="${tmake_file} nds32/t-nds32 nds32/t-nds32-isr"
902 extra_parts="crtbegin1.o crtend1.o libnds32_isr.a"
903 # Append library definition makefile fragment according to --with-nds32-lib=X setting.
904 case "${with_nds32_lib}" in
905 "" | newlib)
906 # Append library definition makefile fragment t-nds32-newlib.
907 # Append 'soft-fp' software floating point make rule fragment provided by gcc.
908 tmake_file="${tmake_file} nds32/t-nds32-newlib t-softfp-sfdf t-softfp"
909 ;;
910 mculib)
911 # Append library definition makefile fragment t-nds32-mculib.
912 # The software floating point library is included in mculib.
913 tmake_file="${tmake_file} nds32/t-nds32-mculib"
914 ;;
915 *)
916 echo "Cannot accept --with-nds32-lib=$with_nds32_lib, available values are: newlib mculib" 1>&2
917 exit 1
918 ;;
919 esac
920 ;;
e430824f
CLT
921nios2-*-linux*)
922 tmake_file="$tmake_file nios2/t-nios2 nios2/t-linux t-libgcc-pic t-slibgcc-libgcc"
923 extra_parts="$extra_parts crti.o crtn.o"
924 md_unwind_header=nios2/linux-unwind.h
925 ;;
926nios2-*-*)
927 tmake_file="$tmake_file nios2/t-nios2 t-softfp-sfdf t-softfp-excl t-softfp"
928 extra_parts="$extra_parts crti.o crtn.o"
929 ;;
fa958513 930pdp11-*-*)
f9989b51 931 tmake_file="pdp11/t-pdp11 t-fdpbit"
fa958513 932 ;;
fa958513 933powerpc-*-darwin*)
58cd1d70
RO
934 case ${host} in
935 *-*-darwin9* | *-*-darwin[12][0-9]*)
936 # libSystem contains unwind information for signal frames since
937 # Darwin 9.
938 ;;
939 *)
940 md_unwind_header=rs6000/darwin-unwind.h
941 ;;
942 esac
aca0b0b3 943 tmake_file="$tmake_file rs6000/t-ibm-ldouble"
e141542e 944 extra_parts="$extra_parts crt2.o"
fa958513
DJ
945 ;;
946powerpc64-*-darwin*)
f9989b51 947 tmake_file="$tmake_file rs6000/t-darwin64 rs6000/t-ibm-ldouble"
e141542e 948 extra_parts="$extra_parts crt2.o"
fa958513 949 ;;
d82ad50d
AT
950powerpc*-*-freebsd*)
951 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-savresfgpr rs6000/t-crtstuff rs6000/t-freebsd t-softfp-sfdf t-softfp-excl t-softfp"
5f73c6cc 952 extra_parts="$extra_parts crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
d82ad50d
AT
953 case ${host} in
954 powerpc64*)
955 tmake_file="${tmake_file} rs6000/t-freebsd64"
956 md_unwind_header=rs6000/freebsd-unwind.h
957 ;;
958 esac
fa958513
DJ
959 ;;
960powerpc-*-netbsd*)
d4b4b542 961 tmake_file="$tmake_file rs6000/t-netbsd rs6000/t-crtstuff"
fa958513 962 ;;
fa958513 963powerpc-*-eabispe*)
7da38058 964 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-savresfgpr rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 965 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
966 ;;
967powerpc-*-eabisimaltivec*)
f9c55897 968 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 969 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
970 ;;
971powerpc-*-eabisim*)
f9c55897 972 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 973 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
974 ;;
975powerpc-*-elf*)
49dcafd4 976 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-savresfgpr rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 977 extra_parts="$extra_parts crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
978 ;;
979powerpc-*-eabialtivec*)
f9c55897 980 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 981 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
569dc494
RO
982 ;;
983powerpc-xilinx-eabi*)
f9c55897 984 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 985 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
986 ;;
987powerpc-*-eabi*)
f9c55897 988 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-savresfgpr rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 989 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
990 ;;
991powerpc-*-rtems*)
6f288860 992 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-savresfgpr rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 993 extra_parts="$extra_parts crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513 994 ;;
b9a7eb5d 995powerpc*-*-linux*)
f9c55897 996 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-savresfgpr rs6000/t-crtstuff rs6000/t-linux t-softfp-sfdf t-softfp-excl t-dfprules rs6000/t-ppc64-fp t-softfp t-slibgcc-libgcc"
5f73c6cc 997 extra_parts="$extra_parts ecrti.o ecrtn.o ncrti.o ncrtn.o"
58cd1d70 998 md_unwind_header=rs6000/linux-unwind.h
fa958513 999 ;;
fa958513 1000powerpc-wrs-vxworks|powerpc-wrs-vxworksae)
49dcafd4 1001 tmake_file="$tmake_file rs6000/t-ppccomm rs6000/t-savresfgpr t-fdpbit"
fa958513 1002 ;;
fa958513 1003powerpc-*-lynxos*)
d4b4b542 1004 tmake_file="$tmake_file rs6000/t-lynx t-fdpbit"
fa958513 1005 ;;
fa958513 1006powerpcle-*-elf*)
f9c55897 1007 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 1008 extra_parts="$extra_parts crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
1009 ;;
1010powerpcle-*-eabisim*)
f9c55897 1011 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 1012 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513
DJ
1013 ;;
1014powerpcle-*-eabi*)
f9c55897 1015 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-crtstuff t-crtstuff-pic t-fdpbit"
5f73c6cc 1016 extra_parts="$extra_parts crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o ecrti.o ecrtn.o ncrti.o ncrtn.o"
fa958513 1017 ;;
fa958513 1018rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
201cdb74 1019 md_unwind_header=rs6000/aix-unwind.h
138f5acd 1020 tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-slibgcc-aix rs6000/t-ibm-ldouble"
fa958513
DJ
1021 ;;
1022rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*)
201cdb74 1023 md_unwind_header=rs6000/aix-unwind.h
138f5acd 1024 tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-slibgcc-aix rs6000/t-ibm-ldouble"
fa958513
DJ
1025 ;;
1026rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
201cdb74 1027 md_unwind_header=rs6000/aix-unwind.h
99113dff
DE
1028 tmake_file="t-fdpbit rs6000/t-ppc64-fp rs6000/t-slibgcc-aix rs6000/t-ibm-ldouble rs6000/t-aix-cxa"
1029 extra_parts="crtcxa.o crtcxa_s.o"
fa958513 1030 ;;
85b8555e
DD
1031rl78-*-elf)
1032 tmake_file="$tm_file t-fdpbit rl78/t-rl78"
1033 ;;
65a324b4 1034rx-*-elf)
569dc494 1035 tmake_file="rx/t-rx t-fdpbit"
852b75ed 1036 tm_file="$tm_file rx/rx-abi.h rx/rx-lib.h"
65a324b4 1037 ;;
fa958513 1038s390-*-linux*)
81dd9fd7 1039 tmake_file="${tmake_file} s390/t-crtstuff s390/t-linux s390/32/t-floattodi"
58cd1d70 1040 md_unwind_header=s390/linux-unwind.h
fa958513
DJ
1041 ;;
1042s390x-*-linux*)
59976ef8
AK
1043 tmake_file="${tmake_file} s390/t-crtstuff s390/t-linux"
1044 if test "${host_address}" = 32; then
1045 tmake_file="${tmake_file} s390/32/t-floattodi"
1046 fi
58cd1d70 1047 md_unwind_header=s390/linux-unwind.h
fa958513
DJ
1048 ;;
1049s390x-ibm-tpf*)
f9989b51 1050 tmake_file="${tmake_file} s390/t-crtstuff t-libgcc-pic t-eh-dw2-dip"
5f73c6cc 1051 extra_parts="crtbeginS.o crtendS.o"
10c4cabc 1052 md_unwind_header=s390/tpf-unwind.h
fa958513
DJ
1053 ;;
1054score-*-elf)
aca0b0b3 1055 tmake_file="${tmake_file} t-softfp-sfdf t-softfp-excl t-softfp"
5f73c6cc 1056 extra_parts="$extra_parts crti.o crtn.o"
fa958513 1057 ;;
5f73c6cc
RO
1058sh-*-elf* | sh[12346l]*-*-elf*)
1059 tmake_file="$tmake_file sh/t-sh t-crtstuff-pic t-fdpbit"
1060 extra_parts="$extra_parts crt1.o crti.o crtn.o crtbeginS.o crtendS.o \
1061 libic_invalidate_array_4-100.a \
1062 libic_invalidate_array_4-200.a \
1063 libic_invalidate_array_4a.a \
1064 libgcc-Os-4-200.a libgcc-4-300.a"
45b86625
RO
1065 case ${host} in sh64*-*-*)
1066 tmake_file="$tmake_file sh/t-sh64"
1067 ;;
1068 esac
26900826 1069 case ${host} in
5f73c6cc
RO
1070 sh*-superh-elf)
1071 tmake_file="$tmake_file sh/t-superh"
1072 extra_parts="$extra_parts crt1-mmu.o gcrt1-mmu.o gcrt1.o"
1073 ;;
1074 esac
1075 ;;
1076sh-*-linux* | sh[2346lbe]*-*-linux*)
45b86625
RO
1077 tmake_file="${tmake_file} sh/t-sh t-slibgcc-libgcc sh/t-linux t-fdpbit"
1078 case ${host} in sh64*-*-linux*)
1079 tmake_file="$tmake_file sh/t-sh64"
1080 ;;
1081 esac
5f73c6cc
RO
1082 md_unwind_header=sh/linux-unwind.h
1083 ;;
1084sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
1085 sh64-*-netbsd* | sh64l*-*-netbsd*)
45b86625
RO
1086 tmake_file="$tmake_file sh/t-sh sh/t-netbsd"
1087 case ${host} in
1088 sh5*-*-netbsd* | sh64*-netbsd*)
1089 tmake_file="$tmake_file sh/t-sh64"
1090 ;;
1091 esac
5f73c6cc
RO
1092 # NetBSD's C library includes a fast software FP library that
1093 # has support for setting/setting the rounding mode, exception
1094 # mask, etc. Therefore, we don't want to include software FP
1095 # in libgcc.
fa958513 1096 ;;
fa958513 1097sh-*-rtems*)
45b86625 1098 tmake_file="$tmake_file sh/t-sh t-crtstuff-pic t-fdpbit"
5f73c6cc 1099 extra_parts="$extra_parts crt1.o crti.o crtn.o crtbeginS.o crtendS.o \
76c78361
RC
1100 libic_invalidate_array_4-100.a \
1101 libic_invalidate_array_4-200.a \
1102 libic_invalidate_array_4a.a \
1103 libgcc-Os-4-200.a libgcc-4-300.a"
fa958513
DJ
1104 ;;
1105sh-wrs-vxworks)
45b86625 1106 tmake_file="$tmake_file sh/t-sh t-crtstuff-pic t-fdpbit"
fa958513 1107 ;;
fa958513
DJ
1108sparc-*-netbsdelf*)
1109 ;;
1110sparc64-*-openbsd*)
1111 ;;
1112sparc-*-elf*)
ca24c5ad
RO
1113 case ${host} in
1114 *-leon[3-9]*)
1115 ;;
1116 *)
1117 tmake_file="sparc/t-softmul"
1118 ;;
1119 esac
5f73c6cc
RO
1120 tmake_file="${tmake_file} t-fdpbit t-crtfm"
1121 extra_parts="$extra_parts crti.o crtn.o crtfastmath.o"
fa958513
DJ
1122 ;;
1123sparc-*-linux*) # SPARC's running GNU/Linux, libc6
d2a7d041
DM
1124 tmake_file="${tmake_file} t-crtfm"
1125 if test "${host_address}" = 64; then
1126 tmake_file="$tmake_file sparc/t-linux64"
1127 fi
569dc494
RO
1128 case ${host} in
1129 *-leon*)
b040f2be
RO
1130 tmake_file="${tmake_file} t-fdpbit"
1131 ;;
1132 *)
1133 tmake_file="${tmake_file} sparc/t-linux"
569dc494
RO
1134 ;;
1135 esac
45b86625
RO
1136 case ${host} in
1137 *-leon[3-9]*)
1138 ;;
1139 *)
d2a7d041
DM
1140 if test "${host_address}" = 32; then
1141 tmake_file="$tmake_file sparc/t-softmul"
1142 fi
45b86625
RO
1143 ;;
1144 esac
fa958513 1145 extra_parts="$extra_parts crtfastmath.o"
10c4cabc 1146 md_unwind_header=sparc/linux-unwind.h
fa958513 1147 ;;
569dc494 1148sparc-*-rtems*)
c9cd1a07 1149 tmake_file="$tmake_file sparc/t-elf sparc/t-softmul t-crtfm t-fdpbit"
5f73c6cc 1150 extra_parts="$extra_parts crti.o crtn.o crtfastmath.o"
fa958513 1151 ;;
ca24c5ad
RO
1152sparc*-*-solaris2*)
1153 tmake_file="$tmake_file t-crtfm"
1154 extra_parts="$extra_parts crtfastmath.o"
58cd1d70 1155 md_unwind_header=sparc/sol2-unwind.h
fa958513 1156 ;;
fa958513 1157sparc64-*-elf*)
5f73c6cc
RO
1158 tmake_file="${tmake_file} t-crtfm"
1159 extra_parts="$extra_parts crti.o crtn.o crtfastmath.o"
fa958513 1160 ;;
569dc494 1161sparc64-*-rtems*)
43a8f1a1 1162 tmake_file="$tmake_file t-crtfm"
5f73c6cc 1163 extra_parts="$extra_parts crti.o crtn.o crtfastmath.o"
569dc494 1164 ;;
1910440e
RS
1165sparc-wrs-vxworks)
1166 ;;
fa958513 1167sparc64-*-freebsd*|ultrasparc-*-freebsd*)
35d8090d 1168 tmake_file="$tmake_file t-crtfm"
5f73c6cc 1169 extra_parts="$extra_parts crtfastmath.o"
fa958513
DJ
1170 ;;
1171sparc64-*-linux*) # 64-bit SPARC's running GNU/Linux
1172 extra_parts="$extra_parts crtfastmath.o"
d2a7d041
DM
1173 tmake_file="${tmake_file} t-crtfm sparc/t-linux"
1174 if test "${host_address}" = 64; then
1175 tmake_file="${tmake_file} sparc/t-linux64"
1176 fi
1177 if test "${host_address}" = 32; then
1178 tmake_file="${tmake_file} sparc/t-softmul"
1179 fi
58cd1d70 1180 md_unwind_header=sparc/linux-unwind.h
fa958513
DJ
1181 ;;
1182sparc64-*-netbsd*)
1183 ;;
1184spu-*-elf*)
f9989b51 1185 tmake_file="$tmake_file spu/t-elf t-libgcc-pic t-fdpbit"
5f73c6cc
RO
1186 extra_parts="$extra_parts \
1187 libgcc_cachemgr.a libgcc_cachemgr_nonatomic.a \
1188 libgcc_cache8k.a libgcc_cache16k.a libgcc_cache32k.a \
1189 libgcc_cache64k.a libgcc_cache128k.a"
fa958513 1190 ;;
b040f2be 1191tic6x-*-uclinux)
4d5ae4ea
BS
1192 tmake_file="${tmake_file} t-softfp-sfdf t-softfp-excl t-softfp \
1193 c6x/t-elf c6x/t-uclinux t-crtstuff-pic t-libgcc-pic \
1194 t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver t-gnu-prefix"
852b75ed 1195 tm_file="$tm_file c6x/c6x-abi.h"
4d5ae4ea 1196 extra_parts="$extra_parts crtbeginS.o crtendS.o crti.o crtn.o"
b040f2be
RO
1197 unwind_header=config/c6x/unwind-c6x.h
1198 ;;
5f73c6cc
RO
1199tic6x-*-elf)
1200 tmake_file="${tmake_file} t-softfp-sfdf t-softfp-excl t-softfp t-gnu-prefix c6x/t-elf"
852b75ed 1201 tm_file="$tm_file c6x/c6x-abi.h"
5f73c6cc 1202 extra_parts="$extra_parts crtbeginS.o crtendS.o crti.o crtn.o"
1e874273 1203 unwind_header=config/c6x/unwind-c6x.h
bcead286 1204 ;;
341c653c 1205tilegx*-*-linux*)
dd552284
WL
1206 tmake_file="${tmake_file} tilegx/t-crtstuff t-softfp-sfdf tilegx/t-softfp t-softfp tilegx/t-tilegx"
1207 md_unwind_header=tilepro/linux-unwind.h
1208 ;;
341c653c 1209tilepro*-*-linux*)
dd552284
WL
1210 tmake_file="${tmake_file} tilepro/t-crtstuff t-softfp-sfdf t-softfp tilepro/t-tilepro"
1211 md_unwind_header=tilepro/linux-unwind.h
1212 ;;
4be46d19 1213v850*-*-*)
d02bbcf3 1214 tmake_file="${tmake_file} v850/t-v850 t-fdpbit"
fa958513 1215 ;;
fea96e25 1216vax-*-linux*)
45b86625 1217 tmake_file="$tmake_file vax/t-linux"
fea96e25 1218 ;;
fa958513
DJ
1219vax-*-netbsdelf*)
1220 ;;
fa958513
DJ
1221vax-*-openbsd*)
1222 ;;
fa958513 1223xstormy16-*-elf)
200feb07 1224 tmake_file="stormy16/t-stormy16 t-fdpbit"
fa958513 1225 ;;
c660f132 1226xtensa*-*-elf*)
5f73c6cc
RO
1227 tmake_file="$tmake_file xtensa/t-xtensa xtensa/t-elf"
1228 extra_parts="$extra_parts crti.o crtn.o"
fa958513 1229 ;;
c660f132 1230xtensa*-*-linux*)
800d8bd5 1231 tmake_file="$tmake_file xtensa/t-xtensa xtensa/t-linux t-slibgcc-libgcc"
58cd1d70 1232 md_unwind_header=xtensa/linux-unwind.h
fa958513
DJ
1233 ;;
1234am33_2.0-*-linux*)
5f73c6cc 1235 # Don't need crtbeginT.o from *-*-linux* default.
fa958513 1236 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
b040f2be 1237 tmake_file="$tmake_file t-fdpbit"
fa958513 1238 ;;
541ed00e 1239m32c-*-elf*|m32c-*-rtems*)
45b86625 1240 tmake_file="$tmake_file m32c/t-m32c"
fa958513 1241 ;;
7acf4da6 1242mep*-*-*)
5f73c6cc
RO
1243 tmake_file="mep/t-mep t-fdpbit"
1244 extra_parts="crtbegin.o crtend.o"
7acf4da6 1245 ;;
fa958513
DJ
1246*)
1247 echo "*** Configuration ${host} not supported" 1>&2
1248 exit 1
1249 ;;
1250esac
6f461e76 1251
aca06c90
RO
1252case ${host} in
1253i[34567]86-*-* | x86_64-*-*)
1254 tmake_file="${tmake_file} i386/t-cpuinfo"
1255 ;;
1256esac
1257
6f461e76 1258case ${host} in
2a761e46 1259i[34567]86-*-linux* | x86_64-*-linux* | \
b040f2be
RO
1260 i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
1261 i[34567]86-*-knetbsd*-gnu | \
2a761e46 1262 i[34567]86-*-gnu*)
aca06c90 1263 tmake_file="${tmake_file} t-tls i386/t-linux"
b6110d6d 1264 if test "$libgcc_cv_cfi" = "yes"; then
ca007d11 1265 tmake_file="${tmake_file} t-stack i386/t-stack-i386"
b6110d6d 1266 fi
6f461e76
L
1267 ;;
1268esac
ff473280
L
1269
1270case ${host} in
1271i[34567]86-*-darwin* | x86_64-*-darwin* | \
532bfb0a 1272 i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
e997fb9c 1273 i[34567]86-*-linux* | x86_64-*-linux* | \
3f56ef8b 1274 i[34567]86-*-gnu* | \
fbdd5d87 1275 i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]* | \
e9fd8c19
KT
1276 i[34567]86-*-cygwin* | x86_64-*-cygwin* | \
1277 i[34567]86-*-mingw* | x86_64-*-mingw* | \
dbed5a9b 1278 i[34567]86-*-dragonfly* | x86_64-*-dragonfly* | \
25c210f9
MK
1279 i[34567]86-*-freebsd* | x86_64-*-freebsd* | \
1280 i[34567]86-*-openbsd* | x86_64-*-openbsd*)
aca0b0b3 1281 tmake_file="${tmake_file} t-softfp-tf"
c174f11c 1282 if test "${host_address}" = 32; then
aca0b0b3 1283 tmake_file="${tmake_file} i386/${host_address}/t-softfp"
c174f11c 1284 fi
492fbea1 1285 tmake_file="${tmake_file} i386/t-softfp t-softfp"
c174f11c
L
1286 ;;
1287esac
1288
1289case ${host} in
1290i[34567]86-*-linux* | x86_64-*-linux*)
1291 # Provide backward binary compatibility for 64bit Linux/x86.
1292 if test "${host_address}" = 64; then
1293 tmake_file="${tmake_file} i386/${host_address}/t-softfp-compat"
1294 fi
852b75ed 1295 tm_file="${tm_file} i386/value-unwind.h"
ff473280
L
1296 ;;
1297esac