OSDN Git Service

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