]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config.gcc
config.gcc: Consolidate little endian handling and little/big endian targets.
[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#
48# tm_file A list of target macro files, if different from
32fb7c9d
FS
49# "$cpu_type/$cpu_type.h". Usually it's constructed
50# per target in a way like this:
c40409ce 51# tm_file="${tm_file} dbxelf.h elfos.h svr4.h ${cpu_type.h}/elf.h"
32fb7c9d
FS
52# Note that the preferred order is:
53# - specific target header "${cpu_type}/${cpu_type.h}"
c40409ce 54# - generic headers like dbxelf.h elfos.h, netware.h, etc.
32fb7c9d
FS
55# - specializing target headers like ${cpu_type.h}/elf.h
56# This helps to keep OS specific stuff out of the CPU
57# defining header ${cpu_type}/${cpu_type.h}.
61ed06c3
HPN
58#
59# tm_p_file Location of file with declarations for functions
60# in $out_file.
61#
62# out_file The name of the machine description C support
63# file, if different from "$cpu_type/$cpu_type.c".
64#
65# md_file The name of the machine-description file, if
66# different from "$cpu_type/$cpu_type.md".
67#
68# tmake_file A list of machine-description-specific
69# makefile-fragments, if different from
70# "$cpu_type/t-$cpu_type".
71#
1c0ca89d
ZW
72# extra_modes The name of the file containing a list of extra
73# machine modes, if necessary and different from
74# "$cpu_type/$cpu_type-modes.def".
75#
61ed06c3
HPN
76# float_format Set to the symbolic name for the floating-point
77# formats used for this machine, if different from
78# "i64". Used to derive a header file name to
79# include, like "vax" for "float-vax.h". If no such
80# file is wanted, set to "none".
81#
82# extra_objs List of extra objects that should be linked into
83# the compiler proper (cc1, cc1obj, cc1plus)
84# depending on target.
85#
86# extra_headers List of used header files from the directory
817e13c4 87# config/${cpu_type}.
61ed06c3
HPN
88#
89# host_xmake_file List of host-specific makefile-fragments.
90#
91# extra_passes List of extra executables compiled for this target
92# machine, used for compiling from source to object.
93#
94# extra_parts List of extra object files that should be compiled
95# for this target machine.
96#
97# extra_programs Like extra_passes, but these are used when linking.
98#
ff7cc307 99# host_extra_objs List of extra host-dependent objects that should
61ed06c3
HPN
100# be linked into the compiler proper.
101#
ff7cc307 102# host_extra_gcc_objs List of extra host-dependent objects that should
61ed06c3
HPN
103# be linked into the gcc driver.
104#
ff7cc307 105# c_target_objs List of extra target-dependent objects that be
aac69a49 106# linked into the C compiler only.
0e5a4ad8 107#
ff7cc307 108# cxx_target_objs List of extra target-dependent objects that be
aac69a49 109# linked into the C++ compiler only.
0e5a4ad8 110#
61ed06c3
HPN
111# build_xm_defines List of macros to define when compiling for the
112# build machine.
113#
114# build_xm_file List of files to include when compiling for the
115# build machine.
116#
117# host_xm_defines List of macros to define when compiling for the
118# host machine.
119#
120# host_xm_file List of files to include when compiling for the
121# host machine.
122#
123# xm_defines List of macros to define when compiling for the
124# target machine.
125#
126# xm_file List of files to include when compiling for the
127# target machine.
128#
129# use_collect2 Set to yes or no, depending on whether collect2
130# will be used.
131#
132# target_cpu_default Set to override the default target model.
133#
134# build_install_headers_dir
135# Target to use when installing header files.
136#
61ed06c3
HPN
137# host_truncate_target
138# Non-empty if the target name should be truncated
139# on this host, due to filename length issues.
140#
141# gdb_needs_out_file_path
142# Set to yes if gdb needs a dir command with
143# `dirname $out_file`.
144#
145# build_exeext Set to the suffix, if the build machine requires
146# executables to have a file name suffix.
147#
148# host_exeext Set to the suffix, if the host machine requires
149# executables to have a file name suffix.
150#
151# thread_file Set to control which thread package to use.
152#
153# gas Set to yes or no depending on whether the target
154# system normally uses GNU as.
155
156# The following variables are used in each case-construct to build up the
157# outgoing variables:
158#
159# xmake_file Makefile-fragment when this system is as a host,
160# for host_xmake_file.
161#
162# extra_host_objs List of extra objects that should be linked into
163# the compiler proper when this system is a host,
164# for host_extra_objs.
165#
166# install_headers_dir Makefile-target for how the header file directory
167# is installed, when this system is a build system,
168# for build_install_headers_dir.
169#
170# truncate_target Non-empty if the target name should be truncated
171# when this system is a host, due to filename length
172# issues. For host_truncate_target.
173#
174# exeext The suffix for executables on this system.
175#
176# gnu_ld Set to yes or no depending on whether the target
177# system normally uses GNU ld.
178
179out_file=
180xmake_file=
181tmake_file=
182extra_headers=
183extra_passes=
184extra_parts=
185extra_programs=
186extra_objs=
187extra_host_objs=
188extra_gcc_objs=
aac69a49
NC
189c_target_objs=
190cxx_target_objs=
61ed06c3
HPN
191xm_defines=
192float_format=
193# Set this to force installation and use of collect2.
194use_collect2=
195# Set this to override the default target model.
196target_cpu_default=
197# Set this to control how the header file directory is installed.
198install_headers_dir=install-headers-tar
61ed06c3
HPN
199# Set this if directory names should be truncated to 14 characters.
200truncate_target=
201# Set this if gdb needs a dir command with `dirname $out_file`
202gdb_needs_out_file_path=
203# Set this if the build machine requires executables to have a
204# file name suffix.
205exeext=
206# Set this to control which thread package will be used.
207thread_file=
208# Reinitialize these from the flag values every loop pass, since some
209# configure entries modify them.
210gas="$gas_flag"
211gnu_ld="$gnu_ld_flag"
212enable_threads=$enable_threads_flag
213
9340544b 214# Obsolete configurations.
9340544b 215case $machine in
c7bdf0a6
ZW
216 m88k-*-aout* \
217 | m88k-*-openbsd* \
218 | m88k-*-sysv4* \
219 | mips-sni-sysv4 \
9c075570 220 | mn10200-*-* \
c7bdf0a6
ZW
221 | ns32k-*-netbsd* \
222 | ns32k-*-openbsd* \
223 | romp-*-openbsd* \
224 )
8998d5bf 225 if test "x$enable_obsolete" != xyes; then
9340544b
ZW
226 echo "*** Configuration $machine is obsolete." >&2
227 echo "*** Specify --enable-obsolete to build it anyway." >&2
228 echo "*** Support will be REMOVED in the next major release of GCC," >&2
229 echo "*** unless a maintainer comes forward." >&2
230 exit 1
231 fi;;
9340544b
ZW
232esac
233
61ed06c3 234# Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
ba1e6c0b
JM
235# updated in each machine entry. Also set default extra_headers for some
236# machines.
61ed06c3
HPN
237tm_p_file=
238cpu_type=`echo $machine | sed 's/-.*$//'`
239case $machine in
240alpha*-*-*)
241 cpu_type=alpha
242 ;;
243strongarm*-*-*)
244 cpu_type=arm
245 ;;
246arm*-*-*)
247 cpu_type=arm
248 ;;
d19fb8e3
NC
249xscale-*-*)
250 cpu_type=arm
251 ;;
61ed06c3
HPN
252i[34567]86-*-*)
253 cpu_type=i386
6f1a6c5b 254 extra_headers="mmintrin.h xmmintrin.h"
61ed06c3 255 ;;
14f73b5a
JH
256x86_64-*-*)
257 cpu_type=i386
8559c8c0 258 extra_headers="mmintrin.h xmmintrin.h"
14f73b5a 259 ;;
817e13c4
JM
260ia64-*-*)
261 extra_headers=ia64intrin.h
262 ;;
c21a2372 263hppa*-*-* | parisc*-*-*)
61ed06c3
HPN
264 cpu_type=pa
265 ;;
2fd95d71 266m680[012]0-*-*)
61ed06c3 267 cpu_type=m68k
ba1e6c0b
JM
268 extra_headers=math-68881.h
269 ;;
270m68k-*-*)
271 extra_headers=math-68881.h
61ed06c3
HPN
272 ;;
273mips*-*-*)
274 cpu_type=mips
275 ;;
61ed06c3
HPN
276powerpc*-*-*)
277 cpu_type=rs6000
5fb4cf24 278 extra_headers="ppc-asm.h altivec.h"
61ed06c3 279 ;;
61ed06c3
HPN
280sparc*-*-*)
281 cpu_type=sparc
282 ;;
b4eb03fe
JT
283# Note the 'l'; we need to be able to match e.g. "shle" or "shl".
284sh[123456789l]*-*-*)
fa5322fa
AO
285 cpu_type=sh
286 ;;
61ed06c3
HPN
287esac
288
289tm_file=${cpu_type}/${cpu_type}.h
b6d7afec 290if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h
61ed06c3 291then
b6d7afec
ZW
292 tm_p_file=${cpu_type}/${cpu_type}-protos.h
293fi
1c0ca89d
ZW
294extra_modes=
295if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-modes.def
296then
297 extra_modes=${cpu_type}/${cpu_type}-modes.def
298fi
e564e618
DB
299
300case $machine in
301x86_64-*-*)
302 tm_file="i386/biarch64.h ${tm_file}"
303 ;;
304esac
305
61ed06c3
HPN
306# On a.out targets, we need to use collect2.
307case $machine in
308*-*-*aout*)
309 use_collect2=yes
310 ;;
0e5a4ad8 311esac
61ed06c3 312
f982f805 313# Common parts for GNU/Linux, GNU/Hurd, OpenBSD, NetBSD, and FreeBSD systems.
61ed06c3
HPN
314case $machine in
315*-*-linux*)
34f4f3a5 316 xm_defines=POSIX
61ed06c3 317 ;;
5eeab2e3
MK
318*-*-gnu*)
319 # On the Hurd, the setup is just about the same on
320 # each different CPU. The specific machines that we
321 # support are matched above and just set $cpu_type.
b19a539e 322 xm_defines=POSIX
f6e0c56c 323 tm_file="${cpu_type}/gnu.h"
275b60d6 324 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
5eeab2e3
MK
325 # GNU always uses ELF.
326 elf=yes
327 # GNU tools are the only tools.
328 gnu_ld=yes
329 gas=yes
330 # These details are the same as for Linux.
5eeab2e3 331 # But here we need a little extra magic.
7b3a4df5 332 tmake_file="t-slibgcc-elf-ver t-linux t-gnu"
f6e0c56c 333 case $machine in
83248d49
RM
334 alpha*)
335 tm_file="${cpu_type}/${cpu_type}.h alpha/elf.h alpha/linux.h alpha/linux-elf.h gnu.h ${tm_file}"
336 ;;
f6e0c56c 337 i[34567]86-*-*)
39ed301b 338 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 339 ;;
f6e0c56c 340 esac
5eeab2e3 341 ;;
61ed06c3
HPN
342*-*-openbsd*)
343 tm_file=${cpu_type}/openbsd.h
f1cf4606 344 tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
b19a539e 345 xm_defines=POSIX
61ed06c3
HPN
346 if test x$enable_threads = xyes; then
347 thread_file='posix'
348 tmake_file="${tmake_file} t-openbsd-thread"
349 fi
350 ;;
f982f805 351*-*-netbsd*)
12345543 352 tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd"
f982f805
JT
353 xm_defines=POSIX
354 gas=yes
355 gnu_ld=yes
356 ;;
9e405fe5
LR
357*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
358 # This is the place-holder for the generic a.out configuration
359 # of FreeBSD. No actual configuration resides here since
360 # there was only ever a bare-bones ix86 configuration for
361 # a.out and it exists solely in the machine-specific section.
362 # This place-holder must exist to avoid dropping into
363 # the generic ELF configuration of FreeBSD (i.e. it must be
364 # ordered before that section).
365 ;;
366*-*-freebsd*)
367 # This is the generic ELF configuration of FreeBSD. Later
368 # machine-specific sections may refine and add to this
369 # configuration.
370 #
371 # Due to tm_file entry ordering issues that vary between cpu
372 # architectures, we only define fbsd_tm_file to allow the
373 # machine-specific section to dictate the final order of all
374 # entries of tm_file with the minor exception that components
375 # of the tm_file set here will always be of the form:
376 #
b91da81f 377 # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
9e405fe5
LR
378 #
379 # The machine-specific section should not tamper with this
380 # ordering but may order all other entries of tm_file as it
381 # pleases around the provided core setting.
382 gas=yes
383 gnu_ld=yes
384 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
385 case $machine in
386 *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
387 *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
388 *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
389 *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
390 *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
391 esac
bc3a44db 392 tmake_file="t-slibgcc-elf-ver t-freebsd"
243a7070 393 xmake_file=none
9e405fe5
LR
394 xm_defines=POSIX
395 case x${enable_threads} in
396 xno) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h";;
397 x | xyes | xpthreads | xposix)
398 thread_file='posix'
399 tmake_file="${tmake_file} t-freebsd-thread"
bc3a44db
LR
400 # Before 5.0, FreeBSD can't bind shared libraries to -lc
401 # when "optionally" threaded via weak pthread_* checks.
402 case $machine in
403 *-*-freebsd[34] | *-*-freebsd[34].*)
404 tmake_file="${tmake_file} t-slibgcc-nolc-override";;
405 esac
9e405fe5
LR
406 ;;
407 *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
408 esac
b7e0196a 409 fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h"
9e405fe5 410 ;;
61ed06c3
HPN
411esac
412
413case $machine in
414# Support site-specific machine types.
415*local*)
61ed06c3 416 rest=`echo $machine | sed -e "s/$cpu_type-//"`
61ed06c3 417 tm_file=${cpu_type}/$rest.h
4dc0535b
ZW
418 if test -f $srcdir/config/${cpu_type}/xm-$rest.h
419 then xm_file=${cpu_type}/xm-$rest.h
61ed06c3 420 fi
4dc0535b
ZW
421 if test -f $srcdir/config/${cpu_type}/x-$rest
422 then xmake_file=${cpu_type}/x-$rest
423 fi
424 if test -f $srcdir/config/${cpu_type}/t-$rest
425 then tmake_file=${cpu_type}/t-$rest
61ed06c3
HPN
426 fi
427 ;;
30102605
RH
428alpha*-*-unicosmk*)
429 use_collect2=yes
430 tm_file="${tm_file} alpha/unicosmk.h"
0e5a4ad8 431
30102605
RH
432 # Don't include t-ieee for now because we don't support that yet
433 # tmake_file="alpha/t-ieee"
434 tmake_file="alpha/t-unicosmk"
435 ;;
61ed06c3
HPN
436alpha-*-interix)
437 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
438
439 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
440 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
441
442 # GAS + IEEE_CONFORMANT
443 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
444
34f4f3a5 445 xm_defines=POSIX
5dd8a9b1 446 xm_file="alpha/xm-alpha-interix.h"
14455c64 447 tmake_file="alpha/t-alpha t-interix alpha/t-interix alpha/t-ieee"
61ed06c3
HPN
448 if test x$enable_threads = xyes ; then
449 thread_file='posix'
450 fi
451 if test x$stabs = xyes ; then
452 tm_file="${tm_file} dbxcoff.h"
453 fi
454 #prefix='$$INTERIX_ROOT'/usr/contrib
455 #local_prefix='$$INTERIX_ROOT'/usr/contrib
456 ;;
77a403e4
RH
457alpha*-*-linux*ecoff*)
458 echo "Configuration $machine no longer supported" 1>&2
459 exit 1
460 ;;
61ed06c3
HPN
461alpha*-*-linux*libc1*)
462 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
463 target_cpu_default="MASK_GAS"
cea3bd3e
RH
464 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtfm alpha/t-ieee"
465 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
61ed06c3
HPN
466 gas=yes gnu_ld=yes
467 if test x$enable_threads = xyes; then
468 thread_file='posix'
469 fi
470 ;;
471alpha*-*-linux*)
472 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
473 target_cpu_default="MASK_GAS"
cea3bd3e
RH
474 tmake_file="t-slibgcc-elf-ver t-linux alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
475 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
61ed06c3
HPN
476 gas=yes gnu_ld=yes
477 if test x$enable_threads = xyes; then
478 thread_file='posix'
479 fi
480 ;;
83248d49
RM
481alpha*-*-gnu*)
482 target_cpu_default="MASK_GAS"
483 tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
484 ;;
61ed06c3 485alpha*-*-freebsd*)
9e405fe5 486 tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
61ed06c3 487 target_cpu_default="MASK_GAS"
cea3bd3e
RH
488 tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
489 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
61ed06c3
HPN
490 ;;
491alpha*-*-netbsd*)
f982f805 492 tm_file="${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h"
61ed06c3 493 target_cpu_default="MASK_GAS"
cea3bd3e 494 tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
61ed06c3
HPN
495 ;;
496
497alpha*-*-openbsd*)
cf0005c6 498 tm_file="${cpu_type}/${cpu_type}.h ${tm_file}"
61ed06c3
HPN
499 # default x-alpha is only appropriate for dec-osf.
500 target_cpu_default="MASK_GAS"
501 tmake_file="alpha/t-alpha alpha/t-ieee"
502 ;;
0e5a4ad8 503
c7bdf0a6 504alpha*-dec-osf[45]*)
b19a539e 505 xm_defines=POSIX
61ed06c3
HPN
506 if test x$stabs = xyes
507 then
508 tm_file="${tm_file} dbx.h"
509 fi
510 if test x$gas != xyes
511 then
512 extra_passes="mips-tfile mips-tdump"
513 fi
514 use_collect2=yes
c7bdf0a6
ZW
515 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf4"
516 tm_file="${tm_file} alpha/osf.h"
817e13c4 517 extra_headers=va_list.h
61ed06c3 518 case $machine in
61ed06c3 519 *-*-osf4*)
61ed06c3
HPN
520 # Some versions of OSF4 (specifically X4.0-9 296.7) have
521 # a broken tar, so we use cpio instead.
522 install_headers_dir=install-headers-cpio
c7bdf0a6
ZW
523 # Set target_cpu_default except on 4.0a.
524 case $machine in
525 *-*-osf4.0a) ;;
526 *) target_cpu_default=MASK_SUPPORT_ARCH
527 esac
61ed06c3
HPN
528 ;;
529 *-*-osf5*)
c7bdf0a6 530 tm_file="${tm_file} alpha/osf5.h"
61ed06c3 531 target_cpu_default=MASK_SUPPORT_ARCH
c7bdf0a6 532 float_format=i128
61ed06c3
HPN
533 ;;
534 esac
535 ;;
536alpha*-*-vxworks*)
b19a539e 537 xm_defines=POSIX
61ed06c3
HPN
538 tm_file="${tm_file} dbx.h alpha/vxworks.h"
539 tmake_file="alpha/t-alpha alpha/t-ieee"
540 if [ x$gas != xyes ]
541 then
542 extra_passes="mips-tfile mips-tdump"
543 fi
544 use_collect2=yes
545 thread_file='vxworks'
546 ;;
b6bfa876
DR
547alpha64-dec-*vms*)
548 xm_defines=POSIX
cf0005c6 549 tm_file="${tm_file} alpha/vms.h alpha/vms64.h"
b6bfa876
DR
550 xm_file="alpha/xm-vms.h alpha/xm-vms64.h"
551 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-vms64 alpha/t-ieee"
552 xmake_file=alpha/x-vms
553 exeext=.exe
554 # This removes the cpu type and manufacturer components and
555 # replaces "." with "_" in the operating system version.
556 case $host in *-*-*vms*)
557 target_alias=`echo $host \
558 | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'`
559 ;;
560 esac
ff3aaf17 561 install_headers_dir=install-headers-cp
b6bfa876
DR
562 prefix=/gnu
563 local_prefix=/gnu
564 ;;
ef057c45 565alpha*-dec-*vms*)
b19a539e 566 xm_defines=POSIX
cf0005c6 567 tm_file="${tm_file} alpha/vms.h"
4dc0535b 568 xm_file=alpha/xm-vms.h
61ed06c3 569 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
d133777f 570 xmake_file=alpha/x-vms
ef057c45
DR
571 exeext=.exe
572 # This removes the cpu type and manufacturer components and
573 # replaces "." with "_" in the operating system version.
574 case $host in *-*-*vms*)
575 target_alias=`echo $host \
576 | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'`
577 ;;
578 esac
ff3aaf17 579 install_headers_dir=install-headers-cp
ef057c45
DR
580 prefix=/gnu
581 local_prefix=/gnu
61ed06c3 582 ;;
2cc07db4 583arc-*-elf*)
c40409ce 584 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
2cc07db4
RH
585 extra_parts="crtinit.o crtfini.o"
586 ;;
61ed06c3 587arm-*-coff* | armel-*-coff*)
5059254f 588 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h"
61ed06c3
HPN
589 tmake_file=arm/t-arm-coff
590 ;;
591arm-*-vxworks*)
5059254f 592 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/vxarm.h arm/arm.h"
61ed06c3
HPN
593 tmake_file=arm/t-arm-coff
594 thread_file='vxworks'
595 ;;
61ed06c3 596arm-semi-aout | armel-semi-aout)
5059254f 597 tm_file="arm/semi.h arm/aout.h arm/arm.h"
61ed06c3
HPN
598 tmake_file=arm/t-semi
599 ;;
600arm-semi-aof | armel-semi-aof)
5059254f 601 tm_file="arm/semiaof.h arm/aof.h arm/arm.h"
7857f134 602 tmake_file=arm/t-semi
61ed06c3 603 ;;
5742588d
DB
604arm*-*-freebsd*|strongarm*-*-freebsd*)
605 tm_file="dbxelf.h elfos.h ${fbsd_tm_file} arm/elf.h arm/aout.h arm/freebsd.h arm/arm.h"
606 tmake_file="${tmake_file} arm/t-strongarm-elf"
607 ;;
69474c3c
JT
608arm*-*-netbsdelf*)
609 echo "GCC does not yet support the ${machine} target"; exit 1
610 ;;
61ed06c3 611arm*-*-netbsd*)
f982f805 612 tm_file="arm/aout.h arm/arm.h netbsd.h netbsd-aout.h arm/netbsd.h"
61ed06c3 613 tmake_file="t-netbsd arm/t-netbsd"
5721cd84 614 use_collect2=yes
61ed06c3 615 ;;
14879e76 616arm*-*-linux*) # ARM GNU/Linux with ELF
c40409ce 617 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 618 tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
61ed06c3
HPN
619 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
620 gnu_ld=yes
621 case x${enable_threads} in
622 x | xyes | xpthreads | xposix)
623 thread_file='posix'
624 ;;
625 esac
626 ;;
627arm*-*-uclinux*) # ARM ucLinux
c40409ce 628 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
629 tmake_file=arm/t-arm-elf
630 ;;
631arm*-*-aout)
f910b1bb 632 tm_file="arm/aout.h arm/arm.h"
61ed06c3
HPN
633 tmake_file=arm/t-arm-aout
634 ;;
635arm*-*-ecos-elf)
c40409ce 636 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"
61ed06c3 637 tmake_file=arm/t-arm-elf
0e5a4ad8 638 ;;
f22b4bc4
JS
639arm*-*-rtems*)
640 xm_defines=POSIX
641 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"
642 tmake_file="arm/t-arm-elf t-rtems"
643 if test x$enable_threads = xyes; then
644 thread_file='rtems'
645 fi
646 ;;
61ed06c3 647arm*-*-elf)
c40409ce 648 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
61ed06c3
HPN
649 tmake_file=arm/t-arm-elf
650 ;;
651arm*-*-conix*)
c40409ce 652 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
653 tmake_file=arm/t-arm-elf
654 ;;
655arm*-*-oabi)
c40409ce 656 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
657 tmake_file=arm/t-arm-elf
658 ;;
659arm-*-pe*)
f910b1bb 660 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h arm/pe.h"
61ed06c3
HPN
661 tmake_file=arm/t-pe
662 extra_objs="pe.o"
663 ;;
664avr-*-*)
665 ;;
bc98ef7f 666c4x-*-rtems*)
f22b4bc4 667 xm_defines=POSIX
bc98ef7f 668 tmake_file="c4x/t-c4x t-rtems"
fdc76b09 669 tm_file="c4x/c4x.h c4x/rtems.h rtems.h"
bc98ef7f
JS
670 if test x$enable_threads = xyes; then
671 thread_file='rtems'
672 fi
51fabca5
NB
673 c_target_objs="c4x-c.o"
674 cxx_target_objs="c4x-c.o"
bc98ef7f 675 ;;
61ed06c3 676c4x-*)
61ed06c3
HPN
677 float_format=c4x
678 tmake_file=c4x/t-c4x
51fabca5
NB
679 c_target_objs="c4x-c.o"
680 cxx_target_objs="c4x-c.o"
61ed06c3 681 ;;
0b85d816 682cris-*-aout)
32fb7c9d 683 tm_file="dbxelf.h ${tm_file} cris/aout.h"
0b85d816
HPN
684 gas=yes
685 tmake_file="cris/t-cris cris/t-aout"
686 ;;
687cris-*-elf | cris-*-none)
c40409ce 688 tm_file="dbxelf.h elfos.h ${tm_file}"
0b85d816
HPN
689 tmake_file="cris/t-cris cris/t-elfmulti"
690 gas=yes
691 ;;
692cris-*-linux*)
c40409ce 693 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
0b85d816 694 tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
275b60d6 695 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
0b85d816
HPN
696 case x${enable_threads} in
697 x | xyes | xpthreads | xposix)
698 thread_file=posix
699 ;;
700 esac
701 gas=yes
702 ;;
61ed06c3 703d30v-*)
c40409ce 704 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
705 float_format=i64
706 ;;
707dsp16xx-*)
708 ;;
61ed06c3 709fr30-*-elf)
c40409ce 710 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
711 tmake_file=fr30/t-fr30
712 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
713 ;;
bc98ef7f 714h8300-*-rtems*)
f22b4bc4 715 xm_defines=POSIX
bc98ef7f 716 tmake_file="h8300/t-h8300 t-rtems"
f22b4bc4 717 tm_file="h8300/h8300.h h8300/rtems.h rtems.h"
bc98ef7f
JS
718 if test x$enable_threads = xyes; then
719 thread_file='rtems'
720 fi
721 float_format=i32
722 ;;
9f5b774b
R
723h8300-*-elf*)
724 tmake_file="h8300/t-h8300 h8300/t-elf"
725 tm_file="h8300/h8300.h h8300/elf.h"
726 float_format=i32
727 ;;
61ed06c3
HPN
728h8300-*-*)
729 float_format=i32
730 ;;
c21a2372
AM
731hppa*64*-*-linux* | parisc*64*-*-linux*)
732 target_cpu_default="(MASK_PA_11 | MASK_PA_20)"
c40409ce 733 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
c21a2372
AM
734 pa/pa64-regs.h pa/pa-64.h pa/pa64-linux.h"
735 tmake_file=pa/t-linux64
c21a2372
AM
736 gas=yes gnu_ld=yes
737 ;;
738hppa*-*-linux* | parisc*-*-linux*)
739 target_cpu_default="MASK_PA_11"
c40409ce 740 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
c21a2372 741 pa/pa32-regs.h pa/pa32-linux.h"
7b3a4df5 742 tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
275b60d6 743 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
61ed06c3
HPN
744 gas=yes gnu_ld=yes
745 if test x$enable_threads = xyes; then
746 thread_file='posix'
747 fi
748 ;;
749hppa*-*-openbsd*)
750 target_cpu_default="MASK_PA_11"
14455c64 751 tmake_file=pa/t-bsd
61ed06c3
HPN
752 ;;
753hppa1.1-*-pro*)
754 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
c40409ce 755 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
14455c64 756 tmake_file="pa/t-bsd pa/t-pro"
ed9d6ff9 757 xmake_file="pa/x-ada"
61ed06c3
HPN
758 ;;
759hppa1.1-*-osf*)
760 target_cpu_default="MASK_PA_11"
761 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
14455c64 762 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 763 xmake_file="pa/x-ada"
61ed06c3
HPN
764 use_collect2=yes
765 ;;
766hppa1.1-*-rtems*)
f22b4bc4 767 xm_defines=POSIX
61ed06c3 768 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
f22b4bc4 769 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 770 tmake_file="pa/t-bsd pa/t-pro"
ed9d6ff9 771 xmake_file="pa/x-ada"
61ed06c3
HPN
772 ;;
773hppa1.0-*-osf*)
774 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
14455c64 775 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 776 xmake_file="pa/x-ada"
61ed06c3
HPN
777 use_collect2=yes
778 ;;
779hppa1.1-*-bsd*)
780 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
781 target_cpu_default="MASK_PA_11"
14455c64 782 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 783 xmake_file="pa/x-ada"
61ed06c3
HPN
784 use_collect2=yes
785 ;;
786hppa1.0-*-bsd*)
787 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
14455c64 788 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 789 xmake_file="pa/x-ada"
61ed06c3
HPN
790 use_collect2=yes
791 ;;
792hppa1.0-*-hpux7*)
793 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
34f4f3a5 794 xm_defines=POSIX
14455c64 795 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
796 install_headers_dir=install-headers-cpio
797 use_collect2=yes
798 ;;
799hppa1.0-*-hpux8.0[0-2]*)
800 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 801 xm_defines=POSIX
14455c64 802 tmake_file=pa/t-pa-hpux
c21a2372 803 if test x$gas != xyes
61ed06c3 804 then
61ed06c3
HPN
805 tm_file="pa/pa-oldas.h ${tm_file}"
806 fi
807 install_headers_dir=install-headers-cpio
808 use_collect2=yes
809 ;;
810hppa1.1-*-hpux8.0[0-2]*)
811 target_cpu_default="MASK_PA_11"
812 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 813 xm_defines=POSIX
14455c64 814 tmake_file=pa/t-pa-hpux
c21a2372 815 if test x$gas != xyes
61ed06c3 816 then
61ed06c3
HPN
817 tm_file="pa/pa-oldas.h ${tm_file}"
818 fi
819 install_headers_dir=install-headers-cpio
820 use_collect2=yes
821 ;;
822hppa1.1-*-hpux8*)
823 target_cpu_default="MASK_PA_11"
824 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 825 xm_defines=POSIX
14455c64 826 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
827 install_headers_dir=install-headers-cpio
828 use_collect2=yes
829 ;;
830hppa1.0-*-hpux8*)
831 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
34f4f3a5 832 xm_defines=POSIX
14455c64 833 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
834 install_headers_dir=install-headers-cpio
835 use_collect2=yes
836 ;;
837hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
838 target_cpu_default="MASK_PA_11"
839 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
840 float_format=i128
34f4f3a5 841 xm_defines=POSIX
e4761274 842 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 843 xmake_file="pa/x-ada"
61ed06c3
HPN
844 if test x$enable_threads = x; then
845 enable_threads=$have_pthread_h
846 fi
847 case x${enable_threads} in
848 xyes | xdce)
849 tmake_file="${tmake_file} pa/t-dce-thr"
850 ;;
851 esac
852 install_headers_dir=install-headers-cpio
853 use_collect2=yes
854 ;;
855hppa1.0-*-hpux10*)
856 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
857 float_format=i128
34f4f3a5 858 xm_defines=POSIX
e4761274 859 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 860 xmake_file="pa/x-ada"
61ed06c3
HPN
861 if test x$enable_threads = x; then
862 enable_threads=$have_pthread_h
863 fi
864 case x${enable_threads} in
865 xyes | xdce)
866 tmake_file="${tmake_file} pa/t-dce-thr"
867 ;;
868 esac
869 install_headers_dir=install-headers-cpio
870 use_collect2=yes
871 ;;
872hppa*64*-*-hpux11*)
34f4f3a5 873 xm_defines=POSIX
38010927 874 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 875 float_format=i128
eab854f6 876 tmake_file="pa/t-pa64 pa/t-pa-hpux"
ed9d6ff9 877 xmake_file="pa/x-ada"
c81460e4 878 target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
61ed06c3 879
61ed06c3
HPN
880# if [ x$enable_threads = x ]; then
881# enable_threads=$have_pthread_h
882# fi
883# if [ x$enable_threads = xyes ]; then
884# thread_file='dce'
885# tmake_file="${tmake_file} pa/t-dce-thr"
886# fi
887 install_headers_dir=install-headers-cpio
888 use_collect2=yes
889 ;;
890hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
891 target_cpu_default="MASK_PA_11"
892 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
893 float_format=i128
34f4f3a5 894 xm_defines=POSIX
e4761274 895 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 896 xmake_file="pa/x-ada"
61ed06c3
HPN
897# if test x$enable_threads = x; then
898# enable_threads=$have_pthread_h
899# fi
900# if test x$enable_threads = xyes; then
901# thread_file='dce'
902# tmake_file="${tmake_file} pa/t-dce-thr"
903# fi
904 install_headers_dir=install-headers-cpio
905 use_collect2=yes
906 ;;
907hppa1.0-*-hpux11*)
908 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
909 float_format=i128
34f4f3a5 910 xm_defines=POSIX
e4761274 911 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
ed9d6ff9 912 xmake_file="pa/x-ada"
61ed06c3
HPN
913# if test x$enable_threads = x; then
914# enable_threads=$have_pthread_h
915# fi
916# if test x$enable_threads = xyes; then
917# thread_file='dce'
918# tmake_file="${tmake_file} pa/t-dce-thr"
919# fi
920 install_headers_dir=install-headers-cpio
921 use_collect2=yes
922 ;;
923hppa1.1-*-hpux* | hppa2*-*-hpux*)
924 target_cpu_default="MASK_PA_11"
925 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
34f4f3a5 926 xm_defines=POSIX
14455c64 927 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
928 install_headers_dir=install-headers-cpio
929 use_collect2=yes
930 ;;
931hppa1.0-*-hpux*)
932 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
34f4f3a5 933 xm_defines=POSIX
14455c64 934 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
935 install_headers_dir=install-headers-cpio
936 use_collect2=yes
937 ;;
938hppa1.1-*-hiux* | hppa2*-*-hiux*)
939 target_cpu_default="MASK_PA_11"
940 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
34f4f3a5 941 xm_defines=POSIX
14455c64 942 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
943 install_headers_dir=install-headers-cpio
944 use_collect2=yes
945 ;;
946hppa1.0-*-hiux*)
947 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
34f4f3a5 948 xm_defines=POSIX
14455c64 949 tmake_file=pa/t-pa-hpux
61ed06c3
HPN
950 install_headers_dir=install-headers-cpio
951 use_collect2=yes
952 ;;
953hppa*-*-lites*)
c40409ce 954 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h"
61ed06c3 955 target_cpu_default="MASK_PA_11"
14455c64 956 tmake_file="pa/t-bsd pa/t-pa"
ed9d6ff9 957 xmake_file="pa/x-ada"
61ed06c3
HPN
958 use_collect2=yes
959 ;;
960hppa*-*-mpeix*)
961 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
5dd8a9b1 962 tmake_file=pa/t-mpeix
0e5a4ad8 963 echo "You must use gas. Assuming it is already installed."
c21a2372 964 gas=yes
61ed06c3 965 install_headers_dir=install-headers-tar
0e5a4ad8
EC
966 use_collect2=yes
967 ;;
61ed06c3 968i370-*-opened*) # IBM 360/370/390 Architecture
34f4f3a5 969 xm_defines='POSIX FATAL_EXIT_CODE=12'
61ed06c3 970 tm_file=i370/oe.h
14455c64 971 tmake_file="i370/t-oe i370/t-i370"
51fabca5
NB
972 c_target_objs="i370-c.o"
973 cxx_target_objs="i370-c.o"
61ed06c3
HPN
974 ;;
975i370-*-mvs*)
34f4f3a5 976 xm_defines='POSIX FATAL_EXIT_CODE=12'
61ed06c3 977 tm_file=i370/mvs.h
51fabca5
NB
978 tmake_file="i370/t-i370"
979 c_target_objs="i370-c.o"
980 cxx_target_objs="i370-c.o"
61ed06c3
HPN
981 ;;
982i370-*-linux*)
c40409ce 983 tm_file="dbxelf.h elfos.h svr4.h linux.h i370/linux.h ${tm_file}"
7b3a4df5 984 tmake_file="t-slibgcc-elf-ver t-linux"
61ed06c3 985 # broken_install=yes
275b60d6 986 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
61ed06c3
HPN
987 # extra_parts="crtbegin.o crtend.o"
988 gnu_ld=yes
989 gas=yes
990 elf=yes
991 if test x$enable_threads = xyes; then
992 thread_file='posix'
993 fi
994 ;;
995i[34567]86-*-elf*)
34f4f3a5 996 xm_defines=POSIX
39ed301b 997 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h"
14455c64 998 tmake_file="i386/t-i386elf t-svr4"
61ed06c3 999 ;;
61ed06c3 1000i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
34f4f3a5 1001 xm_defines="POSIX SMALL_ARG_MAX"
61ed06c3
HPN
1002 if test x$stabs = xyes -a x$gas = xyes
1003 then
1004 tm_file=i386/sysv4gdb.h
1005 else
39ed301b 1006 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h"
61ed06c3
HPN
1007 fi
1008 extra_parts="crtbegin.o crtend.o"
1009 tmake_file=i386/t-crtpic
1010 ;;
61ed06c3 1011i[34567]86-*-netware) # Intel 80386's running netware
39ed301b 1012 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
1013 tmake_file=i386/t-netware
1014 ;;
61ed06c3 1015i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
70305f2b
RH
1016 if test x$gas = xyes
1017 then
1018 tm_file="${tm_file} usegas.h"
1019 fi
34f4f3a5 1020 xm_defines="POSIX SMALL_ARG_MAX"
39ed301b 1021 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ptx4.h i386/ptx4-i.h"
61ed06c3
HPN
1022 tmake_file=t-svr4
1023 extra_parts="crtbegin.o crtend.o"
1024 install_headers_dir=install-headers-cpio
1025 ;;
c7bdf0a6
ZW
1026i[34567]86-sequent-sysv*) # would otherwise be caught by i?86-*-sysv*
1027 echo "*** Configuration $machine not supported" 1>&2
1028 exit 1
61ed06c3
HPN
1029 ;;
1030i[34567]86-wrs-vxworks*)
39ed301b 1031 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h i386/vxi386.h"
61ed06c3
HPN
1032 thread_file='vxworks'
1033 ;;
1034i[34567]86-*-aout*)
39ed301b 1035 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h"
61ed06c3
HPN
1036 ;;
1037i[34567]86-*-beoself* | i[34567]86-*-beos*)
34f4f3a5 1038 xm_defines=POSIX
61ed06c3 1039 tmake_file='i386/t-beos i386/t-crtpic'
39ed301b 1040 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/beos-elf.h"
61ed06c3
HPN
1041 extra_parts='crtbegin.o crtend.o'
1042 ;;
c7bdf0a6 1043i[34567]86-*-freebsd2 | i[34567]86-*-freebsd2.* | i[34567]86-*-freebsd*aout*)
39ed301b 1044 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/freebsd-aout.h"
61ed06c3
HPN
1045 tmake_file=t-freebsd
1046 ;;
1047i[34567]86-*-freebsd*)
39ed301b 1048 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"
e564e618
DB
1049 ;;
1050x86_64-*-freebsd*)
39ed301b 1051 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 1052 ;;
6ea0279f 1053i[34567]86-*-netbsdelf*)
39ed301b 1054 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
1055 float_format=i386
1056 ;;
61ed06c3 1057i[34567]86-*-netbsd*)
39ed301b 1058 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 1059 tmake_file=t-netbsd
5721cd84 1060 use_collect2=yes
61ed06c3 1061 ;;
7c884404 1062x86_64-*-netbsd*)
39ed301b 1063 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
1064 float_format=i386
1065 ;;
61ed06c3 1066i[34567]86-*-openbsd*)
39ed301b 1067 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
1068 # needed to unconfuse gdb
1069 tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
61ed06c3
HPN
1070 # we need collect2 until our bug is fixed...
1071 use_collect2=yes
1072 ;;
1073i[34567]86-*-coff*)
39ed301b 1074 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/i386-coff.h"
61ed06c3 1075 ;;
c7bdf0a6
ZW
1076i[34567]86-*-linux*oldld*) # would otherwise be caught by i?86-*-linux*
1077 echo "*** Configuration $machine not supported" 1>&2
1078 exit 1
61ed06c3
HPN
1079 ;;
1080i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1081 # with a.out format
61ed06c3 1082 tmake_file="t-linux-aout i386/t-crtstuff"
39ed301b 1083 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
1084 gnu_ld=yes
1085 float_format=i386
1086 ;;
1087i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1088 # with ELF format using the
1089 # GNU/Linux C library 5
39ed301b 1090 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
7b3a4df5 1091 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
61ed06c3
HPN
1092 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1093 gnu_ld=yes
1094 float_format=i386
1095 if test x$enable_threads = xyes; then
1096 thread_file='single'
1097 fi
1098 ;;
1099i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1100 # with ELF format using glibc 2
1101 # aka GNU/Linux C library 6
39ed301b 1102 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
7b3a4df5 1103 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
275b60d6 1104 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
61ed06c3
HPN
1105 gnu_ld=yes
1106 float_format=i386
1107 if test x$enable_threads = xyes; then
1108 thread_file='posix'
1109 fi
1110 ;;
14f73b5a 1111x86_64-*-linux*)
39ed301b 1112 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h \
32fb7c9d 1113 i386/x86-64.h i386/linux64.h"
56547299 1114 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff i386/t-linux64"
275b60d6 1115 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
14f73b5a
JH
1116 gnu_ld=yes
1117 float_format=i386
1118 if test x$enable_threads = xyes; then
1119 thread_file='posix'
1120 fi
1121 ;;
61ed06c3
HPN
1122i[34567]86-*-gnu*)
1123 float_format=i386
1124 ;;
1125i[34567]86-go32-msdos | i[34567]86-*-go32*)
1126 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1127 exit 1
1128 ;;
1129i[34567]86-pc-msdosdjgpp*)
1130 xm_file=i386/xm-djgpp.h
39ed301b 1131 tm_file="dbxcoff.h ${tm_file} i386/djgpp.h"
5dd8a9b1 1132 tmake_file=i386/t-djgpp
61ed06c3
HPN
1133 gnu_ld=yes
1134 gas=yes
1135 exeext=.exe
1136 float_format=none
1137 case $host in *pc-msdosdjgpp*)
1138 target_alias=djgpp
1139 ;;
1140 esac
1141 ;;
1142i[34567]86-moss-msdos* | i[34567]86-*-moss*)
39ed301b 1143 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
61ed06c3
HPN
1144 tmake_file=t-libc-ok
1145 gnu_ld=yes
1146 gas=yes
1147 ;;
1148i[34567]86-*-lynxos*)
1149 if test x$gas = xyes
1150 then
39ed301b 1151 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx.h i386/lynx.h"
61ed06c3 1152 else
39ed301b 1153 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx-ng.h i386/lynx-ng.h"
61ed06c3 1154 fi
61ed06c3
HPN
1155 ;;
1156i[34567]86-*-mach*)
39ed301b 1157 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/mach.h"
61ed06c3
HPN
1158# tmake_file=t-libc-ok
1159 use_collect2=yes
1160 ;;
c7bdf0a6
ZW
1161i[34567]86-go32-rtems* | i[34567]86-*-rtemscoff*)
1162 # would otherwise be caught by i?86-*-rtems*
1163 echo "*** Configuration $machine not supported" 1>&2
1164 exit 1
61ed06c3 1165 ;;
c7bdf0a6 1166i[34567]86-*-rtems*)
f22b4bc4 1167 xm_defines=POSIX
39ed301b 1168 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h"
61ed06c3
HPN
1169 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1170 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
bc98ef7f
JS
1171 if test x$enable_threads = xyes; then
1172 thread_file='rtems'
1173 fi
61ed06c3
HPN
1174 ;;
1175i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
34f4f3a5 1176 xm_defines=POSIX
61ed06c3 1177 install_headers_dir=install-headers-cpio
39ed301b 1178 tm_file="${tm_file} i386/unix.h i386/att.h i386/sco5.h"
61ed06c3
HPN
1179 if test x$gas = xyes
1180 then
70305f2b 1181 tm_file="usegas.h ${tm_file}"
61ed06c3
HPN
1182 tmake_file=i386/t-sco5gas
1183 else
1184 tmake_file=i386/t-sco5
1185 fi
61ed06c3
HPN
1186 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1187 ;;
61ed06c3 1188i[34567]86-*-solaris2*)
34f4f3a5 1189 xm_defines="POSIX SMALL_ARG_MAX"
39ed301b 1190 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sol2.h"
61ed06c3 1191 if test x$gas = xyes; then
61ed06c3
HPN
1192 tm_file="i386/sol2gas.h ${tm_file}"
1193 fi
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"
39ed301b 1230 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.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"
1822 case $machine in
1823 mips*el-*)
1824 tm_file="mips/little.h $tm_file"
1825 ;;
1826 esac
cd24b8a4 1827 tmake_file="${tmake_file} mips/t-netbsd"
61ed06c3
HPN
1828 ;;
1829mips*-*-linux*) # Linux MIPS, either endian.
c40409ce 1830 tm_file="dbxelf.h elfos.h svr4.h linux.h mips/linux.h"
61ed06c3 1831 case $machine in
009da785
EC
1832 mipsisa32*-*)
1833 tm_file="$tm_file mips/isa32-linux.h"
1834 target_cpu_default="MASK_SOFT_FLOAT"
1835 ;;
1836 esac
1837 case $machine in
1838 mips*el-*)
1839 tm_file="mips/little.h $tm_file"
1840 ;;
61ed06c3 1841 esac
5f083b72 1842 tmake_file="t-slibgcc-elf-ver t-linux mips/t-linux"
275b60d6 1843 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
61ed06c3
HPN
1844 gnu_ld=yes
1845 gas=yes
1846 if test x$enable_threads = xyes; then
1847 thread_file='posix'
1848 fi
1849 ;;
1850mips*el-*-openbsd*) # mips little endian
1851 target_cpu_default="MASK_GAS|MASK_ABICALLS"
1852 ;;
1853mips*-*-openbsd*) # mips big endian
1854 target_cpu_default="MASK_GAS|MASK_ABICALLS"
1855 tm_file="mips/openbsd-be.h ${tm_file}"
1856 ;;
61ed06c3
HPN
1857mipsel-*-ecoff*)
1858 tm_file=mips/ecoffl.h
1859 if test x$stabs = xyes; then
1860 tm_file="${tm_file} dbx.h"
1861 fi
1862 tmake_file=mips/t-ecoff
1863 ;;
1864mips-*-ecoff*)
1865 tm_file="gofast.h mips/ecoff.h"
1866 if test x$stabs = xyes; then
1867 tm_file="${tm_file} dbx.h"
1868 fi
1869 tmake_file=mips/t-ecoff
1870 ;;
0e5a4ad8
EC
1871mipsisa32-*-elf*)
1872 tm_file="mips/isa3264.h mips/abi64.h"
1873 tmake_file=mips/t-isa3264
3054eeed 1874 target_cpu_default="MASK_SOFT_FLOAT"
0e5a4ad8 1875 ;;
61ed06c3
HPN
1876mipsel-*-elf*)
1877 tm_file="mips/elfl.h"
1878 tmake_file=mips/t-elf
1879 ;;
1880mips-*-elf*)
1881 tm_file="mips/elf.h"
1882 tmake_file=mips/t-elf
1883 ;;
1884mips64el-*-elf*)
1885 tm_file="mips/elfl64.h"
1886 tmake_file=mips/t-elf
1887 ;;
1888mips64orionel-*-elf*)
1889 tm_file="mips/elforion.h mips/elfl64.h"
1890 tmake_file=mips/t-elf
1891 ;;
1892mips64-*-elf*)
1893 tm_file="mips/elf64.h"
1894 tmake_file=mips/t-elf
1895 ;;
1896mips64orion-*-elf*)
1897 tm_file="mips/elforion.h mips/elf64.h"
1898 tmake_file=mips/t-elf
1899 ;;
1900mips64orion-*-rtems*)
f22b4bc4
JS
1901 xm_defines=POSIX
1902 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h rtems.h"
61ed06c3 1903 tmake_file="mips/t-elf t-rtems"
bc98ef7f
JS
1904 if test x$enable_threads = xyes; then
1905 thread_file='rtems'
1906 fi
1907 ;;
1908mips*-*-rtems*)
f22b4bc4
JS
1909 xm_defines=POSIX
1910 tm_file="mips/elf.h mips/rtems.h rtems.h"
bc98ef7f
JS
1911 tmake_file="mips/t-elf t-rtems"
1912 if test x$enable_threads = xyes; then
1913 thread_file='rtems'
1914 fi
61ed06c3
HPN
1915 ;;
1916mipstx39el-*-elf*)
1917 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
1918 tmake_file=mips/t-r3900
3054eeed 1919 target_cpu_default="MASK_SOFT_FLOAT"
61ed06c3
HPN
1920 ;;
1921mipstx39-*-elf*)
1922 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
1923 tmake_file=mips/t-r3900
1924 ;;
bcf684c7
HPN
1925mmix-knuth-mmixware)
1926 ;;
61ed06c3
HPN
1927mn10200-*-*)
1928 float_format=i32
c40409ce 1929 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
1930 if test x$stabs = xyes
1931 then
1932 tm_file="${tm_file} dbx.h"
1933 fi
1934 use_collect2=no
1935 ;;
1936mn10300-*-*)
c40409ce 1937 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
1938 if test x$stabs = xyes
1939 then
1940 tm_file="${tm_file} dbx.h"
1941 fi
1942 use_collect2=no
1943 ;;
69474c3c
JT
1944ns32k-*-netbsdelf*)
1945 echo "GCC does not yet support the ${machine} target"; exit 1
1946 ;;
61ed06c3 1947ns32k-*-netbsd*)
c8eb9785 1948 tm_file="${tm_file} netbsd.h netbsd-aout.h ns32k/netbsd.h"
61ed06c3
HPN
1949 # On NetBSD, the headers are already okay, except for math.h.
1950 tmake_file=t-netbsd
5721cd84 1951 use_collect2=yes
61ed06c3
HPN
1952 ;;
1953pdp11-*-bsd)
1954 tm_file="${tm_file} pdp11/2bsd.h"
1955 ;;
1956pdp11-*-*)
1957 ;;
1958avr-*-*)
1959 ;;
1960ns32k-*-openbsd*)
1961 # Nothing special
1962 ;;
61ed06c3
HPN
1963romp-*-openbsd*)
1964 # Nothing special
1965 ;;
1966powerpc-*-openbsd*)
e1b71de9 1967 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
ba1e6c0b 1968 extra_headers=
61ed06c3 1969 ;;
2bfcf297 1970powerpc64-*-linux*)
c40409ce 1971 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux64.h"
2bfcf297 1972 out_file=rs6000/rs6000.c
2a78758b 1973 tmake_file="rs6000/t-rs6000 t-slibgcc-elf-ver t-linux rs6000/t-linux64"
2bfcf297 1974 ;;
ddb28441
RM
1975powerpc64-*-gnu*)
1976 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"
1977 out_file=rs6000/rs6000.c
2a78758b 1978 tmake_file="rs6000/t-rs6000 t-slibgcc-elf-ver t-gnu rs6000/t-linux64"
ddb28441 1979 ;;
61ed06c3 1980powerpc-*-beos*)
2bfcf297 1981 tm_file="${tm_file} rs6000/aix.h rs6000/beos.h rs6000/xcoff.h"
34f4f3a5 1982 xm_defines=POSIX
61ed06c3 1983 tmake_file=rs6000/t-beos
ba1e6c0b 1984 extra_headers=
61ed06c3 1985 ;;
18922061 1986powerpc-*-darwin*)
ee890fe2
SS
1987 tm_file="${tm_file} darwin.h rs6000/darwin.h"
1988 tm_p_file="${tm_p_file} darwin-protos.h"
1989 tmake_file=rs6000/t-darwin
ee890fe2 1990 extra_objs="darwin.o"
aaab35ae 1991 config_gtfiles="${config_gtfiles} \$(srcdir)/config/darwin.c"
0168a849
SS
1992 c_target_objs="darwin-c.o"
1993 cxx_target_objs="darwin-c.o"
ee890fe2
SS
1994 # Darwin linker does collect2 functionality
1995 use_collect2=no
5fb4cf24 1996 extra_headers=altivec.h
18922061 1997 ;;
b91da81f 1998powerpc*-*-freebsd*)
c40409ce 1999 tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} rs6000/sysv4.h rs6000/freebsd.h"
b91da81f
DB
2000 xm_file=rs6000/xm-sysv4.h
2001 out_file=rs6000/rs6000.c
f3465a44 2002 tmake_file="rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
b91da81f 2003 ;;
61ed06c3 2004powerpc-*-sysv*)
c40409ce 2005 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
34f4f3a5 2006 xm_defines=POSIX
61ed06c3 2007 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
61ed06c3 2008 ;;
edf1b3f3 2009powerpc-*-netbsd*)
c40409ce 2010 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h"
edf1b3f3 2011 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
edf1b3f3 2012 ;;
8da6d80e 2013powerpc-*-chorusos*)
34f4f3a5 2014 xm_defines=POSIX
c40409ce 2015 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h chorus.h"
8da6d80e 2016 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
8da6d80e
CC
2017 case x${enable_threads} in
2018 xyes | xpthreads | xposix)
2019 thread_file='posix'
2020 ;;
2021 esac
2022 ;;
61ed06c3 2023powerpc-*-eabiaix*)
34f4f3a5 2024 xm_defines=POSIX
c40409ce 2025 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
61ed06c3 2026 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3 2027 ;;
cf6ede82
AH
2028powerpc-*-eabisimaltivec*)
2029 xm_defines=POSIX
2030 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 2031 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
cf6ede82 2032 ;;
61ed06c3 2033powerpc-*-eabisim*)
34f4f3a5 2034 xm_defines=POSIX
c40409ce 2035 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
61ed06c3 2036 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2037 ;;
2038powerpc-*-elf*)
34f4f3a5 2039 xm_defines=POSIX
c40409ce 2040 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
61ed06c3 2041 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3 2042 ;;
10baca6b
AH
2043powerpc-*-eabialtivec*)
2044 xm_defines=POSIX
2045 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabialtivec.h"
3b7d0e98 2046 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
10baca6b 2047 ;;
61ed06c3 2048powerpc-*-eabi*)
34f4f3a5 2049 xm_defines=POSIX
c40409ce 2050 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h"
61ed06c3 2051 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2052 ;;
2053powerpc-*-rtems*)
34f4f3a5 2054 xm_defines=POSIX
f22b4bc4 2055 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 2056 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
bc98ef7f
JS
2057 if test x$enable_threads = xyes; then
2058 thread_file='rtems'
2059 fi
61ed06c3
HPN
2060 ;;
2061powerpc-*-linux*libc1)
c40409ce 2062 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
61ed06c3 2063 out_file=rs6000/rs6000.c
7b3a4df5 2064 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
61ed06c3
HPN
2065 if test x$enable_threads = xyes; then
2066 thread_file='posix'
2067 fi
2068 ;;
10baca6b
AH
2069powerpc-*-linux-gnualtivec*)
2070 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h"
2071 out_file=rs6000/rs6000.c
2072 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
10baca6b
AH
2073 if test x$enable_threads = xyes; then
2074 thread_file='posix'
2075 fi
2076 ;;
61ed06c3 2077powerpc-*-linux*)
c40409ce 2078 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
61ed06c3 2079 out_file=rs6000/rs6000.c
7b3a4df5 2080 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
61ed06c3
HPN
2081 if test x$enable_threads = xyes; then
2082 thread_file='posix'
2083 fi
2084 ;;
ddb28441
RM
2085powerpc-*-gnu-gnualtivec*)
2086 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"
2087 out_file=rs6000/rs6000.c
2088 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
2089 if test x$enable_threads = xyes; then
2090 thread_file='posix'
2091 fi
2092 ;;
2093powerpc-*-gnu*)
2094 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"
2095 out_file=rs6000/rs6000.c
2096 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
2097 if test x$enable_threads = xyes; then
2098 thread_file='posix'
2099 fi
2100 ;;
61ed06c3 2101powerpc-wrs-vxworks*)
34f4f3a5 2102 xm_defines=POSIX
c40409ce 2103 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/vxppc.h"
61ed06c3 2104 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2105 thread_file='vxworks'
2106 ;;
bce0deb2
MM
2107powerpc-wrs-windiss*)
2108 xm_defines=POSIX
2109 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/windiss.h"
2110 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2111 thread_file=""
2112 ;;
61ed06c3 2113powerpcle-wrs-vxworks*)
34f4f3a5 2114 xm_defines=POSIX
c40409ce 2115 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
61ed06c3 2116 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2117 thread_file='vxworks'
2118 ;;
2119powerpcle-*-sysv*)
c40409ce 2120 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
34f4f3a5 2121 xm_defines=POSIX
61ed06c3 2122 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
61ed06c3
HPN
2123 ;;
2124powerpcle-*-elf*)
34f4f3a5 2125 xm_defines=POSIX
c40409ce 2126 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
61ed06c3 2127 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2128 ;;
2129powerpcle-*-eabisim*)
34f4f3a5 2130 xm_defines=POSIX
c40409ce 2131 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 2132 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3
HPN
2133 ;;
2134powerpcle-*-eabi*)
34f4f3a5 2135 xm_defines=POSIX
c40409ce 2136 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
61ed06c3 2137 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
61ed06c3 2138 ;;
61ed06c3 2139rs6000-ibm-aix3.[01]*)
34f4f3a5 2140 xm_defines=POSIX
2bfcf297 2141 tm_file="${tm_file} rs6000/aix.h rs6000/aix31.h rs6000/xcoff.h"
61ed06c3
HPN
2142 float_format=none
2143 use_collect2=yes
2144 ;;
2145rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
34f4f3a5 2146 xm_defines=POSIX
2bfcf297 2147 tm_file="${tm_file} rs6000/aix.h rs6000/aix3newas.h rs6000/xcoff.h"
db009825 2148 tmake_file=rs6000/t-newas
61ed06c3
HPN
2149 float_format=none
2150 use_collect2=yes
ba1e6c0b 2151 extra_headers=
61ed06c3
HPN
2152 ;;
2153rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
34f4f3a5 2154 xm_defines=POSIX
2bfcf297 2155 tm_file="${tm_file} rs6000/aix.h rs6000/aix41.h rs6000/xcoff.h"
db009825 2156 tmake_file=rs6000/t-newas
61ed06c3
HPN
2157 float_format=none
2158 use_collect2=yes
ba1e6c0b 2159 extra_headers=
61ed06c3
HPN
2160 ;;
2161rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
34f4f3a5 2162 xm_defines=POSIX
2bfcf297 2163 tm_file="${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h"
61ed06c3 2164 tmake_file=rs6000/t-aix43
61ed06c3
HPN
2165 float_format=none
2166 use_collect2=yes
2167 thread_file='aix'
ba1e6c0b 2168 extra_headers=
61ed06c3
HPN
2169 ;;
2170rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
34f4f3a5 2171 xm_defines=POSIX
2bfcf297 2172 tm_file="${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h"
61ed06c3 2173 tmake_file=rs6000/t-aix43
61ed06c3
HPN
2174 float_format=none
2175 use_collect2=yes
2176 thread_file='aix'
ba1e6c0b 2177 extra_headers=
61ed06c3
HPN
2178 ;;
2179rs6000-ibm-aix*)
34f4f3a5 2180 xm_defines=POSIX
2bfcf297 2181 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
61ed06c3
HPN
2182 float_format=none
2183 use_collect2=yes
2184 ;;
2185rs6000-bull-bosx)
34f4f3a5 2186 xm_defines=POSIX
2bfcf297 2187 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
61ed06c3
HPN
2188 float_format=none
2189 use_collect2=yes
2190 ;;
2191rs6000-*-mach*)
32fb7c9d 2192 tm_file="${tm_file} rs6000/mach.h"
34f4f3a5 2193 xm_defines=POSIX
61ed06c3
HPN
2194 use_collect2=yes
2195 ;;
2196rs6000-*-lynxos*)
b91da81f 2197 tm_file="lynx.h rs6000/lynx.h"
61ed06c3 2198 tmake_file=rs6000/t-rs6000
61ed06c3
HPN
2199 use_collect2=yes
2200 ;;
0e5a4ad8 2201s390-*-linux*)
c40409ce 2202 tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
050e4ca2 2203 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux"
275b60d6 2204 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
9628a767
HP
2205 if test x$enable_threads = xyes; then
2206 thread_file='posix'
2207 fi
2208 ;;
0e5a4ad8 2209s390x-*-linux*)
58d10f89 2210 tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
70eeb10b
UW
2211 tm_p_file=s390/s390-protos.h
2212 md_file=s390/s390.md
1c0ca89d 2213 extra_modes=s390/s390-modes.def
70eeb10b 2214 out_file=s390/s390.c
e8487c04 2215 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux s390/t-linux64"
275b60d6 2216 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
9628a767
HP
2217 if test x$enable_threads = xyes; then
2218 thread_file='posix'
2219 fi
2220 ;;
dbf87f32 2221sh-*-elf* | shl*-*-elf* | sh64*-*-elf*)
61ed06c3 2222 tmake_file="sh/t-sh sh/t-elf"
dbf87f32
R
2223 case $machine in
2224 shl* | sh64l*)
2225 tm_file="sh/little.h ${tm_file}"
2226 tmake_file="${tmake_file} sh/t-le"
2227 ;;
2228 esac
f1a58d92 2229 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/embed-elf.h"
61ed06c3 2230 float_format=sh
dbf87f32
R
2231 case $machine in
2232 sh64*)
2233 tmake_file="${tmake_file} sh/t-sh64"
2234 tm_file="${tm_file} sh/sh64.h"
2235 extra_headers="shmedia.h ushmedia.h sshmedia.h"
2236 # Not strictly necessary to check this, but a good idea anyway.
2237 if test $machine = $target; then
2238 target_requires_64bit_host_wide_int=yes
2239 fi
2240 ;;
2241 esac
fa5322fa 2242 ;;
61ed06c3 2243sh-*-rtemself*)
f22b4bc4 2244 xm_defines=POSIX
61ed06c3 2245 tmake_file="sh/t-sh sh/t-elf t-rtems"
f1a58d92 2246 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/embed-elf.h sh/rtemself.h rtems.h"
61ed06c3 2247 float_format=sh
bc98ef7f
JS
2248 if test x$enable_threads = xyes; then
2249 thread_file='rtems'
2250 fi
61ed06c3
HPN
2251 ;;
2252sh-*-rtems*)
f22b4bc4 2253 xm_defines=POSIX
61ed06c3 2254 tmake_file="sh/t-sh t-rtems"
f1a58d92 2255 tm_file="${tm_file} sh/coff.h sh/rtems.h rtems.h"
61ed06c3 2256 float_format=sh
bc98ef7f
JS
2257 if test x$enable_threads = xyes; then
2258 thread_file='rtems'
2259 fi
61ed06c3
HPN
2260 ;;
2261sh-*-linux*)
f1a58d92
R
2262 tm_file="sh/little.h ${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
2263 tmake_file="sh/t-sh sh/t-elf sh/t-le sh/t-linux"
61ed06c3
HPN
2264 gas=yes gnu_ld=yes
2265 if test x$enable_threads = xyes; then
2266 thread_file='posix'
2267 fi
2268 float_format=sh
2269 ;;
b655555e
JT
2270sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
2271 sh64-*-netbsd* | sh64l*-*-netbsd*)
b4eb03fe
JT
2272 tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h netbsd.h netbsd-elf.h sh/netbsd-elf.h"
2273 tmake_file="${tmake_file} sh/t-sh sh/t-elf"
2274 case $machine in
2275 sh*l*-*)
2276 tm_file="sh/little.h ${tm_file}"
2277 tmake_file="${tmake_file} sh/t-le"
2278 ;;
2279 *)
2280 tmake_file="${tmake_file} sh/t-be"
2281 ;;
2282 esac
b655555e
JT
2283 case $machine in
2284 sh5*-*)
2285 # SHmedia, 32-bit ABI
2286 target_cpu_default="SH5_BIT|SH4_BIT|SH3E_BIT"
3fa1b448 2287 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5"
b655555e
JT
2288 ;;
2289 sh64*-*)
2290 # SHmedia, 64-bit ABI
2291 target_cpu_default="SH5_BIT|SH4_BIT"
3fa1b448 2292 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5 sh/t-netbsd-sh5-64"
b655555e
JT
2293 ;;
2294 *)
2295 # SH3, software floating point
2296 target_cpu_default="SH1_BIT|SH2_BIT|SH3_BIT"
2297 tmake_file="${tmake_file} sh/t-netbsd"
2298 ;;
2299 esac
b4eb03fe
JT
2300 float_format=sh
2301 ;;
61ed06c3 2302sh-*-*)
f1a58d92 2303 tm_file="${tm_file} sh/coff.h"
61ed06c3
HPN
2304 float_format=sh
2305 ;;
2306sparc-tti-*)
0f658c83 2307 tm_file="${tm_file} sparc/pbd.h"
34f4f3a5 2308 xm_defines=POSIX
61ed06c3 2309 ;;
e428b937 2310sparc64-wrs-vxworks*)
86f808dc 2311 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h sparc/biarch64.h gofast.h sparc/vxsparc64.h"
2d69e3cb 2312 tmake_file="sparc/t-vxsparc64 sparc/t-crtfm"
e428b937
RK
2313 use_collect2=yes
2314 ;;
61ed06c3 2315sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
0f658c83 2316 tm_file="${tm_file} aoutos.h sparc/aout.h gofast.h sparc/vxsparc.h"
61ed06c3
HPN
2317 tmake_file=sparc/t-vxsparc
2318 use_collect2=yes
2319 thread_file='vxworks'
2320 ;;
2321sparc-*-aout*)
2322 tmake_file=sparc/t-sparcbare
0f658c83 2323 tm_file="sparc/sparc.h aoutos.h sparc/aout.h libgloss.h"
61ed06c3 2324 ;;
69474c3c 2325sparc-*-netbsdelf*)
4cb7482c 2326 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
69474c3c 2327 ;;
61ed06c3 2328sparc-*-netbsd*)
f982f805 2329 tm_file="${tm_file} sparc/aout.h netbsd.h netbsd-aout.h sparc/netbsd.h"
61ed06c3 2330 tmake_file=t-netbsd
5721cd84 2331 use_collect2=yes
61ed06c3
HPN
2332 ;;
2333sparc-*-openbsd*)
0f7a7be7 2334 tm_file="sparc/sparc.h ${tm_file}"
f1cf4606
ME
2335 # needed to unconfuse gdb
2336 tmake_file="t-libc-ok t-openbsd sparc/t-openbsd"
61ed06c3
HPN
2337 # we need collect2 until our bug is fixed...
2338 use_collect2=yes
2339 ;;
91f0fcee
ME
2340sparc64-*-openbsd*)
2341 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"
2342 xm_file=sparc/xm-sp64.h
2343 gas=yes gnu_ld=yes
2344 with_cpu=ultrasparc
2345 float_format=i128
2346 ;;
61ed06c3 2347sparc-*-bsd*)
910e231e 2348 tm_file="${tm_file} sparc/bsd.h"
61ed06c3 2349 ;;
8da6d80e 2350sparc-*-chorusos*)
c40409ce 2351 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h chorus.h"
2d69e3cb 2352 tmake_file="sparc/t-chorus-elf sparc/t-crtfm"
8da6d80e
CC
2353 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2354 float_format=i64
2355 case x${enable_threads} in
2356 xyes | xpthreads | xposix)
2357 thread_file='posix'
2358 ;;
2359 esac
2360 ;;
61ed06c3 2361sparc-*-elf*)
c40409ce 2362 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h"
a261e0cc 2363 tmake_file="sparc/t-elf sparc/t-crtfm"
61ed06c3
HPN
2364 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2365 #float_format=i128
2366 float_format=i64
2367 ;;
2368sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
0f7a7be7 2369 tm_file="aoutos.h sparc/sparc.h sparc/aout.h sparc/linux-aout.h"
61ed06c3
HPN
2370 gnu_ld=yes
2371 ;;
2372sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
c40409ce 2373 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
a261e0cc 2374 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 sparc/t-crtfm"
61ed06c3
HPN
2375 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2376 gnu_ld=yes
2377 float_format=sparc
2378 ;;
2379sparc-*-linux*) # Sparc's running GNU/Linux, libc6
c40409ce 2380 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
a261e0cc 2381 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-crtfm"
275b60d6 2382 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
61ed06c3
HPN
2383 gnu_ld=yes
2384 if test x$enable_threads = xyes; then
2385 thread_file='posix'
2386 fi
2387 float_format=sparc
2388 ;;
2389sparc-*-lynxos*)
2390 if test x$gas = xyes
2391 then
0f7a7be7 2392 tm_file="${tm_file} lynx.h sparc/aout.h sparc/lynx.h"
61ed06c3 2393 else
0f7a7be7 2394 tm_file="${tm_file} lynx-ng.h sparc/aout.h sparc/lynx-ng.h"
61ed06c3 2395 fi
61ed06c3 2396 tmake_file=sparc/t-sunos41
61ed06c3 2397 ;;
c7bdf0a6
ZW
2398sparc-*-rtemsaout*) # would otherwise be caught by sparc-*-rtems*
2399 echo "*** Configuration $machine not supported" 1>&2
2400 exit 1
61ed06c3 2401 ;;
c7bdf0a6 2402sparc-*-rtems*)
f22b4bc4 2403 xm_defines=POSIX
c40409ce 2404 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h sparc/rtemself.h rtems.h"
2d69e3cb 2405 tmake_file="sparc/t-elf sparc/t-crtfm t-rtems"
61ed06c3
HPN
2406 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2407 #float_format=i128
2408 float_format=i64
bc98ef7f
JS
2409 if test x$enable_threads = xyes; then
2410 thread_file='rtems'
2411 fi
61ed06c3 2412 ;;
8947df0c
RH
2413sparc64-*-solaris2* | sparcv9-*-solaris2*)
2414 tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sol2-64.h sparc/sol2-bi.h"
3fc602a0
RH
2415 if test x$gnu_ld = xyes; then
2416 tm_file="${tm_file} sparc/sol2-gld.h sparc/sol2-gld-bi.h"
61ed06c3 2417 fi
f0871dfe
RH
2418 if test x$gas = xyes; then
2419 tm_file="${tm_file} sparc/sol2-gas-bi.h"
2420 fi
34f4f3a5 2421 xm_defines=POSIX
a261e0cc 2422 tmake_file="sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm"
61ed06c3 2423 if test x$gnu_ld = xyes; then
7b3a4df5 2424 tmake_file="$tmake_file t-slibgcc-elf-ver"
61ed06c3 2425 else
7b3a4df5 2426 tmake_file="$tmake_file t-slibgcc-sld"
61ed06c3 2427 fi
61ed06c3 2428 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
0a295052 2429 float_format=i128
61ed06c3
HPN
2430 if test x${enable_threads} = x ; then
2431 enable_threads=$have_pthread_h
2432 if test x${enable_threads} = x ; then
2433 enable_threads=$have_thread_h
2434 fi
2435 fi
2436 if test x${enable_threads} = xyes ; then
2437 if test x${have_pthread_h} = xyes ; then
2438 thread_file='posix'
2439 else
2440 thread_file='solaris'
2441 fi
2442 fi
2443 ;;
2444sparc-hal-solaris2*)
34f4f3a5 2445 xm_defines=POSIX
c40409ce 2446 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/hal.h"
a261e0cc 2447 tmake_file="sparc/t-halos sparc/t-sol2 sparc/t-crtfm"
61ed06c3 2448 if test x$gnu_ld = xyes; then
7a31a340 2449 tm_file="${tm_file} sparc/sol2-gld.h"
7b3a4df5 2450 tmake_file="$tmake_file t-slibgcc-elf-ver"
61ed06c3 2451 else
7b3a4df5 2452 tmake_file="$tmake_file t-slibgcc-sld"
61ed06c3 2453 fi
61ed06c3 2454 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
0a295052 2455 float_format=i128
61ed06c3
HPN
2456 thread_file='solaris'
2457 ;;
8947df0c 2458sparc-*-solaris2*)
3fc602a0
RH
2459 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h"
2460 if test x$gnu_ld = xyes; then
2461 tm_file="${tm_file} sparc/sol2-gld.h"
61ed06c3 2462 fi
a261e0cc 2463 tmake_file="sparc/t-sol2 sparc/t-crtfm"
61ed06c3 2464 if test x$gnu_ld = xyes; then
7b3a4df5 2465 tmake_file="$tmake_file t-slibgcc-elf-ver"
61ed06c3 2466 else
7b3a4df5 2467 tmake_file="$tmake_file t-slibgcc-sld"
61ed06c3 2468 fi
7112135f 2469 case $machine in
8947df0c
RH
2470 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*)
2471 if test x$gnu_ld = xno; then
2472 tm_file="${tm_file} sparc/sol26-sld.h"
2473 fi
2474 ;;
2475 *-*-solaris2.[789])
3fc602a0
RH
2476 tm_file="sparc/biarch64.h ${tm_file} sparc/sol2-bi.h"
2477 if test x$gnu_ld = xyes; then
2478 tm_file="${tm_file} sparc/sol2-gld-bi.h"
7112135f 2479 fi
f0871dfe
RH
2480 if test x$gas = xyes; then
2481 tm_file="${tm_file} sparc/sol2-gas-bi.h"
2482 fi
7112135f
AO
2483 tmake_file="$tmake_file sparc/t-sol2-64"
2484 ;;
2485 esac
3fc602a0
RH
2486 xm_defines=POSIX
2487 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
0a295052 2488 float_format=i128
61ed06c3
HPN
2489 if test x${enable_threads} = x; then
2490 enable_threads=$have_pthread_h
2491 if test x${enable_threads} = x; then
2492 enable_threads=$have_thread_h
2493 fi
2494 fi
2495 if test x${enable_threads} = xyes; then
2496 if test x${have_pthread_h} = xyes; then
2497 thread_file='posix'
2498 else
2499 thread_file='solaris'
2500 fi
2501 fi
2502 ;;
2503sparc-*-sunos4.0*)
0f7a7be7 2504 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
61ed06c3
HPN
2505 use_collect2=yes
2506 ;;
2507sparc-*-sunos4*)
0f7a7be7 2508 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
61ed06c3
HPN
2509 tmake_file=sparc/t-sunos41
2510 use_collect2=yes
2511 if test x$gas = xyes; then
2512 tm_file="${tm_file} sparc/sun4gas.h"
2513 fi
2514 ;;
2515sparc-*-sunos3*)
0f7a7be7 2516 tm_file="${tm_file} sparc/aout.h sparc/sun4o3.h"
61ed06c3
HPN
2517 use_collect2=yes
2518 ;;
2519sparc-*-sysv4*)
c40409ce 2520 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h"
34f4f3a5 2521 xm_defines=POSIX
61ed06c3 2522 tmake_file=t-svr4
61ed06c3
HPN
2523 extra_parts="crtbegin.o crtend.o"
2524 ;;
2525sparc-*-vxsim*)
34f4f3a5 2526 xm_defines=POSIX
c40409ce 2527 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/vxsim.h"
61ed06c3 2528 tmake_file=sparc/t-vxsparc
61ed06c3
HPN
2529 ;;
2530sparclet-*-aout*)
0f658c83 2531 tm_file="${tm_file} aoutos.h sparc/aout.h sparc/splet.h libgloss.h"
61ed06c3
HPN
2532 tmake_file=sparc/t-splet
2533 ;;
2534sparclite-*-coff*)
0f658c83 2535 tm_file="${tm_file} gofast.h sparc/lite.h svr3.h sparc/litecoff.h dbxcoff.h libgloss.h"
61ed06c3
HPN
2536 tmake_file=sparc/t-sparclite
2537 ;;
2538sparclite-*-aout*)
0f7a7be7 2539 tm_file="${tm_file} gofast.h sparc/aout.h sparc/lite.h aoutos.h libgloss.h"
61ed06c3
HPN
2540 tmake_file=sparc/t-sparclite
2541 ;;
2542sparclite-*-elf*)
c40409ce 2543 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h gofast.h sparc/liteelf.h"
2d69e3cb 2544 tmake_file="sparc/t-sparclite sparc/t-crtfm"
61ed06c3
HPN
2545 extra_parts="crtbegin.o crtend.o"
2546 ;;
2547sparc86x-*-aout*)
0f7a7be7 2548 tm_file="${tm_file} gofast.h sparc/aout.h sparc/sp86x-aout.h aoutos.h libgloss.h"
61ed06c3
HPN
2549 tmake_file=sparc/t-sp86x
2550 ;;
0e5a4ad8 2551sparc86x-*-elf*)
c40409ce 2552 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h gofast.h sparc/sp86x-elf.h"
2d69e3cb 2553 tmake_file="sparc/t-sp86x sparc/t-crtfm"
61ed06c3
HPN
2554 extra_parts="crtbegin.o crtend.o"
2555 ;;
2556sparc64-*-aout*)
0f7a7be7 2557 tm_file="sparc/sparc.h aoutos.h sparc/aout.h sparc/sp64-aout.h"
61ed06c3
HPN
2558 ;;
2559sparc64-*-elf*)
c40409ce 2560 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sp64-elf.h"
2d69e3cb 2561 tmake_file="${tmake_file} sparc/t-crtfm"
61ed06c3
HPN
2562 extra_parts="crtbegin.o crtend.o"
2563 ;;
c7240cbd
DB
2564sparc64-*-freebsd*|ultrasparc-*-freebsd*)
2565 tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h"
2d69e3cb 2566 tmake_file="${tmake_file} sparc/t-crtfm"
c7240cbd
DB
2567 xmake_file=none
2568 case "x$with_cpu" in
e0054185 2569 xultrasparc) ;;
c7240cbd
DB
2570 x) with_cpu=ultrasparc ;;
2571 *) echo "$with_cpu not supported for freebsd target"; exit 1 ;;
2572 esac
2573 ;;
61ed06c3 2574sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
19fe522a 2575 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-linux64 sparc/t-crtfm"
86f808dc 2576 tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux64.h"
275b60d6 2577 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
61ed06c3
HPN
2578 gnu_ld=yes
2579 if test x$enable_threads = xyes; then
2580 thread_file='posix'
2581 fi
2582 float_format=sparc
2583 ;;
4cb7482c
MG
2584sparc64-*-netbsd*)
2585 tmake_file="${tmake_file} sparc/t-netbsd64"
2586 tm_file="sparc/biarch64.h ${tm_file}"
2587 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
2588 float_format=sparc
2589 ;;
d19fb8e3 2590strongarm-*-elf*)
c40409ce 2591 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
2592 tmake_file=arm/t-strongarm-elf
2593 out_file=arm/arm.c
d19fb8e3 2594 md_file=arm/arm.md
1c0ca89d 2595 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2596 ;;
2597strongarm-*-coff*)
f910b1bb 2598 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/strongarm-coff.h arm/arm.h"
d19fb8e3
NC
2599 tmake_file=arm/t-strongarm-coff
2600 out_file=arm/arm.c
d19fb8e3 2601 md_file=arm/arm.md
1c0ca89d 2602 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2603 ;;
2604strongarm-*-pe)
f910b1bb 2605 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
2606 tmake_file=arm/t-strongarm-pe
2607 out_file=arm/arm.c
d19fb8e3 2608 md_file=arm/arm.md
1c0ca89d 2609 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2610 extra_objs=pe.o
2611 ;;
61ed06c3
HPN
2612thumb*-*-*)
2613 { echo "config.gcc: error:
9e8fc4b8 2614*** The Thumb targets have been deprecated. The equivalent
cfd1c7ea 2615*** ARM based toolchain can now generate Thumb instructions
61ed06c3
HPN
2616*** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
2617 ;;
2618v850-*-rtems*)
f22b4bc4
JS
2619 xm_defines=POSIX
2620 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} v850/v850.h v850/rtems.h rtems.h"
61ed06c3
HPN
2621 tmake_file="v850/t-v850 t-rtems"
2622 if test x$stabs = xyes
2623 then
2624 tm_file="${tm_file} dbx.h"
2625 fi
2626 use_collect2=no
c3edd394
NC
2627 c_target_objs="v850-c.o"
2628 cxx_target_objs="v850-c.o"
61ed06c3
HPN
2629 ;;
2630v850-*-*)
2631 target_cpu_default="TARGET_CPU_generic"
c40409ce 2632 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
61ed06c3
HPN
2633 tmake_file=v850/t-v850
2634 if test x$stabs = xyes
2635 then
2636 tm_file="${tm_file} dbx.h"
2637 fi
2638 use_collect2=no
c3edd394
NC
2639 c_target_objs="v850-c.o"
2640 cxx_target_objs="v850-c.o"
61ed06c3 2641 ;;
8aeea6e6 2642vax-*-bsd*) # VAXen running BSD
169274cd 2643 tm_file="${tm_file} vax/bsd.h"
61ed06c3
HPN
2644 use_collect2=yes
2645 float_format=vax
2646 ;;
8aeea6e6 2647vax-*-sysv*) # VAXen running system V
61ed06c3 2648 tm_file="${tm_file} vax/vaxv.h"
34f4f3a5 2649 xm_defines=POSIX
61ed06c3
HPN
2650 float_format=vax
2651 ;;
69474c3c
JT
2652vax-*-netbsdelf*)
2653 echo "GCC does not yet support the ${machine} target"; exit 1
2654 ;;
61ed06c3 2655vax-*-netbsd*)
f982f805 2656 tm_file="${tm_file} netbsd.h netbsd-aout.h vax/netbsd.h"
61ed06c3
HPN
2657 tmake_file=t-netbsd
2658 float_format=vax
5721cd84 2659 use_collect2=yes
61ed06c3
HPN
2660 ;;
2661vax-*-openbsd*)
61ed06c3 2662 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
61ed06c3
HPN
2663 float_format=vax
2664 use_collect2=yes
2665 ;;
8aeea6e6 2666vax-*-ultrix*) # VAXen running ultrix
61ed06c3
HPN
2667 tm_file="${tm_file} vax/ultrix.h"
2668 float_format=vax
2669 ;;
8aeea6e6 2670vax-*-vms*) # VAXen running VMS
61ed06c3
HPN
2671 xm_file=vax/xm-vms.h
2672 tm_file=vax/vms.h
2673 float_format=vax
2674 ;;
8aeea6e6 2675vax-*-*) # VAX default entry
61ed06c3
HPN
2676 float_format=vax
2677 ;;
d19fb8e3 2678xscale-*-elf)
c40409ce 2679 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
2680 tmake_file=arm/t-xscale-elf
2681 out_file=arm/arm.c
d19fb8e3 2682 md_file=arm/arm.md
1c0ca89d 2683 extra_modes=arm/arm-modes.def
d19fb8e3
NC
2684 ;;
2685xscale-*-coff)
578316b9 2686 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/xscale-coff.h arm/arm.h"
d19fb8e3
NC
2687 tmake_file=arm/t-xscale-coff
2688 out_file=arm/arm.c
d19fb8e3 2689 md_file=arm/arm.md
1c0ca89d 2690 extra_modes=arm/arm-modes.def
d19fb8e3 2691 ;;
14d269bb
GK
2692xstormy16-*-elf)
2693 # For historical reasons, the target files omit the 'x'.
c40409ce 2694 tm_file="dbxelf.h elfos.h svr4.h stormy16/stormy16.h"
14d269bb
GK
2695 tm_p_file=stormy16/stormy16-protos.h
2696 md_file=stormy16/stormy16.md
2697 out_file=stormy16/stormy16.c
2698 tmake_file="stormy16/t-stormy16"
2699 extra_parts="crtbegin.o crtend.o"
2700 ;;
03984308
BW
2701xtensa-*-elf*)
2702 tm_file="${tm_file} dbxelf.h elfos.h svr4.h xtensa/elf.h"
2703 with_newlib=yes
2704 tmake_file=xtensa/t-xtensa
2705 extra_parts="crtbegin.o crtend.o"
2706 fixincludes=Makefile.in # newlib headers should be OK
2707 ;;
2708xtensa-*-linux*)
2709 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h xtensa/linux.h"
2710 tmake_file="t-linux xtensa/t-xtensa"
2711 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
2712 gas=yes gnu_ld=yes
2713 if test x$enable_threads = xyes; then
2714 thread_file='posix'
2715 fi
2716 ;;
61ed06c3 2717*)
c7bdf0a6 2718 echo "*** Configuration $machine not supported" 1>&2
61ed06c3
HPN
2719 exit 1
2720 ;;
2721esac
2722
2723case $machine in
61ed06c3
HPN
2724*-*-sysv*)
2725 install_headers_dir=install-headers-cpio
2726 ;;
2727esac
2728
2729# Distinguish i[34567]86
2730# Also, do not run mips-tfile on MIPS if using gas.
2731# Process --with-cpu= for PowerPC/rs6000
2732target_cpu_default2=
2733case $machine in
2734i486-*-*)
e10e23ee 2735 target_cpu_default2=TARGET_CPU_DEFAULT_i486
61ed06c3
HPN
2736 ;;
2737i586-*-*)
2738 case $target_alias in
e10e23ee
JH
2739 k6_2-*)
2740 target_cpu_default2=TARGET_CPU_DEFAULT_k6_2
2741 ;;
2742 k6_3-*)
2743 target_cpu_default2=TARGET_CPU_DEFAULT_k6_3
2744 ;;
61ed06c3 2745 k6-*)
e10e23ee
JH
2746 target_cpu_default2=TARGET_CPU_DEFAULT_k6
2747 ;;
2748 pentium_mmx-*)
2749 target_cpu_default2=TARGET_CPU_DEFAULT_pentium_mmx
61ed06c3
HPN
2750 ;;
2751 *)
e10e23ee 2752 target_cpu_default2=TARGET_CPU_DEFAULT_pentium
61ed06c3
HPN
2753 ;;
2754 esac
2755 ;;
2756i686-*-* | i786-*-*)
4ed47bea 2757 case $target_alias in
e10e23ee
JH
2758 athlon_xp-*|athlon_mp-*|athlon_4-*)
2759 target_cpu_default2=TARGET_CPU_DEFAULT_athlon_sse
2760 ;;
2761 athlon_tbird-*|athlon-*)
2762 target_cpu_default2=TARGET_CPU_DEFAULT_athlon
2763 ;;
2764 pentium2-*)
2765 target_cpu_default2=TARGET_CPU_DEFAULT_pentium2
2766 ;;
2767 pentium3-*)
2768 target_cpu_default2=TARGET_CPU_DEFAULT_pentium3
2769 ;;
2770 pentium4-*)
2771 target_cpu_default2=TARGET_CPU_DEFAULT_pentium4
4ed47bea
JM
2772 ;;
2773 *)
e10e23ee 2774 target_cpu_default2=TARGET_CPU_DEFAULT_pentiumpro
4ed47bea
JM
2775 ;;
2776 esac
61ed06c3 2777 ;;
e10e23ee
JH
2778x86_64-*-*)
2779 # We should have hammer chip here, but it does not exist yet and
2780 # thus it is not supported. Athlon_SSE is probably equivalent feature
2781 # wise to hammer from our point of view except for 64bit mode.
2782 target_cpu_default2=TARGET_CPU_DEFAULT_athlon_sse
2783 ;;
61ed06c3
HPN
2784alpha*-*-*)
2785 case $machine in
2786 alphaev6[78]*)
2787 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
2788 ;;
2789 alphaev6*)
2790 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
2791 ;;
2792 alphapca56*)
2793 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
2794 ;;
2795 alphaev56*)
2796 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
2797 ;;
2798 alphaev5*)
2799 target_cpu_default2="MASK_CPU_EV5"
2800 ;;
2801 esac
0e5a4ad8 2802
61ed06c3
HPN
2803 if test x$gas = xyes
2804 then
2805 if test "$target_cpu_default2" = ""
2806 then
2807 target_cpu_default2="MASK_GAS"
2808 else
2809 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
2810 fi
2811 fi
2812 ;;
2813arm*-*-*)
2814 case "x$with_cpu" in
2815 x)
2816 # The most generic
2817 target_cpu_default2="TARGET_CPU_generic"
2818 ;;
2819
2820 # Distinguish cores, and major variants
2821 # arm7m doesn't exist, but D & I don't affect code
70f24e49
NC
2822 xarm[236789] | xarm250 | xarm[67][01]0 \
2823 | xarm7m | xarm7dm | xarm7dmi | xarm[79]tdmi \
61ed06c3 2824 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
d19fb8e3 2825 | xxscale \
61ed06c3
HPN
2826 | xstrongarm | xstrongarm110 | xstrongarm1100)
2827 target_cpu_default2="TARGET_CPU_$with_cpu"
2828 ;;
2829
2830 xyes | xno)
2831 echo "--with-cpu must be passed a value" 1>&2
2832 exit 1
2833 ;;
2834
2835 *)
2836 if test x$pass2done = xyes
2837 then
2838 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2839 exit 1
2840 fi
2841 ;;
2842 esac
2843 ;;
2844
c21a2372
AM
2845hppa*-*-* | parisc*-*-*)
2846 if test x$gas = xyes
2847 then
2848 target_cpu_default2="MASK_GAS|MASK_JUMP_IN_DELAY"
2849 fi
806bf413
JDA
2850 case $machine in
2851 hppa1.0* | parisc1.0*)
2852 tm_file="pa/pa-700.h ${tm_file}"
2853 ;;
2854 hppa1.1* | parisc1.1*)
2855 tm_file="pa/pa-7100.h ${tm_file}"
2856 ;;
2857 esac
c21a2372
AM
2858 ;;
2859
61ed06c3
HPN
2860mips*-*-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 ;;
2871mips*-*-*)
2872 if test x$gas = xyes
2873 then
2874 target_cpu_default2="MASK_GAS"
2875 fi
2876 ;;
2877powerpc*-*-* | rs6000-*-*)
480f7f3a
AH
2878 if test x$enable_altivec = xyes
2879 then
5e505bc9 2880 tm_file="$tm_file rs6000/altivec-defs.h"
480f7f3a 2881 fi
61ed06c3
HPN
2882 case "x$with_cpu" in
2883 x)
2884 ;;
2885
94f1d97c
DJ
2886 xcommon | xpower | xpower2 | xpower3 | xpowerpc | xpowerpc64 \
2887 | xrios | xrios1 | xrios2 | xrsc | xrsc1 | xrs64a \
2888 | x601 | x602 | x603 | x603e | x604 | x604e | x620 | x630 \
2889 | x740 | x750 | x7400 | x7450 | x505)
ff25793c 2890 target_cpu_default2="\\\"$with_cpu\\\""
61ed06c3
HPN
2891 ;;
2892
94f1d97c 2893 x401 | x403 | x405 | xec603e | x801 | x821 | x823 | x860)
c19083d8 2894 target_cpu_default2="\\\"$with_cpu\\\""
c19083d8
DD
2895 ;;
2896
61ed06c3
HPN
2897 xyes | xno)
2898 echo "--with-cpu must be passed a value" 1>&2
2899 exit 1
2900 ;;
2901
2902 *)
2903 if test x$pass2done = xyes
2904 then
2905 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2906 exit 1
2907 fi
2908 ;;
2909 esac
410b770f
RH
2910 case $machine in
2911 *-*-darwin*)
2912 ;;
2913 *)
2914 c_target_objs="rs6000-c.o"
2915 cxx_target_objs="rs6000-c.o"
2916 tmake_file="${tmake_file} rs6000/t-rs6000-c-rule"
2917 ;;
2918 esac
61ed06c3
HPN
2919 ;;
2920sparc*-*-*)
2921 case ".$with_cpu" in
2922 .)
2923 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
2924 ;;
2925 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
2926 target_cpu_default2="TARGET_CPU_$with_cpu"
2927 ;;
2928 *)
2929 if test x$pass2done = xyes
2930 then
2931 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2932 exit 1
2933 fi
2934 ;;
2935 esac
2936 ;;
2937esac
2938
2939if test "$target_cpu_default2" != ""
2940then
2941 if test "$target_cpu_default" != ""
2942 then
2943 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
2944 else
2945 target_cpu_default=$target_cpu_default2
2946 fi
2947fi
2948
61ed06c3
HPN
2949# Save data on machine being used to compile GCC in build_xm_file.
2950# Save data on host machine in vars host_xm_file and host_xmake_file.
2951if test x$pass1done = x
2952then
4dc0535b
ZW
2953 if test x$xm_file != x
2954 then build_xm_file=$xm_file
61ed06c3
HPN
2955 fi
2956 build_xm_defines=$xm_defines
2957 build_install_headers_dir=$install_headers_dir
2958 build_exeext=$exeext
2959 pass1done=yes
2960else
2961 if test x$pass2done = x
2962 then
4dc0535b
ZW
2963 if test x$xm_file != x
2964 then host_xm_file=$xm_file
61ed06c3
HPN
2965 fi
2966 host_xm_defines=$xm_defines
61ed06c3
HPN
2967 host_xmake_file="$xmake_file"
2968 host_truncate_target=$truncate_target
2969 host_extra_gcc_objs=$extra_gcc_objs
2970 host_extra_objs=$extra_host_objs
2971 host_exeext=$exeext
2972 pass2done=yes
2973 fi
2974fi