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