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