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