OSDN Git Service

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