OSDN Git Service

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