OSDN Git Service

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