]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config.gcc
* doc/standards.texi: Mention C99 TC1.
[thirdparty/gcc.git] / gcc / config.gcc
CommitLineData
bb607926 1# GCC build-, host- and target-specific configuration file.
81a6a67d 2# Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
bb607926 3
f12b58b3 4#This file is part of GCC.
bb607926 5
f12b58b3 6#GCC is free software; you can redistribute it and/or modify it under
7#the terms of the GNU General Public License as published by the Free
8#Software Foundation; either version 2, or (at your option) any later
9#version.
bb607926 10
f12b58b3 11#GCC is distributed in the hope that it will be useful, but WITHOUT
12#ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13#FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14#for more details.
bb607926 15
16#You should have received a copy of the GNU General Public License
f12b58b3 17#along with GCC; see the file COPYING. If not, write to the Free
18#Software Foundation, 59 Temple Place - Suite 330, Boston, MA
19#02111-1307, USA.
bb607926 20
21# This is the GCC build-, host- and target-specific configuration file
22# where a configuration type, as recognized and generated by config.bfd,
23# is mapped to different system-specific definitions and files. This is
24# invoked by the autoconf-generated configure script, called for build,
25# host and target in that order, setting ${machine} to each. Putting it
26# in a separate shell file lets us skip running autoconf when modifying
27# build-, host- and target-specific information.
28
29# This file switches on the shell variable ${machine}, and also uses the
30# following shell variables:
31#
32# with_* Various variables as set by configure.
33#
34# enable_threads_flag Either the name, yes or no depending on whether
35# threads support was requested.
36#
37# gas_flag Either yes or no depending on whether GNU as was
38# requested.
39#
40# gnu_ld_flag Either yes or no depending on whether GNU ld was
41# requested.
42
43# This file sets the following shell variables for use by the
44# autoconf-generated configure script:
45#
46# cpu_type The name of the cpu, if different from machine.
47#
48# tm_file A list of target macro files, if different from
277773bd 49# "$cpu_type/$cpu_type.h". Usually it's constructed
50# per target in a way like this:
51# tm_file="${tm_file} elfos.h svr4.h ${cpu_type.h}/elf.h"
52# Note that the preferred order is:
53# - specific target header "${cpu_type}/${cpu_type.h}"
54# - generic headers like elfos.h, netware.h, etc.
55# - specializing target headers like ${cpu_type.h}/elf.h
56# This helps to keep OS specific stuff out of the CPU
57# defining header ${cpu_type}/${cpu_type.h}.
bb607926 58#
59# tm_p_file Location of file with declarations for functions
60# in $out_file.
61#
62# out_file The name of the machine description C support
63# file, if different from "$cpu_type/$cpu_type.c".
64#
65# md_file The name of the machine-description file, if
66# different from "$cpu_type/$cpu_type.md".
67#
68# tmake_file A list of machine-description-specific
69# makefile-fragments, if different from
70# "$cpu_type/t-$cpu_type".
71#
72# float_format Set to the symbolic name for the floating-point
73# formats used for this machine, if different from
74# "i64". Used to derive a header file name to
75# include, like "vax" for "float-vax.h". If no such
76# file is wanted, set to "none".
77#
78# extra_objs List of extra objects that should be linked into
79# the compiler proper (cc1, cc1obj, cc1plus)
80# depending on target.
81#
82# extra_headers List of used header files from the directory
83# ginclude.
84#
85# host_xmake_file List of host-specific makefile-fragments.
86#
87# extra_passes List of extra executables compiled for this target
88# machine, used for compiling from source to object.
89#
90# extra_parts List of extra object files that should be compiled
91# for this target machine.
92#
93# extra_programs Like extra_passes, but these are used when linking.
94#
424da949 95# host_extra_objs List of extra host-dependent objects that should
bb607926 96# be linked into the compiler proper.
97#
424da949 98# host_extra_gcc_objs List of extra host-dependent objects that should
bb607926 99# be linked into the gcc driver.
100#
424da949 101# c_target_objs List of extra target-dependent objects that be
8daa9e98 102# linked into the C compiler only.
582b17a6 103#
424da949 104# cxx_target_objs List of extra target-dependent objects that be
8daa9e98 105# linked into the C++ compiler only.
582b17a6 106#
bb607926 107# build_xm_defines List of macros to define when compiling for the
108# build machine.
109#
110# build_xm_file List of files to include when compiling for the
111# build machine.
112#
113# host_xm_defines List of macros to define when compiling for the
114# host machine.
115#
116# host_xm_file List of files to include when compiling for the
117# host machine.
118#
119# xm_defines List of macros to define when compiling for the
120# target machine.
121#
122# xm_file List of files to include when compiling for the
123# target machine.
124#
125# use_collect2 Set to yes or no, depending on whether collect2
126# will be used.
127#
128# target_cpu_default Set to override the default target model.
129#
130# build_install_headers_dir
131# Target to use when installing header files.
132#
bb607926 133# host_truncate_target
134# Non-empty if the target name should be truncated
135# on this host, due to filename length issues.
136#
137# gdb_needs_out_file_path
138# Set to yes if gdb needs a dir command with
139# `dirname $out_file`.
140#
141# build_exeext Set to the suffix, if the build machine requires
142# executables to have a file name suffix.
143#
144# host_exeext Set to the suffix, if the host machine requires
145# executables to have a file name suffix.
146#
147# thread_file Set to control which thread package to use.
148#
149# gas Set to yes or no depending on whether the target
150# system normally uses GNU as.
151
152# The following variables are used in each case-construct to build up the
153# outgoing variables:
154#
155# xmake_file Makefile-fragment when this system is as a host,
156# for host_xmake_file.
157#
158# extra_host_objs List of extra objects that should be linked into
159# the compiler proper when this system is a host,
160# for host_extra_objs.
161#
162# install_headers_dir Makefile-target for how the header file directory
163# is installed, when this system is a build system,
164# for build_install_headers_dir.
165#
166# truncate_target Non-empty if the target name should be truncated
167# when this system is a host, due to filename length
168# issues. For host_truncate_target.
169#
170# exeext The suffix for executables on this system.
171#
172# gnu_ld Set to yes or no depending on whether the target
173# system normally uses GNU ld.
174
175out_file=
176xmake_file=
177tmake_file=
178extra_headers=
179extra_passes=
180extra_parts=
181extra_programs=
182extra_objs=
183extra_host_objs=
184extra_gcc_objs=
8daa9e98 185c_target_objs=
186cxx_target_objs=
bb607926 187xm_defines=
188float_format=
189# Set this to force installation and use of collect2.
190use_collect2=
191# Set this to override the default target model.
192target_cpu_default=
193# Set this to control how the header file directory is installed.
194install_headers_dir=install-headers-tar
bb607926 195# Set this if directory names should be truncated to 14 characters.
196truncate_target=
197# Set this if gdb needs a dir command with `dirname $out_file`
198gdb_needs_out_file_path=
199# Set this if the build machine requires executables to have a
200# file name suffix.
201exeext=
202# Set this to control which thread package will be used.
203thread_file=
204# Reinitialize these from the flag values every loop pass, since some
205# configure entries modify them.
206gas="$gas_flag"
207gnu_ld="$gnu_ld_flag"
208enable_threads=$enable_threads_flag
209
210# Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
211# updated in each machine entry.
212tm_p_file=
213cpu_type=`echo $machine | sed 's/-.*$//'`
214case $machine in
215alpha*-*-*)
216 cpu_type=alpha
217 ;;
218strongarm*-*-*)
219 cpu_type=arm
220 ;;
221arm*-*-*)
222 cpu_type=arm
223 ;;
331beb1a 224xscale-*-*)
225 cpu_type=arm
226 ;;
bb607926 227c*-convex-*)
228 cpu_type=convex
229 ;;
230i[34567]86-*-*)
231 cpu_type=i386
232 ;;
5c66405b 233x86_64-*-*)
234 cpu_type=i386
235 ;;
6630177d 236hppa*-*-* | parisc*-*-*)
bb607926 237 cpu_type=pa
238 ;;
29122112 239m680[02]0-*-*)
bb607926 240 cpu_type=m68k
241 ;;
242mips*-*-*)
243 cpu_type=mips
244 ;;
245pj*-*-*)
246 cpu_type=pj
247 ;;
248powerpc*-*-*)
249 cpu_type=rs6000
250 ;;
bb607926 251sparc*-*-*)
252 cpu_type=sparc
253 ;;
254esac
255
256tm_file=${cpu_type}/${cpu_type}.h
20ffb0b1 257if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h
bb607926 258then
20ffb0b1 259 tm_p_file=${cpu_type}/${cpu_type}-protos.h
260fi
bb607926 261# On a.out targets, we need to use collect2.
262case $machine in
263*-*-*aout*)
264 use_collect2=yes
265 ;;
582b17a6 266esac
bb607926 267
1307f5d6 268# Common parts for GNU/Linux, GNU/Hurd, OpenBSD and FreeBSD systems.
bb607926 269case $machine in
270*-*-linux*)
597183a7 271 xm_defines=POSIX
bb607926 272 ;;
2567d1ca 273*-*-gnu*)
274 # On the Hurd, the setup is just about the same on
275 # each different CPU. The specific machines that we
276 # support are matched above and just set $cpu_type.
345252d1 277 xm_defines=POSIX
a26ea229 278 tm_file="${cpu_type}/gnu.h"
2567d1ca 279 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
280 # GNU always uses ELF.
281 elf=yes
282 # GNU tools are the only tools.
283 gnu_ld=yes
284 gas=yes
285 # These details are the same as for Linux.
286 xmake_file=x-linux
287 # But here we need a little extra magic.
32e8a7fc 288 tmake_file="t-slibgcc-elf-ver t-linux t-gnu"
a26ea229 289 case $machine in
290 i[34567]86-*-*)
277773bd 291 tm_file="${cpu_type}/${cpu_type}.h i386/att.h elfos.h svr4.h linux.h i386/linux.h gnu.h ${tm_file}"
a26ea229 292 ;;
a26ea229 293 esac
2567d1ca 294 ;;
bb607926 295*-*-openbsd*)
296 tm_file=${cpu_type}/openbsd.h
c7be79ca 297 tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
345252d1 298 xm_defines=POSIX
bb607926 299 if test x$enable_threads = xyes; then
300 thread_file='posix'
301 tmake_file="${tmake_file} t-openbsd-thread"
302 fi
303 ;;
1307f5d6 304*-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
305 # This is the place-holder for the generic a.out configuration
306 # of FreeBSD. No actual configuration resides here since
307 # there was only ever a bare-bones ix86 configuration for
308 # a.out and it exists solely in the machine-specific section.
309 # This place-holder must exist to avoid dropping into
310 # the generic ELF configuration of FreeBSD (i.e. it must be
311 # ordered before that section).
312 ;;
313*-*-freebsd*)
314 # This is the generic ELF configuration of FreeBSD. Later
315 # machine-specific sections may refine and add to this
316 # configuration.
317 #
318 # Due to tm_file entry ordering issues that vary between cpu
319 # architectures, we only define fbsd_tm_file to allow the
320 # machine-specific section to dictate the final order of all
321 # entries of tm_file with the minor exception that components
322 # of the tm_file set here will always be of the form:
323 #
324 # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd.h
325 #
326 # The machine-specific section should not tamper with this
327 # ordering but may order all other entries of tm_file as it
328 # pleases around the provided core setting.
329 gas=yes
330 gnu_ld=yes
331 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
332 case $machine in
333 *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
334 *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
335 *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
336 *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
337 *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
338 esac
339 tmake_file=t-freebsd
49b2e77d 340 xmake_file=none
1307f5d6 341 xm_defines=POSIX
342 case x${enable_threads} in
343 xno) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h";;
344 x | xyes | xpthreads | xposix)
345 thread_file='posix'
346 tmake_file="${tmake_file} t-freebsd-thread"
347 ;;
348 *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
349 esac
350 fbsd_tm_file="${fbsd_tm_file} freebsd.h"
18a54b02 351 if test x${thread_file} = xposix; then
352 if test x${enable_libgcj} = xyes; then
353 echo 'FreeBSD does not currently handle --enable-threads (now'
354 echo 'the default to match system compiler) and --enable-libgcj.'
355 echo 'Please explicitly configure with --disable-threads or'
356 echo '--disable-libgcj'
357 exit 1
358 fi
359 fi
1307f5d6 360 ;;
bb607926 361esac
362
363case $machine in
364# Support site-specific machine types.
365*local*)
bb607926 366 rest=`echo $machine | sed -e "s/$cpu_type-//"`
bb607926 367 tm_file=${cpu_type}/$rest.h
e1688c3e 368 if test -f $srcdir/config/${cpu_type}/xm-$rest.h
369 then xm_file=${cpu_type}/xm-$rest.h
bb607926 370 fi
e1688c3e 371 if test -f $srcdir/config/${cpu_type}/x-$rest
372 then xmake_file=${cpu_type}/x-$rest
373 fi
374 if test -f $srcdir/config/${cpu_type}/t-$rest
375 then tmake_file=${cpu_type}/t-$rest
bb607926 376 fi
377 ;;
3781750a-*-*)
513f3e74 379 # 1750a is only supported as a target.
380 case "$build,$host" in 1750a*,* | *,1750a* )
381 echo "*** $machine is only supported as a target" >&2
382 exit 1
383 esac
bb607926 384 ;;
385a29k-*-bsd* | a29k-*-sym1*)
386 tm_file="${tm_file} a29k/unix.h"
597183a7 387 xm_defines=POSIX
bb607926 388 use_collect2=yes
389 ;;
390a29k-*-udi | a29k-*-coff)
01d15dc5 391 tm_file="${tm_file} dbxcoff.h"
bb607926 392 tmake_file=a29k/t-a29kbare
393 ;;
742d48c2 394a29k*-*-rtems*)
395 tm_file=a29k/rtems.h
396 tmake_file="a29k/t-a29kbare t-rtems"
397 if test x$enable_threads = xyes; then
398 thread_file='rtems'
399 fi
400 ;;
bb607926 401a29k-wrs-vxworks*)
01d15dc5 402 tm_file="${tm_file} dbxcoff.h a29k/vx29k.h"
bb607926 403 tmake_file=a29k/t-vx29k
404 extra_parts="crtbegin.o crtend.o"
405 thread_file='vxworks'
406 ;;
407a29k-*-*) # Default a29k environment.
408 use_collect2=yes
409 ;;
9caef960 410alpha*-*-unicosmk*)
411 use_collect2=yes
412 tm_file="${tm_file} alpha/unicosmk.h"
582b17a6 413
9caef960 414 # Don't include t-ieee for now because we don't support that yet
415 # tmake_file="alpha/t-ieee"
416 tmake_file="alpha/t-unicosmk"
417 ;;
bb607926 418alpha-*-interix)
419 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
420
421 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
422 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
423
424 # GAS + IEEE_CONFORMANT
425 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
426
597183a7 427 xm_defines=POSIX
02be28b3 428 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
513f3e74 429 xmake_file=x-interix
bb607926 430 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
431 if test x$enable_threads = xyes ; then
432 thread_file='posix'
433 fi
434 if test x$stabs = xyes ; then
435 tm_file="${tm_file} dbxcoff.h"
436 fi
437 #prefix='$$INTERIX_ROOT'/usr/contrib
438 #local_prefix='$$INTERIX_ROOT'/usr/contrib
439 ;;
440alpha*-*-linux*ecoff*)
441 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
442 target_cpu_default="MASK_GAS"
443 tmake_file="alpha/t-alpha alpha/t-ieee"
444 gas=no
bb607926 445 gas=yes gnu_ld=yes
446 ;;
447alpha*-*-linux*libc1*)
448 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
449 target_cpu_default="MASK_GAS"
8969afbe 450 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-crtfm alpha/t-ieee"
bb607926 451 gas=yes gnu_ld=yes
452 if test x$enable_threads = xyes; then
453 thread_file='posix'
454 fi
455 ;;
456alpha*-*-linux*)
457 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
458 target_cpu_default="MASK_GAS"
8969afbe 459 tmake_file="t-slibgcc-elf-ver t-linux alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
bb607926 460 gas=yes gnu_ld=yes
461 if test x$enable_threads = xyes; then
462 thread_file='posix'
463 fi
464 ;;
465alpha*-*-freebsd*)
1307f5d6 466 tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
bb607926 467 target_cpu_default="MASK_GAS"
8969afbe 468 tmake_file="${tmake_file} alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
bb607926 469 ;;
470alpha*-*-netbsd*)
345252d1 471 xm_defines=POSIX
bb607926 472 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
473 target_cpu_default="MASK_GAS"
8969afbe 474 tmake_file="alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
bb607926 475 gas=yes gnu_ld=yes
476 ;;
477
478alpha*-*-openbsd*)
479 # default x-alpha is only appropriate for dec-osf.
480 target_cpu_default="MASK_GAS"
481 tmake_file="alpha/t-alpha alpha/t-ieee"
482 ;;
582b17a6 483
bb607926 484alpha*-dec-osf*)
345252d1 485 xm_defines=POSIX
bb607926 486 if test x$stabs = xyes
487 then
488 tm_file="${tm_file} dbx.h"
489 fi
490 if test x$gas != xyes
491 then
492 extra_passes="mips-tfile mips-tdump"
493 fi
494 use_collect2=yes
8969afbe 495 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-osf alpha/t-crtfm"
bb607926 496 case $machine in
497 *-*-osf1*)
498 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
499 ;;
500 *-*-osf[23]*)
501 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
502 ;;
503 *-*-osf4*)
504 tm_file="${tm_file} alpha/osf.h"
505 tmake_file="$tmake_file alpha/t-osf4"
506 # Some versions of OSF4 (specifically X4.0-9 296.7) have
507 # a broken tar, so we use cpio instead.
508 install_headers_dir=install-headers-cpio
509 ;;
510 *-*-osf5*)
511 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
512 tmake_file="$tmake_file alpha/t-osf4"
609b78bb 513 float_format=i128
bb607926 514 ;;
515 esac
516 case $machine in
517 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
518 target_cpu_default=MASK_SUPPORT_ARCH
519 ;;
520 esac
521 ;;
522alpha*-*-vxworks*)
345252d1 523 xm_defines=POSIX
bb607926 524 tm_file="${tm_file} dbx.h alpha/vxworks.h"
525 tmake_file="alpha/t-alpha alpha/t-ieee"
526 if [ x$gas != xyes ]
527 then
528 extra_passes="mips-tfile mips-tdump"
529 fi
530 use_collect2=yes
531 thread_file='vxworks'
532 ;;
bb607926 533alpha*-dec-vms*)
345252d1 534 xm_defines=POSIX
bb607926 535 tm_file=alpha/vms.h
e1688c3e 536 xm_file=alpha/xm-vms.h
bb607926 537 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
538 ;;
01d15dc5 539arc-*-elf*)
277773bd 540 tm_file="elfos.h svr4.h ${tm_file}"
01d15dc5 541 extra_parts="crtinit.o crtfini.o"
542 ;;
742d48c2 543arm*-*-rtems*)
a9acd81a 544 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/rtems-elf.h rtems.h"
742d48c2 545 tmake_file="arm/t-arm-elf t-rtems"
546 if test x$enable_threads = xyes; then
547 thread_file='rtems'
548 fi
742d48c2 549 ;;
bb607926 550arm-*-coff* | armel-*-coff*)
551 tm_file=arm/coff.h
552 tmake_file=arm/t-arm-coff
553 ;;
554arm-*-vxworks*)
555 tm_file=arm/vxarm.h
556 tmake_file=arm/t-arm-coff
557 thread_file='vxworks'
558 ;;
559arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
560 tm_file=arm/riscix1-1.h
561 use_collect2=yes
562 ;;
563arm-*-riscix*) # Acorn RISC machine
564 if test x$gas = xyes
565 then
566 tm_file=arm/rix-gas.h
567 else
568 tm_file=arm/riscix.h
569 fi
570 xmake_file=arm/x-riscix
571 tmake_file=arm/t-riscix
572 use_collect2=yes
573 ;;
574arm-semi-aout | armel-semi-aout)
575 tm_file=arm/semi.h
576 tmake_file=arm/t-semi
577 ;;
578arm-semi-aof | armel-semi-aof)
579 tm_file=arm/semiaof.h
23573244 580 tmake_file=arm/t-semi
bb607926 581 ;;
582arm*-*-netbsd*)
583 tm_file=arm/netbsd.h
584 tmake_file="t-netbsd arm/t-netbsd"
585 use_collect2=yes
586 ;;
c806acc4 587arm*-*-linux*) # ARM GNU/Linux with ELF
bb607926 588 xmake_file=x-linux
a9acd81a 589 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
32e8a7fc 590 tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
bb607926 591 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
592 gnu_ld=yes
593 case x${enable_threads} in
594 x | xyes | xpthreads | xposix)
595 thread_file='posix'
596 ;;
597 esac
598 ;;
599arm*-*-uclinux*) # ARM ucLinux
a9acd81a 600 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h"
bb607926 601 tmake_file=arm/t-arm-elf
602 ;;
603arm*-*-aout)
604 tm_file=arm/aout.h
605 tmake_file=arm/t-arm-aout
606 ;;
607arm*-*-ecos-elf)
a9acd81a 608 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/ecos-elf.h"
bb607926 609 tmake_file=arm/t-arm-elf
582b17a6 610 ;;
bb607926 611arm*-*-elf)
a9acd81a 612 tm_file="elfos.h arm/unknown-elf.h arm/elf.h"
bb607926 613 tmake_file=arm/t-arm-elf
614 ;;
615arm*-*-conix*)
a9acd81a 616 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/conix-elf.h"
bb607926 617 tmake_file=arm/t-arm-elf
618 ;;
619arm*-*-oabi)
a9acd81a 620 tm_file="arm/unknown-elf-oabi.h elfos.h arm/unknown-elf.h arm/elf.h"
bb607926 621 tmake_file=arm/t-arm-elf
622 ;;
623arm-*-pe*)
624 tm_file=arm/pe.h
625 tmake_file=arm/t-pe
626 extra_objs="pe.o"
627 ;;
628avr-*-*)
629 ;;
630c1-convex-*) # Convex C1
631 target_cpu_default=1
632 use_collect2=yes
633 ;;
634c2-convex-*) # Convex C2
635 target_cpu_default=2
636 use_collect2=yes
637 ;;
638c32-convex-*)
639 target_cpu_default=4
640 use_collect2=yes
641 ;;
642c34-convex-*)
643 target_cpu_default=8
644 use_collect2=yes
645 ;;
646c38-convex-*)
582b17a6 647 target_cpu_default=16
bb607926 648 use_collect2=yes
649 ;;
742d48c2 650c4x-*-rtems*)
742d48c2 651 tmake_file="c4x/t-c4x t-rtems"
652 tm_file=c4x/rtems.h
653 if test x$enable_threads = xyes; then
654 thread_file='rtems'
655 fi
10cac3d7 656 c_target_objs="c4x-c.o"
657 cxx_target_objs="c4x-c.o"
742d48c2 658 ;;
bb607926 659c4x-*)
bb607926 660 float_format=c4x
661 tmake_file=c4x/t-c4x
10cac3d7 662 c_target_objs="c4x-c.o"
663 cxx_target_objs="c4x-c.o"
bb607926 664 ;;
665clipper-intergraph-clix*)
666 tm_file="${tm_file} svr3.h clipper/clix.h"
597183a7 667 xm_defines=POSIX
bb607926 668 extra_headers=va-clipper.h
669 extra_parts="crtbegin.o crtend.o"
670 install_headers_dir=install-headers-cpio
671 ;;
e03f789f 672cris-*-aout)
277773bd 673 tm_file="dbxelf.h ${tm_file} cris/aout.h"
e03f789f 674 gas=yes
675 tmake_file="cris/t-cris cris/t-aout"
676 ;;
677cris-*-elf | cris-*-none)
277773bd 678 tm_file="elfos.h ${tm_file}"
e03f789f 679 tmake_file="cris/t-cris cris/t-elfmulti"
680 gas=yes
681 ;;
682cris-*-linux*)
ad6782e2 683 tm_file="elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
e03f789f 684 tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
685 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
686 case x${enable_threads} in
687 x | xyes | xpthreads | xposix)
688 thread_file=posix
689 ;;
690 esac
691 gas=yes
692 ;;
bb607926 693d30v-*)
277773bd 694 tm_file="elfos.h svr4.h ${tm_file}"
bb607926 695 float_format=i64
696 ;;
697dsp16xx-*)
698 ;;
699elxsi-elxsi-*)
700 use_collect2=yes
701 ;;
702fr30-*-elf)
277773bd 703 tm_file="elfos.h svr4.h ${tm_file}"
bb607926 704 tmake_file=fr30/t-fr30
705 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
706 ;;
742d48c2 707h8300-*-rtems*)
708 tmake_file="h8300/t-h8300 t-rtems"
709 tm_file=h8300/rtems.h
710 if test x$enable_threads = xyes; then
711 thread_file='rtems'
712 fi
713 float_format=i32
714 ;;
15b65932 715h8300-*-elf*)
716 tmake_file="h8300/t-h8300 h8300/t-elf"
717 tm_file="h8300/h8300.h h8300/elf.h"
718 float_format=i32
719 ;;
bb607926 720h8300-*-*)
721 float_format=i32
722 ;;
6630177d 723hppa*64*-*-linux* | parisc*64*-*-linux*)
724 target_cpu_default="(MASK_PA_11 | MASK_PA_20)"
277773bd 725 tm_file="pa/pa64-start.h ${tm_file} elfos.h svr4.h linux.h pa/pa-linux.h \
6630177d 726 pa/pa64-regs.h pa/pa-64.h pa/pa64-linux.h"
727 tmake_file=pa/t-linux64
6630177d 728 gas=yes gnu_ld=yes
729 ;;
730hppa*-*-linux* | parisc*-*-linux*)
731 target_cpu_default="MASK_PA_11"
277773bd 732 tm_file="${tm_file} elfos.h svr4.h linux.h pa/pa-linux.h \
6630177d 733 pa/pa32-regs.h pa/pa32-linux.h"
32e8a7fc 734 tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
6630177d 735 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
bb607926 736 gas=yes gnu_ld=yes
737 if test x$enable_threads = xyes; then
738 thread_file='posix'
739 fi
740 ;;
741hppa*-*-openbsd*)
742 target_cpu_default="MASK_PA_11"
f6dfa909 743 tmake_file=pa/t-openbsd
bb607926 744 ;;
745hppa1.1-*-pro*)
746 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
747 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
bb607926 748 tmake_file=pa/t-pro
749 ;;
750hppa1.1-*-osf*)
751 target_cpu_default="MASK_PA_11"
752 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
753 use_collect2=yes
754 ;;
755hppa1.1-*-rtems*)
756 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
757 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
bb607926 758 tmake_file=pa/t-pro
759 ;;
760hppa1.0-*-osf*)
761 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
762 use_collect2=yes
763 ;;
764hppa1.1-*-bsd*)
765 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
766 target_cpu_default="MASK_PA_11"
767 use_collect2=yes
768 ;;
769hppa1.0-*-bsd*)
770 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
771 use_collect2=yes
772 ;;
773hppa1.0-*-hpux7*)
774 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
597183a7 775 xm_defines=POSIX
bb607926 776 xmake_file=pa/x-pa-hpux
bb607926 777 install_headers_dir=install-headers-cpio
778 use_collect2=yes
779 ;;
780hppa1.0-*-hpux8.0[0-2]*)
781 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
597183a7 782 xm_defines=POSIX
bb607926 783 xmake_file=pa/x-pa-hpux
6630177d 784 if test x$gas != xyes
bb607926 785 then
bb607926 786 tm_file="pa/pa-oldas.h ${tm_file}"
787 fi
788 install_headers_dir=install-headers-cpio
789 use_collect2=yes
790 ;;
791hppa1.1-*-hpux8.0[0-2]*)
792 target_cpu_default="MASK_PA_11"
793 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
597183a7 794 xm_defines=POSIX
bb607926 795 xmake_file=pa/x-pa-hpux
6630177d 796 if test x$gas != xyes
bb607926 797 then
bb607926 798 tm_file="pa/pa-oldas.h ${tm_file}"
799 fi
800 install_headers_dir=install-headers-cpio
801 use_collect2=yes
802 ;;
803hppa1.1-*-hpux8*)
804 target_cpu_default="MASK_PA_11"
805 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
597183a7 806 xm_defines=POSIX
bb607926 807 xmake_file=pa/x-pa-hpux
bb607926 808 install_headers_dir=install-headers-cpio
809 use_collect2=yes
810 ;;
811hppa1.0-*-hpux8*)
812 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
597183a7 813 xm_defines=POSIX
bb607926 814 xmake_file=pa/x-pa-hpux
bb607926 815 install_headers_dir=install-headers-cpio
816 use_collect2=yes
817 ;;
818hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
819 target_cpu_default="MASK_PA_11"
820 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
821 float_format=i128
597183a7 822 xm_defines=POSIX
bb607926 823 xmake_file=pa/x-pa-hpux
824 tmake_file=pa/t-pa
bb607926 825 if test x$enable_threads = x; then
826 enable_threads=$have_pthread_h
827 fi
828 case x${enable_threads} in
829 xyes | xdce)
830 tmake_file="${tmake_file} pa/t-dce-thr"
831 ;;
832 esac
833 install_headers_dir=install-headers-cpio
834 use_collect2=yes
835 ;;
836hppa1.0-*-hpux10*)
837 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
838 float_format=i128
597183a7 839 xm_defines=POSIX
bb607926 840 xmake_file=pa/x-pa-hpux
841 tmake_file=pa/t-pa
bb607926 842 if test x$enable_threads = x; then
843 enable_threads=$have_pthread_h
844 fi
845 case x${enable_threads} in
846 xyes | xdce)
847 tmake_file="${tmake_file} pa/t-dce-thr"
848 ;;
849 esac
850 install_headers_dir=install-headers-cpio
851 use_collect2=yes
852 ;;
853hppa*64*-*-hpux11*)
597183a7 854 xm_defines=POSIX
bb607926 855 xmake_file=pa/x-pa-hpux
856 tmake_file=pa/t-pa
2f33fae1 857 tm_file="pa/pa64-start.h ${tm_file} pa/pa64-regs.h pa/long_double.h pa/elf.h pa/pa-hpux.h pa/pa-hpux11.h pa/pa-64.h pa/pa64-hpux.h"
bb607926 858 float_format=i128
859 tmake_file=pa/t-pa64
f9f97de8 860 target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
bb607926 861
bb607926 862# if [ x$enable_threads = x ]; then
863# enable_threads=$have_pthread_h
864# fi
865# if [ x$enable_threads = xyes ]; then
866# thread_file='dce'
867# tmake_file="${tmake_file} pa/t-dce-thr"
868# fi
869 install_headers_dir=install-headers-cpio
870 use_collect2=yes
871 ;;
872hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
873 target_cpu_default="MASK_PA_11"
874 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
875 float_format=i128
597183a7 876 xm_defines=POSIX
bb607926 877 xmake_file=pa/x-pa-hpux
878 tmake_file=pa/t-pa
bb607926 879# if test x$enable_threads = x; then
880# enable_threads=$have_pthread_h
881# fi
882# if test x$enable_threads = xyes; then
883# thread_file='dce'
884# tmake_file="${tmake_file} pa/t-dce-thr"
885# fi
886 install_headers_dir=install-headers-cpio
887 use_collect2=yes
888 ;;
889hppa1.0-*-hpux11*)
890 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
891 float_format=i128
597183a7 892 xm_defines=POSIX
bb607926 893 xmake_file=pa/x-pa-hpux
bb607926 894# if test x$enable_threads = x; then
895# enable_threads=$have_pthread_h
896# fi
897# if test x$enable_threads = xyes; then
898# thread_file='dce'
899# tmake_file="${tmake_file} pa/t-dce-thr"
900# fi
901 install_headers_dir=install-headers-cpio
902 use_collect2=yes
903 ;;
904hppa1.1-*-hpux* | hppa2*-*-hpux*)
905 target_cpu_default="MASK_PA_11"
906 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
597183a7 907 xm_defines=POSIX
bb607926 908 xmake_file=pa/x-pa-hpux
bb607926 909 install_headers_dir=install-headers-cpio
910 use_collect2=yes
911 ;;
912hppa1.0-*-hpux*)
913 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
597183a7 914 xm_defines=POSIX
bb607926 915 xmake_file=pa/x-pa-hpux
bb607926 916 install_headers_dir=install-headers-cpio
917 use_collect2=yes
918 ;;
919hppa1.1-*-hiux* | hppa2*-*-hiux*)
920 target_cpu_default="MASK_PA_11"
921 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
597183a7 922 xm_defines=POSIX
bb607926 923 xmake_file=pa/x-pa-hpux
bb607926 924 install_headers_dir=install-headers-cpio
925 use_collect2=yes
926 ;;
927hppa1.0-*-hiux*)
928 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
597183a7 929 xm_defines=POSIX
bb607926 930 xmake_file=pa/x-pa-hpux
bb607926 931 install_headers_dir=install-headers-cpio
932 use_collect2=yes
933 ;;
934hppa*-*-lites*)
935 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
936 target_cpu_default="MASK_PA_11"
937 use_collect2=yes
938 ;;
939hppa*-*-mpeix*)
940 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
582b17a6 941 xmake_file=pa/x-pa-mpeix
942 echo "You must use gas. Assuming it is already installed."
6630177d 943 gas=yes
bb607926 944 install_headers_dir=install-headers-tar
582b17a6 945 use_collect2=yes
946 ;;
bb607926 947i370-*-opened*) # IBM 360/370/390 Architecture
597183a7 948 xm_defines='POSIX FATAL_EXIT_CODE=12'
bb607926 949 tm_file=i370/oe.h
10cac3d7 950 tmake_file="i370/t-i370"
bb607926 951 xmake_file=i370/x-oe
10cac3d7 952 c_target_objs="i370-c.o"
953 cxx_target_objs="i370-c.o"
bb607926 954 ;;
955i370-*-mvs*)
597183a7 956 xm_defines='POSIX FATAL_EXIT_CODE=12'
bb607926 957 tm_file=i370/mvs.h
10cac3d7 958 tmake_file="i370/t-i370"
959 c_target_objs="i370-c.o"
960 cxx_target_objs="i370-c.o"
bb607926 961 ;;
962i370-*-linux*)
bb607926 963 xmake_file=x-linux
277773bd 964 tm_file="elfos.h svr4.h linux.h i370/linux.h ${tm_file}"
32e8a7fc 965 tmake_file="t-slibgcc-elf-ver t-linux"
bb607926 966 # broken_install=yes
967 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
968 # extra_parts="crtbegin.o crtend.o"
969 gnu_ld=yes
970 gas=yes
971 elf=yes
972 if test x$enable_threads = xyes; then
973 thread_file='posix'
974 fi
975 ;;
e37e4a50 976i[34567]86-*-chorusos*)
597183a7 977 xm_defines=POSIX
277773bd 978 tm_file="${tm_file} i386/att.h elfos.h i386/i386elf.h chorus.h"
e37e4a50 979 tmake_file=i386/t-i386elf
980 xmake_file=x-svr4
981 case x${enable_threads} in
982 xyes | xpthreads | xposix)
983 thread_file='posix'
984 ;;
985 esac
986 ;;
bb607926 987i[34567]86-*-elf*)
597183a7 988 xm_defines=POSIX
277773bd 989 tm_file="${tm_file} i386/att.h elfos.h i386/i386elf.h"
bb607926 990 tmake_file=i386/t-i386elf
991 xmake_file=x-svr4
992 ;;
993i[34567]86-ibm-aix*) # IBM PS/2 running AIX
994 if test x$gas = xyes
995 then
996 tm_file=i386/aix386.h
997 extra_parts="crtbegin.o crtend.o"
998 tmake_file=i386/t-crtstuff
999 else
1000 tm_file=i386/aix386ng.h
1001 use_collect2=yes
1002 fi
597183a7 1003 xm_defines=POSIX
bb607926 1004 ;;
1005i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
597183a7 1006 xm_defines="POSIX SMALL_ARG_MAX"
bb607926 1007 if test x$stabs = xyes -a x$gas = xyes
1008 then
1009 tm_file=i386/sysv4gdb.h
1010 else
277773bd 1011 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h"
bb607926 1012 fi
1013 extra_parts="crtbegin.o crtend.o"
1014 tmake_file=i386/t-crtpic
1015 ;;
1016i[34567]86-next-*)
1017 tm_file=i386/next.h
bb607926 1018 tmake_file=i386/t-next
bb607926 1019 extra_objs=nextstep.o
1020 extra_parts="crtbegin.o crtend.o"
1021 if test x$enable_threads = xyes; then
1022 thread_file='mach'
1023 fi
1024 ;;
1025i[34567]86-*-netware) # Intel 80386's running netware
277773bd 1026 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
bb607926 1027 tmake_file=i386/t-netware
1028 ;;
1029i[34567]86-sequent-bsd*) # 80386 from Sequent
1030 use_collect2=yes
1031 if test x$gas = xyes
1032 then
1033 tm_file=i386/seq-gas.h
1034 else
1035 tm_file=i386/sequent.h
1036 fi
1037 ;;
1038i[34567]86-sequent-ptx1*)
597183a7 1039 xm_defines=POSIX
bb607926 1040 tm_file=i386/seq-sysv3.h
1041 tmake_file=i386/t-crtstuff
1042 extra_parts="crtbegin.o crtend.o"
1043 install_headers_dir=install-headers-cpio
1044 ;;
1045i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
597183a7 1046 xm_defines=POSIX
bb607926 1047 tm_file=i386/seq2-sysv3.h
1048 tmake_file=i386/t-crtstuff
1049 extra_parts="crtbegin.o crtend.o"
1050 install_headers_dir=install-headers-cpio
1051 ;;
1052i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
f92a3fd0 1053 if test x$gas = xyes
1054 then
1055 tm_file="${tm_file} usegas.h"
1056 fi
597183a7 1057 xm_defines="POSIX SMALL_ARG_MAX"
bb607926 1058 xmake_file=x-svr4
277773bd 1059 tm_file="${tm_file} i386/att.h elfos.h ptx4.h i386/ptx4-i.h"
bb607926 1060 tmake_file=t-svr4
1061 extra_parts="crtbegin.o crtend.o"
1062 install_headers_dir=install-headers-cpio
1063 ;;
1064i386-sun-sunos*) # Sun i386 roadrunner
597183a7 1065 xm_defines=POSIX
bb607926 1066 tm_file=i386/sun.h
1067 use_collect2=yes
1068 ;;
1069i[34567]86-wrs-vxworks*)
1070 tm_file=i386/vxi386.h
bb607926 1071 thread_file='vxworks'
1072 ;;
1073i[34567]86-*-aout*)
1074 tm_file=i386/i386-aout.h
bb607926 1075 ;;
1076i[34567]86-*-beoself* | i[34567]86-*-beos*)
597183a7 1077 xm_defines=POSIX
bb607926 1078 tmake_file='i386/t-beos i386/t-crtpic'
277773bd 1079 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/beos-elf.h"
bb607926 1080 xmake_file=i386/x-beos
1081 extra_parts='crtbegin.o crtend.o'
1082 ;;
1083i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
4490d2f1 1084 tm_file="i386/386bsd.h i386/bsd386.h"
bb607926 1085# tmake_file=t-libc-ok
1086 ;;
1087i[34567]86-*-bsd*)
1088 tm_file=i386/386bsd.h
1089# tmake_file=t-libc-ok
1090# Next line turned off because both 386BSD and BSD/386 use GNU ld.
1091# use_collect2=yes
1092 ;;
1093i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
23573244 1094 tm_file=i386/freebsd-aout.h
bb607926 1095 tmake_file=t-freebsd
1096 ;;
1097i[34567]86-*-freebsd*)
277773bd 1098 tm_file="${tm_file} i386/att.h elfos.h svr4.h ${fbsd_tm_file} i386/freebsd.h"
bb607926 1099 ;;
f406b863 1100i[34567]86-*-netbsdelf*)
1101 xm_defines=POSIX
277773bd 1102 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/netbsd-elf.h"
f406b863 1103 tmake_file=t-netbsd
1104 gnu_ld=yes
1105 float_format=i386
1106 ;;
bb607926 1107i[34567]86-*-netbsd*)
1108 tm_file=i386/netbsd.h
1109 tmake_file=t-netbsd
1110 use_collect2=yes
1111 ;;
1112i[34567]86-*-openbsd*)
c7be79ca 1113 # needed to unconfuse gdb
1114 tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
bb607926 1115 # we need collect2 until our bug is fixed...
1116 use_collect2=yes
1117 ;;
1118i[34567]86-*-coff*)
1119 tm_file=i386/i386-coff.h
bb607926 1120 ;;
1121i[34567]86-*-isc*) # 80386 running ISC system
597183a7 1122 xm_defines=POSIX
bb607926 1123 if test x$gas = xyes -a x$stabs = xyes
1124 then
1125 tm_file=i386/iscdbx.h
1126 tmake_file=i386/t-svr3dbx
1127 extra_parts="svr3.ifile svr3z.ifile"
1128 else
1129 tm_file=i386/isccoff.h
1130 tmake_file=i386/t-crtstuff
1131 extra_parts="crtbegin.o crtend.o"
1132 fi
bb607926 1133 install_headers_dir=install-headers-cpio
1134 ;;
1135i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
1136 # with a.out format using
1137 # pre BFD linkers
bb607926 1138 tmake_file="t-linux-aout i386/t-crtstuff"
1139 tm_file=i386/linux-oldld.h
1140 gnu_ld=yes
1141 float_format=i386
1142 ;;
1143i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1144 # with a.out format
bb607926 1145 tmake_file="t-linux-aout i386/t-crtstuff"
1146 tm_file=i386/linux-aout.h
1147 gnu_ld=yes
1148 float_format=i386
1149 ;;
1150i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1151 # with ELF format using the
1152 # GNU/Linux C library 5
277773bd 1153 xmake_file=x-linux
1154 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h"
32e8a7fc 1155 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
bb607926 1156 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1157 gnu_ld=yes
1158 float_format=i386
1159 if test x$enable_threads = xyes; then
1160 thread_file='single'
1161 fi
1162 ;;
1163i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1164 # with ELF format using glibc 2
1165 # aka GNU/Linux C library 6
1166 xmake_file=x-linux
277773bd 1167 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h"
32e8a7fc 1168 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
bb607926 1169 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1170 gnu_ld=yes
1171 float_format=i386
1172 if test x$enable_threads = xyes; then
1173 thread_file='posix'
1174 fi
1175 ;;
5c66405b 1176x86_64-*-linux*)
1177 xmake_file=x-linux
277773bd 1178 tm_file="i386/biarch64.h i386/i386.h i386/att.h elfos.h svr4.h linux.h \
1179 i386/x86-64.h i386/linux64.h"
5c66405b 1180 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
1181 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1182 gnu_ld=yes
1183 float_format=i386
1184 if test x$enable_threads = xyes; then
1185 thread_file='posix'
1186 fi
1187 ;;
bb607926 1188i[34567]86-*-gnu*)
1189 float_format=i386
1190 ;;
1191i[34567]86-go32-msdos | i[34567]86-*-go32*)
1192 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1193 exit 1
1194 ;;
1195i[34567]86-pc-msdosdjgpp*)
1196 xm_file=i386/xm-djgpp.h
1197 tm_file=i386/djgpp.h
bb607926 1198 xmake_file=i386/x-djgpp
1199 gnu_ld=yes
1200 gas=yes
1201 exeext=.exe
1202 float_format=none
1203 case $host in *pc-msdosdjgpp*)
1204 target_alias=djgpp
1205 ;;
1206 esac
1207 ;;
1208i[34567]86-moss-msdos* | i[34567]86-*-moss*)
277773bd 1209 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
bb607926 1210 tmake_file=t-libc-ok
1211 gnu_ld=yes
1212 gas=yes
1213 ;;
1214i[34567]86-*-lynxos*)
1215 if test x$gas = xyes
1216 then
1217 tm_file=i386/lynx.h
1218 else
1219 tm_file=i386/lynx-ng.h
1220 fi
bb607926 1221 ;;
1222i[34567]86-*-mach*)
1223 tm_file=i386/mach.h
1224# tmake_file=t-libc-ok
1225 use_collect2=yes
1226 ;;
1227i[34567]86-*-osfrose*) # 386 using OSF/rose
1228 if test x$elf = xyes
1229 then
1230 tm_file=i386/osfelf.h
1231 use_collect2=
1232 else
1233 tm_file=i386/osfrose.h
1234 use_collect2=yes
1235 fi
bb607926 1236 tmake_file=i386/t-osf
1237 extra_objs=halfpic.o
1238 ;;
1239i[34567]86-go32-rtems*)
277773bd 1240 tm_file=i386/djgpp-rtems.h
513f3e74 1241 tmake_file=t-rtems
742d48c2 1242 if test x$enable_threads = xyes; then
1243 thread_file='rtems'
1244 fi
bb607926 1245 ;;
1246i[34567]86-*-rtemscoff*)
bb607926 1247 tm_file=i386/rtems.h
23573244 1248 tmake_file=t-rtems
742d48c2 1249 if test x$enable_threads = xyes; then
1250 thread_file='rtems'
1251 fi
bb607926 1252 ;;
1253i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
277773bd 1254 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/rtemself.h rtems.h"
bb607926 1255 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1256 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
742d48c2 1257 if test x$enable_threads = xyes; then
1258 thread_file='rtems'
1259 fi
bb607926 1260 ;;
1261i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
597183a7 1262 xm_defines=POSIX
bb607926 1263 xmake_file=i386/x-sco5
1264 install_headers_dir=install-headers-cpio
1265 tm_file=i386/sco5.h
1266 if test x$gas = xyes
1267 then
f92a3fd0 1268 tm_file="usegas.h ${tm_file}"
bb607926 1269 tmake_file=i386/t-sco5gas
1270 else
1271 tmake_file=i386/t-sco5
1272 fi
bb607926 1273 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1274 ;;
bb607926 1275i[34567]86-*-solaris2*)
597183a7 1276 xm_defines="POSIX SMALL_ARG_MAX"
277773bd 1277 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sol2.h"
bb607926 1278 if test x$gas = xyes; then
1279 # Only needed if gas does not support -s
1280 tm_file="i386/sol2gas.h ${tm_file}"
1281 fi
23573244 1282 tmake_file=i386/t-sol2
32e8a7fc 1283 if test x$gnu_ld = xyes; then
1284 tmake_file="$tmake_file t-slibgcc-elf-ver"
1285 else
1286 tmake_file="$tmake_file t-slibgcc-sld"
1287 fi
bb607926 1288 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1289 xmake_file=x-svr4
1290 if test x${enable_threads} = x; then
1291 enable_threads=$have_pthread_h
1292 if test x${enable_threads} = x; then
1293 enable_threads=$have_thread_h
1294 fi
1295 fi
1296 if test x${enable_threads} = xyes; then
1297 if test x${have_pthread_h} = xyes; then
1298 thread_file='posix'
1299 else
1300 thread_file='solaris'
1301 fi
1302 fi
1303 ;;
16031d31 1304i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
597183a7 1305 xm_defines=POSIX
277773bd 1306 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
bb607926 1307 if test x$stabs = xyes
1308 then
1309 tm_file="${tm_file} dbx.h"
1310 fi
23573244 1311 tmake_file=i386/t-crtpic
bb607926 1312 xmake_file=x-svr4
1313 extra_parts="crtbegin.o crtend.o"
1314 if test x$enable_threads = xyes; then
1315 thread_file='posix'
1316 fi
1317 ;;
1318i[34567]86-*-sysv4*) # Intel 80386's running system V.4
597183a7 1319 xm_defines="POSIX SMALL_ARG_MAX"
277773bd 1320 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h"
bb607926 1321 if test x$stabs = xyes
1322 then
1323 tm_file="${tm_file} dbx.h"
1324 fi
23573244 1325 tmake_file=i386/t-crtpic
bb607926 1326 xmake_file=x-svr4
1327 extra_parts="crtbegin.o crtend.o"
1328 ;;
1329i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
597183a7 1330 xm_defines=POSIX
277773bd 1331 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h i386/udk.h"
23573244 1332 tmake_file="i386/t-crtpic i386/t-udk"
bb607926 1333 xmake_file=x-svr4
1334 extra_parts="crtbegin.o crtend.o"
1335 install_headers_dir=install-headers-cpio
1336 ;;
1337i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
e1688c3e 1338 xm_file=i386/xm-osf1elf.h
597183a7 1339 xm_defines='POSIX USE_C_ALLOCA SMALL_ARG_MAX'
bb607926 1340 if test x$stabs = xyes
1341 then
277773bd 1342 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h i386/osf1elfgdb.h"
bb607926 1343 else
277773bd 1344 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h"
bb607926 1345 fi
1346 tmake_file=i386/t-osf1elf
bb607926 1347 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1348 ;;
1349i[34567]86-*-sysv*) # Intel 80386's running system V
597183a7 1350 xm_defines=POSIX
bb607926 1351 if test x$gas = xyes
1352 then
1353 if test x$stabs = xyes
1354 then
1355 tm_file=i386/svr3dbx.h
1356 tmake_file=i386/t-svr3dbx
1357 extra_parts="svr3.ifile svr3z.rfile"
1358 else
1359 tm_file=i386/svr3gas.h
1360 extra_parts="crtbegin.o crtend.o"
1361 tmake_file=i386/t-crtstuff
1362 fi
1363 else
1364 tm_file=i386/sysv3.h
1365 extra_parts="crtbegin.o crtend.o"
1366 tmake_file=i386/t-crtstuff
1367 fi
1368 tmake_file="$tmake_file i386/t-crtpic"
1369 ;;
1370i386-*-vsta) # Intel 80386's running VSTa kernel
e1688c3e 1371 xm_file=i386/xm-vsta.h
bb607926 1372 tm_file=i386/vsta.h
bb607926 1373 ;;
1374i[34567]86-*-win32)
345252d1 1375 xm_defines=POSIX
e1688c3e 1376 xm_file=i386/xm-cygwin.h
9650d101 1377 float_format=i386
bb607926 1378 tmake_file=i386/t-cygwin
1379 tm_file=i386/win32.h
1380 xmake_file=i386/x-cygwin
1381 extra_objs=winnt.o
1382 if test x$enable_threads = xyes; then
1383 thread_file='win32'
1384 fi
1385 exeext=.exe
1386 ;;
1387i[34567]86-*-pe | i[34567]86-*-cygwin*)
345252d1 1388 xm_defines=POSIX
e1688c3e 1389 xm_file=i386/xm-cygwin.h
9650d101 1390 float_format=i386
bb607926 1391 tmake_file=i386/t-cygwin
1392 tm_file=i386/cygwin.h
1393 xmake_file=i386/x-cygwin
1394 extra_objs=winnt.o
1395 if test x$enable_threads = xyes; then
1396 thread_file='win32'
1397 fi
1398 exeext=.exe
1399 ;;
1400i[34567]86-*-mingw32*)
1401 tm_file=i386/mingw32.h
9650d101 1402 float_format=i386
597183a7 1403 xm_defines=POSIX
e1688c3e 1404 xm_file=i386/xm-mingw32.h
bb607926 1405 tmake_file="i386/t-cygwin i386/t-mingw32"
1406 extra_objs=winnt.o
1407 xmake_file=i386/x-cygwin
1408 if test x$enable_threads = xyes; then
1409 thread_file='win32'
1410 fi
1411 exeext=.exe
1412 case $machine in
170a37e8 1413 *mingw32crt*)
bb607926 1414 tm_file="${tm_file} i386/crtdll.h"
1415 ;;
170a37e8 1416 *minwg32msv* | *mingw32*)
1417 ;;
bb607926 1418 esac
1419 ;;
1420i[34567]86-*-uwin*)
1421 tm_file=i386/uwin.h
bb607926 1422 tmake_file="i386/t-cygwin i386/t-uwin"
1423 extra_objs=winnt.o
1424 xmake_file=i386/x-cygwin
1425 if test x$enable_threads = xyes; then
1426 thread_file='win32'
1427 fi
1428 exeext=.exe
1429 ;;
1430i[34567]86-*-interix*)
1431 tm_file="i386/i386-interix.h interix.h"
1432 xm_file="i386/xm-i386-interix.h xm-interix.h"
597183a7 1433 xm_defines=POSIX
bb607926 1434 tmake_file="i386/t-interix"
1435 extra_objs=interix.o
1436 xmake_file=x-interix
1437 if test x$enable_threads = xyes ; then
1438 thread_file='posix'
1439 fi
1440 if test x$stabs = xyes ; then
1441 tm_file="${tm_file} dbxcoff.h"
1442 fi
1443 ;;
bb607926 1444i[34567]86-dg-dgux*)
597183a7 1445 xm_defines=POSIX
277773bd 1446 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/dgux.h"
bb607926 1447 tmake_file=i386/t-dgux
1448 xmake_file=i386/x-dgux
1449 install_headers_dir=install-headers-cpio
1450 ;;
1451i860-alliant-*) # Alliant FX/2800
277773bd 1452 tm_file="${tm_file} elfos.h svr4.h i860/sysv4.h i860/fx2800.h"
bb607926 1453 tmake_file=i860/t-fx2800
1454 extra_parts="crtbegin.o crtend.o"
1455 ;;
1456i860-*-bsd*)
1457 tm_file="${tm_file} i860/bsd.h"
1458 if test x$gas = xyes
1459 then
1460 tm_file="${tm_file} i860/bsd-gas.h"
1461 fi
1462 use_collect2=yes
1463 ;;
1464i860-*-mach*)
1465 tm_file="${tm_file} i860/mach.h"
1466 tmake_file=t-libc-ok
1467 ;;
1468i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1469 tm_file="${tm_file} svr3.h i860/paragon.h"
597183a7 1470 xm_defines=POSIX
bb607926 1471 ;;
1472i860-*-sysv3*)
1473 tm_file="${tm_file} svr3.h i860/sysv3.h"
597183a7 1474 xm_defines=POSIX
bb607926 1475 extra_parts="crtbegin.o crtend.o"
1476 ;;
1477i860-*-sysv4*)
277773bd 1478 tm_file="${tm_file} elfos.h svr4.h i860/sysv4.h"
597183a7 1479 xm_defines=POSIX
bb607926 1480 tmake_file=t-svr4
1481 extra_parts="crtbegin.o crtend.o"
1482 ;;
1483i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1484 tm_file="${tm_file} i960/vx960.h"
1485 tmake_file=i960/t-vxworks960
1486 use_collect2=yes
1487 thread_file='vxworks'
4f7a0ef9 1488 c_target_objs="i960-c.o"
1489 cxx_target_objs="i960-c.o"
bb607926 1490 ;;
1491i960-wrs-vxworks5* | i960-wrs-vxworks)
1492 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1493 tmake_file=i960/t-vxworks960
1494 use_collect2=yes
1495 thread_file='vxworks'
4f7a0ef9 1496 c_target_objs="i960-c.o"
1497 cxx_target_objs="i960-c.o"
bb607926 1498 ;;
1499i960-wrs-vxworks*)
1500 tm_file="${tm_file} i960/vx960.h"
1501 tmake_file=i960/t-vxworks960
1502 use_collect2=yes
1503 thread_file='vxworks'
4f7a0ef9 1504 c_target_objs="i960-c.o"
1505 cxx_target_objs="i960-c.o"
bb607926 1506 ;;
1507i960-*-coff*)
1508 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1509 tmake_file=i960/t-960bare
4f7a0ef9 1510 c_target_objs="i960-c.o"
1511 cxx_target_objs="i960-c.o"
bb607926 1512 ;;
1513i960-*-rtems)
1514 tmake_file="i960/t-960bare t-rtems"
1515 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
742d48c2 1516 if test x$enable_threads = xyes; then
1517 thread_file='rtems'
1518 fi
4f7a0ef9 1519 c_target_objs="i960-c.o"
1520 cxx_target_objs="i960-c.o"
bb607926 1521 ;;
1522i960-*-*) # Default i960 environment.
1523 use_collect2=yes
29122112 1524 tmake_file=i960/t-960bare
4f7a0ef9 1525 c_target_objs="i960-c.o"
1526 cxx_target_objs="i960-c.o"
bb607926 1527 ;;
037e8675 1528ia64*-*-aix*)
277773bd 1529 tm_file="${tm_file} elfos.h svr4.h ia64/sysv4.h ia64/aix.h"
037e8675 1530 tmake_file="ia64/t-ia64 ia64/t-aix"
1531 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1532 ;;
bb607926 1533ia64*-*-elf*)
49b2e77d 1534 tm_file="${tm_file} elfos.h ia64/sysv4.h ia64/elf.h"
bb607926 1535 tmake_file="ia64/t-ia64"
1536 target_cpu_default="0"
1537 if test x$gas = xyes
1538 then
1539 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1540 fi
1541 if test x$gnu_ld = xyes
1542 then
1543 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1544 fi
1545 float_format=i386
1546 ;;
49b2e77d 1547ia64*-*-freebsd*)
1548 tm_file="${tm_file} ${fbsd_tm_file} elfos.h ia64/sysv4.h ia64/freebsd.h"
1549 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1550 tmake_file="${tmake_file} ia64/t-ia64"
1551 float_format=i386
1552 ;;
bb607926 1553ia64*-*-linux*)
277773bd 1554 tm_file="${tm_file} elfos.h svr4.h linux.h ia64/sysv4.h ia64/linux.h"
32e8a7fc 1555 tmake_file="t-slibgcc-elf-ver t-linux ia64/t-ia64 ia64/t-glibc"
bb607926 1556 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1557 if test x$enable_threads = xyes; then
1558 thread_file='posix'
1559 fi
1560 float_format=i386
1561 ;;
d838d791 1562ia64*-*-hpux*)
277773bd 1563 tm_file="${tm_file} elfos.h svr4.h ia64/sysv4.h ia64/hpux.h ia64/hpux_longdouble.h"
4c9b2035 1564 tmake_file="ia64/t-ia64 ia64/t-hpux"
d838d791 1565 target_cpu_default="MASK_GNU_AS"
1566 if test x$enable_threads = xyes; then
1567 thread_file='posix'
1568 fi
1569 float_format=i386
1570 ;;
bb607926 1571m32r-*-elf*)
277773bd 1572 tm_file="elfos.h svr4.h ${tm_file}"
bb607926 1573 extra_parts="crtinit.o crtfini.o"
1574 ;;
1575# m68hc11 and m68hc12 share the same machine description.
1576m68hc11-*-*|m6811-*-*)
271f08ab 1577 tm_file="elfos.h m68hc11/m68hc11.h"
bb607926 1578 tm_p_file="m68hc11/m68hc11-protos.h"
1579 md_file="m68hc11/m68hc11.md"
1580 out_file="m68hc11/m68hc11.c"
1581 tmake_file="m68hc11/t-m68hc11-gas"
1582 ;;
1583m68hc12-*-*|m6812-*-*)
271f08ab 1584 tm_file="m68hc11/m68hc12.h elfos.h m68hc11/m68hc11.h"
bb607926 1585 tm_p_file="m68hc11/m68hc11-protos.h"
bb607926 1586 md_file="m68hc11/m68hc11.md"
1587 out_file="m68hc11/m68hc11.c"
1588 tmake_file="m68hc11/t-m68hc11-gas"
1589 ;;
1590m68000-convergent-sysv*)
1591 tm_file=m68k/ctix.h
597183a7 1592 xm_defines=POSIX
bb607926 1593 use_collect2=yes
1594 extra_headers=math-68881.h
1595 ;;
1596m68000-hp-bsd*) # HP 9000/200 running BSD
1597 tm_file=m68k/hp2bsd.h
bb607926 1598 use_collect2=yes
1599 extra_headers=math-68881.h
1600 ;;
1601m68000-hp-hpux*) # HP 9000 series 300
597183a7 1602 xm_defines=POSIX
bb607926 1603 if test x$gas = xyes
1604 then
1605 xmake_file=m68k/x-hp320g
1606 tm_file=m68k/hp310g.h
1607 else
1608 xmake_file=m68k/x-hp320
1609 tm_file=m68k/hp310.h
1610 fi
1611 install_headers_dir=install-headers-cpio
1612 use_collect2=yes
1613 extra_headers=math-68881.h
1614 ;;
1615m68000-sun-sunos3*)
1616 tm_file=m68k/sun2.h
1617 use_collect2=yes
1618 extra_headers=math-68881.h
1619 ;;
1620m68000-sun-sunos4*)
1621 tm_file=m68k/sun2o4.h
1622 use_collect2=yes
1623 extra_headers=math-68881.h
1624 ;;
1625m68000-att-sysv*)
597183a7 1626 xm_defines=POSIX
bb607926 1627 if test x$gas = xyes
1628 then
1629 tm_file=m68k/3b1g.h
1630 else
1631 tm_file=m68k/3b1.h
1632 fi
1633 use_collect2=yes
1634 extra_headers=math-68881.h
1635 ;;
1636m68k-apple-aux*) # Apple Macintosh running A/UX
597183a7 1637 xm_defines=POSIX
bb607926 1638 tmake_file=m68k/t-aux
1639 install_headers_dir=install-headers-cpio
1640 extra_headers=math-68881.h
1641 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
1642 tm_file=
1643 if test "$gnu_ld" = yes
1644 then
1645 tm_file="${tm_file} m68k/auxgld.h"
1646 else
1647 tm_file="${tm_file} m68k/auxld.h"
1648 fi
1649 if test "$gas" = yes
1650 then
1651 tm_file="${tm_file} m68k/auxgas.h"
1652 else
1653 tm_file="${tm_file} m68k/auxas.h"
1654 fi
1655 tm_file="${tm_file} m68k/a-ux.h"
1656 float_format=m68k
1657 ;;
1658m68k-apollo-*)
1659 tm_file=m68k/apollo68.h
bb607926 1660 use_collect2=yes
1661 extra_headers=math-68881.h
1662 float_format=m68k
1663 ;;
1664m68k-altos-sysv*) # Altos 3068
1665 if test x$gas = xyes
1666 then
1667 tm_file=m68k/altos3068.h
597183a7 1668 xm_defines=POSIX
bb607926 1669 else
1670 echo "The Altos is supported only with the GNU assembler" 1>&2
1671 exit 1
1672 fi
1673 extra_headers=math-68881.h
1674 ;;
1675m68k-bull-sysv*) # Bull DPX/2
1676 if test x$gas = xyes
1677 then
1678 if test x$stabs = xyes
1679 then
1680 tm_file=m68k/dpx2cdbx.h
1681 else
1682 tm_file=m68k/dpx2g.h
1683 fi
1684 else
1685 tm_file=m68k/dpx2.h
1686 fi
597183a7 1687 xm_defines=POSIX
bb607926 1688 use_collect2=yes
1689 extra_headers=math-68881.h
1690 ;;
1691m68k-atari-sysv4*) # Atari variant of V.4.
1692 tm_file=m68k/atari.h
597183a7 1693 xm_defines=POSIX
bb607926 1694 tmake_file=t-svr4
1695 extra_parts="crtbegin.o crtend.o"
1696 extra_headers=math-68881.h
1697 float_format=m68k
1698 ;;
1699m68k-motorola-sysv*)
1700 tm_file=m68k/mot3300.h
597183a7 1701 xm_defines=POSIX
bb607926 1702 if test x$gas = xyes
1703 then
bb607926 1704 if test x$gnu_ld = xyes
1705 then
1706 tmake_file=m68k/t-mot3300-gald
1707 else
1708 tmake_file=m68k/t-mot3300-gas
1709 use_collect2=yes
1710 fi
1711 else
bb607926 1712 if test x$gnu_ld = xyes
1713 then
1714 tmake_file=m68k/t-mot3300-gld
1715 else
1716 tmake_file=m68k/t-mot3300
1717 use_collect2=yes
1718 fi
1719 fi
1720 gdb_needs_out_file_path=yes
1721 extra_parts="crt0.o mcrt0.o"
1722 extra_headers=math-68881.h
1723 float_format=m68k
1724 ;;
1725m68k-ncr-sysv*) # NCR Tower 32 SVR3
1726 tm_file=m68k/tower-as.h
597183a7 1727 xm_defines=POSIX
bb607926 1728 extra_parts="crtbegin.o crtend.o"
1729 extra_headers=math-68881.h
1730 ;;
1731m68k-plexus-sysv*)
1732 tm_file=m68k/plexus.h
597183a7 1733 xm_defines=POSIX
bb607926 1734 use_collect2=yes
1735 extra_headers=math-68881.h
1736 ;;
1737m68k-tti-*)
1738 tm_file=m68k/pbb.h
597183a7 1739 xm_defines=POSIX
bb607926 1740 extra_headers=math-68881.h
1741 ;;
1742m68k-crds-unos*)
597183a7 1743 xm_defines=POSIX
bb607926 1744 tm_file=m68k/crds.h
1745 use_collect2=yes
1746 extra_headers=math-68881.h
1747 ;;
1748m68k-cbm-sysv4*) # Commodore variant of V.4.
1749 tm_file=m68k/amix.h
597183a7 1750 xm_defines=POSIX
bb607926 1751 tmake_file=t-svr4
1752 extra_parts="crtbegin.o crtend.o"
1753 extra_headers=math-68881.h
1754 float_format=m68k
1755 ;;
1756m68k-ccur-rtu)
1757 tm_file=m68k/ccur-GAS.h
bb607926 1758 extra_headers=math-68881.h
1759 use_collect2=yes
1760 float_format=m68k
1761 ;;
1762m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
1763 tm_file=m68k/hp3bsd44.h
bb607926 1764 use_collect2=yes
1765 extra_headers=math-68881.h
1766 float_format=m68k
1767 ;;
1768m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
1769 tm_file=m68k/hp3bsd.h
1770 use_collect2=yes
1771 extra_headers=math-68881.h
1772 float_format=m68k
1773 ;;
1774m68k-isi-bsd*)
1775 if test x$with_fp = xno
1776 then
1777 tm_file=m68k/isi-nfp.h
1778 else
1779 tm_file=m68k/isi.h
1780 float_format=m68k
1781 fi
1782 use_collect2=yes
1783 extra_headers=math-68881.h
1784 ;;
1785m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
597183a7 1786 xm_defines=POSIX
bb607926 1787 if test x$gas = xyes
1788 then
1789 xmake_file=m68k/x-hp320g
1790 tm_file=m68k/hp320g.h
1791 else
1792 xmake_file=m68k/x-hp320
1793 tm_file=m68k/hpux7.h
1794 fi
1795 install_headers_dir=install-headers-cpio
1796 use_collect2=yes
1797 extra_headers=math-68881.h
1798 float_format=m68k
1799 ;;
1800m68k-hp-hpux*) # HP 9000 series 300
597183a7 1801 xm_defines=POSIX
bb607926 1802 if test x$gas = xyes
1803 then
1804 xmake_file=m68k/x-hp320g
1805 tm_file=m68k/hp320g.h
1806 else
1807 xmake_file=m68k/x-hp320
1808 tm_file=m68k/hp320.h
1809 fi
1810 install_headers_dir=install-headers-cpio
1811 use_collect2=yes
1812 extra_headers=math-68881.h
1813 float_format=m68k
1814 ;;
1815m68k-sun-mach*)
1816 tm_file=m68k/sun3mach.h
1817 use_collect2=yes
1818 extra_headers=math-68881.h
1819 float_format=m68k
1820 ;;
1821m68k-sony-newsos3*)
1822 if test x$gas = xyes
1823 then
1824 tm_file=m68k/news3gas.h
1825 else
1826 tm_file=m68k/news3.h
1827 fi
1828 use_collect2=yes
1829 extra_headers=math-68881.h
1830 float_format=m68k
1831 ;;
1832m68k-sony-bsd* | m68k-sony-newsos*)
1833 if test x$gas = xyes
1834 then
1835 tm_file=m68k/newsgas.h
1836 else
1837 tm_file=m68k/news.h
1838 fi
1839 use_collect2=yes
1840 extra_headers=math-68881.h
1841 float_format=m68k
1842 ;;
1843m68k-next-nextstep2*)
1844 tm_file=m68k/next21.h
bb607926 1845 tmake_file=m68k/t-next
1846 xmake_file=m68k/x-next
1847 extra_objs=nextstep.o
1848 extra_headers=math-68881.h
1849 use_collect2=yes
1850 float_format=m68k
1851 ;;
1852m68k-next-nextstep[34]*)
1853 tm_file=m68k/next.h
bb607926 1854 tmake_file=m68k/t-next
1855 xmake_file=m68k/x-next
1856 extra_objs=nextstep.o
1857 extra_parts="crtbegin.o crtend.o"
1858 extra_headers=math-68881.h
1859 float_format=m68k
1860 if test x$enable_threads = xyes; then
1861 thread_file='mach'
1862 fi
1863 ;;
1864m68k-sun-sunos3*)
1865 if test x$with_fp = xno
1866 then
1867 tm_file=m68k/sun3n3.h
1868 else
1869 tm_file=m68k/sun3o3.h
1870 float_format=m68k
1871 fi
1872 use_collect2=yes
1873 extra_headers=math-68881.h
1874 ;;
1875m68k-sun-sunos*) # For SunOS 4 (the default).
1876 if test x$with_fp = xno
1877 then
1878 tm_file=m68k/sun3n.h
1879 else
1880 tm_file=m68k/sun3.h
1881 float_format=m68k
1882 fi
1883 use_collect2=yes
1884 extra_headers=math-68881.h
1885 ;;
1886m68k-wrs-vxworks*)
1887 tm_file=m68k/vxm68k.h
1888 tmake_file=m68k/t-vxworks68
1889 extra_headers=math-68881.h
1890 thread_file='vxworks'
1891 float_format=m68k
1892 ;;
1893m68k-*-aout*)
1894 tmake_file=m68k/t-m68kbare
1895 tm_file="m68k/m68k-aout.h libgloss.h"
1896 extra_headers=math-68881.h
1897 float_format=m68k
1898 ;;
1899m68k-*-coff*)
1900 tmake_file=m68k/t-m68kbare
1901 tm_file="m68k/m68k-coff.h dbx.h"
1902 extra_headers=math-68881.h
1903 float_format=m68k
1904 ;;
1905m68020-*-elf* | m68k-*-elf*)
1906 tm_file="m68k/m68020-elf.h"
597183a7 1907 xm_defines=POSIX
bb607926 1908 tmake_file=m68k/t-m68kelf
1909 header_files=math-68881.h
37f722b2 1910 extra_parts="crtbegin.o crtend.o"
bb607926 1911 ;;
1912m68k-*-lynxos*)
1913 if test x$gas = xyes
1914 then
1915 tm_file=m68k/lynx.h
1916 else
1917 tm_file=m68k/lynx-ng.h
1918 fi
bb607926 1919 tmake_file=m68k/t-lynx
1920 extra_headers=math-68881.h
1921 float_format=m68k
1922 ;;
1923m68k*-*-netbsd*)
1924 tm_file=m68k/netbsd.h
1925 tmake_file=t-netbsd
1926 float_format=m68k
1927 use_collect2=yes
1928 ;;
1929m68k*-*-openbsd*)
c7be79ca 1930 # needed to unconfuse gdb
1931 tmake_file="t-libc-ok t-openbsd m68k/t-openbsd"
bb607926 1932 float_format=m68k
1933 # we need collect2 until our bug is fixed...
1934 use_collect2=yes
1935 ;;
1936m68k-*-sysv3*) # Motorola m68k's running system V.3
597183a7 1937 xm_defines=POSIX
bb607926 1938 extra_parts="crtbegin.o crtend.o"
1939 extra_headers=math-68881.h
1940 float_format=m68k
1941 ;;
1942m68k-*-sysv4*) # Motorola m68k's running system V.4
1943 tm_file=m68k/m68kv4.h
597183a7 1944 xm_defines=POSIX
bb607926 1945 tmake_file=t-svr4
1946 extra_parts="crtbegin.o crtend.o"
1947 extra_headers=math-68881.h
1948 float_format=m68k
1949 ;;
1950m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
1951 # with a.out format
1952 xmake_file=x-linux
1953 tm_file=m68k/linux-aout.h
1954 tmake_file="t-linux-aout m68k/t-linux-aout"
1955 extra_headers=math-68881.h
1956 float_format=m68k
1957 gnu_ld=yes
1958 ;;
1959m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
1960 # with ELF format using the
1961 # GNU/Linux C library 5
1962 xmake_file=x-linux
1963 tm_file=m68k/linux.h
32e8a7fc 1964 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 m68k/t-linux"
bb607926 1965 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1966 extra_headers=math-68881.h
1967 float_format=m68k
1968 gnu_ld=yes
1969 ;;
1970m68k-*-linux*) # Motorola m68k's running GNU/Linux
1971 # with ELF format using glibc 2
1972 # aka the GNU/Linux C library 6.
1973 xmake_file=x-linux
1974 tm_file=m68k/linux.h
32e8a7fc 1975 tmake_file="t-slibgcc-elf-ver t-linux m68k/t-linux"
bb607926 1976 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1977 extra_headers=math-68881.h
1978 float_format=m68k
1979 gnu_ld=yes
1980 if test x$enable_threads = xyes; then
1981 thread_file='posix'
1982 fi
1983 ;;
1984m68k-*-psos*)
1985 tmake_file=m68k/t-m68kbare
1986 tm_file=m68k/m68k-psos.h
1987 extra_headers=math-68881.h
1988 float_format=m68k
1989 ;;
1990m68k-*-rtemscoff*)
1991 tmake_file="m68k/t-m68kbare t-rtems"
1992 tm_file=m68k/rtems.h
1993 extra_headers=math-68881.h
1994 float_format=m68k
742d48c2 1995 if test x$enable_threads = xyes; then
1996 thread_file='rtems'
1997 fi
bb607926 1998 ;;
1999m68k-*-rtemself*|m68k-*-rtems*)
2000 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2001 tm_file=m68k/rtemself.h
2002 extra_headers=math-68881.h
2003 float_format=m68k
37f722b2 2004 extra_parts="crtbegin.o crtend.o"
742d48c2 2005 if test x$enable_threads = xyes; then
2006 thread_file='rtems'
2007 fi
bb607926 2008 ;;
2009m88k-dg-dgux*)
597183a7 2010 xm_defines=POSIX
bb607926 2011 case $machine in
2012 m88k-dg-dguxbcs*)
277773bd 2013 tm_file="elfos.h svr4.h m88k/dgux.h m88k/dguxbcs.h"
bb607926 2014 tmake_file=m88k/t-dguxbcs
2015 ;;
2016 *)
277773bd 2017 tm_file="elfos.h svr4.h m88k/dgux.h"
bb607926 2018 tmake_file=m88k/t-dgux
2019 ;;
2020 esac
2021 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2022 xmake_file=m88k/x-dgux
2023 if test x$gas = xyes
2024 then
2025 tmake_file=m88k/t-dgux-gas
2026 fi
2027 ;;
2028m88k-dolphin-sysv3*)
597183a7 2029 xm_defines=POSIX
bb607926 2030 tm_file=m88k/dolph.h
2031 extra_parts="crtbegin.o crtend.o"
bb607926 2032 xmake_file=m88k/x-dolph
2033 if test x$gas = xyes
2034 then
2035 tmake_file=m88k/t-m88k-gas
2036 fi
2037 ;;
2038m88k-tektronix-sysv3)
597183a7 2039 xm_defines=POSIX
bb607926 2040 tm_file=m88k/tekXD88.h
2041 extra_parts="crtbegin.o crtend.o"
bb607926 2042 xmake_file=m88k/x-tekXD88
2043 if test x$gas = xyes
2044 then
2045 tmake_file=m88k/t-m88k-gas
2046 fi
2047 ;;
2048m88k-*-aout*)
597183a7 2049 xm_defines=POSIX
bb607926 2050 tm_file=m88k/m88k-aout.h
2051 ;;
2052m88k-*-coff*)
597183a7 2053 xm_defines=POSIX
bb607926 2054 tm_file=m88k/m88k-coff.h
2055 tmake_file=m88k/t-bug
2056 ;;
2057m88k-*-luna*)
2058 tm_file=m88k/luna.h
2059 extra_parts="crtbegin.o crtend.o"
2060 if test x$gas = xyes
2061 then
2062 tmake_file=m88k/t-luna-gas
2063 else
2064 tmake_file=m88k/t-luna
2065 fi
2066 ;;
2067m88k-*-openbsd*)
2068 tmake_file="${tmake_file} m88k/t-luna-gas"
2069 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
bb607926 2070 ;;
2071m88k-*-sysv3*)
597183a7 2072 xm_defines=POSIX
bb607926 2073 tm_file=m88k/sysv3.h
2074 extra_parts="crtbegin.o crtend.o"
bb607926 2075 if test x$gas = xyes
2076 then
2077 tmake_file=m88k/t-m88k-gas
2078 fi
2079 ;;
2080m88k-*-sysv4*)
597183a7 2081 xm_defines=POSIX
277773bd 2082 tm_file="elfos.h svr4.h m88k/sysv4.h"
bb607926 2083 extra_parts="crtbegin.o crtend.o"
bb607926 2084 tmake_file=m88k/t-sysv4
2085 ;;
2086mcore-*-elf)
277773bd 2087 tm_file="elfos.h svr4.h ${tm_file} mcore/mcore-elf.h"
bb607926 2088 tmake_file=mcore/t-mcore
2089 ;;
2090mcore-*-pe*)
2091 tm_file=mcore/mcore-pe.h
2092 tmake_file=mcore/t-mcore-pe
2093 ;;
2094mips-sgi-irix6*) # SGI System V.4., IRIX 6
2095 if test "x$gnu_ld" = xyes
2096 then
2097 tm_file="mips/iris6.h mips/iris6gld.h"
2098 else
2099 tm_file=mips/iris6.h
2100 fi
2101 tmake_file=mips/t-iris6
597183a7 2102 xm_defines=POSIX
bb607926 2103 xmake_file=mips/x-iris6
2104# if test x$enable_threads = xyes; then
2105# thread_file='irix'
2106# fi
2107 ;;
2108mips-wrs-vxworks)
2109 tm_file="mips/elf.h mips/vxworks.h"
2110 tmake_file=mips/t-ecoff
2111 gas=yes
2112 gnu_ld=yes
2113 extra_parts="crtbegin.o crtend.o"
2114 thread_file='vxworks'
2115 ;;
2116mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2117 tm_file="mips/iris6.h mips/cross64.h"
597183a7 2118 xm_defines=POSIX
3239b2ba 2119 xm_file=mips/xm-iris5.h
bb607926 2120 xmake_file=mips/x-iris
2121 tmake_file=mips/t-cross64
2122 # See comment in mips/iris[56].h files.
2123 use_collect2=yes
2124# if test x$enable_threads = xyes; then
2125# thread_file='irix'
2126# fi
2127 ;;
2128mips-sni-sysv4)
2129 if test x$gas = xyes
2130 then
2131 if test x$stabs = xyes
2132 then
2133 tm_file=mips/iris5gdb.h
2134 else
2135 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2136 fi
2137 else
2138 tm_file=mips/sni-svr4.h
2139 fi
597183a7 2140 xm_defines=POSIX
bb607926 2141 if test x$gnu_ld != xyes
2142 then
2143 use_collect2=yes
2144 fi
2145 ;;
2146mips-sgi-irix5*) # SGI System V.4., IRIX 5
2147 if test x$gas = xyes
2148 then
2149 tm_file="mips/iris5.h mips/iris5gas.h"
2150 if test x$stabs = xyes
2151 then
2152 tm_file="${tm_file} dbx.h"
2153 fi
2154 else
2155 tm_file=mips/iris5.h
2156 fi
597183a7 2157 xm_defines=POSIX
3239b2ba 2158 xm_file=mips/xm-iris5.h
bb607926 2159 xmake_file=mips/x-iris
2160 # mips-tfile doesn't work yet
bb607926 2161 # See comment in mips/iris5.h file.
2162 use_collect2=yes
2163# if test x$enable_threads = xyes; then
2164# thread_file='irix'
2165# fi
2166 ;;
2167mips-sgi-irix4loser*) # Mostly like a MIPS.
2168 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2169 if test x$stabs = xyes; then
2170 tm_file="${tm_file} dbx.h"
2171 fi
597183a7 2172 xm_defines=POSIX
bb607926 2173 xmake_file=mips/x-iris
2174 if test x$gas = xyes
23573244 2175 then :
bb607926 2176 else
2177 extra_passes="mips-tfile mips-tdump"
2178 fi
2179 if test x$gnu_ld != xyes
2180 then
2181 use_collect2=yes
2182 fi
2183# if test x$enable_threads = xyes; then
2184# thread_file='irix'
2185# fi
2186 ;;
2187mips-sgi-irix4*) # Mostly like a MIPS.
2188 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2189 if test x$stabs = xyes; then
2190 tm_file="${tm_file} dbx.h"
2191 fi
597183a7 2192 xm_defines=POSIX
bb607926 2193 xmake_file=mips/x-iris
2194 if test x$gas = xyes
23573244 2195 then :
bb607926 2196 else
2197 extra_passes="mips-tfile mips-tdump"
2198 fi
2199 if test x$gnu_ld != xyes
2200 then
2201 use_collect2=yes
2202 fi
2203# if test x$enable_threads = xyes; then
2204# thread_file='irix'
2205# fi
2206 ;;
2207mips-sgi-*) # Mostly like a MIPS.
2208 tm_file="mips/iris3.h ${tm_file}"
2209 if test x$stabs = xyes; then
2210 tm_file="${tm_file} dbx.h"
2211 fi
597183a7 2212 xm_defines=POSIX
bb607926 2213 if test x$gas = xyes
23573244 2214 then :
bb607926 2215 else
2216 extra_passes="mips-tfile mips-tdump"
2217 fi
2218 if test x$gnu_ld != xyes
2219 then
2220 use_collect2=yes
2221 fi
2222 ;;
2223mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2224 tm_file="mips/osfrose.h ${tm_file}"
bb607926 2225 extra_objs=halfpic.o
2226 use_collect2=yes
2227 ;;
2228mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2229 tm_file=mips/dec-osf1.h
2230 if test x$stabs = xyes; then
2231 tm_file="${tm_file} dbx.h"
2232 fi
bb607926 2233 if test x$gas = xyes
23573244 2234 then :
bb607926 2235 else
2236 tmake_file=mips/t-ultrix
2237 extra_passes="mips-tfile mips-tdump"
2238 fi
2239 if test x$gnu_ld != xyes
2240 then
2241 use_collect2=yes
2242 fi
2243 ;;
2244mips-dec-bsd*) # Decstation running 4.4 BSD
2245 tm_file=mips/dec-bsd.h
2246 if test x$gas = xyes
23573244 2247 then :
bb607926 2248 else
2249 tmake_file=mips/t-ultrix
2250 extra_passes="mips-tfile mips-tdump"
2251 fi
2252 if test x$gnu_ld != xyes
2253 then
2254 use_collect2=yes
2255 fi
2256 ;;
2257mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2258 tm_file=mips/netbsd.h
2259 # On NetBSD, the headers are already okay, except for math.h.
2260 tmake_file=t-netbsd
2261 ;;
2262mips*-*-linux*) # Linux MIPS, either endian.
2263 xmake_file=x-linux
930aae15 2264 tm_file="elfos.h svr4.h linux.h mips/linux.h"
bb607926 2265 case $machine in
613a38b0 2266 mipsisa32*-*)
2267 tm_file="$tm_file mips/isa32-linux.h"
2268 target_cpu_default="MASK_SOFT_FLOAT"
2269 ;;
2270 esac
2271 case $machine in
2272 mips*el-*)
2273 tm_file="mips/little.h $tm_file"
2274 ;;
bb607926 2275 esac
32e8a7fc 2276 tmake_file="t-slibgcc-elf-ver t-linux"
bb607926 2277 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2278 gnu_ld=yes
2279 gas=yes
2280 if test x$enable_threads = xyes; then
2281 thread_file='posix'
2282 fi
2283 ;;
2284mips*el-*-openbsd*) # mips little endian
2285 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2286 ;;
2287mips*-*-openbsd*) # mips big endian
2288 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2289 tm_file="mips/openbsd-be.h ${tm_file}"
2290 ;;
2291mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2292 tm_file="mips/news4.h ${tm_file}"
2293 if test x$stabs = xyes; then
2294 tm_file="${tm_file} dbx.h"
2295 fi
2296 if test x$gas = xyes
23573244 2297 then :
bb607926 2298 else
2299 extra_passes="mips-tfile mips-tdump"
2300 fi
2301 if test x$gnu_ld != xyes
2302 then
2303 use_collect2=yes
2304 fi
bb607926 2305 ;;
2306mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2307 # That is based on svr4.
2308 # t-svr4 is not right because this system doesn't use ELF.
2309 tm_file="mips/news5.h ${tm_file}"
2310 if test x$stabs = xyes; then
2311 tm_file="${tm_file} dbx.h"
2312 fi
597183a7 2313 xm_defines=POSIX
bb607926 2314 if test x$gas = xyes
23573244 2315 then :
bb607926 2316 else
2317 extra_passes="mips-tfile mips-tdump"
2318 fi
2319 if test x$gnu_ld != xyes
2320 then
2321 use_collect2=yes
2322 fi
2323 ;;
2324mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2325 tm_file="mips/svr4-5.h mips/svr4-t.h"
2326 if test x$stabs = xyes; then
2327 tm_file="${tm_file} dbx.h"
2328 fi
597183a7 2329 xm_defines=POSIX
bb607926 2330 if test x$gas = xyes
2331 then
bb607926 2332 extra_parts="crtbegin.o crtend.o"
2333 else
bb607926 2334 extra_passes="mips-tfile mips-tdump"
2335 fi
2336 if test x$gnu_ld != xyes
2337 then
2338 use_collect2=yes
2339 fi
2340 ;;
2341mips-*-ultrix* | mips-dec-mach3) # Decstation.
2342 tm_file="mips/ultrix.h ${tm_file}"
2343 if test x$stabs = xyes; then
2344 tm_file="${tm_file} dbx.h"
2345 fi
bb607926 2346 if test x$gas = xyes
23573244 2347 then :
bb607926 2348 else
2349 tmake_file=mips/t-ultrix
2350 extra_passes="mips-tfile mips-tdump"
2351 fi
2352 if test x$gnu_ld != xyes
2353 then
2354 use_collect2=yes
2355 fi
2356 ;;
2357mips-*-riscos[56789]bsd*)
2358 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
2359 if test x$stabs = xyes; then
2360 tm_file="${tm_file} dbx.h"
2361 fi
2362 if test x$gas = xyes
2363 then
2364 tmake_file=mips/t-bsd-gas
2365 else
2366 tmake_file=mips/t-bsd
2367 extra_passes="mips-tfile mips-tdump"
2368 fi
2369 if test x$gnu_ld != xyes
2370 then
2371 use_collect2=yes
2372 fi
2373 ;;
2374mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2375 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2376 if test x$stabs = xyes; then
2377 tm_file="${tm_file} dbx.h"
2378 fi
2379 if test x$gas = xyes
2380 then
2381 tmake_file=mips/t-bsd-gas
2382 else
2383 tmake_file=mips/t-bsd
2384 extra_passes="mips-tfile mips-tdump"
2385 fi
2386 if test x$gnu_ld != xyes
2387 then
2388 use_collect2=yes
2389 fi
2390 ;;
2391mips-*-riscos[56789]sysv4*)
2392 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2393 if test x$stabs = xyes; then
2394 tm_file="${tm_file} dbx.h"
2395 fi
bb607926 2396 if test x$gas = xyes
2397 then
2398 tmake_file=mips/t-svr4-gas
2399 else
2400 tmake_file=mips/t-svr4
2401 extra_passes="mips-tfile mips-tdump"
2402 fi
2403 if test x$gnu_ld != xyes
2404 then
2405 use_collect2=yes
2406 fi
2407 ;;
2408mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2409 tm_file="mips/svr4-4.h ${tm_file}"
2410 if test x$stabs = xyes; then
2411 tm_file="${tm_file} dbx.h"
2412 fi
597183a7 2413 xm_defines=POSIX
bb607926 2414 if test x$gas = xyes
2415 then
2416 tmake_file=mips/t-svr4-gas
2417 else
2418 tmake_file=mips/t-svr4
2419 extra_passes="mips-tfile mips-tdump"
2420 fi
2421 if test x$gnu_ld != xyes
2422 then
2423 use_collect2=yes
2424 fi
2425 ;;
2426mips-*-riscos[56789]sysv*)
2427 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
2428 if test x$stabs = xyes; then
2429 tm_file="${tm_file} dbx.h"
2430 fi
597183a7 2431 xm_defines=POSIX
bb607926 2432 if test x$gas = xyes
2433 then
2434 tmake_file=mips/t-svr3-gas
2435 else
2436 tmake_file=mips/t-svr3
2437 extra_passes="mips-tfile mips-tdump"
2438 fi
2439 if test x$gnu_ld != xyes
2440 then
2441 use_collect2=yes
2442 fi
2443 ;;
2444mips-*-sysv* | mips-*-riscos*sysv*)
2445 tm_file="mips/svr3-4.h ${tm_file}"
2446 if test x$stabs = xyes; then
2447 tm_file="${tm_file} dbx.h"
2448 fi
597183a7 2449 xm_defines=POSIX
bb607926 2450 if test x$gas = xyes
2451 then
2452 tmake_file=mips/t-svr3-gas
2453 else
2454 tmake_file=mips/t-svr3
2455 extra_passes="mips-tfile mips-tdump"
2456 fi
2457 if test x$gnu_ld != xyes
2458 then
2459 use_collect2=yes
2460 fi
2461 ;;
2462mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
2463 tm_file=mips/mips-5.h
2464 if test x$stabs = xyes; then
2465 tm_file="${tm_file} dbx.h"
2466 fi
2467 if test x$gas = xyes
23573244 2468 then :
bb607926 2469 else
2470 extra_passes="mips-tfile mips-tdump"
2471 fi
2472 if test x$gnu_ld != xyes
2473 then
2474 use_collect2=yes
2475 fi
2476 ;;
bb607926 2477mipsel-*-ecoff*)
2478 tm_file=mips/ecoffl.h
2479 if test x$stabs = xyes; then
2480 tm_file="${tm_file} dbx.h"
2481 fi
2482 tmake_file=mips/t-ecoff
2483 ;;
2484mips-*-ecoff*)
2485 tm_file="gofast.h mips/ecoff.h"
2486 if test x$stabs = xyes; then
2487 tm_file="${tm_file} dbx.h"
2488 fi
2489 tmake_file=mips/t-ecoff
2490 ;;
582b17a6 2491mipsisa32-*-elf*)
2492 tm_file="mips/isa3264.h mips/abi64.h"
2493 tmake_file=mips/t-isa3264
7a698e6b 2494 target_cpu_default="MASK_SOFT_FLOAT"
582b17a6 2495 ;;
bb607926 2496mipsel-*-elf*)
2497 tm_file="mips/elfl.h"
2498 tmake_file=mips/t-elf
2499 ;;
2500mips-*-elf*)
2501 tm_file="mips/elf.h"
2502 tmake_file=mips/t-elf
2503 ;;
2504mips64el-*-elf*)
2505 tm_file="mips/elfl64.h"
2506 tmake_file=mips/t-elf
2507 ;;
2508mips64orionel-*-elf*)
2509 tm_file="mips/elforion.h mips/elfl64.h"
2510 tmake_file=mips/t-elf
2511 ;;
2512mips64-*-elf*)
2513 tm_file="mips/elf64.h"
2514 tmake_file=mips/t-elf
2515 ;;
2516mips64orion-*-elf*)
2517 tm_file="mips/elforion.h mips/elf64.h"
2518 tmake_file=mips/t-elf
2519 ;;
2520mips64orion-*-rtems*)
2521 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
2522 tmake_file="mips/t-elf t-rtems"
742d48c2 2523 if test x$enable_threads = xyes; then
2524 thread_file='rtems'
2525 fi
2526 ;;
2527mips*-*-rtems*)
2528 tm_file="mips/elf.h mips/rtems.h"
2529 tmake_file="mips/t-elf t-rtems"
2530 if test x$enable_threads = xyes; then
2531 thread_file='rtems'
2532 fi
bb607926 2533 ;;
2534mipstx39el-*-elf*)
2535 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
2536 tmake_file=mips/t-r3900
7a698e6b 2537 target_cpu_default="MASK_SOFT_FLOAT"
bb607926 2538 ;;
2539mipstx39-*-elf*)
2540 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
2541 tmake_file=mips/t-r3900
2542 ;;
2543mips-*-*) # Default MIPS RISC-OS 4.0.
2544 if test x$stabs = xyes; then
2545 tm_file="${tm_file} dbx.h"
2546 fi
2547 if test x$gas = xyes
23573244 2548 then :
bb607926 2549 else
2550 extra_passes="mips-tfile mips-tdump"
2551 fi
2552 if test x$gnu_ld != xyes
2553 then
2554 use_collect2=yes
2555 fi
2556 ;;
68cbb7e3 2557mmix-knuth-mmixware)
2558 ;;
bb607926 2559mn10200-*-*)
2560 float_format=i32
277773bd 2561 tm_file="elfos.h svr4.h ${tm_file}"
bb607926 2562 if test x$stabs = xyes
2563 then
2564 tm_file="${tm_file} dbx.h"
2565 fi
2566 use_collect2=no
2567 ;;
2568mn10300-*-*)
277773bd 2569 tm_file="elfos.h svr4.h ${tm_file}"
bb607926 2570 if test x$stabs = xyes
2571 then
2572 tm_file="${tm_file} dbx.h"
2573 fi
2574 use_collect2=no
2575 ;;
2576ns32k-encore-bsd*)
2577 tm_file=ns32k/encore.h
2578 use_collect2=yes
2579 ;;
2580ns32k-sequent-bsd*)
2581 tm_file=ns32k/sequent.h
2582 use_collect2=yes
2583 ;;
2584ns32k-tek6100-bsd*)
2585 tm_file=ns32k/tek6100.h
2586 use_collect2=yes
2587 ;;
2588ns32k-tek6200-bsd*)
2589 tm_file=ns32k/tek6200.h
2590 use_collect2=yes
2591 ;;
2592ns32k-merlin-*)
2593 tm_file=ns32k/merlin.h
2594 use_collect2=yes
2595 ;;
2596ns32k-pc532-mach*)
2597 tm_file=ns32k/pc532-mach.h
2598 use_collect2=yes
2599 ;;
2600ns32k-pc532-minix*)
2601 tm_file=ns32k/pc532-min.h
597183a7 2602 xm_defines='POSIX HZ=60'
bb607926 2603 use_collect2=yes
2604 ;;
2605ns32k-*-netbsd*)
2606 tm_file=ns32k/netbsd.h
bb607926 2607 # On NetBSD, the headers are already okay, except for math.h.
2608 tmake_file=t-netbsd
2609 use_collect2=yes
2610 ;;
2611pdp11-*-bsd)
2612 tm_file="${tm_file} pdp11/2bsd.h"
2613 ;;
2614pdp11-*-*)
2615 ;;
2616avr-*-*)
2617 ;;
2618ns32k-*-openbsd*)
2619 # Nothing special
2620 ;;
2621pj*-linux*)
277773bd 2622 tm_file="elfos.h svr4.h pj/linux.h ${tm_file}"
bb607926 2623 ;;
2624pj-*)
2625 ;;
2626pjl-*)
277773bd 2627 tm_file="elfos.h svr4.h pj/pjl.h ${tm_file}"
bb607926 2628 ;;
2629
2630romp-*-aos*)
2631 use_collect2=yes
2632 ;;
2633romp-*-mach*)
bb607926 2634 use_collect2=yes
2635 ;;
2636romp-*-openbsd*)
2637 # Nothing special
2638 ;;
2639powerpc-*-openbsd*)
f6dfa909 2640 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
bb607926 2641 ;;
8eaf2dd1 2642powerpc64-*-linux*)
277773bd 2643 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/linux64.h"
8eaf2dd1 2644 out_file=rs6000/rs6000.c
2645 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
2646 xmake_file=x-linux
2647 extra_headers=ppc-asm.h
2648 ;;
bb607926 2649powerpc-*-beos*)
8eaf2dd1 2650 tm_file="${tm_file} rs6000/aix.h rs6000/beos.h rs6000/xcoff.h"
597183a7 2651 xm_defines=POSIX
bb607926 2652 xm_file=rs6000/xm-beos.h
2653 tmake_file=rs6000/t-beos
bb607926 2654 ;;
17ac16a1 2655powerpc-*-darwin*)
80d725d7 2656 tm_file="${tm_file} darwin.h rs6000/darwin.h"
2657 tm_p_file="${tm_p_file} darwin-protos.h"
2658 tmake_file=rs6000/t-darwin
17ac16a1 2659 xmake_file=rs6000/x-darwin
86648ad2 2660 # Override the usual setting, since Apple's GCC has lame bugs
2661 # and can't handle the initializers. Someday the bugs will be
2662 # fixed and we can get rid of this silliness.
2663 xm_defines="HAVE_DESIGNATED_INITIALIZERS=0"
80d725d7 2664 extra_objs="darwin.o"
49f45d83 2665 c_target_objs="darwin-c.o"
2666 cxx_target_objs="darwin-c.o"
80d725d7 2667 # Darwin linker does collect2 functionality
2668 use_collect2=no
17ac16a1 2669 ;;
bb607926 2670powerpc-*-sysv*)
277773bd 2671 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h"
597183a7 2672 xm_defines=POSIX
bb607926 2673 extra_headers=ppc-asm.h
2674 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
bb607926 2675 ;;
93006578 2676powerpc-*-netbsd*)
2677 xm_defines=POSIX
277773bd 2678 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/netbsd.h"
93006578 2679 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2680 extra_headers=ppc-asm.h
2681 ;;
e37e4a50 2682powerpc-*-chorusos*)
597183a7 2683 xm_defines=POSIX
277773bd 2684 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h chorus.h"
e37e4a50 2685 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2686 extra_headers=ppc-asm.h
2687 case x${enable_threads} in
2688 xyes | xpthreads | xposix)
2689 thread_file='posix'
2690 ;;
2691 esac
2692 ;;
bb607926 2693powerpc-*-eabiaix*)
597183a7 2694 xm_defines=POSIX
277773bd 2695 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
bb607926 2696 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2697 extra_headers=ppc-asm.h
2698 ;;
2699powerpc-*-eabisim*)
597183a7 2700 xm_defines=POSIX
277773bd 2701 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
bb607926 2702 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2703 extra_headers=ppc-asm.h
2704 ;;
2705powerpc-*-elf*)
597183a7 2706 xm_defines=POSIX
277773bd 2707 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h"
bb607926 2708 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2709 extra_headers=ppc-asm.h
2710 ;;
2711powerpc-*-eabi*)
597183a7 2712 xm_defines=POSIX
277773bd 2713 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/eabi.h"
bb607926 2714 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2715 extra_headers=ppc-asm.h
2716 ;;
2717powerpc-*-rtems*)
597183a7 2718 xm_defines=POSIX
277773bd 2719 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/eabi.h rtems.h rs6000/rtems.h"
bb607926 2720 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
2721 extra_headers=ppc-asm.h
742d48c2 2722 if test x$enable_threads = xyes; then
2723 thread_file='rtems'
2724 fi
bb607926 2725 ;;
2726powerpc-*-linux*libc1)
277773bd 2727 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/linux.h"
bb607926 2728 out_file=rs6000/rs6000.c
32e8a7fc 2729 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
bb607926 2730 xmake_file=x-linux
2731 extra_headers=ppc-asm.h
2732 if test x$enable_threads = xyes; then
2733 thread_file='posix'
2734 fi
2735 ;;
2736powerpc-*-linux*)
277773bd 2737 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/linux.h"
bb607926 2738 out_file=rs6000/rs6000.c
32e8a7fc 2739 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
bb607926 2740 xmake_file=x-linux
2741 extra_headers=ppc-asm.h
2742 if test x$enable_threads = xyes; then
2743 thread_file='posix'
2744 fi
2745 ;;
2746powerpc-wrs-vxworks*)
597183a7 2747 xm_defines=POSIX
277773bd 2748 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/vxppc.h"
bb607926 2749 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2750 extra_headers=ppc-asm.h
2751 thread_file='vxworks'
2752 ;;
2753powerpcle-wrs-vxworks*)
597183a7 2754 xm_defines=POSIX
277773bd 2755 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
bb607926 2756 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2757 extra_headers=ppc-asm.h
2758 thread_file='vxworks'
2759 ;;
2760powerpcle-*-sysv*)
277773bd 2761 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/sysv4le.h"
597183a7 2762 xm_defines=POSIX
bb607926 2763 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
bb607926 2764 extra_headers=ppc-asm.h
2765 ;;
2766powerpcle-*-elf*)
597183a7 2767 xm_defines=POSIX
277773bd 2768 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/sysv4le.h"
bb607926 2769 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2770 extra_headers=ppc-asm.h
2771 ;;
2772powerpcle-*-eabisim*)
597183a7 2773 xm_defines=POSIX
277773bd 2774 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
bb607926 2775 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2776 extra_headers=ppc-asm.h
2777 ;;
2778powerpcle-*-eabi*)
597183a7 2779 xm_defines=POSIX
277773bd 2780 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
bb607926 2781 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2782 extra_headers=ppc-asm.h
2783 ;;
2784powerpcle-*-solaris2*)
277773bd 2785 tm_file="${tm_file} elfos.h svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
597183a7 2786 xm_defines=POSIX
bb607926 2787 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
bb607926 2788 extra_headers=ppc-asm.h
2789 ;;
2790rs6000-ibm-aix3.[01]*)
597183a7 2791 xm_defines=POSIX
8eaf2dd1 2792 tm_file="${tm_file} rs6000/aix.h rs6000/aix31.h rs6000/xcoff.h"
bb607926 2793 float_format=none
2794 use_collect2=yes
2795 ;;
2796rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
597183a7 2797 xm_defines=POSIX
8eaf2dd1 2798 tm_file="${tm_file} rs6000/aix.h rs6000/aix3newas.h rs6000/xcoff.h"
513f3e74 2799 tmake_file=rs6000/t-newas
bb607926 2800 float_format=none
2801 use_collect2=yes
2802 ;;
2803rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
597183a7 2804 xm_defines=POSIX
8eaf2dd1 2805 tm_file="${tm_file} rs6000/aix.h rs6000/aix41.h rs6000/xcoff.h"
513f3e74 2806 tmake_file=rs6000/t-newas
bb607926 2807 float_format=none
2808 use_collect2=yes
2809 ;;
2810rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
597183a7 2811 xm_defines=POSIX
8eaf2dd1 2812 tm_file="${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h"
bb607926 2813 tmake_file=rs6000/t-aix43
bb607926 2814 float_format=none
2815 use_collect2=yes
2816 thread_file='aix'
2817 ;;
2818rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
597183a7 2819 xm_defines=POSIX
8eaf2dd1 2820 tm_file="${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h"
bb607926 2821 tmake_file=rs6000/t-aix43
bb607926 2822 float_format=none
2823 use_collect2=yes
2824 thread_file='aix'
2825 ;;
2826rs6000-ibm-aix*)
597183a7 2827 xm_defines=POSIX
8eaf2dd1 2828 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
bb607926 2829 float_format=none
2830 use_collect2=yes
2831 ;;
2832rs6000-bull-bosx)
597183a7 2833 xm_defines=POSIX
8eaf2dd1 2834 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
bb607926 2835 float_format=none
2836 use_collect2=yes
2837 ;;
2838rs6000-*-mach*)
277773bd 2839 tm_file="${tm_file} rs6000/mach.h"
597183a7 2840 xm_defines=POSIX
bb607926 2841 use_collect2=yes
2842 ;;
2843rs6000-*-lynxos*)
2844 tm_file=rs6000/lynx.h
bb607926 2845 tmake_file=rs6000/t-rs6000
bb607926 2846 use_collect2=yes
2847 ;;
582b17a6 2848s390-*-linux*)
346e8a0c 2849 xmake_file=x-linux
277773bd 2850 tm_file="s390/s390.h elfos.h svr4.h linux.h s390/linux.h"
1281fed9 2851 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux"
346e8a0c 2852 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
2853 if test x$enable_threads = xyes; then
2854 thread_file='posix'
2855 fi
2856 ;;
582b17a6 2857s390x-*-linux*)
346e8a0c 2858 xmake_file=x-linux
277773bd 2859 tm_file="s390/s390.h elfos.h svr4.h linux.h s390/linux.h s390/linux64.h"
48de175f 2860 tm_p_file=s390/s390-protos.h
2861 md_file=s390/s390.md
2862 out_file=s390/s390.c
1281fed9 2863 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux"
346e8a0c 2864 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
2865 if test x$enable_threads = xyes; then
2866 thread_file='posix'
2867 fi
2868 ;;
bb607926 2869sh-*-elf*)
2870 tmake_file="sh/t-sh sh/t-elf"
277773bd 2871 tm_file="${tm_file} sh/elf.h"
bb607926 2872 float_format=sh
2873 ;;
2874sh-*-rtemself*)
2875 tmake_file="sh/t-sh sh/t-elf t-rtems"
277773bd 2876 tm_file="${tm_file} sh/elf.h sh/rtemself.h"
bb607926 2877 float_format=sh
742d48c2 2878 if test x$enable_threads = xyes; then
2879 thread_file='rtems'
2880 fi
bb607926 2881 ;;
2882sh-*-rtems*)
2883 tmake_file="sh/t-sh t-rtems"
277773bd 2884 tm_file="${tm_file} sh/rtems.h"
bb607926 2885 float_format=sh
742d48c2 2886 if test x$enable_threads = xyes; then
2887 thread_file='rtems'
2888 fi
bb607926 2889 ;;
2890sh-*-linux*)
277773bd 2891 tm_file="${tm_file} sh/elf.h sh/linux.h"
bb607926 2892 tmake_file="sh/t-sh sh/t-elf sh/t-linux"
2893 xmake_file=x-linux
2894 gas=yes gnu_ld=yes
2895 if test x$enable_threads = xyes; then
2896 thread_file='posix'
2897 fi
2898 float_format=sh
2899 ;;
2900sh-*-*)
2901 float_format=sh
2902 ;;
2903sparc-tti-*)
2904 tm_file=sparc/pbd.h
597183a7 2905 xm_defines=POSIX
bb607926 2906 ;;
81a6a67d 2907sparc64-wrs-vxworks*)
2908 tm_file="sparc/sol2.h sparc/elf.h sparc/vxsparc64.h"
2909 tmake_file=sparc/t-vxsparc64
2910 use_collect2=yes
2911 ;;
bb607926 2912sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
2913 tm_file=sparc/vxsparc.h
2914 tmake_file=sparc/t-vxsparc
2915 use_collect2=yes
2916 thread_file='vxworks'
2917 ;;
2918sparc-*-aout*)
2919 tmake_file=sparc/t-sparcbare
2920 tm_file="sparc/aout.h libgloss.h"
2921 ;;
2922sparc-*-netbsd*)
2923 tm_file=sparc/netbsd.h
2924 tmake_file=t-netbsd
2925 use_collect2=yes
2926 ;;
2927sparc-*-openbsd*)
c7be79ca 2928 # needed to unconfuse gdb
2929 tmake_file="t-libc-ok t-openbsd sparc/t-openbsd"
bb607926 2930 # we need collect2 until our bug is fixed...
2931 use_collect2=yes
2932 ;;
2933sparc-*-bsd*)
3ee86238 2934 tm_file="${tm_file} sparc/bsd.h"
bb607926 2935 ;;
e37e4a50 2936sparc-*-chorusos*)
b0d7cff1 2937 tm_file="sparc/sol2.h sparc/elf.h chorus.h"
e37e4a50 2938 tmake_file=sparc/t-chorus-elf
2939 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2940 float_format=i64
2941 case x${enable_threads} in
2942 xyes | xpthreads | xposix)
2943 thread_file='posix'
2944 ;;
2945 esac
2946 ;;
bb607926 2947sparc-*-elf*)
b74ec6e7 2948 tm_file="sparc/sol2.h sparc/elf.h"
bb607926 2949 tmake_file=sparc/t-elf
2950 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2951 #float_format=i128
2952 float_format=i64
2953 ;;
2954sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
bb607926 2955 tm_file=sparc/linux-aout.h
2956 xmake_file=x-linux
2957 gnu_ld=yes
2958 ;;
2959sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
bb607926 2960 xmake_file=x-linux
2961 tm_file=sparc/linux.h
32e8a7fc 2962 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1"
bb607926 2963 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2964 gnu_ld=yes
2965 float_format=sparc
2966 ;;
2967sparc-*-linux*) # Sparc's running GNU/Linux, libc6
bb607926 2968 xmake_file=x-linux
2969 tm_file=sparc/linux.h
32e8a7fc 2970 tmake_file="t-slibgcc-elf-ver t-linux"
bb607926 2971 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2972 gnu_ld=yes
2973 if test x$enable_threads = xyes; then
2974 thread_file='posix'
2975 fi
2976 float_format=sparc
2977 ;;
2978sparc-*-lynxos*)
2979 if test x$gas = xyes
2980 then
2981 tm_file=sparc/lynx.h
2982 else
2983 tm_file=sparc/lynx-ng.h
2984 fi
bb607926 2985 tmake_file=sparc/t-sunos41
bb607926 2986 ;;
2987sparc-*-rtemsaout*)
2988 tmake_file="sparc/t-sparcbare t-rtems"
2989 tm_file=sparc/rtems.h
742d48c2 2990 if test x$enable_threads = xyes; then
2991 thread_file='rtems'
2992 fi
bb607926 2993 ;;
2994sparc-*-rtems*|sparc-*-rtemself*)
b74ec6e7 2995 tm_file="sparc/sol2.h sparc/elf.h sparc/rtemself.h"
bb607926 2996 tmake_file="sparc/t-elf t-rtems"
2997 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2998 #float_format=i128
2999 float_format=i64
742d48c2 3000 if test x$enable_threads = xyes; then
3001 thread_file='rtems'
3002 fi
bb607926 3003 ;;
b412afc7 3004sparcv9-*-solaris2* | sparc64-*-solaris2*)
bb607926 3005 if test x$gnu_ld = xyes
3006 then
3007 tm_file=sparc/sol2-64.h
3008 else
3009 tm_file=sparc/sol2-sld-64.h
3010 fi
597183a7 3011 xm_defines=POSIX
bb607926 3012 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3013 if test x$gnu_ld = xyes; then
32e8a7fc 3014 tmake_file="$tmake_file t-slibgcc-elf-ver"
bb607926 3015 else
32e8a7fc 3016 tmake_file="$tmake_file t-slibgcc-sld"
bb607926 3017 fi
bb607926 3018 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3019 float_format=none
3020 if test x${enable_threads} = x ; then
3021 enable_threads=$have_pthread_h
3022 if test x${enable_threads} = x ; then
3023 enable_threads=$have_thread_h
3024 fi
3025 fi
3026 if test x${enable_threads} = xyes ; then
3027 if test x${have_pthread_h} = xyes ; then
3028 thread_file='posix'
3029 else
3030 thread_file='solaris'
3031 fi
3032 fi
3033 ;;
3034sparc-hal-solaris2*)
597183a7 3035 xm_defines=POSIX
bb607926 3036 tm_file="sparc/sol2.h sparc/hal.h"
3037 tmake_file="sparc/t-halos sparc/t-sol2"
3038 if test x$gnu_ld = xyes; then
32e8a7fc 3039 tmake_file="$tmake_file t-slibgcc-elf-ver"
bb607926 3040 else
32e8a7fc 3041 tmake_file="$tmake_file t-slibgcc-sld"
bb607926 3042 fi
bb607926 3043 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3044 case $machine in
3045 *-*-solaris2.[0-4])
3046 float_format=i128
3047 ;;
3048 *)
3049 float_format=none
3050 ;;
3051 esac
3052 thread_file='solaris'
3053 ;;
3054sparc-*-solaris2*)
3055 if test x$gnu_ld = xyes
3056 then
3057 tm_file=sparc/sol2.h
3058 else
3059 tm_file=sparc/sol2-sld.h
3060 fi
597183a7 3061 xm_defines=POSIX
bb607926 3062 tmake_file=sparc/t-sol2
3063 if test x$gnu_ld = xyes; then
32e8a7fc 3064 tmake_file="$tmake_file t-slibgcc-elf-ver"
bb607926 3065 else
32e8a7fc 3066 tmake_file="$tmake_file t-slibgcc-sld"
bb607926 3067 fi
bb607926 3068 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
046d147a 3069 case $machine in
3070 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3071 *-*-solaris2*)
3072 if test x$gnu_ld = xyes
3073 then
3074 tm_file=sparc/sol2-64.h
3075 else
3076 tm_file=sparc/sol2-sld-64.h
3077 fi
3078 tmake_file="$tmake_file sparc/t-sol2-64"
3079 ;;
3080 esac
bb607926 3081 case $machine in
3082 *-*-solaris2.[0-4])
3083 float_format=i128
3084 ;;
3085 *)
3086 float_format=none
3087 ;;
3088 esac
3089 if test x${enable_threads} = x; then
3090 enable_threads=$have_pthread_h
3091 if test x${enable_threads} = x; then
3092 enable_threads=$have_thread_h
3093 fi
3094 fi
3095 if test x${enable_threads} = xyes; then
3096 if test x${have_pthread_h} = xyes; then
3097 thread_file='posix'
3098 else
3099 thread_file='solaris'
3100 fi
3101 fi
3102 ;;
3103sparc-*-sunos4.0*)
3104 tm_file=sparc/sunos4.h
bb607926 3105 use_collect2=yes
3106 ;;
3107sparc-*-sunos4*)
3108 tm_file=sparc/sunos4.h
3109 tmake_file=sparc/t-sunos41
3110 use_collect2=yes
3111 if test x$gas = xyes; then
3112 tm_file="${tm_file} sparc/sun4gas.h"
3113 fi
3114 ;;
3115sparc-*-sunos3*)
3116 tm_file=sparc/sun4o3.h
3117 use_collect2=yes
3118 ;;
3119sparc-*-sysv4*)
3120 tm_file=sparc/sysv4.h
597183a7 3121 xm_defines=POSIX
bb607926 3122 tmake_file=t-svr4
bb607926 3123 extra_parts="crtbegin.o crtend.o"
3124 ;;
3125sparc-*-vxsim*)
597183a7 3126 xm_defines=POSIX
bb607926 3127 tm_file=sparc/vxsim.h
3128 tmake_file=sparc/t-vxsparc
bb607926 3129 ;;
3130sparclet-*-aout*)
3131 tm_file="sparc/splet.h libgloss.h"
3132 tmake_file=sparc/t-splet
3133 ;;
3134sparclite-*-coff*)
3135 tm_file="sparc/litecoff.h libgloss.h"
3136 tmake_file=sparc/t-sparclite
3137 ;;
3138sparclite-*-aout*)
3139 tm_file="sparc/lite.h aoutos.h libgloss.h"
3140 tmake_file=sparc/t-sparclite
3141 ;;
3142sparclite-*-elf*)
b74ec6e7 3143 tm_file="sparc/sol2.h sparc/elf.h sparc/liteelf.h"
bb607926 3144 tmake_file=sparc/t-sparclite
3145 extra_parts="crtbegin.o crtend.o"
3146 ;;
3147sparc86x-*-aout*)
3148 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3149 tmake_file=sparc/t-sp86x
3150 ;;
582b17a6 3151sparc86x-*-elf*)
29122112 3152 tm_file="sparc/sol2.h sparc/elf.h sparc/sp86x-elf.h"
bb607926 3153 tmake_file=sparc/t-sp86x
3154 extra_parts="crtbegin.o crtend.o"
3155 ;;
3156sparc64-*-aout*)
bb607926 3157 tm_file=sparc/sp64-aout.h
3158 ;;
3159sparc64-*-elf*)
bb607926 3160 tm_file=sparc/sp64-elf.h
3161 extra_parts="crtbegin.o crtend.o"
3162 ;;
3163sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
32e8a7fc 3164 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-linux64"
bb607926 3165 tm_file=sparc/linux64.h
3166 xmake_file=x-linux
3167 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3168 gnu_ld=yes
3169 if test x$enable_threads = xyes; then
3170 thread_file='posix'
3171 fi
3172 float_format=sparc
3173 ;;
331beb1a 3174strongarm-*-elf*)
a9acd81a 3175 tm_file="arm/strongarm-elf.h elfos.h arm/unknown-elf.h arm/elf.h"
331beb1a 3176 tmake_file=arm/t-strongarm-elf
3177 out_file=arm/arm.c
331beb1a 3178 md_file=arm/arm.md
3179 ;;
3180strongarm-*-coff*)
3181 tm_file=arm/strongarm-coff.h
3182 tmake_file=arm/t-strongarm-coff
3183 out_file=arm/arm.c
331beb1a 3184 md_file=arm/arm.md
3185 ;;
3186strongarm-*-pe)
3187 tm_file=arm/strongarm-pe.h
3188 tmake_file=arm/t-strongarm-pe
3189 out_file=arm/arm.c
331beb1a 3190 md_file=arm/arm.md
3191 extra_objs=pe.o
3192 ;;
bb607926 3193thumb*-*-*)
3194 { echo "config.gcc: error:
36c77238 3195*** The Thumb targets have been deprecated. The equivalent
cb251f34 3196*** ARM based toolchain can now generate Thumb instructions
bb607926 3197*** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
3198 ;;
3199v850-*-rtems*)
277773bd 3200 tm_file="elfos.h svr4.h ${tm_file} v850/rtems.h"
bb607926 3201 tmake_file="v850/t-v850 t-rtems"
3202 if test x$stabs = xyes
3203 then
3204 tm_file="${tm_file} dbx.h"
3205 fi
3206 use_collect2=no
e101acea 3207 c_target_objs="v850-c.o"
3208 cxx_target_objs="v850-c.o"
bb607926 3209 ;;
3210v850-*-*)
3211 target_cpu_default="TARGET_CPU_generic"
277773bd 3212 tm_file="elfos.h svr4.h ${tm_file}"
bb607926 3213 tmake_file=v850/t-v850
3214 if test x$stabs = xyes
3215 then
3216 tm_file="${tm_file} dbx.h"
3217 fi
3218 use_collect2=no
e101acea 3219 c_target_objs="v850-c.o"
3220 cxx_target_objs="v850-c.o"
bb607926 3221 ;;
6c842310 3222vax-*-bsd*) # VAXen running BSD
bb607926 3223 use_collect2=yes
3224 float_format=vax
3225 ;;
6c842310 3226vax-*-sysv*) # VAXen running system V
bb607926 3227 tm_file="${tm_file} vax/vaxv.h"
597183a7 3228 xm_defines=POSIX
bb607926 3229 float_format=vax
3230 ;;
3231vax-*-netbsd*)
3232 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3233 tmake_file=t-netbsd
3234 float_format=vax
3235 use_collect2=yes
3236 ;;
3237vax-*-openbsd*)
bb607926 3238 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
bb607926 3239 float_format=vax
3240 use_collect2=yes
3241 ;;
6c842310 3242vax-*-ultrix*) # VAXen running ultrix
bb607926 3243 tm_file="${tm_file} vax/ultrix.h"
3244 float_format=vax
3245 ;;
6c842310 3246vax-*-vms*) # VAXen running VMS
bb607926 3247 xm_file=vax/xm-vms.h
3248 tm_file=vax/vms.h
3249 float_format=vax
3250 ;;
6c842310 3251vax-*-*) # VAX default entry
bb607926 3252 float_format=vax
3253 ;;
3254we32k-att-sysv*)
597183a7 3255 xm_defines=POSIX
bb607926 3256 use_collect2=yes
3257 ;;
331beb1a 3258xscale-*-elf)
a9acd81a 3259 tm_file="arm/xscale-elf.h elfos.h arm/unknown-elf.h arm/elf.h"
331beb1a 3260 tmake_file=arm/t-xscale-elf
3261 out_file=arm/arm.c
331beb1a 3262 md_file=arm/arm.md
3263 ;;
3264xscale-*-coff)
3265 tm_file=arm/xscale-coff.h
3266 tmake_file=arm/t-xscale-coff
3267 out_file=arm/arm.c
331beb1a 3268 md_file=arm/arm.md
3269 ;;
9b954fed 3270xstormy16-*-elf)
3271 # For historical reasons, the target files omit the 'x'.
3272 tm_file="elfos.h svr4.h stormy16/stormy16.h"
3273 tm_p_file=stormy16/stormy16-protos.h
3274 md_file=stormy16/stormy16.md
3275 out_file=stormy16/stormy16.c
3276 tmake_file="stormy16/t-stormy16"
3277 extra_parts="crtbegin.o crtend.o"
3278 ;;
bb607926 3279*)
3280 echo "Configuration $machine not supported" 1>&2
3281 exit 1
3282 ;;
3283esac
3284
3285case $machine in
bb607926 3286*-*-sysv*)
3287 install_headers_dir=install-headers-cpio
3288 ;;
3289esac
3290
3291# Distinguish i[34567]86
3292# Also, do not run mips-tfile on MIPS if using gas.
3293# Process --with-cpu= for PowerPC/rs6000
3294target_cpu_default2=
3295case $machine in
3296i486-*-*)
3297 target_cpu_default2=1
3298 ;;
3299i586-*-*)
3300 case $target_alias in
3301 k6-*)
3302 target_cpu_default2=4
3303 ;;
3304 *)
3305 target_cpu_default2=2
3306 ;;
3307 esac
3308 ;;
3309i686-*-* | i786-*-*)
bb678e49 3310 case $target_alias in
3311 athlon-*)
3312 target_cpu_default2=5
3313 ;;
3314 *)
3315 target_cpu_default2=3
3316 ;;
3317 esac
bb607926 3318 ;;
3319alpha*-*-*)
3320 case $machine in
3321 alphaev6[78]*)
3322 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3323 ;;
3324 alphaev6*)
3325 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3326 ;;
3327 alphapca56*)
3328 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3329 ;;
3330 alphaev56*)
3331 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3332 ;;
3333 alphaev5*)
3334 target_cpu_default2="MASK_CPU_EV5"
3335 ;;
3336 esac
582b17a6 3337
bb607926 3338 if test x$gas = xyes
3339 then
3340 if test "$target_cpu_default2" = ""
3341 then
3342 target_cpu_default2="MASK_GAS"
3343 else
3344 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3345 fi
3346 fi
3347 ;;
3348arm*-*-*)
3349 case "x$with_cpu" in
3350 x)
3351 # The most generic
3352 target_cpu_default2="TARGET_CPU_generic"
3353 ;;
3354
3355 # Distinguish cores, and major variants
3356 # arm7m doesn't exist, but D & I don't affect code
a88ec949 3357 xarm[236789] | xarm250 | xarm[67][01]0 \
3358 | xarm7m | xarm7dm | xarm7dmi | xarm[79]tdmi \
bb607926 3359 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
331beb1a 3360 | xxscale \
bb607926 3361 | xstrongarm | xstrongarm110 | xstrongarm1100)
3362 target_cpu_default2="TARGET_CPU_$with_cpu"
3363 ;;
3364
3365 xyes | xno)
3366 echo "--with-cpu must be passed a value" 1>&2
3367 exit 1
3368 ;;
3369
3370 *)
3371 if test x$pass2done = xyes
3372 then
3373 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3374 exit 1
3375 fi
3376 ;;
3377 esac
3378 ;;
3379
6630177d 3380hppa*-*-* | parisc*-*-*)
3381 if test x$gas = xyes
3382 then
3383 target_cpu_default2="MASK_GAS|MASK_JUMP_IN_DELAY"
3384 fi
3385 ;;
3386
bb607926 3387mips*-*-ecoff* | mips*-*-elf*)
3388 if test x$gas = xyes
3389 then
3390 if test x$gnu_ld = xyes
3391 then
3392 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3393 else
3394 target_cpu_default2="MASK_GAS"
3395 fi
3396 fi
3397 ;;
3398mips*-*-*)
3399 if test x$gas = xyes
3400 then
3401 target_cpu_default2="MASK_GAS"
3402 fi
3403 ;;
3404powerpc*-*-* | rs6000-*-*)
3405 case "x$with_cpu" in
3406 x)
3407 ;;
3408
3409 xcommon | xpower | xpower2 | xpowerpc | xrios \
3410 | xrios1 | xrios2 | xrsc | xrsc1 \
3411 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3412 | xec603e | x740 | x750 | x401 \
3413 | x403 | x505 | x801 | x821 | x823 | x860)
4c088c24 3414 target_cpu_default2="\\\"$with_cpu\\\""
bb607926 3415 ;;
3416
3417 xyes | xno)
3418 echo "--with-cpu must be passed a value" 1>&2
3419 exit 1
3420 ;;
3421
3422 *)
3423 if test x$pass2done = xyes
3424 then
3425 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3426 exit 1
3427 fi
3428 ;;
3429 esac
3430 ;;
3431sparc*-*-*)
3432 case ".$with_cpu" in
3433 .)
3434 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3435 ;;
3436 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3437 target_cpu_default2="TARGET_CPU_$with_cpu"
3438 ;;
3439 *)
3440 if test x$pass2done = xyes
3441 then
3442 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3443 exit 1
3444 fi
3445 ;;
3446 esac
3447 ;;
3448esac
3449
3450if test "$target_cpu_default2" != ""
3451then
3452 if test "$target_cpu_default" != ""
3453 then
3454 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3455 else
3456 target_cpu_default=$target_cpu_default2
3457 fi
3458fi
3459
bb607926 3460# Save data on machine being used to compile GCC in build_xm_file.
3461# Save data on host machine in vars host_xm_file and host_xmake_file.
3462if test x$pass1done = x
3463then
e1688c3e 3464 if test x$xm_file != x
3465 then build_xm_file=$xm_file
bb607926 3466 fi
3467 build_xm_defines=$xm_defines
3468 build_install_headers_dir=$install_headers_dir
3469 build_exeext=$exeext
3470 pass1done=yes
3471else
3472 if test x$pass2done = x
3473 then
e1688c3e 3474 if test x$xm_file != x
3475 then host_xm_file=$xm_file
bb607926 3476 fi
3477 host_xm_defines=$xm_defines
bb607926 3478 host_xmake_file="$xmake_file"
3479 host_truncate_target=$truncate_target
3480 host_extra_gcc_objs=$extra_gcc_objs
3481 host_extra_objs=$extra_host_objs
3482 host_exeext=$exeext
3483 pass2done=yes
3484 fi
3485fi