]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config.gcc
s390.md ("movti"): Add Q->Q alternative.
[thirdparty/gcc.git] / gcc / config.gcc
CommitLineData
61ed06c3 1# GCC build-, host- and target-specific configuration file.
817e13c4 2# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
61ed06c3 3
1322177d 4#This file is part of GCC.
61ed06c3 5
1322177d
LB
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
8#Software Foundation; either version 2, or (at your option) any later
9#version.
61ed06c3 10
1322177d
LB
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.
61ed06c3
HPN
15
16#You should have received a copy of the GNU General Public License
1322177d
LB
17#along with GCC; see the file COPYING. If not, write to the Free
18#Software Foundation, 59 Temple Place - Suite 330, Boston, MA
19#02111-1307, USA.
61ed06c3
HPN
20
21# This is the GCC build-, host- and target-specific configuration file
22# where a configuration type, as recognized and generated by config.bfd,
23# is mapped to different system-specific definitions and files. This is
24# invoked by the autoconf-generated configure script, called for build,
25# host and target in that order, setting ${machine} to each. Putting it
26# in a separate shell file lets us skip running autoconf when modifying
27# build-, host- and target-specific information.
28
29# This file switches on the shell variable ${machine}, and also uses the
30# following shell variables:
31#
32# with_* Various variables as set by configure.
33#
34# enable_threads_flag Either the name, yes or no depending on whether
35# threads support was requested.
36#
37# gas_flag Either yes or no depending on whether GNU as was
38# requested.
39#
40# gnu_ld_flag Either yes or no depending on whether GNU ld was
41# requested.
42
43# This file sets the following shell variables for use by the
44# autoconf-generated configure script:
45#
46# cpu_type The name of the cpu, if different from machine.
47#
d5355cb2
JDA
48# tm_defines List of target macros to define for all compilations.
49#
61ed06c3 50# tm_file A list of target macro files, if different from
32fb7c9d
FS
51# "$cpu_type/$cpu_type.h". Usually it's constructed
52# per target in a way like this:
c40409ce 53# tm_file="${tm_file} dbxelf.h elfos.h svr4.h ${cpu_type.h}/elf.h"
32fb7c9d
FS
54# Note that the preferred order is:
55# - specific target header "${cpu_type}/${cpu_type.h}"
c40409ce 56# - generic headers like dbxelf.h elfos.h, netware.h, etc.
32fb7c9d
FS
57# - specializing target headers like ${cpu_type.h}/elf.h
58# This helps to keep OS specific stuff out of the CPU
59# defining header ${cpu_type}/${cpu_type.h}.
61ed06c3
HPN
60#
61# tm_p_file Location of file with declarations for functions
62# in $out_file.
63#
64# out_file The name of the machine description C support
65# file, if different from "$cpu_type/$cpu_type.c".
66#
67# md_file The name of the machine-description file, if
68# different from "$cpu_type/$cpu_type.md".
69#
70# tmake_file A list of machine-description-specific
71# makefile-fragments, if different from
72# "$cpu_type/t-$cpu_type".
73#
1c0ca89d
ZW
74# extra_modes The name of the file containing a list of extra
75# machine modes, if necessary and different from
76# "$cpu_type/$cpu_type-modes.def".
77#
61ed06c3
HPN
78# float_format Set to the symbolic name for the floating-point
79# formats used for this machine, if different from
80# "i64". Used to derive a header file name to
81# include, like "vax" for "float-vax.h". If no such
82# file is wanted, set to "none".
83#
84# extra_objs List of extra objects that should be linked into
85# the compiler proper (cc1, cc1obj, cc1plus)
86# depending on target.
87#
88# extra_headers List of used header files from the directory
817e13c4 89# config/${cpu_type}.
61ed06c3
HPN
90#
91# host_xmake_file List of host-specific makefile-fragments.
92#
93# extra_passes List of extra executables compiled for this target
94# machine, used for compiling from source to object.
95#
96# extra_parts List of extra object files that should be compiled
97# for this target machine.
98#
99# extra_programs Like extra_passes, but these are used when linking.
100#
ff7cc307 101# host_extra_objs List of extra host-dependent objects that should
61ed06c3
HPN
102# be linked into the compiler proper.
103#
ff7cc307 104# host_extra_gcc_objs List of extra host-dependent objects that should
61ed06c3
HPN
105# be linked into the gcc driver.
106#
ff7cc307 107# c_target_objs List of extra target-dependent objects that be
aac69a49 108# linked into the C compiler only.
0e5a4ad8 109#
ff7cc307 110# cxx_target_objs List of extra target-dependent objects that be
aac69a49 111# linked into the C++ compiler only.
0e5a4ad8 112#
ef69da62
SS
113# target_gtfiles List of extra source files with type information.
114#
61ed06c3
HPN
115# build_xm_defines List of macros to define when compiling for the
116# build machine.
117#
118# build_xm_file List of files to include when compiling for the
119# build machine.
120#
121# host_xm_defines List of macros to define when compiling for the
122# host machine.
123#
124# host_xm_file List of files to include when compiling for the
125# host machine.
126#
127# xm_defines List of macros to define when compiling for the
128# target machine.
129#
130# xm_file List of files to include when compiling for the
131# target machine.
132#
133# use_collect2 Set to yes or no, depending on whether collect2
134# will be used.
135#
136# target_cpu_default Set to override the default target model.
137#
138# build_install_headers_dir
139# Target to use when installing header files.
140#
61ed06c3
HPN
141# host_truncate_target
142# Non-empty if the target name should be truncated
143# on this host, due to filename length issues.
144#
145# gdb_needs_out_file_path
146# Set to yes if gdb needs a dir command with
147# `dirname $out_file`.
148#
149# build_exeext Set to the suffix, if the build machine requires
150# executables to have a file name suffix.
151#
152# host_exeext Set to the suffix, if the host machine requires
153# executables to have a file name suffix.
154#
155# thread_file Set to control which thread package to use.
156#
157# gas Set to yes or no depending on whether the target
158# system normally uses GNU as.
159
160# The following variables are used in each case-construct to build up the
161# outgoing variables:
162#
163# xmake_file Makefile-fragment when this system is as a host,
164# for host_xmake_file.
165#
166# extra_host_objs List of extra objects that should be linked into
167# the compiler proper when this system is a host,
168# for host_extra_objs.
169#
170# install_headers_dir Makefile-target for how the header file directory
171# is installed, when this system is a build system,
172# for build_install_headers_dir.
173#
174# truncate_target Non-empty if the target name should be truncated
175# when this system is a host, due to filename length
176# issues. For host_truncate_target.
177#
178# exeext The suffix for executables on this system.
179#
180# gnu_ld Set to yes or no depending on whether the target
181# system normally uses GNU ld.
182
183out_file=
184xmake_file=
185tmake_file=
186extra_headers=
187extra_passes=
188extra_parts=
189extra_programs=
190extra_objs=
191extra_host_objs=
192extra_gcc_objs=
aac69a49
NC
193c_target_objs=
194cxx_target_objs=
d5355cb2 195tm_defines=
61ed06c3
HPN
196xm_defines=
197float_format=
198# Set this to force installation and use of collect2.
199use_collect2=
200# Set this to override the default target model.
201target_cpu_default=
202# Set this to control how the header file directory is installed.
203install_headers_dir=install-headers-tar
61ed06c3
HPN
204# Set this if directory names should be truncated to 14 characters.
205truncate_target=
206# Set this if gdb needs a dir command with `dirname $out_file`
207gdb_needs_out_file_path=
208# Set this if the build machine requires executables to have a
209# file name suffix.
210exeext=
211# Set this to control which thread package will be used.
212thread_file=
213# Reinitialize these from the flag values every loop pass, since some
214# configure entries modify them.
215gas="$gas_flag"
216gnu_ld="$gnu_ld_flag"
217enable_threads=$enable_threads_flag
6ab185d6 218target_gtfiles=
61ed06c3 219
9340544b 220# Obsolete configurations.
9340544b 221case $machine in
c7bdf0a6
ZW
222 m88k-*-aout* \
223 | m88k-*-openbsd* \
224 | m88k-*-sysv4* \
225 | mips-sni-sysv4 \
9c075570 226 | mn10200-*-* \
c7bdf0a6
ZW
227 | ns32k-*-openbsd* \
228 | romp-*-openbsd* \
18fbcbcf 229 | vax-*-vms* \
c7bdf0a6 230 )
8998d5bf 231 if test "x$enable_obsolete" != xyes; then
9340544b
ZW
232 echo "*** Configuration $machine is obsolete." >&2
233 echo "*** Specify --enable-obsolete to build it anyway." >&2
234 echo "*** Support will be REMOVED in the next major release of GCC," >&2
235 echo "*** unless a maintainer comes forward." >&2
236 exit 1
237 fi;;
9340544b
ZW
238esac
239
61ed06c3 240# Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
ba1e6c0b
JM
241# updated in each machine entry. Also set default extra_headers for some
242# machines.
61ed06c3
HPN
243tm_p_file=
244cpu_type=`echo $machine | sed 's/-.*$//'`
245case $machine in
246alpha*-*-*)
247 cpu_type=alpha
248 ;;
249strongarm*-*-*)
250 cpu_type=arm
251 ;;
252arm*-*-*)
253 cpu_type=arm
254 ;;
d19fb8e3
NC
255xscale-*-*)
256 cpu_type=arm
257 ;;
61ed06c3
HPN
258i[34567]86-*-*)
259 cpu_type=i386
6f1a6c5b 260 extra_headers="mmintrin.h xmmintrin.h"
61ed06c3 261 ;;
14f73b5a
JH
262x86_64-*-*)
263 cpu_type=i386
8559c8c0 264 extra_headers="mmintrin.h xmmintrin.h"
14f73b5a 265 ;;
817e13c4
JM
266ia64-*-*)
267 extra_headers=ia64intrin.h
268 ;;
c21a2372 269hppa*-*-* | parisc*-*-*)
61ed06c3
HPN
270 cpu_type=pa
271 ;;
2fd95d71 272m680[012]0-*-*)
61ed06c3 273 cpu_type=m68k
ba1e6c0b
JM
274 extra_headers=math-68881.h
275 ;;
276m68k-*-*)
277 extra_headers=math-68881.h
61ed06c3
HPN
278 ;;
279mips*-*-*)
280 cpu_type=mips
281 ;;
61ed06c3
HPN
282powerpc*-*-*)
283 cpu_type=rs6000
518878e1 284 extra_headers="ppc-asm.h altivec.h spe.h"
61ed06c3 285 ;;
61ed06c3
HPN
286sparc*-*-*)
287 cpu_type=sparc
288 ;;
b4eb03fe
JT
289# Note the 'l'; we need to be able to match e.g. "shle" or "shl".
290sh[123456789l]*-*-*)
fa5322fa
AO
291 cpu_type=sh
292 ;;
61ed06c3
HPN
293esac
294
295tm_file=${cpu_type}/${cpu_type}.h
b6d7afec 296if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h
61ed06c3 297then
b6d7afec
ZW
298 tm_p_file=${cpu_type}/${cpu_type}-protos.h
299fi
1c0ca89d
ZW
300extra_modes=
301if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-modes.def
302then
303 extra_modes=${cpu_type}/${cpu_type}-modes.def
304fi
e564e618
DB
305
306case $machine in
307x86_64-*-*)
308 tm_file="i386/biarch64.h ${tm_file}"
309 ;;
310esac
311
61ed06c3
HPN
312# On a.out targets, we need to use collect2.
313case $machine in
314*-*-*aout*)
315 use_collect2=yes
316 ;;
0e5a4ad8 317esac
61ed06c3 318
f982f805 319# Common parts for GNU/Linux, GNU/Hurd, OpenBSD, NetBSD, and FreeBSD systems.
61ed06c3
HPN
320case $machine in
321*-*-linux*)
34f4f3a5 322 xm_defines=POSIX
609a87f3
JJ
323 case $machine in
324 *-*-linux*ecoff* | *-*-linux*libc1* | *-*-linux*oldld* | *-*-linux*aout*)
325 ;;
326 *)
66df2ac2
L
327 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
328 gas=yes gnu_ld=yes
609a87f3
JJ
329 case x${enable_threads} in
330 x | xyes | xposix) thread_file='posix'
331 ;;
332 esac
333 ;;
334 esac
61ed06c3 335 ;;
5eeab2e3
MK
336*-*-gnu*)
337 # On the Hurd, the setup is just about the same on
338 # each different CPU. The specific machines that we
339 # support are matched above and just set $cpu_type.
b19a539e 340 xm_defines=POSIX
f6e0c56c 341 tm_file="${cpu_type}/gnu.h"
275b60d6 342 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
5eeab2e3
MK
343 # GNU always uses ELF.
344 elf=yes
345 # GNU tools are the only tools.
346 gnu_ld=yes
347 gas=yes
348 # These details are the same as for Linux.
5eeab2e3 349 # But here we need a little extra magic.
7b3a4df5 350 tmake_file="t-slibgcc-elf-ver t-linux t-gnu"
f6e0c56c 351 case $machine in
83248d49
RM
352 alpha*)
353 tm_file="${cpu_type}/${cpu_type}.h alpha/elf.h alpha/linux.h alpha/linux-elf.h gnu.h ${tm_file}"
354 ;;
f6e0c56c 355 i[34567]86-*-*)
39ed301b 356 tm_file="${cpu_type}/${cpu_type}.h i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h gnu.h ${tm_file}"
f6e0c56c 357 ;;
f6e0c56c 358 esac
5eeab2e3 359 ;;
61ed06c3
HPN
360*-*-openbsd*)
361 tm_file=${cpu_type}/openbsd.h
f1cf4606 362 tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
b19a539e 363 xm_defines=POSIX
61ed06c3
HPN
364 if test x$enable_threads = xyes; then
365 thread_file='posix'
366 tmake_file="${tmake_file} t-openbsd-thread"
367 fi
368 ;;
f982f805 369*-*-netbsd*)
12345543 370 tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd"
f982f805
JT
371 xm_defines=POSIX
372 gas=yes
373 gnu_ld=yes
374 ;;
9e405fe5
LR
375*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
376 # This is the place-holder for the generic a.out configuration
377 # of FreeBSD. No actual configuration resides here since
378 # there was only ever a bare-bones ix86 configuration for
379 # a.out and it exists solely in the machine-specific section.
380 # This place-holder must exist to avoid dropping into
381 # the generic ELF configuration of FreeBSD (i.e. it must be
382 # ordered before that section).
383 ;;
384*-*-freebsd*)
385 # This is the generic ELF configuration of FreeBSD. Later
386 # machine-specific sections may refine and add to this
387 # configuration.
388 #
389 # Due to tm_file entry ordering issues that vary between cpu
390 # architectures, we only define fbsd_tm_file to allow the
391 # machine-specific section to dictate the final order of all
392 # entries of tm_file with the minor exception that components
393 # of the tm_file set here will always be of the form:
394 #
b91da81f 395 # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
9e405fe5
LR
396 #
397 # The machine-specific section should not tamper with this
398 # ordering but may order all other entries of tm_file as it
399 # pleases around the provided core setting.
400 gas=yes
401 gnu_ld=yes
402 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
403 case $machine in
404 *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
405 *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
406 *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
407 *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
408 *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
409 esac
bc3a44db 410 tmake_file="t-slibgcc-elf-ver t-freebsd"
243a7070 411 xmake_file=none
9e405fe5
LR
412 xm_defines=POSIX
413 case x${enable_threads} in
414 xno) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h";;
415 x | xyes | xpthreads | xposix)
416 thread_file='posix'
417 tmake_file="${tmake_file} t-freebsd-thread"
bc3a44db
LR
418 # Before 5.0, FreeBSD can't bind shared libraries to -lc
419 # when "optionally" threaded via weak pthread_* checks.
420 case $machine in
421 *-*-freebsd[34] | *-*-freebsd[34].*)
422 tmake_file="${tmake_file} t-slibgcc-nolc-override";;
423 esac
9e405fe5
LR
424 ;;
425 *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
426 esac
b7e0196a 427 fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h"
9e405fe5 428 ;;
61ed06c3
HPN
429esac
430
431case $machine in
432# Support site-specific machine types.
433*local*)
61ed06c3 434 rest=`echo $machine | sed -e "s/$cpu_type-//"`
61ed06c3 435 tm_file=${cpu_type}/$rest.h
4dc0535b
ZW
436 if test -f $srcdir/config/${cpu_type}/xm-$rest.h
437 then xm_file=${cpu_type}/xm-$rest.h
61ed06c3 438 fi
4dc0535b
ZW
439 if test -f $srcdir/config/${cpu_type}/x-$rest
440 then xmake_file=${cpu_type}/x-$rest
441 fi
442 if test -f $srcdir/config/${cpu_type}/t-$rest
443 then tmake_file=${cpu_type}/t-$rest
61ed06c3
HPN
444 fi
445 ;;
30102605
RH
446alpha*-*-unicosmk*)
447 use_collect2=yes
448 tm_file="${tm_file} alpha/unicosmk.h"
0e5a4ad8 449
30102605
RH
450 # Don't include t-ieee for now because we don't support that yet
451 # tmake_file="alpha/t-ieee"
452 tmake_file="alpha/t-unicosmk"
453 ;;
61ed06c3
HPN
454alpha-*-interix)
455 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
456
457 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
458 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
459
460 # GAS + IEEE_CONFORMANT
461 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
462
34f4f3a5 463 xm_defines=POSIX
5dd8a9b1 464 xm_file="alpha/xm-alpha-interix.h"
14455c64 465 tmake_file="alpha/t-alpha t-interix alpha/t-interix alpha/t-ieee"
61ed06c3
HPN
466 if test x$enable_threads = xyes ; then
467 thread_file='posix'
468 fi
469 if test x$stabs = xyes ; then
470 tm_file="${tm_file} dbxcoff.h"
471 fi
472 #prefix='$$INTERIX_ROOT'/usr/contrib
473 #local_prefix='$$INTERIX_ROOT'/usr/contrib
474 ;;
77a403e4
RH
475alpha*-*-linux*ecoff*)
476 echo "Configuration $machine no longer supported" 1>&2
477 exit 1
478 ;;
61ed06c3
HPN
479alpha*-*-linux*libc1*)
480 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
481 target_cpu_default="MASK_GAS"
cea3bd3e
RH
482 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtfm alpha/t-ieee"
483 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
61ed06c3
HPN
484 gas=yes gnu_ld=yes
485 if test x$enable_threads = xyes; then
486 thread_file='posix'
487 fi
488 ;;
489alpha*-*-linux*)
490 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
491 target_cpu_default="MASK_GAS"
cea3bd3e 492 tmake_file="t-slibgcc-elf-ver t-linux alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
61ed06c3 493 ;;
83248d49
RM
494alpha*-*-gnu*)
495 target_cpu_default="MASK_GAS"
496 tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
497 ;;
61ed06c3 498alpha*-*-freebsd*)
9e405fe5 499 tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
61ed06c3 500 target_cpu_default="MASK_GAS"
cea3bd3e
RH
501 tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
502 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
61ed06c3
HPN
503 ;;
504alpha*-*-netbsd*)
f982f805 505 tm_file="${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h"
61ed06c3 506 target_cpu_default="MASK_GAS"
cea3bd3e 507 tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
61ed06c3
HPN
508 ;;
509
510alpha*-*-openbsd*)
cf0005c6 511 tm_file="${cpu_type}/${cpu_type}.h ${tm_file}"
61ed06c3
HPN
512 # default x-alpha is only appropriate for dec-osf.
513 target_cpu_default="MASK_GAS"
514 tmake_file="alpha/t-alpha alpha/t-ieee"
515 ;;
0e5a4ad8 516
c7bdf0a6 517alpha*-dec-osf[45]*)
b19a539e 518 xm_defines=POSIX
61ed06c3
HPN
519 if test x$stabs = xyes
520 then
521 tm_file="${tm_file} dbx.h"
522 fi
523 if test x$gas != xyes
524 then
525 extra_passes="mips-tfile mips-tdump"
526 fi
527 use_collect2=yes
c7bdf0a6
ZW
528 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf4"
529 tm_file="${tm_file} alpha/osf.h"
817e13c4 530 extra_headers=va_list.h
61ed06c3 531 case $machine in
61ed06c3 532 *-*-osf4*)
61ed06c3
HPN
533 # Some versions of OSF4 (specifically X4.0-9 296.7) have
534 # a broken tar, so we use cpio instead.
535 install_headers_dir=install-headers-cpio
c7bdf0a6
ZW
536 # Set target_cpu_default except on 4.0a.
537 case $machine in
538 *-*-osf4.0a) ;;
539 *) target_cpu_default=MASK_SUPPORT_ARCH
540 esac
61ed06c3
HPN
541 ;;
542 *-*-osf5*)
c7bdf0a6 543 tm_file="${tm_file} alpha/osf5.h"
61ed06c3 544 target_cpu_default=MASK_SUPPORT_ARCH
c7bdf0a6 545 float_format=i128
61ed06c3
HPN
546 ;;
547 esac
548 ;;
549alpha*-*-vxworks*)
b19a539e 550 xm_defines=POSIX
61ed06c3
HPN
551 tm_file="${tm_file} dbx.h alpha/vxworks.h"
552 tmake_file="alpha/t-alpha alpha/t-ieee"
553 if [ x$gas != xyes ]
554 then
555 extra_passes="mips-tfile mips-tdump"
556 fi
557 use_collect2=yes
558 thread_file='vxworks'
559 ;;
b6bfa876
DR
560alpha64-dec-*vms*)
561 xm_defines=POSIX
cf0005c6 562 tm_file="${tm_file} alpha/vms.h alpha/vms64.h"
b6bfa876
DR
563 xm_file="alpha/xm-vms.h alpha/xm-vms64.h"
564 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-vms64 alpha/t-ieee"
565 xmake_file=alpha/x-vms
566 exeext=.exe
567 # This removes the cpu type and manufacturer components and
568 # replaces "." with "_" in the operating system version.
569 case $host in *-*-*vms*)
570 target_alias=`echo $host \
571 | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'`
572 ;;
573 esac
ff3aaf17 574 install_headers_dir=install-headers-cp
b6bfa876
DR
575 prefix=/gnu
576 local_prefix=/gnu
577 ;;
ef057c45 578alpha*-dec-*vms*)
b19a539e 579 xm_defines=POSIX
cf0005c6 580 tm_file="${tm_file} alpha/vms.h"
4dc0535b 581 xm_file=alpha/xm-vms.h
61ed06c3 582 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
d133777f 583 xmake_file=alpha/x-vms
ef057c45
DR
584 exeext=.exe
585 # This removes the cpu type and manufacturer components and
586 # replaces "." with "_" in the operating system version.
587 case $host in *-*-*vms*)
588 target_alias=`echo $host \
589 | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'`
590 ;;
591 esac
ff3aaf17 592 install_headers_dir=install-headers-cp
ef057c45
DR
593 prefix=/gnu
594 local_prefix=/gnu
61ed06c3 595 ;;
2cc07db4 596arc-*-elf*)
c40409ce 597 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
2cc07db4
RH
598 extra_parts="crtinit.o crtfini.o"
599 ;;
61ed06c3 600arm-*-coff* | armel-*-coff*)
5059254f 601 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h"
61ed06c3
HPN
602 tmake_file=arm/t-arm-coff
603 ;;
604arm-*-vxworks*)
5059254f 605 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/vxarm.h arm/arm.h"
61ed06c3
HPN
606 tmake_file=arm/t-arm-coff
607 thread_file='vxworks'
608 ;;
61ed06c3 609arm-semi-aout | armel-semi-aout)
5059254f 610 tm_file="arm/semi.h arm/aout.h arm/arm.h"
61ed06c3
HPN
611 tmake_file=arm/t-semi
612 ;;
613arm-semi-aof | armel-semi-aof)
5059254f 614 tm_file="arm/semiaof.h arm/aof.h arm/arm.h"
7857f134 615 tmake_file=arm/t-semi
61ed06c3 616 ;;
5742588d
DB
617arm*-*-freebsd*|strongarm*-*-freebsd*)
618 tm_file="dbxelf.h elfos.h ${fbsd_tm_file} arm/elf.h arm/aout.h arm/freebsd.h arm/arm.h"
619 tmake_file="${tmake_file} arm/t-strongarm-elf"
620 ;;
69474c3c
JT
621arm*-*-netbsdelf*)
622 echo "GCC does not yet support the ${machine} target"; exit 1
623 ;;
61ed06c3 624arm*-*-netbsd*)
f982f805 625 tm_file="arm/aout.h arm/arm.h netbsd.h netbsd-aout.h arm/netbsd.h"
61ed06c3 626 tmake_file="t-netbsd arm/t-netbsd"
5721cd84 627 use_collect2=yes
61ed06c3 628 ;;
14879e76 629arm*-*-linux*) # ARM GNU/Linux with ELF
c40409ce 630 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h"
7b3a4df5 631 tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
61ed06c3
HPN
632 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
633 gnu_ld=yes
634 case x${enable_threads} in
635 x | xyes | xpthreads | xposix)
636 thread_file='posix'
637 ;;
638 esac
639 ;;
640arm*-*-uclinux*) # ARM ucLinux
c40409ce 641 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h"
61ed06c3
HPN
642 tmake_file=arm/t-arm-elf
643 ;;
644arm*-*-aout)
f910b1bb 645 tm_file="arm/aout.h arm/arm.h"
61ed06c3
HPN
646 tmake_file=arm/t-arm-aout
647 ;;
648arm*-*-ecos-elf)
c40409ce 649 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"
61ed06c3 650 tmake_file=arm/t-arm-elf
0e5a4ad8 651 ;;
f22b4bc4
JS
652arm*-*-rtems*)
653 xm_defines=POSIX
654 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/rtems-elf.h rtems.h"
655 tmake_file="arm/t-arm-elf t-rtems"
656 if test x$enable_threads = xyes; then
657 thread_file='rtems'
658 fi
659 ;;
61ed06c3 660arm*-*-elf)
c40409ce 661 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
61ed06c3
HPN
662 tmake_file=arm/t-arm-elf
663 ;;
664arm*-*-conix*)
c40409ce 665 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/conix-elf.h arm/aout.h arm/arm.h"
61ed06c3
HPN
666 tmake_file=arm/t-arm-elf
667 ;;
668arm*-*-oabi)
c40409ce 669 tm_file="arm/unknown-elf-oabi.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
61ed06c3
HPN
670 tmake_file=arm/t-arm-elf
671 ;;
672arm-*-pe*)
f910b1bb 673 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h arm/pe.h"
61ed06c3
HPN
674 tmake_file=arm/t-pe
675 extra_objs="pe.o"
676 ;;
677avr-*-*)
678 ;;
bc98ef7f 679c4x-*-rtems*)
f22b4bc4 680 xm_defines=POSIX
bc98ef7f 681 tmake_file="c4x/t-c4x t-rtems"
fdc76b09 682 tm_file="c4x/c4x.h c4x/rtems.h rtems.h"
bc98ef7f
JS
683 if test x$enable_threads = xyes; then
684 thread_file='rtems'
685 fi
51fabca5
NB
686 c_target_objs="c4x-c.o"
687 cxx_target_objs="c4x-c.o"
bc98ef7f 688 ;;
61ed06c3 689c4x-*)
61ed06c3
HPN
690 float_format=c4x
691 tmake_file=c4x/t-c4x
51fabca5
NB
692 c_target_objs="c4x-c.o"
693 cxx_target_objs="c4x-c.o"
61ed06c3 694 ;;
0b85d816 695cris-*-aout)
32fb7c9d 696 tm_file="dbxelf.h ${tm_file} cris/aout.h"
0b85d816
HPN
697 gas=yes
698 tmake_file="cris/t-cris cris/t-aout"
699 ;;
700cris-*-elf | cris-*-none)
c40409ce 701 tm_file="dbxelf.h elfos.h ${tm_file}"
0b85d816
HPN
702 tmake_file="cris/t-cris cris/t-elfmulti"
703 gas=yes
704 ;;
705cris-*-linux*)
c40409ce 706 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
0b85d816 707 tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
0b85d816 708 ;;
61ed06c3 709d30v-*)
c40409ce 710 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
711 float_format=i64
712 ;;
713dsp16xx-*)
714 ;;
61ed06c3 715fr30-*-elf)
c40409ce 716 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
717 tmake_file=fr30/t-fr30
718 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
719 ;;
36a05131
BS
720frv-*-elf)
721 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} frv/frv-abi.h"
722 tmake_file=frv/t-frv
723 ;;
bc98ef7f 724h8300-*-rtems*)
f22b4bc4 725 xm_defines=POSIX
bc98ef7f 726 tmake_file="h8300/t-h8300 t-rtems"
f22b4bc4 727 tm_file="h8300/h8300.h h8300/rtems.h rtems.h"
bc98ef7f
JS
728 if test x$enable_threads = xyes; then
729 thread_file='rtems'
730 fi
731 float_format=i32
732 ;;
9f5b774b
R
733h8300-*-elf*)
734 tmake_file="h8300/t-h8300 h8300/t-elf"
735 tm_file="h8300/h8300.h h8300/elf.h"
736 float_format=i32
737 ;;
61ed06c3
HPN
738h8300-*-*)
739 float_format=i32
740 ;;
c21a2372
AM
741hppa*64*-*-linux* | parisc*64*-*-linux*)
742 target_cpu_default="(MASK_PA_11 | MASK_PA_20)"
c40409ce 743 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
c21a2372
AM
744 pa/pa64-regs.h pa/pa-64.h pa/pa64-linux.h"
745 tmake_file=pa/t-linux64
c21a2372
AM
746 gas=yes gnu_ld=yes
747 ;;
748hppa*-*-linux* | parisc*-*-linux*)
749 target_cpu_default="MASK_PA_11"
c40409ce 750 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
c21a2372 751 pa/pa32-regs.h pa/pa32-linux.h"
7b3a4df5 752 tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
61ed06c3
HPN
753 ;;
754hppa*-*-openbsd*)
755 target_cpu_default="MASK_PA_11"
14455c64 756 tmake_file=pa/t-bsd
61ed06c3
HPN
757 ;;
758hppa1.1-*-pro*)
759 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
c40409ce 760 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
14455c64 761 tmake_file="pa/t-bsd pa/t-pro"
ed9d6ff9 762 xmake_file="pa/x-ada"
61ed06c3
HPN
763 ;;
764hppa1.1-*-osf*)
765 target_cpu_default="MASK_PA_11"
766 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
14455c64 767 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 768 xmake_file="pa/x-ada"
61ed06c3
HPN
769 use_collect2=yes
770 ;;
771hppa1.1-*-rtems*)
f22b4bc4 772 xm_defines=POSIX
61ed06c3 773 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
f22b4bc4 774 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h rtems.h"
14455c64 775 tmake_file="pa/t-bsd pa/t-pro"
ed9d6ff9 776 xmake_file="pa/x-ada"
61ed06c3
HPN
777 ;;
778hppa1.0-*-osf*)
779 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
14455c64 780 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 781 xmake_file="pa/x-ada"
61ed06c3
HPN
782 use_collect2=yes
783 ;;
784hppa1.1-*-bsd*)
785 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
786 target_cpu_default="MASK_PA_11"
14455c64 787 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 788 xmake_file="pa/x-ada"
61ed06c3
HPN
789 use_collect2=yes
790 ;;
791hppa1.0-*-bsd*)
792 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
14455c64 793 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 794 xmake_file="pa/x-ada"
61ed06c3
HPN
795 use_collect2=yes
796 ;;
797hppa1.0-*-hpux7*)
798 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
34f4f3a5 799 xm_defines=POSIX
14455c64 800 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
801 install_headers_dir=install-headers-cpio
802 use_collect2=yes
803 ;;
804hppa1.0-*-hpux8.0[0-2]*)
805 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 806 xm_defines=POSIX
14455c64 807 tmake_file=pa/t-pa-hpux
c21a2372 808 if test x$gas != xyes
61ed06c3 809 then
61ed06c3
HPN
810 tm_file="pa/pa-oldas.h ${tm_file}"
811 fi
812 install_headers_dir=install-headers-cpio
813 use_collect2=yes
814 ;;
815hppa1.1-*-hpux8.0[0-2]*)
816 target_cpu_default="MASK_PA_11"
817 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 818 xm_defines=POSIX
14455c64 819 tmake_file=pa/t-pa-hpux
c21a2372 820 if test x$gas != xyes
61ed06c3 821 then
61ed06c3
HPN
822 tm_file="pa/pa-oldas.h ${tm_file}"
823 fi
824 install_headers_dir=install-headers-cpio
825 use_collect2=yes
826 ;;
827hppa1.1-*-hpux8*)
828 target_cpu_default="MASK_PA_11"
829 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 830 xm_defines=POSIX
14455c64 831 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
832 install_headers_dir=install-headers-cpio
833 use_collect2=yes
834 ;;
835hppa1.0-*-hpux8*)
836 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 837 xm_defines=POSIX
14455c64 838 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
839 install_headers_dir=install-headers-cpio
840 use_collect2=yes
841 ;;
842hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
843 target_cpu_default="MASK_PA_11"
844 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
845 float_format=i128
34f4f3a5 846 xm_defines=POSIX
e4761274 847 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 848 xmake_file="pa/x-ada"
61ed06c3
HPN
849 if test x$enable_threads = x; then
850 enable_threads=$have_pthread_h
851 fi
852 case x${enable_threads} in
853 xyes | xdce)
854 tmake_file="${tmake_file} pa/t-dce-thr"
855 ;;
856 esac
857 install_headers_dir=install-headers-cpio
858 use_collect2=yes
859 ;;
860hppa1.0-*-hpux10*)
861 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
862 float_format=i128
34f4f3a5 863 xm_defines=POSIX
e4761274 864 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 865 xmake_file="pa/x-ada"
61ed06c3
HPN
866 if test x$enable_threads = x; then
867 enable_threads=$have_pthread_h
868 fi
869 case x${enable_threads} in
870 xyes | xdce)
871 tmake_file="${tmake_file} pa/t-dce-thr"
872 ;;
873 esac
874 install_headers_dir=install-headers-cpio
875 use_collect2=yes
876 ;;
877hppa*64*-*-hpux11*)
34f4f3a5 878 xm_defines=POSIX
38010927 879 tm_file="pa/pa64-start.h ${tm_file} pa/pa64-regs.h pa/long_double.h pa/elf.h pa/pa-hpux.h pa/pa-hpux11.h pa/pa-64.h pa/pa64-hpux.h"
61ed06c3 880 float_format=i128
eab854f6 881 tmake_file="pa/t-pa64 pa/t-pa-hpux"
ed9d6ff9 882 xmake_file="pa/x-ada"
c81460e4 883 target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
61ed06c3 884
61ed06c3
HPN
885# if [ x$enable_threads = x ]; then
886# enable_threads=$have_pthread_h
887# fi
888# if [ x$enable_threads = xyes ]; then
889# thread_file='dce'
890# tmake_file="${tmake_file} pa/t-dce-thr"
891# fi
892 install_headers_dir=install-headers-cpio
893 use_collect2=yes
894 ;;
895hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
896 target_cpu_default="MASK_PA_11"
897 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
898 float_format=i128
34f4f3a5 899 xm_defines=POSIX
e4761274 900 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 901 xmake_file="pa/x-ada"
61ed06c3
HPN
902# if test x$enable_threads = x; then
903# enable_threads=$have_pthread_h
904# fi
905# if test x$enable_threads = xyes; then
906# thread_file='dce'
907# tmake_file="${tmake_file} pa/t-dce-thr"
908# fi
909 install_headers_dir=install-headers-cpio
910 use_collect2=yes
911 ;;
912hppa1.0-*-hpux11*)
913 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
914 float_format=i128
34f4f3a5 915 xm_defines=POSIX
e4761274 916 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 917 xmake_file="pa/x-ada"
61ed06c3
HPN
918# if test x$enable_threads = x; then
919# enable_threads=$have_pthread_h
920# fi
921# if test x$enable_threads = xyes; then
922# thread_file='dce'
923# tmake_file="${tmake_file} pa/t-dce-thr"
924# fi
925 install_headers_dir=install-headers-cpio
926 use_collect2=yes
927 ;;
928hppa1.1-*-hpux* | hppa2*-*-hpux*)
929 target_cpu_default="MASK_PA_11"
930 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
34f4f3a5 931 xm_defines=POSIX
14455c64 932 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
933 install_headers_dir=install-headers-cpio
934 use_collect2=yes
935 ;;
936hppa1.0-*-hpux*)
937 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
34f4f3a5 938 xm_defines=POSIX
14455c64 939 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
940 install_headers_dir=install-headers-cpio
941 use_collect2=yes
942 ;;
943hppa1.1-*-hiux* | hppa2*-*-hiux*)
944 target_cpu_default="MASK_PA_11"
945 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
34f4f3a5 946 xm_defines=POSIX
14455c64 947 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
948 install_headers_dir=install-headers-cpio
949 use_collect2=yes
950 ;;
951hppa1.0-*-hiux*)
952 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
34f4f3a5 953 xm_defines=POSIX
14455c64 954 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
955 install_headers_dir=install-headers-cpio
956 use_collect2=yes
957 ;;
958hppa*-*-lites*)
c40409ce 959 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h"
61ed06c3 960 target_cpu_default="MASK_PA_11"
14455c64 961 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 962 xmake_file="pa/x-ada"
61ed06c3
HPN
963 use_collect2=yes
964 ;;
965hppa*-*-mpeix*)
966 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
5dd8a9b1 967 tmake_file=pa/t-mpeix
0e5a4ad8 968 echo "You must use gas. Assuming it is already installed."
c21a2372 969 gas=yes
61ed06c3 970 install_headers_dir=install-headers-tar
0e5a4ad8
EC
971 use_collect2=yes
972 ;;
61ed06c3 973i370-*-opened*) # IBM 360/370/390 Architecture
34f4f3a5 974 xm_defines='POSIX FATAL_EXIT_CODE=12'
61ed06c3 975 tm_file=i370/oe.h
14455c64 976 tmake_file="i370/t-oe i370/t-i370"
51fabca5
NB
977 c_target_objs="i370-c.o"
978 cxx_target_objs="i370-c.o"
61ed06c3
HPN
979 ;;
980i370-*-mvs*)
34f4f3a5 981 xm_defines='POSIX FATAL_EXIT_CODE=12'
61ed06c3 982 tm_file=i370/mvs.h
51fabca5
NB
983 tmake_file="i370/t-i370"
984 c_target_objs="i370-c.o"
985 cxx_target_objs="i370-c.o"
61ed06c3
HPN
986 ;;
987i370-*-linux*)
c40409ce 988 tm_file="dbxelf.h elfos.h svr4.h linux.h i370/linux.h ${tm_file}"
7b3a4df5 989 tmake_file="t-slibgcc-elf-ver t-linux"
61ed06c3 990 # broken_install=yes
61ed06c3 991 elf=yes
61ed06c3 992 ;;
b069de3b
SS
993i[34567]86-*-darwin*)
994 tm_file="${tm_file} darwin.h i386/darwin.h"
995 tm_p_file="${tm_p_file} darwin-protos.h"
996 tmake_file=i386/t-darwin
997 extra_objs="darwin.o"
998 target_gtfiles="\$(srcdir)/config/darwin.c"
999 c_target_objs="darwin-c.o"
1000 cxx_target_objs="darwin-c.o"
1001 # Darwin linker does collect2 functionality
1002 use_collect2=no
1003 float_format=i386
1004 ;;
61ed06c3 1005i[34567]86-*-elf*)
34f4f3a5 1006 xm_defines=POSIX
39ed301b 1007 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h"
14455c64 1008 tmake_file="i386/t-i386elf t-svr4"
61ed06c3 1009 ;;
61ed06c3 1010i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
34f4f3a5 1011 xm_defines="POSIX SMALL_ARG_MAX"
61ed06c3
HPN
1012 if test x$stabs = xyes -a x$gas = xyes
1013 then
1014 tm_file=i386/sysv4gdb.h
1015 else
3d05b15f 1016 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv4-cpp.h"
61ed06c3
HPN
1017 fi
1018 extra_parts="crtbegin.o crtend.o"
1019 tmake_file=i386/t-crtpic
1020 ;;
61ed06c3 1021i[34567]86-*-netware) # Intel 80386's running netware
39ed301b 1022 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
61ed06c3
HPN
1023 tmake_file=i386/t-netware
1024 ;;
61ed06c3 1025i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
70305f2b
RH
1026 if test x$gas = xyes
1027 then
1028 tm_file="${tm_file} usegas.h"
1029 fi
34f4f3a5 1030 xm_defines="POSIX SMALL_ARG_MAX"
39ed301b 1031 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ptx4.h i386/ptx4-i.h"
61ed06c3
HPN
1032 tmake_file=t-svr4
1033 extra_parts="crtbegin.o crtend.o"
1034 install_headers_dir=install-headers-cpio
1035 ;;
c7bdf0a6
ZW
1036i[34567]86-sequent-sysv*) # would otherwise be caught by i?86-*-sysv*
1037 echo "*** Configuration $machine not supported" 1>&2
1038 exit 1
61ed06c3
HPN
1039 ;;
1040i[34567]86-wrs-vxworks*)
3d05b15f 1041 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/vxi386.h"
61ed06c3
HPN
1042 thread_file='vxworks'
1043 ;;
1044i[34567]86-*-aout*)
39ed301b 1045 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h"
61ed06c3
HPN
1046 ;;
1047i[34567]86-*-beoself* | i[34567]86-*-beos*)
34f4f3a5 1048 xm_defines=POSIX
61ed06c3 1049 tmake_file='i386/t-beos i386/t-crtpic'
39ed301b 1050 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/beos-elf.h"
61ed06c3
HPN
1051 extra_parts='crtbegin.o crtend.o'
1052 ;;
c7bdf0a6 1053i[34567]86-*-freebsd2 | i[34567]86-*-freebsd2.* | i[34567]86-*-freebsd*aout*)
39ed301b 1054 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/freebsd-aout.h"
61ed06c3
HPN
1055 tmake_file=t-freebsd
1056 ;;
1057i[34567]86-*-freebsd*)
39ed301b 1058 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"
e564e618
DB
1059 ;;
1060x86_64-*-freebsd*)
39ed301b 1061 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
61ed06c3 1062 ;;
6ea0279f 1063i[34567]86-*-netbsdelf*)
39ed301b 1064 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
6ea0279f
MG
1065 float_format=i386
1066 ;;
61ed06c3 1067i[34567]86-*-netbsd*)
39ed301b 1068 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h netbsd.h netbsd-aout.h i386/netbsd.h"
61ed06c3 1069 tmake_file=t-netbsd
5721cd84 1070 use_collect2=yes
61ed06c3 1071 ;;
7c884404 1072x86_64-*-netbsd*)
39ed301b 1073 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h"
7c884404
JT
1074 float_format=i386
1075 ;;
61ed06c3 1076i[34567]86-*-openbsd*)
39ed301b 1077 tm_file="${cpu_type}/${cpu_type}.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h ${tm_file}"
f1cf4606
ME
1078 # needed to unconfuse gdb
1079 tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
61ed06c3
HPN
1080 # we need collect2 until our bug is fixed...
1081 use_collect2=yes
1082 ;;
1083i[34567]86-*-coff*)
39ed301b 1084 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/i386-coff.h"
61ed06c3 1085 ;;
c7bdf0a6
ZW
1086i[34567]86-*-linux*oldld*) # would otherwise be caught by i?86-*-linux*
1087 echo "*** Configuration $machine not supported" 1>&2
1088 exit 1
61ed06c3
HPN
1089 ;;
1090i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1091 # with a.out format
61ed06c3 1092 tmake_file="t-linux-aout i386/t-crtstuff"
39ed301b 1093 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h linux-aout.h i386/linux-aout.h"
61ed06c3
HPN
1094 gnu_ld=yes
1095 float_format=i386
1096 ;;
1097i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1098 # with ELF format using the
1099 # GNU/Linux C library 5
39ed301b 1100 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
7b3a4df5 1101 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
61ed06c3
HPN
1102 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1103 gnu_ld=yes
1104 float_format=i386
1105 if test x$enable_threads = xyes; then
1106 thread_file='single'
1107 fi
1108 ;;
1109i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1110 # with ELF format using glibc 2
1111 # aka GNU/Linux C library 6
39ed301b 1112 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
7b3a4df5 1113 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
61ed06c3 1114 float_format=i386
61ed06c3 1115 ;;
14f73b5a 1116x86_64-*-linux*)
39ed301b 1117 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h \
32fb7c9d 1118 i386/x86-64.h i386/linux64.h"
56547299 1119 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff i386/t-linux64"
14f73b5a 1120 float_format=i386
14f73b5a 1121 ;;
61ed06c3
HPN
1122i[34567]86-*-gnu*)
1123 float_format=i386
1124 ;;
1125i[34567]86-go32-msdos | i[34567]86-*-go32*)
1126 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1127 exit 1
1128 ;;
1129i[34567]86-pc-msdosdjgpp*)
1130 xm_file=i386/xm-djgpp.h
39ed301b 1131 tm_file="dbxcoff.h ${tm_file} i386/djgpp.h"
5dd8a9b1 1132 tmake_file=i386/t-djgpp
61ed06c3
HPN
1133 gnu_ld=yes
1134 gas=yes
1135 exeext=.exe
1136 float_format=none
1137 case $host in *pc-msdosdjgpp*)
1138 target_alias=djgpp
1139 ;;
1140 esac
1141 ;;
1142i[34567]86-moss-msdos* | i[34567]86-*-moss*)
39ed301b 1143 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
61ed06c3
HPN
1144 tmake_file=t-libc-ok
1145 gnu_ld=yes
1146 gas=yes
1147 ;;
1148i[34567]86-*-lynxos*)
1149 if test x$gas = xyes
1150 then
39ed301b 1151 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx.h i386/lynx.h"
61ed06c3 1152 else
39ed301b 1153 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx-ng.h i386/lynx-ng.h"
61ed06c3 1154 fi
61ed06c3
HPN
1155 ;;
1156i[34567]86-*-mach*)
39ed301b 1157 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/mach.h"
61ed06c3
HPN
1158# tmake_file=t-libc-ok
1159 use_collect2=yes
1160 ;;
c7bdf0a6
ZW
1161i[34567]86-go32-rtems* | i[34567]86-*-rtemscoff*)
1162 # would otherwise be caught by i?86-*-rtems*
1163 echo "*** Configuration $machine not supported" 1>&2
1164 exit 1
61ed06c3 1165 ;;
c7bdf0a6 1166i[34567]86-*-rtems*)
f22b4bc4 1167 xm_defines=POSIX
39ed301b 1168 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h"
61ed06c3
HPN
1169 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1170 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
bc98ef7f
JS
1171 if test x$enable_threads = xyes; then
1172 thread_file='rtems'
1173 fi
61ed06c3
HPN
1174 ;;
1175i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
34f4f3a5 1176 xm_defines=POSIX
61ed06c3 1177 install_headers_dir=install-headers-cpio
39ed301b 1178 tm_file="${tm_file} i386/unix.h i386/att.h i386/sco5.h"
61ed06c3
HPN
1179 if test x$gas = xyes
1180 then
70305f2b 1181 tm_file="usegas.h ${tm_file}"
61ed06c3
HPN
1182 tmake_file=i386/t-sco5gas
1183 else
1184 tmake_file=i386/t-sco5
1185 fi
61ed06c3
HPN
1186 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1187 ;;
61ed06c3 1188i[34567]86-*-solaris2*)
34f4f3a5 1189 xm_defines="POSIX SMALL_ARG_MAX"
8433a25e 1190 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h sol2.h i386/sol2.h"
14455c64 1191 tmake_file="i386/t-sol2 t-svr4"
7b3a4df5
RH
1192 if test x$gnu_ld = xyes; then
1193 tmake_file="$tmake_file t-slibgcc-elf-ver"
1194 else
1195 tmake_file="$tmake_file t-slibgcc-sld"
1196 fi
61ed06c3 1197 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
61ed06c3
HPN
1198 if test x${enable_threads} = x; then
1199 enable_threads=$have_pthread_h
1200 if test x${enable_threads} = x; then
1201 enable_threads=$have_thread_h
1202 fi
1203 fi
1204 if test x${enable_threads} = xyes; then
1205 if test x${have_pthread_h} = xyes; then
1206 thread_file='posix'
1207 else
1208 thread_file='solaris'
1209 fi
1210 fi
1211 ;;
23a535c4 1212i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
34f4f3a5 1213 xm_defines=POSIX
39ed301b 1214 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
61ed06c3
HPN
1215 if test x$stabs = xyes
1216 then
1217 tm_file="${tm_file} dbx.h"
1218 fi
14455c64 1219 tmake_file="i386/t-crtpic t-svr4"
61ed06c3
HPN
1220 extra_parts="crtbegin.o crtend.o"
1221 if test x$enable_threads = xyes; then
1222 thread_file='posix'
1223 fi
1224 ;;
1225i[34567]86-*-sysv4*) # Intel 80386's running system V.4
34f4f3a5 1226 xm_defines="POSIX SMALL_ARG_MAX"
3d05b15f 1227 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv4-cpp.h"
61ed06c3
HPN
1228 if test x$stabs = xyes
1229 then
1230 tm_file="${tm_file} dbx.h"
1231 fi
14455c64 1232 tmake_file="i386/t-crtpic t-svr4"
61ed06c3
HPN
1233 extra_parts="crtbegin.o crtend.o"
1234 ;;
1235i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
34f4f3a5 1236 xm_defines=POSIX
39ed301b 1237 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h i386/udk.h"
14455c64 1238 tmake_file="i386/t-crtpic i386/t-udk t-svr4"
61ed06c3
HPN
1239 extra_parts="crtbegin.o crtend.o"
1240 install_headers_dir=install-headers-cpio
1241 ;;
61ed06c3 1242i[34567]86-*-sysv*) # Intel 80386's running system V
34f4f3a5 1243 xm_defines=POSIX
61ed06c3
HPN
1244 if test x$gas = xyes
1245 then
1246 if test x$stabs = xyes
1247 then
39ed301b 1248 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h i386/svr3dbx.h"
61ed06c3 1249 tmake_file=i386/t-svr3dbx
c7bdf0a6 1250 extra_parts="svr3.ifile svr3z.ifile"
61ed06c3 1251 else
39ed301b 1252 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h"
61ed06c3
HPN
1253 extra_parts="crtbegin.o crtend.o"
1254 tmake_file=i386/t-crtstuff
1255 fi
1256 else
39ed301b 1257 tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/sysv3.h"
61ed06c3
HPN
1258 extra_parts="crtbegin.o crtend.o"
1259 tmake_file=i386/t-crtstuff
1260 fi
1261 tmake_file="$tmake_file i386/t-crtpic"
1262 ;;
1263i386-*-vsta) # Intel 80386's running VSTa kernel
39ed301b
DB
1264 xm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/xm-vsta.h"
1265 tm_file="${tm_file} i386/vsta.h"
61ed06c3
HPN
1266 ;;
1267i[34567]86-*-win32)
b19a539e 1268 xm_defines=POSIX
4dc0535b 1269 xm_file=i386/xm-cygwin.h
60a8ab96 1270 float_format=i386
61ed06c3 1271 tmake_file=i386/t-cygwin
39ed301b 1272 tm_file="${tm_file} i386/win32.h"
61ed06c3
HPN
1273 extra_objs=winnt.o
1274 if test x$enable_threads = xyes; then
1275 thread_file='win32'
1276 fi
1277 exeext=.exe
1278 ;;
1279i[34567]86-*-pe | i[34567]86-*-cygwin*)
b19a539e 1280 xm_defines=POSIX
4dc0535b 1281 xm_file=i386/xm-cygwin.h
60a8ab96 1282 float_format=i386
61ed06c3
HPN
1283 tmake_file=i386/t-cygwin
1284 tm_file=i386/cygwin.h
61ed06c3
HPN
1285 extra_objs=winnt.o
1286 if test x$enable_threads = xyes; then
1287 thread_file='win32'
1288 fi
1289 exeext=.exe
1290 ;;
1291i[34567]86-*-mingw32*)
1292 tm_file=i386/mingw32.h
60a8ab96 1293 float_format=i386
34f4f3a5 1294 xm_defines=POSIX
4dc0535b 1295 xm_file=i386/xm-mingw32.h
61ed06c3
HPN
1296 tmake_file="i386/t-cygwin i386/t-mingw32"
1297 extra_objs=winnt.o
61ed06c3
HPN
1298 if test x$enable_threads = xyes; then
1299 thread_file='win32'
1300 fi
1301 exeext=.exe
1302 case $machine in
09eaf5a5 1303 *mingw32crt*)
61ed06c3
HPN
1304 tm_file="${tm_file} i386/crtdll.h"
1305 ;;
09eaf5a5
DS
1306 *minwg32msv* | *mingw32*)
1307 ;;
61ed06c3
HPN
1308 esac
1309 ;;
1310i[34567]86-*-uwin*)
39ed301b 1311 tm_file="i386/cygwin.h i386/uwin.h"
61ed06c3
HPN
1312 tmake_file="i386/t-cygwin i386/t-uwin"
1313 extra_objs=winnt.o
61ed06c3
HPN
1314 if test x$enable_threads = xyes; then
1315 thread_file='win32'
1316 fi
1317 exeext=.exe
1318 ;;
04cec1a7 1319i[34567]86-*-interix3*)
39ed301b 1320 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h"
5dd8a9b1 1321 xm_file="i386/xm-i386-interix.h"
04cec1a7 1322 xm_defines=POSIX
5dd8a9b1 1323 tmake_file="t-interix i386/t-interix"
84512347 1324 extra_objs=winnt.o
5dd8a9b1 1325 xmake_file="x-interix"
04cec1a7
DR
1326 if test x$enable_threads = xyes ; then
1327 thread_file='posix'
1328 fi
1329 if test x$stabs = xyes ; then
1330 tm_file="${tm_file} dbxcoff.h"
1331 fi
1332 ;;
61ed06c3 1333i[34567]86-*-interix*)
39ed301b 1334 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h interix.h"
5dd8a9b1 1335 xm_file="i386/xm-i386-interix.h"
34f4f3a5 1336 xm_defines=POSIX
14455c64 1337 tmake_file="t-interix i386/t-interix"
84512347 1338 extra_objs=winnt.o
61ed06c3
HPN
1339 if test x$enable_threads = xyes ; then
1340 thread_file='posix'
1341 fi
1342 if test x$stabs = xyes ; then
1343 tm_file="${tm_file} dbxcoff.h"
1344 fi
1345 ;;
61ed06c3
HPN
1346i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1347 tm_file="${tm_file} i960/vx960.h"
1348 tmake_file=i960/t-vxworks960
1349 use_collect2=yes
1350 thread_file='vxworks'
43fabf7d
JW
1351 c_target_objs="i960-c.o"
1352 cxx_target_objs="i960-c.o"
61ed06c3
HPN
1353 ;;
1354i960-wrs-vxworks5* | i960-wrs-vxworks)
1355 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1356 tmake_file=i960/t-vxworks960
1357 use_collect2=yes
1358 thread_file='vxworks'
43fabf7d
JW
1359 c_target_objs="i960-c.o"
1360 cxx_target_objs="i960-c.o"
61ed06c3
HPN
1361 ;;
1362i960-wrs-vxworks*)
1363 tm_file="${tm_file} i960/vx960.h"
1364 tmake_file=i960/t-vxworks960
1365 use_collect2=yes
1366 thread_file='vxworks'
43fabf7d
JW
1367 c_target_objs="i960-c.o"
1368 cxx_target_objs="i960-c.o"
61ed06c3
HPN
1369 ;;
1370i960-*-coff*)
1371 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1372 tmake_file=i960/t-960bare
43fabf7d
JW
1373 c_target_objs="i960-c.o"
1374 cxx_target_objs="i960-c.o"
61ed06c3
HPN
1375 ;;
1376i960-*-rtems)
f22b4bc4 1377 xm_defines=POSIX
61ed06c3 1378 tmake_file="i960/t-960bare t-rtems"
f22b4bc4 1379 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/rtems.h rtems.h"
bc98ef7f
JS
1380 if test x$enable_threads = xyes; then
1381 thread_file='rtems'
1382 fi
43fabf7d
JW
1383 c_target_objs="i960-c.o"
1384 cxx_target_objs="i960-c.o"
61ed06c3
HPN
1385 ;;
1386i960-*-*) # Default i960 environment.
1387 use_collect2=yes
5f37d07c 1388 tmake_file=i960/t-960bare
43fabf7d
JW
1389 c_target_objs="i960-c.o"
1390 cxx_target_objs="i960-c.o"
61ed06c3 1391 ;;
c177db4b 1392ia64*-*-aix*)
c40409ce 1393 tm_file="${tm_file} dbxelf.h elfos.h svr4.h ia64/sysv4.h ia64/aix.h"
c177db4b
TW
1394 tmake_file="ia64/t-ia64 ia64/t-aix"
1395 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1396 ;;
61ed06c3 1397ia64*-*-elf*)
c40409ce 1398 tm_file="${tm_file} dbxelf.h elfos.h ia64/sysv4.h ia64/elf.h"
61ed06c3
HPN
1399 tmake_file="ia64/t-ia64"
1400 target_cpu_default="0"
1401 if test x$gas = xyes
1402 then
1403 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1404 fi
1405 if test x$gnu_ld = xyes
1406 then
1407 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1408 fi
1409 float_format=i386
1410 ;;
243a7070 1411ia64*-*-freebsd*)
fee42cc1 1412 tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} ia64/sysv4.h ia64/freebsd.h"
243a7070
DB
1413 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1414 tmake_file="${tmake_file} ia64/t-ia64"
1415 float_format=i386
1416 ;;
61ed06c3 1417ia64*-*-linux*)
c40409ce 1418 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h ia64/sysv4.h ia64/linux.h"
7b3a4df5 1419 tmake_file="t-slibgcc-elf-ver t-linux ia64/t-ia64 ia64/t-glibc"
61ed06c3 1420 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
61ed06c3
HPN
1421 float_format=i386
1422 ;;
7e5b9908 1423ia64*-*-hpux*)
c40409ce 1424 tm_file="${tm_file} dbxelf.h elfos.h svr4.h ia64/sysv4.h ia64/hpux.h ia64/hpux_longdouble.h"
23c108af 1425 tmake_file="ia64/t-ia64 ia64/t-hpux"
7e5b9908
SE
1426 target_cpu_default="MASK_GNU_AS"
1427 if test x$enable_threads = xyes; then
1428 thread_file='posix'
1429 fi
cad61762
SE
1430 use_collect2=no
1431 float_format=i128
7e5b9908 1432 ;;
6d439235 1433ip2k-*-elf)
2f9021d3 1434 ;;
61ed06c3 1435m32r-*-elf*)
c40409ce 1436 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
1437 extra_parts="crtinit.o crtfini.o"
1438 ;;
1439# m68hc11 and m68hc12 share the same machine description.
1440m68hc11-*-*|m6811-*-*)
c40409ce 1441 tm_file="dbxelf.h elfos.h m68hc11/m68hc11.h"
61ed06c3
HPN
1442 tm_p_file="m68hc11/m68hc11-protos.h"
1443 md_file="m68hc11/m68hc11.md"
1444 out_file="m68hc11/m68hc11.c"
1445 tmake_file="m68hc11/t-m68hc11-gas"
1446 ;;
1447m68hc12-*-*|m6812-*-*)
c40409ce 1448 tm_file="m68hc11/m68hc12.h dbxelf.h elfos.h m68hc11/m68hc11.h"
61ed06c3 1449 tm_p_file="m68hc11/m68hc11-protos.h"
61ed06c3
HPN
1450 md_file="m68hc11/m68hc11.md"
1451 out_file="m68hc11/m68hc11.c"
1452 tmake_file="m68hc11/t-m68hc11-gas"
1453 ;;
61ed06c3
HPN
1454m68000-hp-bsd*) # HP 9000/200 running BSD
1455 tm_file=m68k/hp2bsd.h
61ed06c3 1456 use_collect2=yes
61ed06c3
HPN
1457 ;;
1458m68000-hp-hpux*) # HP 9000 series 300
34f4f3a5 1459 xm_defines=POSIX
61ed06c3
HPN
1460 if test x$gas = xyes
1461 then
61ed06c3
HPN
1462 tm_file=m68k/hp310g.h
1463 else
61ed06c3
HPN
1464 tm_file=m68k/hp310.h
1465 fi
14455c64 1466 tmake_file=m68k/t-hp320
61ed06c3
HPN
1467 install_headers_dir=install-headers-cpio
1468 use_collect2=yes
61ed06c3
HPN
1469 ;;
1470m68000-sun-sunos3*)
1471 tm_file=m68k/sun2.h
1472 use_collect2=yes
61ed06c3
HPN
1473 ;;
1474m68000-sun-sunos4*)
1475 tm_file=m68k/sun2o4.h
1476 use_collect2=yes
61ed06c3
HPN
1477 ;;
1478m68000-att-sysv*)
34f4f3a5 1479 xm_defines=POSIX
61ed06c3
HPN
1480 if test x$gas = xyes
1481 then
1482 tm_file=m68k/3b1g.h
1483 else
1484 tm_file=m68k/3b1.h
1485 fi
1486 use_collect2=yes
61ed06c3 1487 ;;
61ed06c3
HPN
1488m68k-atari-sysv4*) # Atari variant of V.4.
1489 tm_file=m68k/atari.h
34f4f3a5 1490 xm_defines=POSIX
61ed06c3
HPN
1491 tmake_file=t-svr4
1492 extra_parts="crtbegin.o crtend.o"
61ed06c3
HPN
1493 float_format=m68k
1494 ;;
c7bdf0a6
ZW
1495m68k-apollo-sysv* | m68k-bull-sysv*)
1496 # can otherwise be caught by m68k-*-sysv4*
1497 echo "*** Configuration $machine not supported" 1>&2
1498 exit 1
1499 ;;
61ed06c3
HPN
1500m68k-motorola-sysv*)
1501 tm_file=m68k/mot3300.h
34f4f3a5 1502 xm_defines=POSIX
61ed06c3
HPN
1503 if test x$gas = xyes
1504 then
61ed06c3
HPN
1505 if test x$gnu_ld = xyes
1506 then
1507 tmake_file=m68k/t-mot3300-gald
1508 else
1509 tmake_file=m68k/t-mot3300-gas
1510 use_collect2=yes
1511 fi
1512 else
61ed06c3
HPN
1513 if test x$gnu_ld = xyes
1514 then
1515 tmake_file=m68k/t-mot3300-gld
1516 else
1517 tmake_file=m68k/t-mot3300
1518 use_collect2=yes
1519 fi
1520 fi
1521 gdb_needs_out_file_path=yes
1522 extra_parts="crt0.o mcrt0.o"
61ed06c3
HPN
1523 float_format=m68k
1524 ;;
1525m68k-ncr-sysv*) # NCR Tower 32 SVR3
1526 tm_file=m68k/tower-as.h
34f4f3a5 1527 xm_defines=POSIX
61ed06c3 1528 extra_parts="crtbegin.o crtend.o"
61ed06c3
HPN
1529 ;;
1530m68k-plexus-sysv*)
1531 tm_file=m68k/plexus.h
34f4f3a5 1532 xm_defines=POSIX
61ed06c3 1533 use_collect2=yes
61ed06c3
HPN
1534 ;;
1535m68k-tti-*)
1536 tm_file=m68k/pbb.h
34f4f3a5 1537 xm_defines=POSIX
61ed06c3
HPN
1538 ;;
1539m68k-crds-unos*)
34f4f3a5 1540 xm_defines=POSIX
61ed06c3
HPN
1541 tm_file=m68k/crds.h
1542 use_collect2=yes
61ed06c3
HPN
1543 ;;
1544m68k-cbm-sysv4*) # Commodore variant of V.4.
1545 tm_file=m68k/amix.h
34f4f3a5 1546 xm_defines=POSIX
61ed06c3
HPN
1547 tmake_file=t-svr4
1548 extra_parts="crtbegin.o crtend.o"
61ed06c3
HPN
1549 float_format=m68k
1550 ;;
1551m68k-ccur-rtu)
1552 tm_file=m68k/ccur-GAS.h
61ed06c3
HPN
1553 use_collect2=yes
1554 float_format=m68k
1555 ;;
1556m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
1557 tm_file=m68k/hp3bsd44.h
61ed06c3 1558 use_collect2=yes
61ed06c3
HPN
1559 float_format=m68k
1560 ;;
1561m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
1562 tm_file=m68k/hp3bsd.h
1563 use_collect2=yes
61ed06c3
HPN
1564 float_format=m68k
1565 ;;
61ed06c3 1566m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
34f4f3a5 1567 xm_defines=POSIX
61ed06c3
HPN
1568 if test x$gas = xyes
1569 then
1570 xmake_file=m68k/x-hp320g
1571 tm_file=m68k/hp320g.h
1572 else
1573 xmake_file=m68k/x-hp320
1574 tm_file=m68k/hpux7.h
1575 fi
1576 install_headers_dir=install-headers-cpio
1577 use_collect2=yes
61ed06c3
HPN
1578 float_format=m68k
1579 ;;
1580m68k-hp-hpux*) # HP 9000 series 300
34f4f3a5 1581 xm_defines=POSIX
61ed06c3
HPN
1582 if test x$gas = xyes
1583 then
1584 xmake_file=m68k/x-hp320g
1585 tm_file=m68k/hp320g.h
1586 else
1587 xmake_file=m68k/x-hp320
1588 tm_file=m68k/hp320.h
1589 fi
1590 install_headers_dir=install-headers-cpio
1591 use_collect2=yes
61ed06c3
HPN
1592 float_format=m68k
1593 ;;
1594m68k-sun-mach*)
1595 tm_file=m68k/sun3mach.h
1596 use_collect2=yes
61ed06c3
HPN
1597 float_format=m68k
1598 ;;
61ed06c3
HPN
1599m68k-sun-sunos3*)
1600 if test x$with_fp = xno
1601 then
1602 tm_file=m68k/sun3n3.h
1603 else
1604 tm_file=m68k/sun3o3.h
1605 float_format=m68k
1606 fi
1607 use_collect2=yes
61ed06c3
HPN
1608 ;;
1609m68k-sun-sunos*) # For SunOS 4 (the default).
1610 if test x$with_fp = xno
1611 then
1612 tm_file=m68k/sun3n.h
1613 else
1614 tm_file=m68k/sun3.h
1615 float_format=m68k
1616 fi
1617 use_collect2=yes
61ed06c3
HPN
1618 ;;
1619m68k-wrs-vxworks*)
1620 tm_file=m68k/vxm68k.h
1621 tmake_file=m68k/t-vxworks68
61ed06c3
HPN
1622 thread_file='vxworks'
1623 float_format=m68k
1624 ;;
1625m68k-*-aout*)
1626 tmake_file=m68k/t-m68kbare
1627 tm_file="m68k/m68k-aout.h libgloss.h"
61ed06c3
HPN
1628 float_format=m68k
1629 ;;
1630m68k-*-coff*)
1631 tmake_file=m68k/t-m68kbare
1632 tm_file="m68k/m68k-coff.h dbx.h"
61ed06c3
HPN
1633 float_format=m68k
1634 ;;
1635m68020-*-elf* | m68k-*-elf*)
91171315 1636 tm_file="m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h"
34f4f3a5 1637 xm_defines=POSIX
61ed06c3 1638 tmake_file=m68k/t-m68kelf
bb8602be 1639 extra_parts="crtbegin.o crtend.o"
61ed06c3 1640 ;;
2fd95d71
JT
1641m68010-*-netbsdelf* | m68k*-*-netbsdelf*)
1642 tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h m68k/netbsd-elf.h"
1643 case $machine in
1644 m68010*)
1645 target_cpu_default="0"
1646 ;;
1647 *)
1648 target_cpu_default="MASK_68020|MASK_68881|MASK_BITFIELD"
1649 ;;
1650 esac
1651 float_format=m68k
1652 ;;
61ed06c3
HPN
1653m68k*-*-netbsd*)
1654 tm_file=m68k/netbsd.h
1655 tmake_file=t-netbsd
1656 float_format=m68k
5721cd84 1657 use_collect2=yes
61ed06c3
HPN
1658 ;;
1659m68k*-*-openbsd*)
f1cf4606
ME
1660 # needed to unconfuse gdb
1661 tmake_file="t-libc-ok t-openbsd m68k/t-openbsd"
61ed06c3
HPN
1662 float_format=m68k
1663 # we need collect2 until our bug is fixed...
1664 use_collect2=yes
1665 ;;
61ed06c3
HPN
1666m68k-*-sysv4*) # Motorola m68k's running system V.4
1667 tm_file=m68k/m68kv4.h
34f4f3a5 1668 xm_defines=POSIX
61ed06c3
HPN
1669 tmake_file=t-svr4
1670 extra_parts="crtbegin.o crtend.o"
61ed06c3
HPN
1671 float_format=m68k
1672 ;;
1673m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
1674 # with a.out format
61ed06c3
HPN
1675 tm_file=m68k/linux-aout.h
1676 tmake_file="t-linux-aout m68k/t-linux-aout"
61ed06c3
HPN
1677 float_format=m68k
1678 gnu_ld=yes
1679 ;;
1680m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
1681 # with ELF format using the
1682 # GNU/Linux C library 5
61ed06c3 1683 tm_file=m68k/linux.h
7b3a4df5 1684 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 m68k/t-linux"
61ed06c3 1685 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
61ed06c3
HPN
1686 float_format=m68k
1687 gnu_ld=yes
1688 ;;
1689m68k-*-linux*) # Motorola m68k's running GNU/Linux
1690 # with ELF format using glibc 2
1691 # aka the GNU/Linux C library 6.
61ed06c3 1692 tm_file=m68k/linux.h
7b3a4df5 1693 tmake_file="t-slibgcc-elf-ver t-linux m68k/t-linux"
61ed06c3 1694 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
61ed06c3
HPN
1695 float_format=m68k
1696 gnu_ld=yes
61ed06c3
HPN
1697 ;;
1698m68k-*-psos*)
1699 tmake_file=m68k/t-m68kbare
1700 tm_file=m68k/m68k-psos.h
61ed06c3
HPN
1701 float_format=m68k
1702 ;;
c7bdf0a6
ZW
1703m68k-*-rtemscoff*) # would otherwise be caught by m68k-*-rtems*
1704 echo "*** Configuration $machine not supported" 1>&2
1705 exit 1
61ed06c3 1706 ;;
c7bdf0a6 1707m68k-*-rtems*)
f22b4bc4 1708 xm_defines=POSIX
61ed06c3 1709 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
f22b4bc4 1710 tm_file="m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h m68k/rtemself.h rtems.h"
61ed06c3 1711 float_format=m68k
bb8602be 1712 extra_parts="crtbegin.o crtend.o"
bc98ef7f
JS
1713 if test x$enable_threads = xyes; then
1714 thread_file='rtems'
1715 fi
61ed06c3 1716 ;;
61ed06c3 1717m88k-*-aout*)
34f4f3a5 1718 xm_defines=POSIX
61ed06c3
HPN
1719 tm_file=m88k/m88k-aout.h
1720 ;;
61ed06c3
HPN
1721m88k-*-openbsd*)
1722 tmake_file="${tmake_file} m88k/t-luna-gas"
1723 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
61ed06c3 1724 ;;
61ed06c3 1725m88k-*-sysv4*)
34f4f3a5 1726 xm_defines=POSIX
c40409ce 1727 tm_file="dbxelf.h elfos.h svr4.h m88k/sysv4.h"
61ed06c3 1728 extra_parts="crtbegin.o crtend.o"
61ed06c3
HPN
1729 tmake_file=m88k/t-sysv4
1730 ;;
1731mcore-*-elf)
c40409ce 1732 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} mcore/mcore-elf.h"
61ed06c3
HPN
1733 tmake_file=mcore/t-mcore
1734 ;;
1735mcore-*-pe*)
1736 tm_file=mcore/mcore-pe.h
1737 tmake_file=mcore/t-mcore-pe
1738 ;;
789b7de5
RO
1739mips-sgi-irix6*o32) # SGI System V.4., IRIX 6, O32 ABI
1740 if test x$gas = xyes
1741 then
59267987 1742 tm_file="mips/iris5.h mips/iris5gas.h mips/iris6-o32-gas.h"
789b7de5
RO
1743 if test x$stabs = xyes
1744 then
1745 tm_file="${tm_file} dbx.h"
1746 fi
59267987 1747 tmake_file=mips/t-iris5-gas
789b7de5
RO
1748 else
1749 tm_file="mips/iris5.h mips/iris6-o32-as.h"
1750 tmake_file=mips/t-iris5-as
1751 fi
1752 tm_file="${tm_file} mips/iris6-o32.h"
1753 tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
1754 xm_defines=POSIX
1755 xm_file=mips/xm-iris5.h
1756 # mips-tfile doesn't work yet
1757 # See comment in mips/iris5.h file.
1758 use_collect2=yes
1759# if test x$enable_threads = xyes; then
1760# thread_file='irix'
1761# fi
1762 ;;
61ed06c3
HPN
1763mips-sgi-irix6*) # SGI System V.4., IRIX 6
1764 if test "x$gnu_ld" = xyes
1765 then
1766 tm_file="mips/iris6.h mips/iris6gld.h"
1767 else
1768 tm_file=mips/iris6.h
1769 fi
789b7de5 1770 tmake_file="mips/t-iris mips/t-iris5-6 mips/t-iris6"
34f4f3a5 1771 xm_defines=POSIX
61ed06c3
HPN
1772# if test x$enable_threads = xyes; then
1773# thread_file='irix'
1774# fi
1775 ;;
1776mips-wrs-vxworks)
6d439235 1777 tm_file="${tm_file} mips/elf.h mips/vxworks.h"
61ed06c3
HPN
1778 tmake_file=mips/t-ecoff
1779 gas=yes
1780 gnu_ld=yes
1781 extra_parts="crtbegin.o crtend.o"
1782 thread_file='vxworks'
1783 ;;
1784mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
1785 tm_file="mips/iris6.h mips/cross64.h"
34f4f3a5 1786 xm_defines=POSIX
84c041a1 1787 xm_file=mips/xm-iris5.h
14455c64 1788 tmake_file="mips/t-iris mips/t-cross64"
61ed06c3
HPN
1789 # See comment in mips/iris[56].h files.
1790 use_collect2=yes
1791# if test x$enable_threads = xyes; then
1792# thread_file='irix'
1793# fi
1794 ;;
1795mips-sni-sysv4)
1796 if test x$gas = xyes
1797 then
1798 if test x$stabs = xyes
1799 then
1800 tm_file=mips/iris5gdb.h
1801 else
1802 tm_file="mips/sni-svr4.h mips/sni-gas.h"
1803 fi
1804 else
1805 tm_file=mips/sni-svr4.h
1806 fi
34f4f3a5 1807 xm_defines=POSIX
61ed06c3
HPN
1808 if test x$gnu_ld != xyes
1809 then
1810 use_collect2=yes
1811 fi
1812 ;;
1813mips-sgi-irix5*) # SGI System V.4., IRIX 5
1814 if test x$gas = xyes
1815 then
1816 tm_file="mips/iris5.h mips/iris5gas.h"
1817 if test x$stabs = xyes
1818 then
1819 tm_file="${tm_file} dbx.h"
1820 fi
59267987 1821 tmake_file=mips/t-iris5-gas
61ed06c3
HPN
1822 else
1823 tm_file=mips/iris5.h
789b7de5 1824 tmake_file=mips/t-iris5-as
61ed06c3 1825 fi
789b7de5 1826 tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
34f4f3a5 1827 xm_defines=POSIX
84c041a1 1828 xm_file=mips/xm-iris5.h
61ed06c3 1829 # mips-tfile doesn't work yet
61ed06c3
HPN
1830 # See comment in mips/iris5.h file.
1831 use_collect2=yes
1832# if test x$enable_threads = xyes; then
1833# thread_file='irix'
1834# fi
1835 ;;
c7bdf0a6
ZW
1836mips-sgi-*) # would otherwise be caught by mips-*-elf*
1837 echo "*** Configuration $machine not supported" 1>&2
1838 exit 1
61ed06c3 1839 ;;
f982f805 1840mips*-*-netbsd*) # NetBSD/mips, either endian.
27f4b67e 1841 target_cpu_default="MASK_GAS|MASK_ABICALLS"
f3f268dd 1842 tm_file="elfos.h ${tm_file} mips/netbsd.h"
cd24b8a4 1843 tmake_file="${tmake_file} mips/t-netbsd"
61ed06c3
HPN
1844 ;;
1845mips*-*-linux*) # Linux MIPS, either endian.
2017ed61 1846 tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
61ed06c3 1847 case $machine in
009da785 1848 mipsisa32*-*)
009da785 1849 target_cpu_default="MASK_SOFT_FLOAT"
6d439235 1850 tm_defines="MIPS_ISA_DEFAULT=32"
009da785
EC
1851 ;;
1852 esac
5f083b72 1853 tmake_file="t-slibgcc-elf-ver t-linux mips/t-linux"
61ed06c3
HPN
1854 ;;
1855mips*el-*-openbsd*) # mips little endian
1856 target_cpu_default="MASK_GAS|MASK_ABICALLS"
1857 ;;
1858mips*-*-openbsd*) # mips big endian
1859 target_cpu_default="MASK_GAS|MASK_ABICALLS"
1860 tm_file="mips/openbsd-be.h ${tm_file}"
1861 ;;
74826b0f 1862mips-*-ecoff* | mipsel-*-ecoff*)
61ed06c3
HPN
1863 if test x$stabs = xyes; then
1864 tm_file="${tm_file} dbx.h"
1865 fi
1866 tmake_file=mips/t-ecoff
1867 ;;
74826b0f 1868mipsisa32-*-elf* | mipsisa32el-*-elf*)
ac8ab9fe 1869 tm_file="${tm_file} mips/elf.h"
0e5a4ad8 1870 tmake_file=mips/t-isa3264
6d439235 1871 tm_defines="MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_MEABI"
0e5a4ad8 1872 ;;
5c44e275 1873mipsisa64-*-elf* | mipsisa64el-*-elf*)
ac8ab9fe 1874 tm_file="${tm_file} mips/elf.h"
5c44e275
CD
1875 tmake_file=mips/t-isa3264
1876 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
6d439235 1877 tm_defines="MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_MEABI"
5c44e275 1878 ;;
5ce6f47b
EC
1879mipsisa64sr71k-*-elf*)
1880 tm_file="${tm_file} mips/elf.h"
1881 tmake_file=mips/t-sr71k
1882 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1883 tm_defines="MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sr71000\\\" MIPS_ABI_DEFAULT=ABI_MEABI"
1884 ;;
3d41dbb0 1885mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*)
ac8ab9fe 1886 tm_file="${tm_file} mips/elf.h"
3d41dbb0
CD
1887 tmake_file=mips/t-elf
1888 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1889 tm_defines="MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sb1\\\" MIPS_ABI_DEFAULT=ABI_O64"
1890 ;;
74826b0f 1891mips-*-elf* | mipsel-*-elf*)
6d439235 1892 tm_file="${tm_file} mips/elf.h"
61ed06c3
HPN
1893 tmake_file=mips/t-elf
1894 ;;
74826b0f 1895mips64-*-elf* | mips64el-*-elf*)
6d439235 1896 tm_file="${tm_file} mips/elf64.h"
61ed06c3 1897 tmake_file=mips/t-elf
6d439235
EC
1898 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1899 tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
61ed06c3 1900 ;;
5ce6f47b
EC
1901mips64vr-*-elf* | mips64vrel-*-elf*)
1902 tm_file="mips/vr.h ${tm_file} mips/elf64.h"
1903 tm_defines="MIPS_ABI_DEFAULT=ABI_O64"
1904 tmake_file=mips/t-vr
1905 ;;
74826b0f 1906mips64orion-*-elf* | mips64orionel-*-elf*)
6d439235
EC
1907 tm_file="${tm_file} mips/elforion.h mips/elf64.h"
1908 tmake_file=mips/t-elf
61ed06c3 1909 tmake_file=mips/t-elf
6d439235
EC
1910 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1911 tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
61ed06c3
HPN
1912 ;;
1913mips64orion-*-rtems*)
f22b4bc4 1914 xm_defines=POSIX
6d439235 1915 tm_file="${tm_file} mips/elforion.h mips/elf64.h mips/rtems64.h rtems.h"
61ed06c3 1916 tmake_file="mips/t-elf t-rtems"
6d439235
EC
1917 tmake_file=mips/t-elf
1918 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1919 tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
bc98ef7f
JS
1920 if test x$enable_threads = xyes; then
1921 thread_file='rtems'
1922 fi
1923 ;;
1924mips*-*-rtems*)
f22b4bc4 1925 xm_defines=POSIX
6d439235 1926 tm_file="${tm_file} mips/elf.h mips/rtems.h rtems.h"
bc98ef7f
JS
1927 tmake_file="mips/t-elf t-rtems"
1928 if test x$enable_threads = xyes; then
1929 thread_file='rtems'
1930 fi
61ed06c3 1931 ;;
74826b0f 1932mipstx39-*-elf* | mipstx39el-*-elf*)
ac8ab9fe 1933 tm_file="${tm_file} mips/r3900.h mips/elf.h"
61ed06c3
HPN
1934 tmake_file=mips/t-r3900
1935 ;;
bcf684c7
HPN
1936mmix-knuth-mmixware)
1937 ;;
61ed06c3
HPN
1938mn10200-*-*)
1939 float_format=i32
c40409ce 1940 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
1941 if test x$stabs = xyes
1942 then
1943 tm_file="${tm_file} dbx.h"
1944 fi
1945 use_collect2=no
1946 ;;
1947mn10300-*-*)
c40409ce 1948 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
1949 if test x$stabs = xyes
1950 then
1951 tm_file="${tm_file} dbx.h"
1952 fi
1953 use_collect2=no
1954 ;;
69474c3c
JT
1955ns32k-*-netbsdelf*)
1956 echo "GCC does not yet support the ${machine} target"; exit 1
1957 ;;
61ed06c3 1958ns32k-*-netbsd*)
c8eb9785 1959 tm_file="${tm_file} netbsd.h netbsd-aout.h ns32k/netbsd.h"
61ed06c3 1960 # On NetBSD, the headers are already okay, except for math.h.
ac14c725 1961 tmake_file="t-netbsd ns32k/t-ns32k"
5721cd84 1962 use_collect2=yes
61ed06c3
HPN
1963 ;;
1964pdp11-*-bsd)
1965 tm_file="${tm_file} pdp11/2bsd.h"
1966 ;;
1967pdp11-*-*)
1968 ;;
1969avr-*-*)
1970 ;;
1971ns32k-*-openbsd*)
1972 # Nothing special
1973 ;;
61ed06c3
HPN
1974romp-*-openbsd*)
1975 # Nothing special
1976 ;;
1977powerpc-*-openbsd*)
e1b71de9 1978 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
ba1e6c0b 1979 extra_headers=
61ed06c3 1980 ;;
2bfcf297 1981powerpc64-*-linux*)
c40409ce 1982 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux64.h"
2bfcf297 1983 out_file=rs6000/rs6000.c
2a78758b 1984 tmake_file="rs6000/t-rs6000 t-slibgcc-elf-ver t-linux rs6000/t-linux64"
2bfcf297 1985 ;;
ddb28441
RM
1986powerpc64-*-gnu*)
1987 tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux64.h rs6000/gnu.h"
1988 out_file=rs6000/rs6000.c
2a78758b 1989 tmake_file="rs6000/t-rs6000 t-slibgcc-elf-ver t-gnu rs6000/t-linux64"
ddb28441 1990 ;;
61ed06c3 1991powerpc-*-beos*)
2bfcf297 1992 tm_file="${tm_file} rs6000/aix.h rs6000/beos.h rs6000/xcoff.h"
34f4f3a5 1993 xm_defines=POSIX
61ed06c3 1994 tmake_file=rs6000/t-beos
ba1e6c0b 1995 extra_headers=
61ed06c3 1996 ;;
18922061 1997powerpc-*-darwin*)
ee890fe2
SS
1998 tm_file="${tm_file} darwin.h rs6000/darwin.h"
1999 tm_p_file="${tm_p_file} darwin-protos.h"
2000 tmake_file=rs6000/t-darwin
ee890fe2 2001 extra_objs="darwin.o"
ef69da62 2002 target_gtfiles="\$(srcdir)/config/darwin.c"
0168a849
SS
2003 c_target_objs="darwin-c.o"
2004 cxx_target_objs="darwin-c.o"
ee890fe2
SS
2005 # Darwin linker does collect2 functionality
2006 use_collect2=no
5fb4cf24 2007 extra_headers=altivec.h
18922061 2008 ;;
b91da81f 2009powerpc*-*-freebsd*)
c40409ce 2010 tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} rs6000/sysv4.h rs6000/freebsd.h"
b91da81f
DB
2011 xm_file=rs6000/xm-sysv4.h
2012 out_file=rs6000/rs6000.c
f3465a44 2013 tmake_file="rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
b91da81f 2014 ;;
61ed06c3 2015powerpc-*-sysv*)
c40409ce 2016 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
34f4f3a5 2017 xm_defines=POSIX
61ed06c3 2018 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
61ed06c3 2019 ;;
edf1b3f3 2020powerpc-*-netbsd*)
c40409ce 2021 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h"
edf1b3f3 2022 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
edf1b3f3 2023 ;;
8da6d80e 2024powerpc-*-chorusos*)
34f4f3a5 2025 xm_defines=POSIX
c40409ce 2026 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h chorus.h"
8da6d80e 2027 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
8da6d80e
CC
2028 case x${enable_threads} in
2029 xyes | xpthreads | xposix)
2030 thread_file='posix'
2031 ;;
2032 esac
2033 ;;
61ed06c3 2034powerpc-*-eabiaix*)
34f4f3a5 2035 xm_defines=POSIX
c40409ce 2036 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
61ed06c3 2037 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3 2038 ;;
518878e1
AH
2039powerpc-*-eabispe*)
2040 xm_defines=POSIX
2041 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabispe.h"
2042 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
2043 ;;
cf6ede82
AH
2044powerpc-*-eabisimaltivec*)
2045 xm_defines=POSIX
2046 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h rs6000/eabialtivec.h"
3b7d0e98 2047 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
cf6ede82 2048 ;;
61ed06c3 2049powerpc-*-eabisim*)
34f4f3a5 2050 xm_defines=POSIX
c40409ce 2051 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
61ed06c3 2052 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2053 ;;
2054powerpc-*-elf*)
34f4f3a5 2055 xm_defines=POSIX
c40409ce 2056 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
61ed06c3 2057 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3 2058 ;;
10baca6b
AH
2059powerpc-*-eabialtivec*)
2060 xm_defines=POSIX
2061 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabialtivec.h"
3b7d0e98 2062 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
10baca6b 2063 ;;
61ed06c3 2064powerpc-*-eabi*)
34f4f3a5 2065 xm_defines=POSIX
c40409ce 2066 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h"
61ed06c3 2067 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2068 ;;
2069powerpc-*-rtems*)
34f4f3a5 2070 xm_defines=POSIX
f22b4bc4 2071 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h rtems.h"
61ed06c3 2072 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
bc98ef7f
JS
2073 if test x$enable_threads = xyes; then
2074 thread_file='rtems'
2075 fi
61ed06c3
HPN
2076 ;;
2077powerpc-*-linux*libc1)
c40409ce 2078 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
61ed06c3 2079 out_file=rs6000/rs6000.c
7b3a4df5 2080 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
61ed06c3
HPN
2081 if test x$enable_threads = xyes; then
2082 thread_file='posix'
2083 fi
2084 ;;
10baca6b
AH
2085powerpc-*-linux-gnualtivec*)
2086 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h"
2087 out_file=rs6000/rs6000.c
2088 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
10baca6b 2089 ;;
61ed06c3 2090powerpc-*-linux*)
c40409ce 2091 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
61ed06c3 2092 out_file=rs6000/rs6000.c
7b3a4df5 2093 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
61ed06c3 2094 ;;
ddb28441
RM
2095powerpc-*-gnu-gnualtivec*)
2096 tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h rs6000/gnu.h"
2097 out_file=rs6000/rs6000.c
2098 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
2099 if test x$enable_threads = xyes; then
2100 thread_file='posix'
2101 fi
2102 ;;
2103powerpc-*-gnu*)
2104 tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux.h rs6000/gnu.h"
2105 out_file=rs6000/rs6000.c
2106 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
2107 if test x$enable_threads = xyes; then
2108 thread_file='posix'
2109 fi
2110 ;;
61ed06c3 2111powerpc-wrs-vxworks*)
34f4f3a5 2112 xm_defines=POSIX
c40409ce 2113 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/vxppc.h"
61ed06c3 2114 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2115 thread_file='vxworks'
2116 ;;
bce0deb2
MM
2117powerpc-wrs-windiss*)
2118 xm_defines=POSIX
2119 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/windiss.h"
2120 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2121 thread_file=""
2122 ;;
61ed06c3 2123powerpcle-wrs-vxworks*)
34f4f3a5 2124 xm_defines=POSIX
c40409ce 2125 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
61ed06c3 2126 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2127 thread_file='vxworks'
2128 ;;
2129powerpcle-*-sysv*)
c40409ce 2130 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
34f4f3a5 2131 xm_defines=POSIX
61ed06c3 2132 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
61ed06c3
HPN
2133 ;;
2134powerpcle-*-elf*)
34f4f3a5 2135 xm_defines=POSIX
c40409ce 2136 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
61ed06c3 2137 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2138 ;;
2139powerpcle-*-eabisim*)
34f4f3a5 2140 xm_defines=POSIX
c40409ce 2141 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
61ed06c3 2142 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2143 ;;
2144powerpcle-*-eabi*)
34f4f3a5 2145 xm_defines=POSIX
c40409ce 2146 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
61ed06c3 2147 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3 2148 ;;
61ed06c3 2149rs6000-ibm-aix3.[01]*)
34f4f3a5 2150 xm_defines=POSIX
2bfcf297 2151 tm_file="${tm_file} rs6000/aix.h rs6000/aix31.h rs6000/xcoff.h"
61ed06c3
HPN
2152 float_format=none
2153 use_collect2=yes
2154 ;;
2155rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
34f4f3a5 2156 xm_defines=POSIX
2bfcf297 2157 tm_file="${tm_file} rs6000/aix.h rs6000/aix3newas.h rs6000/xcoff.h"
db009825 2158 tmake_file=rs6000/t-newas
61ed06c3
HPN
2159 float_format=none
2160 use_collect2=yes
ba1e6c0b 2161 extra_headers=
61ed06c3
HPN
2162 ;;
2163rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
34f4f3a5 2164 xm_defines=POSIX
2bfcf297 2165 tm_file="${tm_file} rs6000/aix.h rs6000/aix41.h rs6000/xcoff.h"
db009825 2166 tmake_file=rs6000/t-newas
61ed06c3
HPN
2167 float_format=none
2168 use_collect2=yes
ba1e6c0b 2169 extra_headers=
61ed06c3
HPN
2170 ;;
2171rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
34f4f3a5 2172 xm_defines=POSIX
2bfcf297 2173 tm_file="${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h"
61ed06c3 2174 tmake_file=rs6000/t-aix43
61ed06c3
HPN
2175 float_format=none
2176 use_collect2=yes
2177 thread_file='aix'
ba1e6c0b 2178 extra_headers=
61ed06c3
HPN
2179 ;;
2180rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
34f4f3a5 2181 xm_defines=POSIX
2bfcf297 2182 tm_file="${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h"
61ed06c3 2183 tmake_file=rs6000/t-aix43
61ed06c3
HPN
2184 float_format=none
2185 use_collect2=yes
2186 thread_file='aix'
ba1e6c0b 2187 extra_headers=
61ed06c3
HPN
2188 ;;
2189rs6000-ibm-aix*)
34f4f3a5 2190 xm_defines=POSIX
2bfcf297 2191 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
61ed06c3
HPN
2192 float_format=none
2193 use_collect2=yes
2194 ;;
2195rs6000-bull-bosx)
34f4f3a5 2196 xm_defines=POSIX
2bfcf297 2197 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
61ed06c3
HPN
2198 float_format=none
2199 use_collect2=yes
2200 ;;
2201rs6000-*-mach*)
32fb7c9d 2202 tm_file="${tm_file} rs6000/mach.h"
34f4f3a5 2203 xm_defines=POSIX
61ed06c3
HPN
2204 use_collect2=yes
2205 ;;
2206rs6000-*-lynxos*)
b91da81f 2207 tm_file="lynx.h rs6000/lynx.h"
61ed06c3 2208 tmake_file=rs6000/t-rs6000
61ed06c3
HPN
2209 use_collect2=yes
2210 ;;
0e5a4ad8 2211s390-*-linux*)
c40409ce 2212 tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
050e4ca2 2213 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux"
9628a767 2214 ;;
0e5a4ad8 2215s390x-*-linux*)
58d10f89 2216 tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
70eeb10b
UW
2217 tm_p_file=s390/s390-protos.h
2218 md_file=s390/s390.md
1c0ca89d 2219 extra_modes=s390/s390-modes.def
70eeb10b 2220 out_file=s390/s390.c
e8487c04 2221 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux s390/t-linux64"
9628a767 2222 ;;
8bc6e101 2223sh-*-elf* | sh[2346l]*-*-elf*)
61ed06c3 2224 tmake_file="sh/t-sh sh/t-elf"
dbf87f32
R
2225 case $machine in
2226 shl* | sh64l*)
2227 tm_file="sh/little.h ${tm_file}"
2228 tmake_file="${tmake_file} sh/t-le"
2229 ;;
2230 esac
f1a58d92 2231 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/embed-elf.h"
61ed06c3 2232 float_format=sh
dbf87f32
R
2233 case $machine in
2234 sh64*)
2235 tmake_file="${tmake_file} sh/t-sh64"
2236 tm_file="${tm_file} sh/sh64.h"
2237 extra_headers="shmedia.h ushmedia.h sshmedia.h"
dbf87f32 2238 ;;
8bc6e101
R
2239 sh4_single*) target_cpu_default="SELECT_SH4_SINGLE" ;;
2240 sh4*) target_cpu_default="SELECT_SH4" ;;
2241 sh3e*) target_cpu_default="SELECT_SH3E" ;;
2242 sh3*) target_cpu_default="SELECT_SH3" ;;
2243 sh2*) target_cpu_default="SELECT_SH2" ;;
2244 esac
2245 case $machine in
2246 sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
dbf87f32 2247 esac
fa5322fa 2248 ;;
61ed06c3 2249sh-*-rtemself*)
f22b4bc4 2250 xm_defines=POSIX
61ed06c3 2251 tmake_file="sh/t-sh sh/t-elf t-rtems"
f1a58d92 2252 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/embed-elf.h sh/rtemself.h rtems.h"
61ed06c3 2253 float_format=sh
bc98ef7f
JS
2254 if test x$enable_threads = xyes; then
2255 thread_file='rtems'
2256 fi
61ed06c3
HPN
2257 ;;
2258sh-*-rtems*)
f22b4bc4 2259 xm_defines=POSIX
61ed06c3 2260 tmake_file="sh/t-sh t-rtems"
f1a58d92 2261 tm_file="${tm_file} sh/coff.h sh/rtems.h rtems.h"
61ed06c3 2262 float_format=sh
bc98ef7f
JS
2263 if test x$enable_threads = xyes; then
2264 thread_file='rtems'
2265 fi
61ed06c3 2266 ;;
8bc6e101
R
2267sh-*-linux* | sh[2346lbe]*-*-linux*)
2268 tmake_file="sh/t-sh sh/t-elf sh/t-linux"
2269 case $machine in
2270 sh*be-*-* | sh*eb-*-*) ;;
2271 *)
2272 tm_file="sh/little.h ${tm_file}"
2273 tmake_file="${tmake_file} sh/t-le"
2274 ;;
2275 esac
2276 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
61ed06c3 2277 gas=yes gnu_ld=yes
61ed06c3 2278 float_format=sh
8bc6e101
R
2279 case $machine in
2280 sh64*)
2281 tmake_file="${tmake_file} sh/t-sh64"
2282 tm_file="${tm_file} sh/sh64.h"
2283 extra_headers="shmedia.h ushmedia.h sshmedia.h"
8bc6e101
R
2284 ;;
2285 sh4_single*) target_cpu_default="SELECT_SH4_SINGLE" ;;
2286 sh4*) target_cpu_default="SELECT_SH4" ;;
2287 sh3e[lb]e*) target_cpu_default="SELECT_SH3E" ;;
2288 sh3e[lb]*) target_cpu_default="SELECT_SH3" ;;
2289 sh3e*) target_cpu_default="SELECT_SH3E" ;;
2290 sh3*) target_cpu_default="SELECT_SH3" ;;
2291 sh2*) target_cpu_default="SELECT_SH2" ;;
2292 esac
2293 case $machine in
2294 sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
2295 esac
61ed06c3 2296 ;;
b655555e
JT
2297sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
2298 sh64-*-netbsd* | sh64l*-*-netbsd*)
b4eb03fe
JT
2299 tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h netbsd.h netbsd-elf.h sh/netbsd-elf.h"
2300 tmake_file="${tmake_file} sh/t-sh sh/t-elf"
2301 case $machine in
2302 sh*l*-*)
2303 tm_file="sh/little.h ${tm_file}"
2304 tmake_file="${tmake_file} sh/t-le"
2305 ;;
2306 *)
2307 tmake_file="${tmake_file} sh/t-be"
2308 ;;
2309 esac
b655555e
JT
2310 case $machine in
2311 sh5*-*)
2312 # SHmedia, 32-bit ABI
2313 target_cpu_default="SH5_BIT|SH4_BIT|SH3E_BIT"
3fa1b448 2314 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5"
b655555e
JT
2315 ;;
2316 sh64*-*)
2317 # SHmedia, 64-bit ABI
2318 target_cpu_default="SH5_BIT|SH4_BIT"
3fa1b448 2319 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5 sh/t-netbsd-sh5-64"
b655555e
JT
2320 ;;
2321 *)
2322 # SH3, software floating point
2323 target_cpu_default="SH1_BIT|SH2_BIT|SH3_BIT"
2324 tmake_file="${tmake_file} sh/t-netbsd"
2325 ;;
2326 esac
b4eb03fe
JT
2327 float_format=sh
2328 ;;
61ed06c3 2329sh-*-*)
f1a58d92 2330 tm_file="${tm_file} sh/coff.h"
61ed06c3
HPN
2331 float_format=sh
2332 ;;
2333sparc-tti-*)
0f658c83 2334 tm_file="${tm_file} sparc/pbd.h"
34f4f3a5 2335 xm_defines=POSIX
61ed06c3 2336 ;;
e428b937 2337sparc64-wrs-vxworks*)
8433a25e 2338 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h sparc/biarch64.h gofast.h sparc/vxsparc64.h"
2d69e3cb 2339 tmake_file="sparc/t-vxsparc64 sparc/t-crtfm"
e428b937
RK
2340 use_collect2=yes
2341 ;;
61ed06c3 2342sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
0f658c83 2343 tm_file="${tm_file} aoutos.h sparc/aout.h gofast.h sparc/vxsparc.h"
61ed06c3
HPN
2344 tmake_file=sparc/t-vxsparc
2345 use_collect2=yes
2346 thread_file='vxworks'
2347 ;;
2348sparc-*-aout*)
2349 tmake_file=sparc/t-sparcbare
0f658c83 2350 tm_file="sparc/sparc.h aoutos.h sparc/aout.h libgloss.h"
61ed06c3 2351 ;;
69474c3c 2352sparc-*-netbsdelf*)
4cb7482c 2353 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
69474c3c 2354 ;;
61ed06c3 2355sparc-*-netbsd*)
f982f805 2356 tm_file="${tm_file} sparc/aout.h netbsd.h netbsd-aout.h sparc/netbsd.h"
61ed06c3 2357 tmake_file=t-netbsd
5721cd84 2358 use_collect2=yes
61ed06c3
HPN
2359 ;;
2360sparc-*-openbsd*)
0f7a7be7 2361 tm_file="sparc/sparc.h ${tm_file}"
f1cf4606
ME
2362 # needed to unconfuse gdb
2363 tmake_file="t-libc-ok t-openbsd sparc/t-openbsd"
61ed06c3
HPN
2364 # we need collect2 until our bug is fixed...
2365 use_collect2=yes
2366 ;;
91f0fcee
ME
2367sparc64-*-openbsd*)
2368 tm_file="sparc/openbsd1-64.h sparc/sparc.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sp64-elf.h openbsd.h sparc/openbsd64.h"
2369 xm_file=sparc/xm-sp64.h
2370 gas=yes gnu_ld=yes
2371 with_cpu=ultrasparc
2372 float_format=i128
2373 ;;
61ed06c3 2374sparc-*-bsd*)
910e231e 2375 tm_file="${tm_file} sparc/bsd.h"
61ed06c3 2376 ;;
8da6d80e 2377sparc-*-chorusos*)
8433a25e 2378 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h chorus.h"
2d69e3cb 2379 tmake_file="sparc/t-chorus-elf sparc/t-crtfm"
8da6d80e
CC
2380 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2381 float_format=i64
2382 case x${enable_threads} in
2383 xyes | xpthreads | xposix)
2384 thread_file='posix'
2385 ;;
2386 esac
2387 ;;
61ed06c3 2388sparc-*-elf*)
8433a25e 2389 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h"
a261e0cc 2390 tmake_file="sparc/t-elf sparc/t-crtfm"
61ed06c3
HPN
2391 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2392 #float_format=i128
2393 float_format=i64
2394 ;;
2395sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
0f7a7be7 2396 tm_file="aoutos.h sparc/sparc.h sparc/aout.h sparc/linux-aout.h"
61ed06c3
HPN
2397 gnu_ld=yes
2398 ;;
2399sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
c40409ce 2400 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
a261e0cc 2401 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 sparc/t-crtfm"
61ed06c3
HPN
2402 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2403 gnu_ld=yes
2404 float_format=sparc
2405 ;;
2406sparc-*-linux*) # Sparc's running GNU/Linux, libc6
c40409ce 2407 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
a261e0cc 2408 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-crtfm"
61ed06c3
HPN
2409 float_format=sparc
2410 ;;
2411sparc-*-lynxos*)
2412 if test x$gas = xyes
2413 then
0f7a7be7 2414 tm_file="${tm_file} lynx.h sparc/aout.h sparc/lynx.h"
61ed06c3 2415 else
0f7a7be7 2416 tm_file="${tm_file} lynx-ng.h sparc/aout.h sparc/lynx-ng.h"
61ed06c3 2417 fi
61ed06c3 2418 tmake_file=sparc/t-sunos41
61ed06c3 2419 ;;
c7bdf0a6
ZW
2420sparc-*-rtemsaout*) # would otherwise be caught by sparc-*-rtems*
2421 echo "*** Configuration $machine not supported" 1>&2
2422 exit 1
61ed06c3 2423 ;;
c7bdf0a6 2424sparc-*-rtems*)
f22b4bc4 2425 xm_defines=POSIX
8433a25e 2426 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h sparc/rtemself.h rtems.h"
2d69e3cb 2427 tmake_file="sparc/t-elf sparc/t-crtfm t-rtems"
61ed06c3
HPN
2428 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2429 #float_format=i128
2430 float_format=i64
bc98ef7f
JS
2431 if test x$enable_threads = xyes; then
2432 thread_file='rtems'
2433 fi
61ed06c3 2434 ;;
8947df0c 2435sparc64-*-solaris2* | sparcv9-*-solaris2*)
8433a25e 2436 tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/sol2-64.h sparc/sol2-bi.h"
3fc602a0
RH
2437 if test x$gnu_ld = xyes; then
2438 tm_file="${tm_file} sparc/sol2-gld.h sparc/sol2-gld-bi.h"
61ed06c3 2439 fi
f0871dfe
RH
2440 if test x$gas = xyes; then
2441 tm_file="${tm_file} sparc/sol2-gas-bi.h"
2442 fi
34f4f3a5 2443 xm_defines=POSIX
a261e0cc 2444 tmake_file="sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm"
61ed06c3 2445 if test x$gnu_ld = xyes; then
7b3a4df5 2446 tmake_file="$tmake_file t-slibgcc-elf-ver"
61ed06c3 2447 else
7b3a4df5 2448 tmake_file="$tmake_file t-slibgcc-sld"
61ed06c3 2449 fi
61ed06c3 2450 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
0a295052 2451 float_format=i128
61ed06c3
HPN
2452 if test x${enable_threads} = x ; then
2453 enable_threads=$have_pthread_h
2454 if test x${enable_threads} = x ; then
2455 enable_threads=$have_thread_h
2456 fi
2457 fi
2458 if test x${enable_threads} = xyes ; then
2459 if test x${have_pthread_h} = xyes ; then
2460 thread_file='posix'
2461 else
2462 thread_file='solaris'
2463 fi
2464 fi
2465 ;;
2466sparc-hal-solaris2*)
34f4f3a5 2467 xm_defines=POSIX
8433a25e 2468 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/hal.h"
a261e0cc 2469 tmake_file="sparc/t-halos sparc/t-sol2 sparc/t-crtfm"
61ed06c3 2470 if test x$gnu_ld = xyes; then
7a31a340 2471 tm_file="${tm_file} sparc/sol2-gld.h"
7b3a4df5 2472 tmake_file="$tmake_file t-slibgcc-elf-ver"
61ed06c3 2473 else
7b3a4df5 2474 tmake_file="$tmake_file t-slibgcc-sld"
61ed06c3 2475 fi
61ed06c3 2476 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
0a295052 2477 float_format=i128
61ed06c3
HPN
2478 thread_file='solaris'
2479 ;;
8947df0c 2480sparc-*-solaris2*)
8433a25e 2481 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h"
3fc602a0
RH
2482 if test x$gnu_ld = xyes; then
2483 tm_file="${tm_file} sparc/sol2-gld.h"
61ed06c3 2484 fi
a261e0cc 2485 tmake_file="sparc/t-sol2 sparc/t-crtfm"
61ed06c3 2486 if test x$gnu_ld = xyes; then
7b3a4df5 2487 tmake_file="$tmake_file t-slibgcc-elf-ver"
61ed06c3 2488 else
7b3a4df5 2489 tmake_file="$tmake_file t-slibgcc-sld"
61ed06c3 2490 fi
7112135f 2491 case $machine in
8947df0c
RH
2492 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*)
2493 if test x$gnu_ld = xno; then
2494 tm_file="${tm_file} sparc/sol26-sld.h"
2495 fi
2496 ;;
2497 *-*-solaris2.[789])
3fc602a0
RH
2498 tm_file="sparc/biarch64.h ${tm_file} sparc/sol2-bi.h"
2499 if test x$gnu_ld = xyes; then
2500 tm_file="${tm_file} sparc/sol2-gld-bi.h"
7112135f 2501 fi
f0871dfe
RH
2502 if test x$gas = xyes; then
2503 tm_file="${tm_file} sparc/sol2-gas-bi.h"
2504 fi
7112135f
AO
2505 tmake_file="$tmake_file sparc/t-sol2-64"
2506 ;;
2507 esac
3fc602a0
RH
2508 xm_defines=POSIX
2509 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
0a295052 2510 float_format=i128
61ed06c3
HPN
2511 if test x${enable_threads} = x; then
2512 enable_threads=$have_pthread_h
2513 if test x${enable_threads} = x; then
2514 enable_threads=$have_thread_h
2515 fi
2516 fi
2517 if test x${enable_threads} = xyes; then
2518 if test x${have_pthread_h} = xyes; then
2519 thread_file='posix'
2520 else
2521 thread_file='solaris'
2522 fi
2523 fi
2524 ;;
2525sparc-*-sunos4.0*)
0f7a7be7 2526 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
61ed06c3
HPN
2527 use_collect2=yes
2528 ;;
2529sparc-*-sunos4*)
0f7a7be7 2530 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
61ed06c3
HPN
2531 tmake_file=sparc/t-sunos41
2532 use_collect2=yes
2533 if test x$gas = xyes; then
2534 tm_file="${tm_file} sparc/sun4gas.h"
2535 fi
2536 ;;
2537sparc-*-sunos3*)
0f7a7be7 2538 tm_file="${tm_file} sparc/aout.h sparc/sun4o3.h"
61ed06c3
HPN
2539 use_collect2=yes
2540 ;;
2541sparc-*-sysv4*)
c40409ce 2542 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h"
34f4f3a5 2543 xm_defines=POSIX
61ed06c3 2544 tmake_file=t-svr4
61ed06c3
HPN
2545 extra_parts="crtbegin.o crtend.o"
2546 ;;
2547sparc-*-vxsim*)
34f4f3a5 2548 xm_defines=POSIX
c40409ce 2549 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/vxsim.h"
61ed06c3 2550 tmake_file=sparc/t-vxsparc
61ed06c3
HPN
2551 ;;
2552sparclet-*-aout*)
0f658c83 2553 tm_file="${tm_file} aoutos.h sparc/aout.h sparc/splet.h libgloss.h"
61ed06c3
HPN
2554 tmake_file=sparc/t-splet
2555 ;;
2556sparclite-*-coff*)
0f658c83 2557 tm_file="${tm_file} gofast.h sparc/lite.h svr3.h sparc/litecoff.h dbxcoff.h libgloss.h"
61ed06c3
HPN
2558 tmake_file=sparc/t-sparclite
2559 ;;
2560sparclite-*-aout*)
0f7a7be7 2561 tm_file="${tm_file} gofast.h sparc/aout.h sparc/lite.h aoutos.h libgloss.h"
61ed06c3
HPN
2562 tmake_file=sparc/t-sparclite
2563 ;;
2564sparclite-*-elf*)
8433a25e 2565 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h gofast.h sparc/liteelf.h"
2d69e3cb 2566 tmake_file="sparc/t-sparclite sparc/t-crtfm"
61ed06c3
HPN
2567 extra_parts="crtbegin.o crtend.o"
2568 ;;
2569sparc86x-*-aout*)
0f7a7be7 2570 tm_file="${tm_file} gofast.h sparc/aout.h sparc/sp86x-aout.h aoutos.h libgloss.h"
61ed06c3
HPN
2571 tmake_file=sparc/t-sp86x
2572 ;;
0e5a4ad8 2573sparc86x-*-elf*)
8433a25e 2574 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h gofast.h sparc/sp86x-elf.h"
2d69e3cb 2575 tmake_file="sparc/t-sp86x sparc/t-crtfm"
61ed06c3
HPN
2576 extra_parts="crtbegin.o crtend.o"
2577 ;;
2578sparc64-*-aout*)
0f7a7be7 2579 tm_file="sparc/sparc.h aoutos.h sparc/aout.h sparc/sp64-aout.h"
61ed06c3
HPN
2580 ;;
2581sparc64-*-elf*)
8433a25e 2582 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/sp64-elf.h"
2d69e3cb 2583 tmake_file="${tmake_file} sparc/t-crtfm"
61ed06c3
HPN
2584 extra_parts="crtbegin.o crtend.o"
2585 ;;
c7240cbd
DB
2586sparc64-*-freebsd*|ultrasparc-*-freebsd*)
2587 tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h"
2d69e3cb 2588 tmake_file="${tmake_file} sparc/t-crtfm"
c7240cbd
DB
2589 xmake_file=none
2590 case "x$with_cpu" in
e0054185 2591 xultrasparc) ;;
c7240cbd
DB
2592 x) with_cpu=ultrasparc ;;
2593 *) echo "$with_cpu not supported for freebsd target"; exit 1 ;;
2594 esac
2595 ;;
61ed06c3 2596sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
19fe522a 2597 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-linux64 sparc/t-crtfm"
86f808dc 2598 tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux64.h"
61ed06c3
HPN
2599 float_format=sparc
2600 ;;
4cb7482c
MG
2601sparc64-*-netbsd*)
2602 tmake_file="${tmake_file} sparc/t-netbsd64"
2603 tm_file="sparc/biarch64.h ${tm_file}"
2604 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
2605 float_format=sparc
2606 ;;
d19fb8e3 2607strongarm-*-elf*)
c40409ce 2608 tm_file="arm/strongarm-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
d19fb8e3
NC
2609 tmake_file=arm/t-strongarm-elf
2610 out_file=arm/arm.c
d19fb8e3 2611 md_file=arm/arm.md
1c0ca89d 2612 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2613 ;;
2614strongarm-*-coff*)
f910b1bb 2615 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/strongarm-coff.h arm/arm.h"
d19fb8e3
NC
2616 tmake_file=arm/t-strongarm-coff
2617 out_file=arm/arm.c
d19fb8e3 2618 md_file=arm/arm.md
1c0ca89d 2619 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2620 ;;
2621strongarm-*-pe)
f910b1bb 2622 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/strongarm-coff.h arm/arm.h arm/pe.h arm/strongarm-pe.h"
d19fb8e3
NC
2623 tmake_file=arm/t-strongarm-pe
2624 out_file=arm/arm.c
d19fb8e3 2625 md_file=arm/arm.md
1c0ca89d 2626 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2627 extra_objs=pe.o
2628 ;;
61ed06c3
HPN
2629thumb*-*-*)
2630 { echo "config.gcc: error:
9e8fc4b8 2631*** The Thumb targets have been deprecated. The equivalent
cfd1c7ea 2632*** ARM based toolchain can now generate Thumb instructions
61ed06c3
HPN
2633*** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
2634 ;;
2635v850-*-rtems*)
f22b4bc4
JS
2636 xm_defines=POSIX
2637 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} v850/v850.h v850/rtems.h rtems.h"
61ed06c3
HPN
2638 tmake_file="v850/t-v850 t-rtems"
2639 if test x$stabs = xyes
2640 then
2641 tm_file="${tm_file} dbx.h"
2642 fi
2643 use_collect2=no
c3edd394
NC
2644 c_target_objs="v850-c.o"
2645 cxx_target_objs="v850-c.o"
61ed06c3 2646 ;;
b4378319
NC
2647v850e-*-*)
2648 target_cpu_default="TARGET_CPU_v850e"
2649 tm_file="dbxelf.h elfos.h svr4.h v850/v850.h"
2650 tm_p_file=v850/v850-protos.h
2651 tmake_file=v850/t-v850
2652 md_file=v850/v850.md
2653 out_file=v850/v850.c
2654 if test x$stabs = xyes
2655 then
2656 tm_file="${tm_file} dbx.h"
2657 fi
2658 use_collect2=no
2659 c_target_objs="v850-c.o"
2660 cxx_target_objs="v850-c.o"
2661 ;;
61ed06c3
HPN
2662v850-*-*)
2663 target_cpu_default="TARGET_CPU_generic"
c40409ce 2664 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
2665 tmake_file=v850/t-v850
2666 if test x$stabs = xyes
2667 then
2668 tm_file="${tm_file} dbx.h"
2669 fi
2670 use_collect2=no
c3edd394
NC
2671 c_target_objs="v850-c.o"
2672 cxx_target_objs="v850-c.o"
61ed06c3 2673 ;;
8aeea6e6 2674vax-*-bsd*) # VAXen running BSD
169274cd 2675 tm_file="${tm_file} vax/bsd.h"
61ed06c3
HPN
2676 use_collect2=yes
2677 float_format=vax
2678 ;;
8aeea6e6 2679vax-*-sysv*) # VAXen running system V
61ed06c3 2680 tm_file="${tm_file} vax/vaxv.h"
34f4f3a5 2681 xm_defines=POSIX
61ed06c3
HPN
2682 float_format=vax
2683 ;;
69474c3c
JT
2684vax-*-netbsdelf*)
2685 echo "GCC does not yet support the ${machine} target"; exit 1
2686 ;;
61ed06c3 2687vax-*-netbsd*)
f982f805 2688 tm_file="${tm_file} netbsd.h netbsd-aout.h vax/netbsd.h"
61ed06c3
HPN
2689 tmake_file=t-netbsd
2690 float_format=vax
5721cd84 2691 use_collect2=yes
61ed06c3
HPN
2692 ;;
2693vax-*-openbsd*)
61ed06c3 2694 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
61ed06c3
HPN
2695 float_format=vax
2696 use_collect2=yes
2697 ;;
8aeea6e6 2698vax-*-ultrix*) # VAXen running ultrix
61ed06c3
HPN
2699 tm_file="${tm_file} vax/ultrix.h"
2700 float_format=vax
2701 ;;
8aeea6e6 2702vax-*-vms*) # VAXen running VMS
61ed06c3
HPN
2703 xm_file=vax/xm-vms.h
2704 tm_file=vax/vms.h
2705 float_format=vax
2706 ;;
8aeea6e6 2707vax-*-*) # VAX default entry
61ed06c3
HPN
2708 float_format=vax
2709 ;;
d19fb8e3 2710xscale-*-elf)
c40409ce 2711 tm_file="arm/xscale-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
d19fb8e3
NC
2712 tmake_file=arm/t-xscale-elf
2713 out_file=arm/arm.c
d19fb8e3 2714 md_file=arm/arm.md
1c0ca89d 2715 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2716 ;;
2717xscale-*-coff)
578316b9 2718 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/xscale-coff.h arm/arm.h"
d19fb8e3
NC
2719 tmake_file=arm/t-xscale-coff
2720 out_file=arm/arm.c
d19fb8e3 2721 md_file=arm/arm.md
1c0ca89d 2722 extra_modes=arm/arm-modes.def
d19fb8e3 2723 ;;
14d269bb
GK
2724xstormy16-*-elf)
2725 # For historical reasons, the target files omit the 'x'.
c40409ce 2726 tm_file="dbxelf.h elfos.h svr4.h stormy16/stormy16.h"
14d269bb
GK
2727 tm_p_file=stormy16/stormy16-protos.h
2728 md_file=stormy16/stormy16.md
2729 out_file=stormy16/stormy16.c
2730 tmake_file="stormy16/t-stormy16"
2731 extra_parts="crtbegin.o crtend.o"
2732 ;;
03984308
BW
2733xtensa-*-elf*)
2734 tm_file="${tm_file} dbxelf.h elfos.h svr4.h xtensa/elf.h"
2735 with_newlib=yes
2736 tmake_file=xtensa/t-xtensa
2737 extra_parts="crtbegin.o crtend.o"
2738 fixincludes=Makefile.in # newlib headers should be OK
2739 ;;
2740xtensa-*-linux*)
2741 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h xtensa/linux.h"
2742 tmake_file="t-linux xtensa/t-xtensa"
03984308 2743 ;;
61ed06c3 2744*)
c7bdf0a6 2745 echo "*** Configuration $machine not supported" 1>&2
61ed06c3
HPN
2746 exit 1
2747 ;;
2748esac
2749
2750case $machine in
61ed06c3
HPN
2751*-*-sysv*)
2752 install_headers_dir=install-headers-cpio
2753 ;;
2754esac
2755
2756# Distinguish i[34567]86
2757# Also, do not run mips-tfile on MIPS if using gas.
2758# Process --with-cpu= for PowerPC/rs6000
2759target_cpu_default2=
2760case $machine in
2761i486-*-*)
e10e23ee 2762 target_cpu_default2=TARGET_CPU_DEFAULT_i486
61ed06c3
HPN
2763 ;;
2764i586-*-*)
2765 case $target_alias in
e10e23ee
JH
2766 k6_2-*)
2767 target_cpu_default2=TARGET_CPU_DEFAULT_k6_2
2768 ;;
2769 k6_3-*)
2770 target_cpu_default2=TARGET_CPU_DEFAULT_k6_3
2771 ;;
61ed06c3 2772 k6-*)
e10e23ee
JH
2773 target_cpu_default2=TARGET_CPU_DEFAULT_k6
2774 ;;
2775 pentium_mmx-*)
2776 target_cpu_default2=TARGET_CPU_DEFAULT_pentium_mmx
61ed06c3
HPN
2777 ;;
2778 *)
e10e23ee 2779 target_cpu_default2=TARGET_CPU_DEFAULT_pentium
61ed06c3
HPN
2780 ;;
2781 esac
2782 ;;
2783i686-*-* | i786-*-*)
4ed47bea 2784 case $target_alias in
e10e23ee
JH
2785 athlon_xp-*|athlon_mp-*|athlon_4-*)
2786 target_cpu_default2=TARGET_CPU_DEFAULT_athlon_sse
2787 ;;
2788 athlon_tbird-*|athlon-*)
2789 target_cpu_default2=TARGET_CPU_DEFAULT_athlon
2790 ;;
2791 pentium2-*)
2792 target_cpu_default2=TARGET_CPU_DEFAULT_pentium2
2793 ;;
2794 pentium3-*)
2795 target_cpu_default2=TARGET_CPU_DEFAULT_pentium3
2796 ;;
2797 pentium4-*)
2798 target_cpu_default2=TARGET_CPU_DEFAULT_pentium4
4ed47bea
JM
2799 ;;
2800 *)
e10e23ee 2801 target_cpu_default2=TARGET_CPU_DEFAULT_pentiumpro
4ed47bea
JM
2802 ;;
2803 esac
61ed06c3 2804 ;;
e10e23ee
JH
2805x86_64-*-*)
2806 # We should have hammer chip here, but it does not exist yet and
2807 # thus it is not supported. Athlon_SSE is probably equivalent feature
2808 # wise to hammer from our point of view except for 64bit mode.
2809 target_cpu_default2=TARGET_CPU_DEFAULT_athlon_sse
2810 ;;
61ed06c3
HPN
2811alpha*-*-*)
2812 case $machine in
2813 alphaev6[78]*)
2814 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
2815 ;;
2816 alphaev6*)
2817 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
2818 ;;
2819 alphapca56*)
2820 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
2821 ;;
2822 alphaev56*)
2823 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
2824 ;;
2825 alphaev5*)
2826 target_cpu_default2="MASK_CPU_EV5"
2827 ;;
2828 esac
0e5a4ad8 2829
61ed06c3
HPN
2830 if test x$gas = xyes
2831 then
2832 if test "$target_cpu_default2" = ""
2833 then
2834 target_cpu_default2="MASK_GAS"
2835 else
2836 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
2837 fi
2838 fi
2839 ;;
2840arm*-*-*)
2841 case "x$with_cpu" in
2842 x)
2843 # The most generic
2844 target_cpu_default2="TARGET_CPU_generic"
2845 ;;
2846
2847 # Distinguish cores, and major variants
2848 # arm7m doesn't exist, but D & I don't affect code
70f24e49
NC
2849 xarm[236789] | xarm250 | xarm[67][01]0 \
2850 | xarm7m | xarm7dm | xarm7dmi | xarm[79]tdmi \
61ed06c3 2851 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
d19fb8e3 2852 | xxscale \
61ed06c3
HPN
2853 | xstrongarm | xstrongarm110 | xstrongarm1100)
2854 target_cpu_default2="TARGET_CPU_$with_cpu"
2855 ;;
2856
2857 xyes | xno)
2858 echo "--with-cpu must be passed a value" 1>&2
2859 exit 1
2860 ;;
2861
2862 *)
2863 if test x$pass2done = xyes
2864 then
2865 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2866 exit 1
2867 fi
2868 ;;
2869 esac
2870 ;;
2871
c21a2372
AM
2872hppa*-*-* | parisc*-*-*)
2873 if test x$gas = xyes
2874 then
2875 target_cpu_default2="MASK_GAS|MASK_JUMP_IN_DELAY"
2876 fi
806bf413 2877 case $machine in
d5355cb2
JDA
2878 hppa1* | parisc1*)
2879 tm_defines="TARGET_SCHED_DEFAULT=\\\"7100LC\\\""
806bf413
JDA
2880 ;;
2881 esac
c21a2372 2882 ;;
74826b0f
EC
2883mips*-*-*)
2884 case $machine in
2885 mips*-*-ecoff* | mips*-*-elf*)
2886 if test x$gas = xyes
2887 then
2888 if test x$gnu_ld = xyes
2889 then
2890 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
2891 else
2892 target_cpu_default2="MASK_GAS"
2893 fi
2894 fi
2895 ;;
2896 mips*-*-*)
2897 if test x$gas = xyes
61ed06c3 2898 then
61ed06c3
HPN
2899 target_cpu_default2="MASK_GAS"
2900 fi
74826b0f
EC
2901 ;;
2902 esac
2903 case $machine in
2904 mips*el-*-*)
9bb46191 2905 tm_defines="TARGET_ENDIAN_DEFAULT=0 $tm_defines"
74826b0f
EC
2906 ;;
2907 esac
6d439235
EC
2908 if test "x$enable_gofast" = xyes
2909 then
2910 tm_defines="INIT_SUBTARGET_OPTABS=INIT_GOFAST_OPTABS $tm_defines"
2911 tm_file="gofast.h $tm_file"
2912 tmake_file="mips/t-gofast $tmake_file"
2913 else
2914 tmake_file="mips/t-mips $tmake_file"
2915 fi
61ed06c3
HPN
2916 ;;
2917powerpc*-*-* | rs6000-*-*)
480f7f3a
AH
2918 if test x$enable_altivec = xyes
2919 then
5e505bc9 2920 tm_file="$tm_file rs6000/altivec-defs.h"
480f7f3a 2921 fi
61ed06c3
HPN
2922 case "x$with_cpu" in
2923 x)
2924 ;;
2925
94f1d97c
DJ
2926 xcommon | xpower | xpower2 | xpower3 | xpowerpc | xpowerpc64 \
2927 | xrios | xrios1 | xrios2 | xrsc | xrsc1 | xrs64a \
2928 | x601 | x602 | x603 | x603e | x604 | x604e | x620 | x630 \
2929 | x740 | x750 | x7400 | x7450 | x505)
ff25793c 2930 target_cpu_default2="\\\"$with_cpu\\\""
61ed06c3
HPN
2931 ;;
2932
94f1d97c 2933 x401 | x403 | x405 | xec603e | x801 | x821 | x823 | x860)
c19083d8 2934 target_cpu_default2="\\\"$with_cpu\\\""
c19083d8
DD
2935 ;;
2936
61ed06c3
HPN
2937 xyes | xno)
2938 echo "--with-cpu must be passed a value" 1>&2
2939 exit 1
2940 ;;
2941
2942 *)
2943 if test x$pass2done = xyes
2944 then
2945 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2946 exit 1
2947 fi
2948 ;;
2949 esac
a6e2e53e
GK
2950 c_target_objs="${c_target_objs} rs6000-c.o"
2951 cxx_target_objs="${cxx_target_objs} rs6000-c.o"
2952 tmake_file="${tmake_file} rs6000/t-rs6000-c-rule"
61ed06c3
HPN
2953 ;;
2954sparc*-*-*)
2955 case ".$with_cpu" in
2956 .)
2957 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
2958 ;;
2959 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
2960 target_cpu_default2="TARGET_CPU_$with_cpu"
b4378319
NC
2961 ;;
2962 *)
2963 if test x$pass2done = xyes
2964 then
2965 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2966 exit 1
2967 fi
2968 ;;
2969 esac
2970 ;;
2971v850*-*-*)
2972 case "x$with_cpu" in
2973 x)
2974 ;;
2975 v850e)
2976 target_cpu_default2="TARGET_CPU_$with_cpu"
61ed06c3
HPN
2977 ;;
2978 *)
2979 if test x$pass2done = xyes
2980 then
2981 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2982 exit 1
2983 fi
2984 ;;
2985 esac
2986 ;;
2987esac
2988
2989if test "$target_cpu_default2" != ""
2990then
2991 if test "$target_cpu_default" != ""
2992 then
2993 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
2994 else
2995 target_cpu_default=$target_cpu_default2
2996 fi
2997fi
2998
61ed06c3
HPN
2999# Save data on machine being used to compile GCC in build_xm_file.
3000# Save data on host machine in vars host_xm_file and host_xmake_file.
3001if test x$pass1done = x
3002then
4dc0535b
ZW
3003 if test x$xm_file != x
3004 then build_xm_file=$xm_file
61ed06c3
HPN
3005 fi
3006 build_xm_defines=$xm_defines
3007 build_install_headers_dir=$install_headers_dir
3008 build_exeext=$exeext
3009 pass1done=yes
3010else
3011 if test x$pass2done = x
3012 then
4dc0535b
ZW
3013 if test x$xm_file != x
3014 then host_xm_file=$xm_file
61ed06c3
HPN
3015 fi
3016 host_xm_defines=$xm_defines
61ed06c3
HPN
3017 host_xmake_file="$xmake_file"
3018 host_truncate_target=$truncate_target
3019 host_extra_gcc_objs=$extra_gcc_objs
3020 host_extra_objs=$extra_host_objs
3021 host_exeext=$exeext
3022 pass2done=yes
3023 fi
3024fi