OSDN Git Service

* arm/aof.h (aof_text_section, aof_data_section): Don't declare.
[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         xm_defines=POSIX
341         case x${enable_threads} in
342         xno) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h";;
343         x | xyes | xpthreads | xposix)
344                 thread_file='posix'
345                 tmake_file="${tmake_file} t-freebsd-thread"
346                 ;;
347         *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
348         esac
349         fbsd_tm_file="${fbsd_tm_file} freebsd.h"
350         if test x${thread_file} = xposix; then
351           if test x${enable_libgcj} = xyes; then
352             echo 'FreeBSD does not currently handle --enable-threads (now'
353             echo 'the default to match system compiler) and --enable-libgcj.'
354             echo 'Please explicitly configure with --disable-threads or'
355             echo '--disable-libgcj'
356             exit 1
357           fi
358         fi
359         ;;
360 esac
361
362 case $machine in
363 # Support site-specific machine types.
364 *local*)
365         rest=`echo $machine | sed -e "s/$cpu_type-//"`
366         tm_file=${cpu_type}/$rest.h
367         if test -f $srcdir/config/${cpu_type}/xm-$rest.h
368         then xm_file=${cpu_type}/xm-$rest.h
369         fi
370         if test -f $srcdir/config/${cpu_type}/x-$rest
371         then xmake_file=${cpu_type}/x-$rest
372         fi
373         if test -f $srcdir/config/${cpu_type}/t-$rest
374         then tmake_file=${cpu_type}/t-$rest
375         fi
376         ;;
377 1750a-*-*)
378         # 1750a is only supported as a target.
379         case "$build,$host" in 1750a*,* | *,1750a* )
380                 echo "*** $machine is only supported as a target" >&2
381                 exit 1
382         esac
383         ;;
384 a29k-*-bsd* | a29k-*-sym1*)
385         tm_file="${tm_file} a29k/unix.h"
386         xm_defines=POSIX
387         use_collect2=yes
388         ;;
389 a29k-*-udi | a29k-*-coff)
390         tm_file="${tm_file} dbxcoff.h"
391         tmake_file=a29k/t-a29kbare
392         ;;
393 a29k*-*-rtems*)
394         tm_file=a29k/rtems.h
395         tmake_file="a29k/t-a29kbare t-rtems"
396         if test x$enable_threads = xyes; then
397           thread_file='rtems'
398         fi
399         ;;
400 a29k-wrs-vxworks*)
401         tm_file="${tm_file} dbxcoff.h a29k/vx29k.h"
402         tmake_file=a29k/t-vx29k
403         extra_parts="crtbegin.o crtend.o"
404         thread_file='vxworks'
405         ;;
406 a29k-*-*)                       # Default a29k environment.
407         use_collect2=yes
408         ;;
409 alpha*-*-unicosmk*)
410         use_collect2=yes
411         tm_file="${tm_file} alpha/unicosmk.h"
412
413         # Don't include t-ieee for now because we don't support that yet
414         # tmake_file="alpha/t-ieee"
415         tmake_file="alpha/t-unicosmk"
416         ;;
417 alpha-*-interix)
418         tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
419
420         # GAS + IEEE_CONFORMANT+IEEE (no inexact);
421         #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
422
423         # GAS + IEEE_CONFORMANT
424         target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
425
426         xm_defines=POSIX
427         xm_file="alpha/xm-alpha-interix.h xm-interix.h"
428         xmake_file=x-interix
429         tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
430         if test x$enable_threads = xyes ; then
431                 thread_file='posix'
432         fi
433         if test x$stabs = xyes ; then
434                 tm_file="${tm_file} dbxcoff.h"
435         fi
436         #prefix='$$INTERIX_ROOT'/usr/contrib
437         #local_prefix='$$INTERIX_ROOT'/usr/contrib
438         ;;
439 alpha*-*-linux*ecoff*)
440         tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
441         target_cpu_default="MASK_GAS"
442         tmake_file="alpha/t-alpha alpha/t-ieee"
443         gas=no
444         gas=yes gnu_ld=yes
445         ;;
446 alpha*-*-linux*libc1*)
447         tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
448         target_cpu_default="MASK_GAS"
449         tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-crtfm alpha/t-ieee"
450         gas=yes gnu_ld=yes
451         if test x$enable_threads = xyes; then
452                 thread_file='posix'
453         fi
454         ;;
455 alpha*-*-linux*)
456         tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
457         target_cpu_default="MASK_GAS"
458         tmake_file="t-slibgcc-elf-ver t-linux alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
459         gas=yes gnu_ld=yes
460         if test x$enable_threads = xyes; then
461                 thread_file='posix'
462         fi
463         ;;
464 alpha*-*-freebsd*)
465         tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
466         target_cpu_default="MASK_GAS"
467         tmake_file="${tmake_file} alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
468         ;;
469 alpha*-*-netbsd*)
470         xm_defines=POSIX
471         tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
472         target_cpu_default="MASK_GAS"
473         tmake_file="alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
474         gas=yes gnu_ld=yes
475         ;;
476
477 alpha*-*-openbsd*)
478         # default x-alpha is only appropriate for dec-osf.
479         target_cpu_default="MASK_GAS"
480         tmake_file="alpha/t-alpha alpha/t-ieee"
481         ;;
482
483 alpha*-dec-osf*)
484         xm_defines=POSIX
485         if test x$stabs = xyes
486         then
487                 tm_file="${tm_file} dbx.h"
488         fi
489         if test x$gas != xyes
490         then
491                 extra_passes="mips-tfile mips-tdump"
492         fi
493         use_collect2=yes
494         tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-osf alpha/t-crtfm"
495         case $machine in
496           *-*-osf1*)
497             tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
498             ;;
499           *-*-osf[23]*)
500             tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
501             ;;
502           *-*-osf4*)
503             tm_file="${tm_file} alpha/osf.h"
504             tmake_file="$tmake_file alpha/t-osf4"
505             # Some versions of OSF4 (specifically X4.0-9 296.7) have
506             # a broken tar, so we use cpio instead.
507             install_headers_dir=install-headers-cpio
508             ;;
509           *-*-osf5*)
510             tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
511             tmake_file="$tmake_file alpha/t-osf4"
512             float_format=i128
513             ;;
514         esac
515         case $machine in
516           *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
517             target_cpu_default=MASK_SUPPORT_ARCH
518             ;;
519         esac
520         ;;
521 alpha*-*-vxworks*)
522         xm_defines=POSIX
523         tm_file="${tm_file} dbx.h alpha/vxworks.h"
524         tmake_file="alpha/t-alpha alpha/t-ieee"
525         if [ x$gas != xyes ]
526         then
527                 extra_passes="mips-tfile mips-tdump"
528         fi
529         use_collect2=yes
530         thread_file='vxworks'
531         ;;
532 alpha*-dec-vms*)
533         xm_defines=POSIX
534         tm_file=alpha/vms.h
535         xm_file=alpha/xm-vms.h
536         tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
537         ;;
538 arc-*-elf*)
539         tm_file="elfos.h svr4.h ${tm_file}"
540         extra_parts="crtinit.o crtfini.o"
541         ;;
542 arm*-*-rtems*)
543         tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/rtems-elf.h rtems.h"
544         tmake_file="arm/t-arm-elf t-rtems"
545         if test x$enable_threads = xyes; then
546           thread_file='rtems'
547         fi
548         ;;
549 arm-*-coff* | armel-*-coff*)
550         tm_file=arm/coff.h
551         tmake_file=arm/t-arm-coff
552         ;;
553 arm-*-vxworks*)
554         tm_file=arm/vxarm.h
555         tmake_file=arm/t-arm-coff
556         thread_file='vxworks'
557         ;;
558 arm-*-riscix1.[01]*)            # Acorn RISC machine (early versions)
559         tm_file=arm/riscix1-1.h
560         use_collect2=yes
561         ;;
562 arm-*-riscix*)                  # Acorn RISC machine
563         if test x$gas = xyes
564         then
565             tm_file=arm/rix-gas.h
566         else
567             tm_file=arm/riscix.h
568         fi
569         xmake_file=arm/x-riscix
570         tmake_file=arm/t-riscix
571         use_collect2=yes
572         ;;
573 arm-semi-aout | armel-semi-aout)
574         tm_file=arm/semi.h
575         tmake_file=arm/t-semi
576         ;;
577 arm-semi-aof | armel-semi-aof)
578         tm_file=arm/semiaof.h
579         tmake_file=arm/t-semi
580         ;;
581 arm*-*-netbsd*)
582         tm_file=arm/netbsd.h
583         tmake_file="t-netbsd arm/t-netbsd"
584         use_collect2=yes
585         ;;
586 arm*-*-linux*)                  # ARM GNU/Linux with ELF
587         xmake_file=x-linux
588         tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
589         tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
590         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
591         gnu_ld=yes
592         case x${enable_threads} in
593         x | xyes | xpthreads | xposix)
594                 thread_file='posix'
595                 ;;
596         esac
597         ;;
598 arm*-*-uclinux*)                # ARM ucLinux
599         tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h"
600         tmake_file=arm/t-arm-elf
601         ;;
602 arm*-*-aout)
603         tm_file=arm/aout.h
604         tmake_file=arm/t-arm-aout
605         ;;
606 arm*-*-ecos-elf)
607         tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/ecos-elf.h"
608         tmake_file=arm/t-arm-elf
609         ;;
610 arm*-*-elf)
611         tm_file="elfos.h arm/unknown-elf.h arm/elf.h"
612         tmake_file=arm/t-arm-elf
613         ;;
614 arm*-*-conix*)
615         tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/conix-elf.h"
616         tmake_file=arm/t-arm-elf
617         ;;
618 arm*-*-oabi)
619         tm_file="arm/unknown-elf-oabi.h elfos.h arm/unknown-elf.h arm/elf.h"
620         tmake_file=arm/t-arm-elf
621         ;;
622 arm-*-pe*)
623         tm_file=arm/pe.h
624         tmake_file=arm/t-pe
625         extra_objs="pe.o"
626         ;;
627 avr-*-*)
628         ;;
629 c1-convex-*)                    # Convex C1
630         target_cpu_default=1
631         use_collect2=yes
632         ;;
633 c2-convex-*)                    # Convex C2
634         target_cpu_default=2
635         use_collect2=yes
636         ;;
637 c32-convex-*)
638         target_cpu_default=4
639         use_collect2=yes
640         ;;
641 c34-convex-*)
642         target_cpu_default=8
643         use_collect2=yes
644         ;;
645 c38-convex-*)
646         target_cpu_default=16
647         use_collect2=yes
648         ;;
649 c4x-*-rtems*)
650         tmake_file="c4x/t-c4x t-rtems"
651         tm_file=c4x/rtems.h
652         if test x$enable_threads = xyes; then
653           thread_file='rtems'
654         fi
655         c_target_objs="c4x-c.o"
656         cxx_target_objs="c4x-c.o"
657         ;;
658 c4x-*)
659         float_format=c4x
660         tmake_file=c4x/t-c4x
661         c_target_objs="c4x-c.o"
662         cxx_target_objs="c4x-c.o"
663         ;;
664 clipper-intergraph-clix*)
665         tm_file="${tm_file} svr3.h clipper/clix.h"
666         xm_defines=POSIX
667         extra_headers=va-clipper.h
668         extra_parts="crtbegin.o crtend.o"
669         install_headers_dir=install-headers-cpio
670         ;;
671 cris-*-aout)
672         tm_file="dbxelf.h ${tm_file} cris/aout.h"
673         gas=yes
674         tmake_file="cris/t-cris cris/t-aout"
675         ;;
676 cris-*-elf | cris-*-none)
677         tm_file="elfos.h ${tm_file}"
678         tmake_file="cris/t-cris cris/t-elfmulti"
679         gas=yes
680         ;;
681 cris-*-linux*)
682         tm_file="elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
683         tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
684         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
685         case x${enable_threads} in
686         x | xyes | xpthreads | xposix)
687                 thread_file=posix
688                 ;;
689         esac
690         gas=yes
691         ;;
692 d30v-*)
693         tm_file="elfos.h svr4.h ${tm_file}"
694         float_format=i64
695         ;;
696 dsp16xx-*)
697         ;;
698 elxsi-elxsi-*)
699         use_collect2=yes
700         ;;
701 fr30-*-elf)
702         tm_file="elfos.h svr4.h ${tm_file}"
703         tmake_file=fr30/t-fr30
704         extra_parts="crti.o crtn.o crtbegin.o crtend.o"
705         ;;
706 h8300-*-rtems*)
707         tmake_file="h8300/t-h8300 t-rtems"
708         tm_file=h8300/rtems.h
709         if test x$enable_threads = xyes; then
710           thread_file='rtems'
711         fi
712         float_format=i32
713         ;;
714 h8300-*-elf*)
715         tmake_file="h8300/t-h8300 h8300/t-elf"
716         tm_file="h8300/h8300.h h8300/elf.h"
717         float_format=i32
718         ;;
719 h8300-*-*)
720         float_format=i32
721         ;;
722 hppa*64*-*-linux* | parisc*64*-*-linux*)
723         target_cpu_default="(MASK_PA_11 | MASK_PA_20)"
724         tm_file="pa/pa64-start.h ${tm_file} elfos.h svr4.h linux.h pa/pa-linux.h \
725                  pa/pa64-regs.h pa/pa-64.h pa/pa64-linux.h"
726         tmake_file=pa/t-linux64
727         gas=yes gnu_ld=yes
728         ;;
729 hppa*-*-linux* | parisc*-*-linux*)
730         target_cpu_default="MASK_PA_11"
731         tm_file="${tm_file} elfos.h svr4.h linux.h pa/pa-linux.h \
732                  pa/pa32-regs.h pa/pa32-linux.h"
733         tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
734         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
735         gas=yes gnu_ld=yes
736         if test x$enable_threads = xyes; then
737                 thread_file='posix'
738         fi
739         ;;
740 hppa*-*-openbsd*)
741         target_cpu_default="MASK_PA_11"
742         tmake_file=pa/t-openbsd
743         ;;
744 hppa1.1-*-rtems*)
745         tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h pa/rtems.h"
746         tmake_file="pa/t-pro t-rtems"
747         if test x$enable_threads = xyes; then
748           thread_file='rtems'
749         fi
750         ;;
751 hppa1.1-*-pro*)
752         target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
753         tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
754         tmake_file=pa/t-pro
755         ;;
756 hppa1.1-*-osf*)
757         target_cpu_default="MASK_PA_11"
758         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
759         use_collect2=yes
760         ;;
761 hppa1.1-*-rtems*)
762         target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
763         tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
764         tmake_file=pa/t-pro
765         ;;
766 hppa1.0-*-osf*)
767         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
768         use_collect2=yes
769         ;;
770 hppa1.1-*-bsd*)
771         tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
772         target_cpu_default="MASK_PA_11"
773         use_collect2=yes
774         ;;
775 hppa1.0-*-bsd*)
776         tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
777         use_collect2=yes
778         ;;
779 hppa1.0-*-hpux7*)
780         tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
781         xm_defines=POSIX
782         xmake_file=pa/x-pa-hpux
783         install_headers_dir=install-headers-cpio
784         use_collect2=yes
785         ;;
786 hppa1.0-*-hpux8.0[0-2]*)
787         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
788         xm_defines=POSIX
789         xmake_file=pa/x-pa-hpux
790         if test x$gas != xyes
791         then
792                 tm_file="pa/pa-oldas.h ${tm_file}"
793         fi
794         install_headers_dir=install-headers-cpio
795         use_collect2=yes
796         ;;
797 hppa1.1-*-hpux8.0[0-2]*)
798         target_cpu_default="MASK_PA_11"
799         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
800         xm_defines=POSIX
801         xmake_file=pa/x-pa-hpux
802         if test x$gas != xyes
803         then
804                 tm_file="pa/pa-oldas.h ${tm_file}"
805         fi
806         install_headers_dir=install-headers-cpio
807         use_collect2=yes
808         ;;
809 hppa1.1-*-hpux8*)
810         target_cpu_default="MASK_PA_11"
811         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
812         xm_defines=POSIX
813         xmake_file=pa/x-pa-hpux
814         install_headers_dir=install-headers-cpio
815         use_collect2=yes
816         ;;
817 hppa1.0-*-hpux8*)
818         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
819         xm_defines=POSIX
820         xmake_file=pa/x-pa-hpux
821         install_headers_dir=install-headers-cpio
822         use_collect2=yes
823         ;;
824 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
825         target_cpu_default="MASK_PA_11"
826         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
827         float_format=i128
828         xm_defines=POSIX
829         xmake_file=pa/x-pa-hpux
830         tmake_file=pa/t-pa
831         if test x$enable_threads = x; then
832             enable_threads=$have_pthread_h
833         fi
834         case x${enable_threads} in
835         xyes | xdce)
836                 tmake_file="${tmake_file} pa/t-dce-thr"
837                 ;;
838         esac
839         install_headers_dir=install-headers-cpio
840         use_collect2=yes
841         ;;
842 hppa1.0-*-hpux10*)
843         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
844         float_format=i128
845         xm_defines=POSIX
846         xmake_file=pa/x-pa-hpux
847         tmake_file=pa/t-pa
848         if test x$enable_threads = x; then
849             enable_threads=$have_pthread_h
850         fi
851         case x${enable_threads} in
852         xyes | xdce)
853                 tmake_file="${tmake_file} pa/t-dce-thr"
854                 ;;
855         esac
856         install_headers_dir=install-headers-cpio
857         use_collect2=yes
858         ;;
859 hppa*64*-*-hpux11*)
860         xm_defines=POSIX
861         xmake_file=pa/x-pa-hpux
862         tmake_file=pa/t-pa
863         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"
864         float_format=i128
865         tmake_file=pa/t-pa64
866         target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
867
868 #       if [ x$enable_threads = x ]; then
869 #           enable_threads=$have_pthread_h
870 #       fi
871 #       if [ x$enable_threads = xyes ]; then
872 #               thread_file='dce'
873 #               tmake_file="${tmake_file} pa/t-dce-thr"
874 #       fi
875         install_headers_dir=install-headers-cpio
876         use_collect2=yes
877         ;;
878 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
879         target_cpu_default="MASK_PA_11"
880         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
881         float_format=i128
882         xm_defines=POSIX
883         xmake_file=pa/x-pa-hpux
884         tmake_file=pa/t-pa
885 #       if test x$enable_threads = x; then
886 #           enable_threads=$have_pthread_h
887 #       fi
888 #       if test x$enable_threads = xyes; then
889 #               thread_file='dce'
890 #               tmake_file="${tmake_file} pa/t-dce-thr"
891 #       fi
892         install_headers_dir=install-headers-cpio
893         use_collect2=yes
894         ;;
895 hppa1.0-*-hpux11*)
896         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
897         float_format=i128
898         xm_defines=POSIX
899         xmake_file=pa/x-pa-hpux
900 #       if test x$enable_threads = x; then
901 #           enable_threads=$have_pthread_h
902 #       fi
903 #       if test x$enable_threads = xyes; then
904 #               thread_file='dce'
905 #               tmake_file="${tmake_file} pa/t-dce-thr"
906 #       fi
907         install_headers_dir=install-headers-cpio
908         use_collect2=yes
909         ;;
910 hppa1.1-*-hpux* | hppa2*-*-hpux*)
911         target_cpu_default="MASK_PA_11"
912         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
913         xm_defines=POSIX
914         xmake_file=pa/x-pa-hpux
915         install_headers_dir=install-headers-cpio
916         use_collect2=yes
917         ;;
918 hppa1.0-*-hpux*)
919         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
920         xm_defines=POSIX
921         xmake_file=pa/x-pa-hpux
922         install_headers_dir=install-headers-cpio
923         use_collect2=yes
924         ;;
925 hppa1.1-*-hiux* | hppa2*-*-hiux*)
926         target_cpu_default="MASK_PA_11"
927         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
928         xm_defines=POSIX
929         xmake_file=pa/x-pa-hpux
930         install_headers_dir=install-headers-cpio
931         use_collect2=yes
932         ;;
933 hppa1.0-*-hiux*)
934         tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
935         xm_defines=POSIX
936         xmake_file=pa/x-pa-hpux
937         install_headers_dir=install-headers-cpio
938         use_collect2=yes
939         ;;
940 hppa*-*-lites*)
941         tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
942         target_cpu_default="MASK_PA_11"
943         use_collect2=yes
944         ;;
945 hppa*-*-mpeix*)
946         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
947         xmake_file=pa/x-pa-mpeix
948         echo "You must use gas. Assuming it is already installed."
949         gas=yes
950         install_headers_dir=install-headers-tar
951         use_collect2=yes
952         ;;
953 i370-*-opened*)                  # IBM 360/370/390 Architecture
954         xm_defines='POSIX FATAL_EXIT_CODE=12'
955         tm_file=i370/oe.h
956         tmake_file="i370/t-i370"
957         xmake_file=i370/x-oe
958         c_target_objs="i370-c.o"
959         cxx_target_objs="i370-c.o"
960         ;;
961 i370-*-mvs*)
962         xm_defines='POSIX FATAL_EXIT_CODE=12'
963         tm_file=i370/mvs.h
964         tmake_file="i370/t-i370"
965         c_target_objs="i370-c.o"
966         cxx_target_objs="i370-c.o"
967         ;;
968 i370-*-linux*)
969         xmake_file=x-linux
970         tm_file="elfos.h svr4.h linux.h i370/linux.h ${tm_file}"
971         tmake_file="t-slibgcc-elf-ver t-linux"
972         # broken_install=yes
973         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
974         # extra_parts="crtbegin.o crtend.o"
975         gnu_ld=yes
976         gas=yes
977         elf=yes
978         if test x$enable_threads = xyes; then
979                 thread_file='posix'
980         fi
981         ;;
982 i[34567]86-*-chorusos*)
983         xm_defines=POSIX
984         tm_file="${tm_file} i386/att.h elfos.h i386/i386elf.h chorus.h"
985         tmake_file=i386/t-i386elf
986         xmake_file=x-svr4
987         case x${enable_threads} in
988           xyes | xpthreads | xposix)
989                 thread_file='posix'
990                 ;;
991         esac
992         ;;
993 i[34567]86-*-elf*)
994         xm_defines=POSIX
995         tm_file="${tm_file} i386/att.h elfos.h i386/i386elf.h"
996         tmake_file=i386/t-i386elf
997         xmake_file=x-svr4
998         ;;
999 i[34567]86-ibm-aix*)            # IBM PS/2 running AIX
1000         if test x$gas = xyes
1001         then
1002                 tm_file=i386/aix386.h
1003                 extra_parts="crtbegin.o crtend.o"
1004                 tmake_file=i386/t-crtstuff
1005         else
1006                 tm_file=i386/aix386ng.h
1007                 use_collect2=yes
1008         fi
1009         xm_defines=POSIX
1010         ;;
1011 i[34567]86-ncr-sysv4*)          # NCR 3000 - ix86 running system V.4
1012         xm_defines="POSIX SMALL_ARG_MAX"
1013         if test x$stabs = xyes -a x$gas = xyes
1014         then
1015                 tm_file=i386/sysv4gdb.h
1016         else
1017                 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h"
1018         fi
1019         extra_parts="crtbegin.o crtend.o"
1020         tmake_file=i386/t-crtpic
1021         ;;
1022 i[34567]86-next-*)
1023         tm_file=i386/next.h
1024         tmake_file=i386/t-next
1025         extra_objs=nextstep.o
1026         extra_parts="crtbegin.o crtend.o"
1027         if test x$enable_threads = xyes; then
1028                 thread_file='mach'
1029         fi
1030         ;;
1031 i[34567]86-*-netware)           # Intel 80386's running netware
1032         tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
1033         tmake_file=i386/t-netware
1034         ;;
1035 i[34567]86-sequent-bsd*)                # 80386 from Sequent
1036         use_collect2=yes
1037         if test x$gas = xyes
1038         then
1039                 tm_file=i386/seq-gas.h
1040         else
1041                 tm_file=i386/sequent.h
1042         fi
1043         ;;
1044 i[34567]86-sequent-ptx1*)
1045         xm_defines=POSIX
1046         tm_file=i386/seq-sysv3.h
1047         tmake_file=i386/t-crtstuff
1048         extra_parts="crtbegin.o crtend.o"
1049         install_headers_dir=install-headers-cpio
1050         ;;
1051 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1052         xm_defines=POSIX
1053         tm_file=i386/seq2-sysv3.h
1054         tmake_file=i386/t-crtstuff
1055         extra_parts="crtbegin.o crtend.o"
1056         install_headers_dir=install-headers-cpio
1057         ;;
1058 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1059         if test x$gas = xyes
1060         then
1061                 tm_file="${tm_file} usegas.h"
1062         fi
1063         xm_defines="POSIX SMALL_ARG_MAX"
1064         xmake_file=x-svr4
1065         tm_file="${tm_file} i386/att.h elfos.h ptx4.h i386/ptx4-i.h"
1066         tmake_file=t-svr4
1067         extra_parts="crtbegin.o crtend.o"
1068         install_headers_dir=install-headers-cpio
1069         ;;
1070 i386-sun-sunos*)                # Sun i386 roadrunner
1071         xm_defines=POSIX
1072         tm_file=i386/sun.h
1073         use_collect2=yes
1074         ;;
1075 i[34567]86-wrs-vxworks*)
1076         tm_file=i386/vxi386.h
1077         thread_file='vxworks'
1078         ;;
1079 i[34567]86-*-aout*)
1080         tm_file=i386/i386-aout.h
1081         ;;
1082 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1083         xm_defines=POSIX
1084         tmake_file='i386/t-beos i386/t-crtpic'
1085         tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/beos-elf.h"
1086         xmake_file=i386/x-beos
1087         extra_parts='crtbegin.o crtend.o'
1088         ;;
1089 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1090         tm_file="i386/386bsd.h i386/bsd386.h"
1091 #       tmake_file=t-libc-ok
1092         ;;
1093 i[34567]86-*-bsd*)
1094         tm_file=i386/386bsd.h
1095 #       tmake_file=t-libc-ok
1096 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1097 #       use_collect2=yes
1098         ;;
1099 i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
1100         tm_file=i386/freebsd-aout.h
1101         tmake_file=t-freebsd
1102         ;;
1103 i[34567]86-*-freebsd*)
1104         tm_file="${tm_file} i386/att.h elfos.h svr4.h ${fbsd_tm_file} i386/freebsd.h"
1105         ;;
1106 i[34567]86-*-netbsdelf*)
1107         xm_defines=POSIX
1108         tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/netbsd-elf.h"
1109         tmake_file=t-netbsd
1110         gnu_ld=yes
1111         float_format=i386
1112         ;;
1113 i[34567]86-*-netbsd*)
1114         tm_file=i386/netbsd.h
1115         tmake_file=t-netbsd
1116         use_collect2=yes
1117         ;;
1118 i[34567]86-*-openbsd*)
1119         # needed to unconfuse gdb
1120         tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
1121         # we need collect2 until our bug is fixed...
1122         use_collect2=yes
1123         ;;
1124 i[34567]86-*-coff*)
1125         tm_file=i386/i386-coff.h
1126         ;;
1127 i[34567]86-*-isc*)              # 80386 running ISC system
1128         xm_defines=POSIX
1129         if test x$gas = xyes -a x$stabs = xyes
1130         then
1131                 tm_file=i386/iscdbx.h
1132                 tmake_file=i386/t-svr3dbx
1133                 extra_parts="svr3.ifile svr3z.ifile"
1134         else
1135                 tm_file=i386/isccoff.h
1136                 tmake_file=i386/t-crtstuff
1137                 extra_parts="crtbegin.o crtend.o"
1138         fi
1139         install_headers_dir=install-headers-cpio
1140         ;;
1141 i[34567]86-*-linux*oldld*)      # Intel 80386's running GNU/Linux
1142                                 # with a.out format using
1143                                 # pre BFD linkers
1144         tmake_file="t-linux-aout i386/t-crtstuff"
1145         tm_file=i386/linux-oldld.h
1146         gnu_ld=yes
1147         float_format=i386
1148         ;;
1149 i[34567]86-*-linux*aout*)       # Intel 80386's running GNU/Linux
1150                                 # with a.out format
1151         tmake_file="t-linux-aout i386/t-crtstuff"
1152         tm_file=i386/linux-aout.h
1153         gnu_ld=yes
1154         float_format=i386
1155         ;;
1156 i[34567]86-*-linux*libc1)       # Intel 80386's running GNU/Linux
1157                                 # with ELF format using the
1158                                 # GNU/Linux C library 5
1159         xmake_file=x-linux      
1160         tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h"
1161         tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
1162         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1163         gnu_ld=yes
1164         float_format=i386
1165         if test x$enable_threads = xyes; then
1166                 thread_file='single'
1167         fi
1168         ;;
1169 i[34567]86-*-linux*)    # Intel 80386's running GNU/Linux
1170                         # with ELF format using glibc 2
1171                         # aka GNU/Linux C library 6
1172         xmake_file=x-linux
1173         tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h"
1174         tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
1175         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1176         gnu_ld=yes
1177         float_format=i386
1178         if test x$enable_threads = xyes; then
1179                 thread_file='posix'
1180         fi
1181         ;;
1182 x86_64-*-linux*)
1183         xmake_file=x-linux
1184         tm_file="i386/biarch64.h i386/i386.h i386/att.h elfos.h svr4.h linux.h \
1185                  i386/x86-64.h i386/linux64.h"
1186         tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
1187         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1188         gnu_ld=yes
1189         float_format=i386
1190         if test x$enable_threads = xyes; then
1191                 thread_file='posix'
1192         fi
1193         ;;
1194 i[34567]86-*-gnu*)
1195         float_format=i386
1196         ;;
1197 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1198         echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1199         exit 1
1200         ;;
1201 i[34567]86-pc-msdosdjgpp*)
1202         xm_file=i386/xm-djgpp.h
1203         tm_file=i386/djgpp.h
1204         xmake_file=i386/x-djgpp
1205         gnu_ld=yes
1206         gas=yes
1207         exeext=.exe
1208         float_format=none
1209         case $host in *pc-msdosdjgpp*)
1210                 target_alias=djgpp
1211                 ;;
1212         esac
1213         ;;
1214 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1215         tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
1216         tmake_file=t-libc-ok
1217         gnu_ld=yes
1218         gas=yes
1219         ;;
1220 i[34567]86-*-lynxos*)
1221         if test x$gas = xyes
1222         then
1223                 tm_file=i386/lynx.h
1224         else
1225                 tm_file=i386/lynx-ng.h
1226         fi
1227         ;;
1228 i[34567]86-*-mach*)
1229         tm_file=i386/mach.h
1230 #       tmake_file=t-libc-ok
1231         use_collect2=yes
1232         ;;
1233 i[34567]86-*-osfrose*)          # 386 using OSF/rose
1234         if test x$elf = xyes
1235         then
1236                 tm_file=i386/osfelf.h
1237                 use_collect2=
1238         else
1239                 tm_file=i386/osfrose.h
1240                 use_collect2=yes
1241         fi
1242         tmake_file=i386/t-osf
1243         extra_objs=halfpic.o
1244         ;;
1245 i[34567]86-go32-rtems*)
1246         tm_file=i386/djgpp-rtems.h
1247         tmake_file=t-rtems
1248         if test x$enable_threads = xyes; then
1249           thread_file='rtems'
1250         fi
1251         ;;
1252 i[34567]86-*-rtemscoff*)
1253         tm_file=i386/rtems.h
1254         tmake_file=t-rtems
1255         if test x$enable_threads = xyes; then
1256           thread_file='rtems'
1257         fi
1258         ;;
1259 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1260         tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/rtemself.h rtems.h"
1261         extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1262         tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1263         if test x$enable_threads = xyes; then
1264           thread_file='rtems'
1265         fi
1266         ;;
1267 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1268         xm_defines=POSIX
1269         xmake_file=i386/x-sco5
1270         install_headers_dir=install-headers-cpio
1271         tm_file=i386/sco5.h
1272         if test x$gas = xyes
1273         then
1274                 tm_file="usegas.h ${tm_file}"
1275                 tmake_file=i386/t-sco5gas
1276         else
1277                 tmake_file=i386/t-sco5
1278         fi
1279         extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1280         ;;
1281 i[34567]86-*-solaris2*)
1282         xm_defines="POSIX SMALL_ARG_MAX"
1283         tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sol2.h"
1284         if test x$gas = xyes; then
1285                 # Only needed if gas does not support -s
1286                 tm_file="i386/sol2gas.h ${tm_file}"
1287         fi
1288         tmake_file=i386/t-sol2
1289         if test x$gnu_ld = xyes; then
1290                 tmake_file="$tmake_file t-slibgcc-elf-ver"
1291         else
1292                 tmake_file="$tmake_file t-slibgcc-sld"
1293         fi
1294         extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1295         xmake_file=x-svr4
1296         if test x${enable_threads} = x; then
1297             enable_threads=$have_pthread_h
1298             if test x${enable_threads} = x; then
1299                 enable_threads=$have_thread_h
1300             fi
1301         fi
1302         if test x${enable_threads} = xyes; then
1303             if test x${have_pthread_h} = xyes; then
1304                 thread_file='posix'
1305             else
1306                 thread_file='solaris'
1307             fi
1308         fi
1309         ;;
1310 i[34567]86-*-sysv5*)           # Intel x86 on System V Release 5
1311        xm_defines=POSIX
1312        tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
1313        if test x$stabs = xyes
1314        then
1315                tm_file="${tm_file} dbx.h"
1316        fi
1317        tmake_file=i386/t-crtpic
1318        xmake_file=x-svr4
1319        extra_parts="crtbegin.o crtend.o"
1320        if test x$enable_threads = xyes; then
1321                thread_file='posix'
1322        fi
1323        ;;
1324 i[34567]86-*-sysv4*)            # Intel 80386's running system V.4
1325         xm_defines="POSIX SMALL_ARG_MAX"
1326         tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h"
1327         if test x$stabs = xyes
1328         then
1329                 tm_file="${tm_file} dbx.h"
1330         fi
1331         tmake_file=i386/t-crtpic
1332         xmake_file=x-svr4
1333         extra_parts="crtbegin.o crtend.o"
1334         ;;
1335 i[34567]86-*-udk*)      # Intel x86 on SCO UW/OSR5 Dev Kit
1336         xm_defines=POSIX
1337         tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h i386/udk.h"
1338         tmake_file="i386/t-crtpic i386/t-udk"
1339         xmake_file=x-svr4
1340         extra_parts="crtbegin.o crtend.o"
1341         install_headers_dir=install-headers-cpio
1342         ;;
1343 i[34567]86-*-osf1*)             # Intel 80386's running OSF/1 1.3+
1344         xm_file=i386/xm-osf1elf.h
1345         xm_defines='POSIX USE_C_ALLOCA SMALL_ARG_MAX'
1346         if test x$stabs = xyes
1347         then
1348                 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h i386/osf1elfgdb.h"
1349         else
1350                 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h"
1351         fi
1352         tmake_file=i386/t-osf1elf
1353         extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1354         ;;
1355 i[34567]86-*-sysv*)             # Intel 80386's running system V
1356         xm_defines=POSIX
1357         if test x$gas = xyes
1358         then
1359                 if test x$stabs = xyes
1360                 then
1361                         tm_file=i386/svr3dbx.h
1362                         tmake_file=i386/t-svr3dbx
1363                         extra_parts="svr3.ifile svr3z.rfile"
1364                 else
1365                         tm_file=i386/svr3gas.h
1366                         extra_parts="crtbegin.o crtend.o"
1367                         tmake_file=i386/t-crtstuff
1368                 fi
1369         else
1370                 tm_file=i386/sysv3.h
1371                 extra_parts="crtbegin.o crtend.o"
1372                 tmake_file=i386/t-crtstuff
1373         fi
1374         tmake_file="$tmake_file i386/t-crtpic"
1375         ;;
1376 i386-*-vsta)                    # Intel 80386's running VSTa kernel
1377         xm_file=i386/xm-vsta.h
1378         tm_file=i386/vsta.h
1379         ;;
1380 i[34567]86-*-win32)
1381         xm_defines=POSIX
1382         xm_file=i386/xm-cygwin.h
1383         float_format=i386
1384         tmake_file=i386/t-cygwin
1385         tm_file=i386/win32.h
1386         xmake_file=i386/x-cygwin
1387         extra_objs=winnt.o
1388         if test x$enable_threads = xyes; then
1389                 thread_file='win32'
1390         fi
1391         exeext=.exe
1392         ;;
1393 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1394         xm_defines=POSIX
1395         xm_file=i386/xm-cygwin.h
1396         float_format=i386
1397         tmake_file=i386/t-cygwin
1398         tm_file=i386/cygwin.h
1399         xmake_file=i386/x-cygwin
1400         extra_objs=winnt.o
1401         if test x$enable_threads = xyes; then
1402                 thread_file='win32'
1403         fi
1404         exeext=.exe
1405         ;;
1406 i[34567]86-*-mingw32*)
1407         tm_file=i386/mingw32.h
1408         float_format=i386
1409         xm_defines=POSIX
1410         xm_file=i386/xm-mingw32.h
1411         tmake_file="i386/t-cygwin i386/t-mingw32"
1412         extra_objs=winnt.o
1413         xmake_file=i386/x-cygwin
1414         if test x$enable_threads = xyes; then
1415                 thread_file='win32'
1416         fi
1417         exeext=.exe
1418         case $machine in
1419                 *mingw32crt*)
1420                         tm_file="${tm_file} i386/crtdll.h"
1421                         ;;
1422                 *minwg32msv* | *mingw32*)
1423                         ;;
1424         esac
1425         ;;
1426 i[34567]86-*-uwin*)
1427         tm_file=i386/uwin.h
1428         tmake_file="i386/t-cygwin i386/t-uwin"
1429         extra_objs=winnt.o
1430         xmake_file=i386/x-cygwin
1431         if test x$enable_threads = xyes; then
1432                 thread_file='win32'
1433         fi
1434         exeext=.exe
1435         ;;
1436 i[34567]86-*-interix*)
1437         tm_file="i386/i386-interix.h interix.h"
1438         xm_file="i386/xm-i386-interix.h xm-interix.h"
1439         xm_defines=POSIX
1440         tmake_file="i386/t-interix"
1441         extra_objs=interix.o
1442         xmake_file=x-interix
1443         if test x$enable_threads = xyes ; then
1444                 thread_file='posix'
1445         fi
1446         if test x$stabs = xyes ; then
1447                 tm_file="${tm_file} dbxcoff.h"
1448         fi
1449         ;;
1450 i[34567]86-dg-dgux*)
1451         xm_defines=POSIX
1452         out_file=i386/dgux.c
1453         tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/dgux.h"
1454         tmake_file=i386/t-dgux
1455         xmake_file=i386/x-dgux
1456         install_headers_dir=install-headers-cpio
1457       ;;
1458 i860-alliant-*)         # Alliant FX/2800
1459         tm_file="${tm_file} elfos.h svr4.h i860/sysv4.h i860/fx2800.h"
1460         tmake_file=i860/t-fx2800
1461         extra_parts="crtbegin.o crtend.o"
1462         ;;
1463 i860-*-bsd*)
1464         tm_file="${tm_file} i860/bsd.h"
1465         if test x$gas = xyes
1466         then
1467                 tm_file="${tm_file} i860/bsd-gas.h"
1468         fi
1469         use_collect2=yes
1470         ;;
1471 i860-*-mach*)
1472         tm_file="${tm_file} i860/mach.h"
1473         tmake_file=t-libc-ok
1474         ;;
1475 i860-*-osf*)                    # Intel Paragon XP/S, OSF/1AD
1476         tm_file="${tm_file} svr3.h i860/paragon.h"
1477         xm_defines=POSIX
1478         ;;
1479 i860-*-sysv3*)
1480         tm_file="${tm_file} svr3.h i860/sysv3.h"
1481         xm_defines=POSIX
1482         extra_parts="crtbegin.o crtend.o"
1483         ;;
1484 i860-*-sysv4*)
1485         tm_file="${tm_file} elfos.h svr4.h i860/sysv4.h"
1486         xm_defines=POSIX
1487         tmake_file=t-svr4
1488         extra_parts="crtbegin.o crtend.o"
1489         ;;
1490 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1491         tm_file="${tm_file} i960/vx960.h"
1492         tmake_file=i960/t-vxworks960
1493         use_collect2=yes
1494         thread_file='vxworks'
1495         c_target_objs="i960-c.o"
1496         cxx_target_objs="i960-c.o"
1497         ;;
1498 i960-wrs-vxworks5* | i960-wrs-vxworks)
1499         tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1500         tmake_file=i960/t-vxworks960
1501         use_collect2=yes
1502         thread_file='vxworks'
1503         c_target_objs="i960-c.o"
1504         cxx_target_objs="i960-c.o"
1505         ;;
1506 i960-wrs-vxworks*)
1507         tm_file="${tm_file} i960/vx960.h"
1508         tmake_file=i960/t-vxworks960
1509         use_collect2=yes
1510         thread_file='vxworks'
1511         c_target_objs="i960-c.o"
1512         cxx_target_objs="i960-c.o"
1513         ;;
1514 i960-*-coff*)
1515         tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1516         tmake_file=i960/t-960bare
1517         c_target_objs="i960-c.o"
1518         cxx_target_objs="i960-c.o"
1519         ;;
1520 i960-*-rtems)
1521         tmake_file="i960/t-960bare t-rtems"
1522         tm_file="${tm_file} dbxcoff.h i960/rtems.h"
1523         if test x$enable_threads = xyes; then
1524           thread_file='rtems'
1525         fi
1526         c_target_objs="i960-c.o"
1527         cxx_target_objs="i960-c.o"
1528         ;;
1529 i960-*-*)                       # Default i960 environment.
1530         use_collect2=yes
1531         tmake_file=i960/t-960bare
1532         c_target_objs="i960-c.o"
1533         cxx_target_objs="i960-c.o"
1534         ;;
1535 ia64*-*-aix*)
1536         tm_file="${tm_file} elfos.h svr4.h ia64/sysv4.h ia64/aix.h"
1537         tmake_file="ia64/t-ia64 ia64/t-aix"
1538         target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1539         ;;
1540 ia64*-*-elf*)
1541         tm_file=ia64/elf.h
1542         tmake_file="ia64/t-ia64"
1543         target_cpu_default="0"
1544         if test x$gas = xyes
1545         then
1546                 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1547         fi
1548         if test x$gnu_ld = xyes
1549         then
1550                 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1551         fi
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 stormy16-*-elf)
3176         tm_file="elfos.h svr4.h ${tm_file}"
3177         tmake_file="stormy16/t-stormy16"
3178         extra_parts="crtbegin.o crtend.o"
3179         ;;
3180 strongarm-*-elf*)
3181         tm_file="arm/strongarm-elf.h elfos.h arm/unknown-elf.h arm/elf.h"
3182         tmake_file=arm/t-strongarm-elf
3183         out_file=arm/arm.c
3184         md_file=arm/arm.md
3185         ;;
3186 strongarm-*-coff*)
3187         tm_file=arm/strongarm-coff.h
3188         tmake_file=arm/t-strongarm-coff
3189         out_file=arm/arm.c
3190         md_file=arm/arm.md
3191         ;;
3192 strongarm-*-pe)
3193         tm_file=arm/strongarm-pe.h
3194         tmake_file=arm/t-strongarm-pe
3195         out_file=arm/arm.c
3196         md_file=arm/arm.md
3197         extra_objs=pe.o
3198         ;;
3199 thumb*-*-*)
3200         { echo "config.gcc: error:
3201 *** The Thumb targets have been deprecated.  The equivalent
3202 *** ARM based toolchain can now generate Thumb instructions
3203 *** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
3204         ;;
3205 v850-*-rtems*)
3206         tm_file="elfos.h svr4.h ${tm_file} v850/rtems.h"
3207         tmake_file="v850/t-v850 t-rtems"
3208         if test x$stabs = xyes
3209         then
3210                 tm_file="${tm_file} dbx.h"
3211         fi
3212         use_collect2=no
3213         c_target_objs="v850-c.o"
3214         cxx_target_objs="v850-c.o"
3215         ;;
3216 v850-*-*)
3217         target_cpu_default="TARGET_CPU_generic"
3218         tm_file="elfos.h svr4.h ${tm_file}"
3219         tmake_file=v850/t-v850
3220         if test x$stabs = xyes
3221         then
3222                 tm_file="${tm_file} dbx.h"
3223         fi
3224         use_collect2=no
3225         c_target_objs="v850-c.o"
3226         cxx_target_objs="v850-c.o"
3227         ;;
3228 vax-*-bsd*)                     # VAXen running BSD
3229         use_collect2=yes
3230         float_format=vax
3231         ;;
3232 vax-*-sysv*)                    # VAXen running system V
3233         tm_file="${tm_file} vax/vaxv.h"
3234         xm_defines=POSIX
3235         float_format=vax
3236         ;;
3237 vax-*-netbsd*)
3238         tm_file="${tm_file} netbsd.h vax/netbsd.h"
3239         tmake_file=t-netbsd
3240         float_format=vax
3241         use_collect2=yes
3242         ;;
3243 vax-*-openbsd*)
3244         tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
3245         float_format=vax
3246         use_collect2=yes
3247         ;;
3248 vax-*-ultrix*)                  # VAXen running ultrix
3249         tm_file="${tm_file} vax/ultrix.h"
3250         float_format=vax
3251         ;;
3252 vax-*-vms*)                     # VAXen running VMS
3253         xm_file=vax/xm-vms.h
3254         tm_file=vax/vms.h
3255         float_format=vax
3256         ;;
3257 vax-*-*)                        # VAX default entry
3258         float_format=vax
3259         ;;
3260 we32k-att-sysv*)
3261         xm_defines=POSIX
3262         use_collect2=yes
3263         ;;
3264 xscale-*-elf)
3265         tm_file="arm/xscale-elf.h elfos.h arm/unknown-elf.h arm/elf.h"
3266         tmake_file=arm/t-xscale-elf
3267         out_file=arm/arm.c
3268         md_file=arm/arm.md
3269         ;;
3270 xscale-*-coff)
3271         tm_file=arm/xscale-coff.h
3272         tmake_file=arm/t-xscale-coff
3273         out_file=arm/arm.c
3274         md_file=arm/arm.md
3275         ;;
3276 *)
3277         echo "Configuration $machine not supported" 1>&2
3278         exit 1
3279         ;;
3280 esac
3281
3282 case $machine in
3283 *-*-sysv*)
3284         install_headers_dir=install-headers-cpio
3285         ;;
3286 esac
3287
3288 # Distinguish i[34567]86
3289 # Also, do not run mips-tfile on MIPS if using gas.
3290 # Process --with-cpu= for PowerPC/rs6000
3291 target_cpu_default2=
3292 case $machine in
3293 i486-*-*)
3294         target_cpu_default2=1
3295         ;;
3296 i586-*-*)
3297         case $target_alias in
3298                 k6-*)
3299                         target_cpu_default2=4
3300                         ;;
3301                 *)
3302                         target_cpu_default2=2
3303                         ;;
3304         esac
3305         ;;
3306 i686-*-* | i786-*-*)
3307         case $target_alias in
3308                 athlon-*)
3309                         target_cpu_default2=5
3310                         ;;
3311                 *)
3312                         target_cpu_default2=3
3313                         ;;
3314         esac
3315         ;;
3316 alpha*-*-*)
3317         case $machine in
3318                 alphaev6[78]*)
3319                         target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3320                         ;;
3321                 alphaev6*)
3322                         target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3323                         ;;
3324                 alphapca56*)
3325                         target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3326                         ;;
3327                 alphaev56*)
3328                         target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3329                         ;;
3330                 alphaev5*)
3331                         target_cpu_default2="MASK_CPU_EV5"
3332                         ;;
3333         esac
3334
3335         if test x$gas = xyes
3336         then
3337                 if test "$target_cpu_default2" = ""
3338                 then
3339                         target_cpu_default2="MASK_GAS"
3340                 else
3341                         target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3342                 fi
3343         fi
3344         ;;
3345 arm*-*-*)
3346         case "x$with_cpu" in
3347                 x)
3348                         # The most generic
3349                         target_cpu_default2="TARGET_CPU_generic"
3350                         ;;
3351
3352                 # Distinguish cores, and major variants
3353                 # arm7m doesn't exist, but D & I don't affect code
3354                 xarm[236789] | xarm250 | xarm[67][01]0 \
3355                 | xarm7m | xarm7dm | xarm7dmi | xarm[79]tdmi \
3356                 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3357                 | xxscale \
3358                 | xstrongarm | xstrongarm110 | xstrongarm1100)
3359                         target_cpu_default2="TARGET_CPU_$with_cpu"
3360                         ;;
3361
3362                 xyes | xno)
3363                         echo "--with-cpu must be passed a value" 1>&2
3364                         exit 1
3365                         ;;
3366
3367                 *)
3368                         if test x$pass2done = xyes
3369                         then
3370                                 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3371                                 exit 1
3372                         fi
3373                         ;;
3374         esac
3375         ;;
3376
3377 hppa*-*-* | parisc*-*-*)
3378         if test x$gas = xyes
3379         then
3380                 target_cpu_default2="MASK_GAS|MASK_JUMP_IN_DELAY"
3381         fi
3382         ;;
3383
3384 mips*-*-ecoff* | mips*-*-elf*)
3385         if test x$gas = xyes
3386         then
3387                 if test x$gnu_ld = xyes
3388                 then
3389                         target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3390                 else
3391                         target_cpu_default2="MASK_GAS"
3392                 fi
3393         fi
3394         ;;
3395 mips*-*-*)
3396         if test x$gas = xyes
3397         then
3398                 target_cpu_default2="MASK_GAS"
3399         fi
3400         ;;
3401 powerpc*-*-* | rs6000-*-*)
3402         case "x$with_cpu" in
3403                 x)
3404                         ;;
3405
3406                 xcommon | xpower | xpower2 | xpowerpc | xrios \
3407                   | xrios1 | xrios2 | xrsc | xrsc1 \
3408                   | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3409                   | xec603e | x740 | x750 | x401 \
3410                   | x403 | x505 | x801 | x821 | x823 | x860)
3411                         target_cpu_default2="\\\"$with_cpu\\\""
3412                         ;;
3413
3414                 xyes | xno)
3415                         echo "--with-cpu must be passed a value" 1>&2
3416                         exit 1
3417                         ;;
3418
3419                 *)
3420                         if test x$pass2done = xyes
3421                         then
3422                                 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3423                                 exit 1
3424                         fi
3425                         ;;
3426         esac
3427         ;;
3428 sparc*-*-*)
3429         case ".$with_cpu" in
3430                 .)
3431                         target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3432                         ;;
3433                 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3434                         target_cpu_default2="TARGET_CPU_$with_cpu"
3435                         ;;
3436                 *)
3437                         if test x$pass2done = xyes
3438                         then
3439                                 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3440                                 exit 1
3441                         fi
3442                         ;;
3443         esac
3444         ;;
3445 esac
3446
3447 if test "$target_cpu_default2" != ""
3448 then
3449         if test "$target_cpu_default" != ""
3450         then
3451                 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3452         else
3453                 target_cpu_default=$target_cpu_default2
3454         fi
3455 fi
3456
3457 # Save data on machine being used to compile GCC in build_xm_file.
3458 # Save data on host machine in vars host_xm_file and host_xmake_file.
3459 if test x$pass1done = x
3460 then
3461         if test x$xm_file != x
3462         then build_xm_file=$xm_file
3463         fi
3464         build_xm_defines=$xm_defines
3465         build_install_headers_dir=$install_headers_dir
3466         build_exeext=$exeext
3467         pass1done=yes
3468 else
3469         if test x$pass2done = x
3470         then
3471                 if test x$xm_file != x
3472                 then host_xm_file=$xm_file
3473                 fi
3474                 host_xm_defines=$xm_defines
3475                 host_xmake_file="$xmake_file"
3476                 host_truncate_target=$truncate_target
3477                 host_extra_gcc_objs=$extra_gcc_objs
3478                 host_extra_objs=$extra_host_objs
3479                 host_exeext=$exeext
3480                 pass2done=yes
3481         fi
3482 fi