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