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