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