OSDN Git Service

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