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