OSDN Git Service

* config.gcc: Remove some unnecessary uses of 'x' in case statements.
[pf3gnuchains/gcc-fork.git] / gcc / config.gcc
1 # GCC target-specific configuration file.
2 # Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003
3 # Free Software Foundation, Inc.
4
5 #This file is part of GCC.
6
7 #GCC is free software; you can redistribute it and/or modify it under
8 #the terms of the GNU General Public License as published by the Free
9 #Software Foundation; either version 2, or (at your option) any later
10 #version.
11
12 #GCC is distributed in the hope that it will be useful, but WITHOUT
13 #ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 #FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15 #for more details.
16
17 #You should have received a copy of the GNU General Public License
18 #along with GCC; see the file COPYING.  If not, write to the Free
19 #Software Foundation, 59 Temple Place - Suite 330, Boston, MA
20 #02111-1307, USA.
21
22 # This is the GCC target-specific configuration file
23 # where a configuration type is mapped to different system-specific
24 # definitions and files.  This is invoked by the autoconf-generated
25 # configure script.  Putting it in a separate shell file lets us skip
26 # running autoconf when modifying target-specific information.
27
28 # This file switches on the shell variable ${target}, and also uses the
29 # following shell variables:
30 #
31 #  with_*               Various variables as set by configure.
32 #
33 #  enable_threads_flag  Either the name, yes or no depending on whether
34 #                       threads support was requested.
35 #
36 #  default_use_cxa_atexit
37 #                       "no" by default, can be set to "yes" if a target
38 #                       wishes to use __cxa_atexit() by default if the
39 #                       $enable___cxa_atexit variable is not set.
40 #
41 #  gas_flag             Either yes or no depending on whether GNU as was
42 #                       requested.
43 #
44 #  gnu_ld_flag          Either yes or no depending on whether GNU ld was
45 #                       requested.
46
47 # This file sets the following shell variables for use by the
48 # autoconf-generated configure script:
49 #
50 #  cpu_type             The name of the cpu, if different from the first
51 #                       chunk of the canonical target name.
52 #
53 #  tm_defines           List of target macros to define for all compilations.
54 #
55 #  tm_file              A list of target macro files, if different from
56 #                       "$cpu_type/$cpu_type.h". Usually it's constructed
57 #                       per target in a way like this:
58 #                       tm_file="${tm_file} dbxelf.h elfos.h svr4.h ${cpu_type.h}/elf.h"
59 #                       Note that the preferred order is:
60 #                       - specific target header "${cpu_type}/${cpu_type.h}"
61 #                       - generic headers like dbxelf.h elfos.h, netware.h, etc.
62 #                       - specializing target headers like ${cpu_type.h}/elf.h
63 #                       This helps to keep OS specific stuff out of the CPU
64 #                       defining header ${cpu_type}/${cpu_type.h}.
65 #
66 #  tm_p_file            Location of file with declarations for functions
67 #                       in $out_file.
68 #
69 #  out_file             The name of the machine description C support
70 #                       file, if different from "$cpu_type/$cpu_type.c".
71 #
72 #  md_file              The name of the machine-description file, if
73 #                       different from "$cpu_type/$cpu_type.md".
74 #
75 #  tmake_file           A list of machine-description-specific
76 #                       makefile-fragments, if different from
77 #                       "$cpu_type/t-$cpu_type".
78 #
79 #  extra_modes          The name of the file containing a list of extra
80 #                       machine modes, if necessary and different from
81 #                       "$cpu_type/$cpu_type-modes.def".
82 #
83 #  extra_objs           List of extra objects that should be linked into
84 #                       the compiler proper (cc1, cc1obj, cc1plus)
85 #                       depending on target.
86 #
87 #  extra_headers        List of used header files from the directory
88 #                       config/${cpu_type}.
89 #
90 #  extra_passes         List of extra executables compiled for this target
91 #                       machine, used for compiling from source to object.
92 #
93 #  extra_parts          List of extra object files that should be compiled
94 #                       for this target machine.
95 #
96 #  extra_programs       Like extra_passes, but these are used when linking.
97 #
98 #  c_target_objs        List of extra target-dependent objects that be
99 #                       linked into the C compiler only.
100 #
101 #  cxx_target_objs      List of extra target-dependent objects that be
102 #                       linked into the C++ compiler only.
103 #
104 #  target_gtfiles       List of extra source files with type information.
105 #
106 #  xm_defines           List of macros to define when compiling for the
107 #                       target machine.
108 #
109 #  xm_file              List of files to include when compiling for the
110 #                       target machine.
111 #
112 #  use_collect2         Set to yes or no, depending on whether collect2
113 #                       will be used.
114 #
115 #  target_cpu_default   Set to override the default target model.
116 #
117 #  gdb_needs_out_file_path
118 #                       Set to yes if gdb needs a dir command with
119 #                       `dirname $out_file`.
120 #
121 #  thread_file          Set to control which thread package to use.
122 #
123 #  gas                  Set to yes or no depending on whether the target
124 #                       system normally uses GNU as.
125 #
126 #  need_64bit_hwint     Set to yes if HOST_WIDE_INT must be 64 bits wide
127 #                       for this target.  This is true iff
128 #                       MAX_LONG_TYPE_SIZE is 64.  (The code which
129 #                       determines the underlying integral type for
130 #                       HOST_WIDE_INT cannot see the definition of
131 #                       MAX_LONG_TYPE_SIZE.)
132 #
133 #  configure_default_options
134 #                       Set to an initializer for configure_default_options
135 #                       in configargs.h, based on --with-cpu et cetera.
136 #
137 #  use_fixproto         Set to "yes" if fixproto should be run normally,
138 #                       "no" if fixproto should never be run.
139
140 # The following variables are used in each case-construct to build up the
141 # outgoing variables:
142 #
143 #  gnu_ld               Set to yes or no depending on whether the target
144 #                       system normally uses GNU ld.
145
146 out_file=
147 tmake_file=
148 extra_headers=
149 extra_passes=
150 extra_parts=
151 extra_programs=
152 extra_objs=
153 extra_gcc_objs=
154 c_target_objs=
155 cxx_target_objs=
156 tm_defines=
157 xm_defines=
158 # Set this to force installation and use of collect2.
159 use_collect2=
160 # Set this to override the default target model.
161 target_cpu_default=
162 # Set this if gdb needs a dir command with `dirname $out_file`
163 gdb_needs_out_file_path=
164 # Set this to control which thread package will be used.
165 thread_file=
166 # Reinitialize these from the flag values every loop pass, since some
167 # configure entries modify them.
168 gas="$gas_flag"
169 gnu_ld="$gnu_ld_flag"
170 enable_threads=$enable_threads_flag
171 default_use_cxa_atexit=no
172 target_gtfiles=
173 need_64bit_hwint=
174
175 # Default to using fixproto.  We will reverse this eventually.
176 use_fixproto=yes
177
178 # Don't carry these over build->host->target.  Please.
179 xm_file=
180 md_file=
181
182 # Obsolete configurations.
183 case ${target} in
184  dummy)
185     if test "x$enable_obsolete" != xyes; then
186       echo "*** Configuration ${target} is obsolete." >&2
187       echo "*** Specify --enable-obsolete to build it anyway." >&2
188       echo "*** Support will be REMOVED in the next major release of GCC," >&2
189       echo "*** unless a maintainer comes forward." >&2
190       exit 1
191     fi;;
192 esac
193
194 # Unsupported targets list.  Do not put an entry in this list unless
195 # it would otherwise be caught by a more permissive pattern.  The list
196 # should be in alphabetical order.
197 case ${target} in
198    alpha*-*-linux*libc1*                \
199  | i[34567]86-sequent-sysv              \
200  | i[34567]86-sequent-sysv[123]*        \
201  | i[34567]86-go32-*                    \
202  | i[34567]86-*-go32*                   \
203  | m68k-*-linux*aout*                   \
204  | m68k-*-linux*libc1*                  \
205  | mips64orion*-*-rtems*                \
206  | powerpc-*-linux*libc1*               \
207  | sparc-*-linux*aout*                  \
208  | sparc-*-linux*libc1*                 \
209  | sparc-hal-solaris2*                  \
210  | thumb-*-*                            \
211  | *-*-linux*coff*                      \
212  | *-*-linux*oldld*                     \
213  | *-*-rtemsaout*                       \
214  | *-*-rtemscoff*                       \
215  | vax-*-vms*                           \
216  )
217         echo "*** Configuration ${target} not supported" 1>&2
218         exit 1
219         ;;
220 esac
221
222 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
223 # updated in each machine entry.  Also set default extra_headers for some
224 # machines.
225 tm_p_file=
226 cpu_type=`echo ${target} | sed 's/-.*$//'`
227 case ${target} in
228 alpha*-*-*)
229         cpu_type=alpha
230         need_64bit_hwint=yes
231         ;;
232 am33_2.0-*-linux*)
233         cpu_type=mn10300
234         ;;
235 strongarm*-*-*)
236         cpu_type=arm
237         ;;
238 arm*-*-*)
239         cpu_type=arm
240         extra_headers="mmintrin.h"
241         ;;
242 ep9312*-*-*)
243         cpu_type=arm
244         ;;
245 xscale-*-*)
246         cpu_type=arm
247         extra_headers="mmintrin.h"
248         ;;
249 i[34567]86-*-*)
250         cpu_type=i386
251         extra_headers="mmintrin.h xmmintrin.h emmintrin.h pmmintrin.h"
252         ;;
253 x86_64-*-*)
254         cpu_type=i386
255         extra_headers="mmintrin.h xmmintrin.h emmintrin.h pmmintrin.h"
256         need_64bit_hwint=yes
257         ;;
258 ia64-*-*)
259         extra_headers=ia64intrin.h
260         need_64bit_hwint=yes
261         ;;
262 hppa*-*-* | parisc*-*-*)
263         cpu_type=pa
264         ;;
265 m680[012]0-*-*)
266         cpu_type=m68k
267         extra_headers=math-68881.h
268         ;;
269 m68k-*-*)
270         extra_headers=math-68881.h
271         ;;
272 mips*-*-*)
273         cpu_type=mips
274         need_64bit_hwint=yes
275         ;;
276 powerpc*-*-*)
277         cpu_type=rs6000
278         extra_headers="ppc-asm.h altivec.h spe.h"
279         need_64bit_hwint=yes
280         ;;
281 rs6000*-*-*)
282         need_64bit_hwint=yes
283         ;;
284 sparc64*-*-*)
285         cpu_type=sparc
286         need_64bit_hwint=yes
287         ;;
288 sparc*-*-*)
289         cpu_type=sparc
290         ;;
291 s390*-*-*)
292         need_64bit_hwint=yes
293         ;;
294 # Note the 'l'; we need to be able to match e.g. "shle" or "shl".
295 sh[123456789l]*-*-*)
296         cpu_type=sh
297         need_64bit_hwint=yes
298         ;;
299 tic4x-*-*)
300         cpu_type=c4x
301         ;;
302 esac
303
304 tm_file=${cpu_type}/${cpu_type}.h
305 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h
306 then
307         tm_p_file=${cpu_type}/${cpu_type}-protos.h
308 fi
309 extra_modes=
310 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-modes.def
311 then
312         extra_modes=${cpu_type}/${cpu_type}-modes.def
313 fi
314
315 case ${target} in
316 x86_64-*-*)
317         tm_file="i386/biarch64.h ${tm_file}"
318         ;;
319 esac
320
321 # On a.out targets, we need to use collect2.
322 case ${target} in
323 *-*-*aout*)
324         use_collect2=yes
325         ;;
326 esac
327
328 # Common parts for widely ported systems.
329 case ${target} in
330 *-*-linux*)
331         case ${target} in
332          *-*-linux*libc1* | *-*-linux*aout*)
333                 ;;
334         *)
335                 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
336                 gas=yes gnu_ld=yes
337                 case x${enable_threads} in
338                         x | xyes | xposix) thread_file='posix'
339                         ;;
340                 esac
341                 ;;
342         esac
343         ;;
344 *-*-gnu*)
345         # On the Hurd, the setup is just about the same on
346         # each different CPU.  The specific machines that we
347         # support are matched above and just set $cpu_type.
348         tm_file="${cpu_type}/gnu.h"
349         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
350         # GNU tools are the only tools.
351         gnu_ld=yes
352         gas=yes
353         # These details are the same as for Linux.
354         # But here we need a little extra magic.
355         tmake_file="t-slibgcc-elf-ver t-linux t-gnu"
356         case ${target} in
357         alpha*)
358                 tm_file="${cpu_type}/${cpu_type}.h alpha/elf.h alpha/linux.h alpha/linux-elf.h gnu.h ${tm_file}"
359                 ;;
360         i[34567]86-*-*)
361                 tm_file="${cpu_type}/${cpu_type}.h i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h gnu.h ${tm_file}"
362                 ;;
363         esac
364         ;;
365 *-*-openbsd*)
366         tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
367         if test x$enable_threads = xyes; then
368                 thread_file='posix'
369                 tmake_file="${tmake_file} t-openbsd-thread"
370         fi
371         ;;
372 *-*-netbsd*)
373         tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd t-libgcc-pic"
374         gas=yes
375         gnu_ld=yes
376
377         # NetBSD 2.0 and later get POSIX threads enabled by default.
378         # Allow them to be explicitly enabled on any other version.
379         case x${enable_threads} in
380         x)
381                 case ${target} in
382                 *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
383                         thread_file='posix'
384                         tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS"
385                         ;;
386                 esac
387                 ;;
388         xyes | xposix)
389                 thread_file='posix'
390                 tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS"
391                 ;;
392         esac
393
394         # NetBSD 1.7 and later are set up to use GCC's crtstuff for
395         # ELF configurations.  We will clear extra_parts in the
396         # a.out configurations.
397         case ${target} in
398         *-*-netbsd*1.[7-9]* | *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
399                 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
400                 ;;
401         esac
402
403         # NetBSD 2.0 and later provide __cxa_atexit(), which we use by
404         # default (unless overridden by --disable-__cxa_atexit).
405         case ${target} in
406         *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
407                 default_use_cxa_atexit=yes
408                 ;;
409         esac
410         ;;
411 *-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
412         # This is the place-holder for the generic a.out configuration
413         # of FreeBSD.  No actual configuration resides here since
414         # there was only ever a bare-bones ix86 configuration for
415         # a.out and it exists solely in the machine-specific section.
416         # This place-holder must exist to avoid dropping into
417         # the generic ELF configuration of FreeBSD (i.e. it must be
418         # ordered before that section).
419         ;;
420 *-*-freebsd*)
421         # This is the generic ELF configuration of FreeBSD.  Later
422         # machine-specific sections may refine and add to this
423         # configuration.
424         #
425         # Due to tm_file entry ordering issues that vary between cpu
426         # architectures, we only define fbsd_tm_file to allow the
427         # machine-specific section to dictate the final order of all
428         # entries of tm_file with the minor exception that components
429         # of the tm_file set here will always be of the form:
430         #
431         # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
432         #
433         # The machine-specific section should not tamper with this
434         # ordering but may order all other entries of tm_file as it
435         # pleases around the provided core setting.
436         gas=yes
437         gnu_ld=yes
438         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
439         case ${target} in
440         *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
441         *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
442         *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
443         *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
444         *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
445         esac
446         tmake_file="t-slibgcc-elf-ver t-freebsd"
447         case x${enable_threads} in
448         xno) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h";;
449         x | xyes | xpthreads | xposix)
450                 thread_file='posix'
451                 tmake_file="${tmake_file} t-freebsd-thread"
452                 # Before 5.0, FreeBSD can't bind shared libraries to -lc
453                 # when "optionally" threaded via weak pthread_* checks.
454                 case ${target} in
455                 *-*-freebsd[34] | *-*-freebsd[34].*)
456                         tmake_file="${tmake_file} t-slibgcc-nolc-override";;
457                 esac
458                 ;;
459         *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
460         esac
461         fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h"
462         ;;
463 *-*-darwin*)
464         tm_file="${tm_file} darwin.h"
465         tm_p_file="${tm_p_file} darwin-protos.h"
466         tmake_file="t-darwin"
467         target_gtfiles="\$(srcdir)/config/darwin.c"
468         c_target_objs="darwin-c.o"
469         cxx_target_objs="darwin-c.o"
470         extra_parts="crt2.o"
471         extra_objs="darwin.o"
472         case x${enable_threads} in
473              x | xyes | xposix) thread_file='posix'
474              ;;
475         esac
476         ;;      
477 *-*-vxworks*)
478         tmake_file=t-vxworks
479         tm_file="${tm_file} elfos.h svr4.h vxworks.h"
480         thread_file='vxworks'
481         use_collect2=yes
482         ;;
483 esac
484
485 case ${target} in
486 # Support site-specific machine types.
487 *local*)
488         rest=`echo ${target} | sed -e "s/$cpu_type-//"`
489         tm_file=${cpu_type}/$rest.h
490         if test -f $srcdir/config/${cpu_type}/xm-$rest.h
491         then xm_file=${cpu_type}/xm-$rest.h
492         fi
493         if test -f $srcdir/config/${cpu_type}/t-$rest
494         then tmake_file=${cpu_type}/t-$rest
495         fi
496         ;;
497 alpha*-*-unicosmk*)
498         use_collect2=yes
499         tm_file="${tm_file} alpha/unicosmk.h"
500
501         # Don't include t-ieee for now because we don't support that yet
502         # tmake_file="alpha/t-ieee"
503         tmake_file="alpha/t-unicosmk"
504         ;;
505 alpha*-*-linux*)
506         tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
507         target_cpu_default="MASK_GAS"
508         tmake_file="t-slibgcc-elf-ver t-linux alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
509         use_fixproto=no
510         ;;
511 alpha*-*-gnu*)
512         target_cpu_default="MASK_GAS"
513         tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
514         use_fixproto=no
515         ;;
516 alpha*-*-freebsd*)
517         tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
518         target_cpu_default="MASK_GAS"
519         tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
520         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
521         use_fixproto=no
522         ;;
523 alpha*-*-netbsd*)
524         tm_file="${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h"
525         target_cpu_default="MASK_GAS"
526         tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
527         use_fixproto=no
528         ;;
529 alpha*-*-openbsd*)
530         tm_defines="OBSD_NO_DYNAMIC_LIBRARIES OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_FUNCTION_SIZE OBSD_HAS_DECLARE_OBJECT"
531         tm_file="alpha/alpha.h openbsd.h alpha/openbsd.h"
532         # default x-alpha is only appropriate for dec-osf.
533         target_cpu_default="MASK_GAS"
534         tmake_file="alpha/t-alpha alpha/t-ieee"
535         use_fixproto=no
536         ;;
537 alpha*-dec-osf[45]*)
538         if test x$stabs = xyes
539         then
540                 tm_file="${tm_file} dbx.h"
541         fi
542         if test x$gas != xyes
543         then
544                 extra_passes="mips-tfile mips-tdump"
545         fi
546         use_collect2=yes
547         tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf4"
548         tm_file="${tm_file} alpha/osf.h"
549         extra_headers=va_list.h
550         case ${target} in
551           *-*-osf4*)
552             # Set target_cpu_default except on 4.0a.
553             case ${target} in
554                 *-*-osf4.0a) ;;
555                 *) target_cpu_default=MASK_SUPPORT_ARCH
556             esac
557             ;;
558           *-*-osf5*)
559             tm_file="${tm_file} alpha/osf5.h"
560             target_cpu_default=MASK_SUPPORT_ARCH
561             ;;
562         esac
563         case x${enable_threads} in
564         x | xyes | xpthreads | xposix)
565             thread_file='posix'
566             tmake_file="${tmake_file} alpha/t-osf-pthread"
567             ;;
568         esac
569         ;;
570 alpha64-dec-*vms*)
571         tm_file="${tm_file} alpha/vms.h alpha/vms64.h"
572         xm_file="alpha/xm-vms.h"
573         tmake_file="alpha/t-alpha alpha/t-vms alpha/t-vms64 alpha/t-ieee"
574         prefix=/gnu
575         local_prefix=/gnu
576         use_fixproto=no
577         ;;
578 alpha*-dec-*vms*)
579         tm_file="${tm_file} alpha/vms.h"
580         xm_file=alpha/xm-vms.h
581         tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
582         prefix=/gnu
583         local_prefix=/gnu
584         use_fixproto=no
585         ;;
586 arc-*-elf*)
587         tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
588         extra_parts="crtinit.o crtfini.o"
589         ;;
590 arm-*-coff* | armel-*-coff*)
591         tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h"
592         tmake_file=arm/t-arm-coff
593         use_fixproto=no
594         ;;
595 arm-semi-aof | armel-semi-aof)
596         tm_file="arm/semiaof.h arm/aof.h arm/arm.h"
597         tmake_file=arm/t-semi
598         use_fixproto=no
599         ;;
600 arm*-*-freebsd*|strongarm*-*-freebsd*)
601         tm_file="dbxelf.h elfos.h ${fbsd_tm_file} arm/elf.h arm/aout.h arm/freebsd.h arm/arm.h"
602         tmake_file="${tmake_file} arm/t-strongarm-elf"
603         use_fixproto=no
604         ;;
605 arm*-*-netbsdelf*)
606         tm_file="dbxelf.h elfos.h netbsd.h netbsd-elf.h arm/elf.h arm/aout.h arm/arm.h arm/netbsd-elf.h"
607         tmake_file="${tmake_file} arm/t-netbsd"
608         use_fixproto=no
609         ;;
610 arm*-*-netbsd*)
611         tm_file="arm/aout.h arm/arm.h netbsd.h netbsd-aout.h arm/netbsd.h"
612         tmake_file="t-netbsd arm/t-netbsd"
613         extra_parts=""
614         use_collect2=yes
615         use_fixproto=no
616         ;;
617 arm*-*-linux*)                  # ARM GNU/Linux with ELF
618         tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h"
619         tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
620         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
621         gnu_ld=yes
622         case x${enable_threads} in
623         x | xyes | xpthreads | xposix)
624                 thread_file='posix'
625                 ;;
626         esac
627         use_fixproto=no
628         ;;
629 arm*-*-uclinux*)                # ARM ucLinux
630         tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h"
631         tmake_file=arm/t-arm-elf
632         ;;
633 arm*-*-ecos-elf)
634         tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"
635         tmake_file=arm/t-arm-elf
636         use_fixproto=no
637         ;;
638 arm*-*-rtems*)
639         tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/rtems-elf.h rtems.h"
640         tmake_file="arm/t-arm-elf t-rtems"
641         if test x$enable_threads = xyes; then
642           thread_file='rtems'
643         fi
644         use_fixproto=no
645         ;;
646 arm*-*-elf | ep9312-*-elf)
647         tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
648         tmake_file=arm/t-arm-elf
649         use_fixproto=no
650         ;;
651 arm*-wince-pe*)
652         tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h arm/pe.h arm/wince-pe.h"
653         tmake_file=arm/t-wince-pe
654         extra_objs="pe.o"
655         use_fixproto=no
656         ;;
657 arm-*-pe*)
658         tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h dbxcoff.h arm/pe.h"
659         tmake_file=arm/t-pe
660         extra_objs="pe.o"
661         use_fixproto=no
662         ;;
663 arm*-*-kaos*)
664         tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h kaos.h arm/kaos-arm.h"
665         tmake_file=arm/t-arm-elf
666         ;;
667 avr-*-*)
668         tm_file="avr/avr.h dbxelf.h"
669         ;;
670 c4x-*-rtems* | tic4x-*-rtems*)
671         tmake_file="c4x/t-c4x t-rtems"
672         tm_file="c4x/c4x.h c4x/rtems.h rtems.h"
673         if test x$enable_threads = xyes; then
674           thread_file='rtems'
675         fi
676         c_target_objs="c4x-c.o"
677         cxx_target_objs="c4x-c.o"
678         use_fixproto=no
679         ;;
680 c4x-* | tic4x-*)
681         tmake_file=c4x/t-c4x
682         c_target_objs="c4x-c.o"
683         cxx_target_objs="c4x-c.o"
684         use_fixproto=no
685         ;;
686 cris-*-aout)
687         tm_file="dbxelf.h ${tm_file} cris/aout.h"
688         gas=yes
689         tmake_file="cris/t-cris cris/t-aout"
690         use_fixproto=no
691         ;;
692 cris-*-elf | cris-*-none)
693         tm_file="dbxelf.h elfos.h ${tm_file}"
694         tmake_file="cris/t-cris cris/t-elfmulti"
695         gas=yes
696         use_fixproto=no
697         ;;
698 cris-*-linux*)
699         tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
700         tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
701         use_fixproto=no
702         ;;
703 d30v-*)
704         tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
705         use_fixproto=no
706         ;;
707 dsp16xx-*)
708         ;;
709 fr30-*-elf)
710         tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
711         tmake_file=fr30/t-fr30
712         extra_parts="crti.o crtn.o crtbegin.o crtend.o"
713         ;;
714 frv-*-elf)
715         tm_file="dbxelf.h elfos.h svr4.h ${tm_file} frv/frv-abi.h"
716         tmake_file=frv/t-frv
717         ;;
718 h8300-*-rtems*)
719         tmake_file="h8300/t-h8300 t-rtems"
720         tm_file="h8300/h8300.h dbxcoff.h h8300/coff.h h8300/rtems.h rtems.h"
721         if test x$enable_threads = xyes; then
722           thread_file='rtems'
723         fi
724         use_fixproto=no
725         ;;
726 h8300-*-elf*)
727         tmake_file="h8300/t-h8300 h8300/t-elf"
728         tm_file="h8300/h8300.h dbxelf.h elfos.h h8300/elf.h"
729         ;;
730 h8300-*-*)
731         tm_file="h8300/h8300.h dbxcoff.h h8300/coff.h"
732         ;;
733 hppa*64*-*-linux* | parisc*64*-*-linux*)
734         target_cpu_default="(MASK_PA_11 | MASK_PA_20)"
735         tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h svr4.h linux.h \
736                  pa/pa-linux.h pa/pa64-regs.h pa/pa-64.h pa/pa64-linux.h"
737         tmake_file=pa/t-linux64
738         gas=yes gnu_ld=yes
739         need_64bit_hwint=yes
740         ;;
741 hppa*-*-linux* | parisc*-*-linux*)
742         target_cpu_default="MASK_PA_11 | MASK_NO_SPACE_REGS"
743         tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
744                  pa/pa32-regs.h pa/pa32-linux.h"
745         tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
746         use_fixproto=no
747         ;;
748 # port not yet contributed.
749 #hppa*-*-openbsd*)
750 #       target_cpu_default="MASK_PA_11"
751 #       use_fixproto=no
752 #       ;;
753 hppa1.1-*-pro*)
754         target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
755         tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
756         tmake_file="pa/t-pro"
757         use_fixproto=no
758         ;;
759 hppa1.1-*-osf*)
760         target_cpu_default="MASK_PA_11"
761         tm_file="${tm_file} pa/pa32-regs.h dbxelf.h pa/som.h pa/pa-osf.h"
762         tmake_file="pa/t-pa"
763         use_collect2=yes
764         use_fixproto=no
765         ;;
766 hppa1.1-*-rtems*)
767         target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
768         tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h rtems.h"
769         tmake_file="pa/t-pro t-rtems"
770         if test x$enable_threads = xyes; then
771           thread_file='rtems'
772         fi
773         use_fixproto=no
774         ;;
775 hppa1.1-*-bsd*)
776         tm_file="${tm_file} pa/pa32-regs.h dbxelf.h pa/som.h"
777         target_cpu_default="MASK_PA_11"
778         tmake_file="pa/t-pa"
779         use_collect2=yes
780         use_fixproto=no
781         ;;
782 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
783         target_cpu_default="MASK_PA_11"
784         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h dbxelf.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
785         tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
786         if test x$enable_threads = x; then
787             enable_threads=$have_pthread_h
788         fi
789         case x${enable_threads} in
790         xyes | xdce)
791                 tmake_file="${tmake_file} pa/t-dce-thr"
792                 ;;
793         esac
794         use_collect2=yes
795         ;;
796 hppa1.0-*-hpux10*)
797         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h dbxelf.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
798         tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
799         if test x$enable_threads = x; then
800             enable_threads=$have_pthread_h
801         fi
802         case x${enable_threads} in
803         xyes | xdce)
804                 tmake_file="${tmake_file} pa/t-dce-thr"
805                 ;;
806         esac
807         use_collect2=yes
808         ;;
809 hppa*64*-*-hpux11*)
810         if test x$gas = xyes
811         then
812                 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h  \
813                          pa/pa64-regs.h pa/long_double.h pa/pa-hpux.h \
814                          pa/pa-hpux11.h pa/pa-64.h pa/pa64-hpux.h"
815         else
816                 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h pa/elf.h \
817                          pa/pa64-regs.h pa/long_double.h pa/pa-hpux.h \
818                          pa/pa-hpux11.h pa/pa-64.h pa/pa64-hpux.h"
819         fi
820         need_64bit_hwint=yes
821         tmake_file="pa/t-pa64 pa/t-pa-hpux"
822         target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
823         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
824         if test x$gnu_ld = xyes
825         then
826                 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
827         fi
828         case x${enable_threads} in
829         xyes | xposix )
830                 thread_file=posix 
831                 ;;
832         esac
833         use_fixproto=no
834         ;;
835 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
836         target_cpu_default="MASK_PA_11"
837         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h dbxelf.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
838         tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
839         case x${enable_threads} in
840         xyes | xposix )
841                 thread_file=posix 
842                 ;;
843         esac
844         use_collect2=yes
845         use_fixproto=no
846         ;;
847 hppa1.0-*-hpux11*)
848         tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h dbxelf.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
849         tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
850         case x${enable_threads} in
851         xyes | xposix )
852                 thread_file=posix 
853                 ;;
854         esac
855         use_collect2=yes
856         use_fixproto=no
857         ;;
858 i370-*-opened*)                  # IBM 360/370/390 Architecture
859         xm_defines='FATAL_EXIT_CODE=12'
860         tm_file="i370/oe.h i370/i370.h"
861         tmake_file="i370/t-i370"
862         c_target_objs="i370-c.o"
863         cxx_target_objs="i370-c.o"
864         # Don't bother fixing up header files; they're weird.
865         use_fixproto=no
866         ;;
867 i370-*-mvs*)
868         xm_defines='FATAL_EXIT_CODE=12'
869         tm_file="i370/mvs.h i370/i370.h"
870         tmake_file="i370/t-i370"
871         c_target_objs="i370-c.o"
872         cxx_target_objs="i370-c.o"
873         ;;
874 i370-*-linux*)
875         tm_file="dbxelf.h elfos.h svr4.h linux.h i370/linux.h i370/i370.h"
876         tmake_file="t-slibgcc-elf-ver t-linux"
877         # broken_install=yes
878         use_fixproto=no
879         ;;
880 i[34567]86-*-darwin*)
881         tm_file="${tm_file} i386/darwin.h"
882         ;;
883 i[34567]86-*-elf*)
884         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h"
885         tmake_file="i386/t-i386elf t-svr4"
886         ;;
887 i[34567]86-ncr-sysv4*)          # NCR 3000 - ix86 running system V.4
888         xm_defines="SMALL_ARG_MAX"
889         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv4-cpp.h"
890         extra_parts="crtbegin.o crtend.o"
891         tmake_file=i386/t-crtpic
892         ;;
893 i[34567]86-*-netware)           # Intel 80386's running netware
894         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
895         use_fixproto=no
896         ;;
897 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
898         if test x$gas = xyes
899         then
900                 tm_file="${tm_file} usegas.h"
901         fi
902         xm_defines="SMALL_ARG_MAX"
903         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ptx4.h i386/ptx4-i.h"
904         tmake_file=t-svr4
905         extra_parts="crtbegin.o crtend.o"
906         ;;
907 i[34567]86-*-aout*)
908         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h"
909         ;;
910 i[34567]86-*-beoself* | i[34567]86-*-beos*)
911         tmake_file='i386/t-beos i386/t-crtpic'
912         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/beos-elf.h"
913         extra_parts='crtbegin.o crtend.o'
914         use_fixproto=no
915         ;;
916 i[34567]86-*-freebsd2 | i[34567]86-*-freebsd2.* | i[34567]86-*-freebsd*aout*)
917         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/freebsd-aout.h"
918         tmake_file=t-freebsd
919         use_fixproto=no
920         ;;
921 i[34567]86-*-freebsd*)
922         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"
923         use_fixproto=no
924         ;;
925 x86_64-*-freebsd*)
926         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
927         use_fixproto=no
928         ;;
929 i[34567]86-*-netbsdelf*)
930         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
931         use_fixproto=no
932         ;;
933 i[34567]86-*-netbsd*)
934         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h netbsd.h netbsd-aout.h i386/netbsd.h"
935         tmake_file=t-netbsd
936         extra_parts=""
937         use_collect2=yes
938         use_fixproto=no
939         ;;
940 x86_64-*-netbsd*)
941         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h"
942         use_fixproto=no
943         ;;
944 i[34567]86-*-openbsd*)
945         tm_file="i386/i386.h i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h openbsd-oldgas.h openbsd.h i386/openbsd.h"
946         # needed to unconfuse gdb
947         tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
948         # we need collect2 until our bug is fixed...
949         use_collect2=yes
950         use_fixproto=no
951         ;;
952 i[34567]86-*-coff*)
953         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/i386-coff.h"
954         ;;
955 i[34567]86-*-linux*aout*)       # Intel 80386's running GNU/Linux
956                                 # with a.out format
957         tmake_file="i386/t-crtstuff"
958         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h linux-aout.h i386/linux-aout.h"
959         gnu_ld=yes
960         use_fixproto=no
961         ;;
962 i[34567]86-*-linux*libc1)       # Intel 80386's running GNU/Linux
963                                 # with ELF format using the
964                                 # GNU/Linux C library 5
965         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
966         tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
967         extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
968         gnu_ld=yes
969         if test x$enable_threads = xyes; then
970                 thread_file='single'
971         fi
972         use_fixproto=no
973         ;;
974 i[34567]86-*-linux*)    # Intel 80386's running GNU/Linux
975                         # with ELF format using glibc 2
976                         # aka GNU/Linux C library 6
977         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
978         tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
979         use_fixproto=no
980         ;;
981 x86_64-*-linux*)
982         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h \
983                  i386/x86-64.h i386/linux64.h"
984         tmake_file="t-slibgcc-elf-ver t-linux i386/t-linux64"
985         use_fixproto=no
986         ;;
987 i[34567]86-*-gnu*)
988         use_fixproto=no
989         ;;
990 i[34567]86-pc-msdosdjgpp*)
991         xm_file=i386/xm-djgpp.h
992         tm_file="dbxcoff.h ${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/djgpp.h"
993         tmake_file=i386/t-djgpp
994         gnu_ld=yes
995         gas=yes
996         use_fixproto=no
997         ;;
998 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
999         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
1000         tmake_file=t-libc-ok
1001         gnu_ld=yes
1002         gas=yes
1003         ;;
1004 i[34567]86-*-lynxos*)
1005         if test x$gas = xyes
1006         then
1007                 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h svr3.h lynx.h i386/lynx.h"
1008         else
1009                 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx-ng.h i386/lynx-ng.h"
1010         fi
1011         ;;
1012 i[34567]86-*-mach*)
1013         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/mach.h"
1014 #       tmake_file=t-libc-ok
1015         use_collect2=yes
1016         ;;
1017 i[34567]86-*-nto-qnx*)
1018         tm_file="${tm_file} i386/att.h dbxelf.h tm-dwarf2.h elfos.h svr4.h i386/unix.h i386/nto.h"
1019         tmake_file=i386/t-nto
1020         gnu_ld=yes
1021         gas=yes
1022         use_fixproto=no
1023         ;;
1024 i[34567]86-*-rtems*)
1025         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h"
1026         extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1027         tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1028         if test x$enable_threads = xyes; then
1029           thread_file='rtems'
1030         fi
1031         use_fixproto=no
1032         ;;
1033 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1034         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/sco5.h"
1035         if test x$gas = xyes
1036         then
1037                 tm_file="usegas.h ${tm_file}"
1038         fi
1039         tmake_file=i386/t-sco5
1040         extra_parts="crtbegin.o crtend.o"
1041         ;;
1042 i[34567]86-*-solaris2*)
1043         xm_defines="SMALL_ARG_MAX"
1044         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h sol2.h i386/sol2.h"
1045         tmake_file="i386/t-sol2 t-svr4"
1046         if test x$gnu_ld = xyes; then
1047                 tmake_file="$tmake_file t-slibgcc-elf-ver"
1048         else
1049                 tmake_file="$tmake_file t-slibgcc-sld"
1050         fi
1051         extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1052         if test x${enable_threads} = x; then
1053             enable_threads=$have_pthread_h
1054             if test x${enable_threads} = x; then
1055                 enable_threads=$have_thread_h
1056             fi
1057         fi
1058         if test x${enable_threads} = xyes; then
1059             if test x${have_pthread_h} = xyes; then
1060                 thread_file='posix'
1061             else
1062                 thread_file='solaris'
1063             fi
1064         fi
1065         ;;
1066 i[34567]86-*-sysv5*)           # Intel x86 on System V Release 5
1067        tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
1068        if test x$stabs = xyes
1069        then
1070                tm_file="${tm_file} dbx.h"
1071        fi
1072        tmake_file="i386/t-crtpic t-svr4"
1073        extra_parts="crtbegin.o crtend.o"
1074        if test x$enable_threads = xyes; then
1075                thread_file='posix'
1076        fi
1077        ;;
1078 i[34567]86-*-sysv4*)            # Intel 80386's running system V.4
1079         xm_defines="SMALL_ARG_MAX"
1080         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv4-cpp.h"
1081         if test x$stabs = xyes
1082         then
1083                 tm_file="${tm_file} dbx.h"
1084         fi
1085         tmake_file="i386/t-crtpic t-svr4"
1086         extra_parts="crtbegin.o crtend.o"
1087         ;;
1088 i[34567]86-*-udk*)      # Intel x86 on SCO UW/OSR5 Dev Kit
1089         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h i386/udk.h"
1090         tmake_file="i386/t-crtpic i386/t-udk t-svr4"
1091         extra_parts="crtbegin.o crtend.o"
1092         ;;
1093 i[34567]86-*-sysv*)             # Intel 80386's running system V
1094         if test x$gas = xyes
1095         then
1096                 if test x$stabs = xyes
1097                 then
1098                         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h i386/svr3dbx.h"
1099                         tmake_file=i386/t-svr3dbx
1100                         extra_parts="svr3.ifile svr3z.ifile"
1101                 else
1102                         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h"
1103                         extra_parts="crtbegin.o crtend.o"
1104                         tmake_file=i386/t-crtstuff
1105                 fi
1106         else
1107                 tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/sysv3.h"
1108                 extra_parts="crtbegin.o crtend.o"
1109                 tmake_file=i386/t-crtstuff
1110         fi
1111         tmake_file="$tmake_file i386/t-crtpic"
1112         ;;
1113 i386-*-vsta)                    # Intel 80386's running VSTa kernel
1114         xm_file="i386/xm-vsta.h"
1115         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/vsta.h"
1116         ;;
1117 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1118         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h"
1119         xm_file=i386/xm-cygwin.h
1120         tmake_file="i386/t-cygming i386/t-cygwin"
1121         extra_objs=winnt.o
1122         c_target_objs=cygwin2.o
1123         cxx_target_objs=cygwin2.o
1124         if test x$enable_threads = xyes; then
1125                 thread_file='posix'
1126         fi
1127         use_fixproto=no
1128         ;;
1129 i[34567]86-*-mingw32*)
1130         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/mingw32.h"
1131         xm_file=i386/xm-mingw32.h
1132         tmake_file="i386/t-cygming i386/t-mingw32"
1133         extra_objs=winnt.o
1134         if test x$enable_threads = xyes; then
1135                 thread_file='win32'
1136         fi
1137         case ${target} in
1138                 *mingw32crt*)
1139                         tm_file="${tm_file} i386/crtdll.h"
1140                         ;;
1141                 *mingw32msv* | *mingw32*)
1142                         ;;
1143         esac
1144         use_fixproto=no
1145         ;;
1146 i[34567]86-*-uwin*)
1147         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygwin.h i386/uwin.h"
1148         tmake_file="i386/t-cygwin i386/t-uwin"
1149         extra_objs=winnt.o
1150         if test x$enable_threads = xyes; then
1151                 thread_file='win32'
1152         fi
1153         ;;
1154 i[34567]86-*-interix3*)
1155         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h"
1156         tmake_file="i386/t-interix"
1157         extra_objs=winnt.o
1158         if test x$enable_threads = xyes ; then
1159                 thread_file='posix'
1160         fi
1161         if test x$stabs = xyes ; then
1162                 tm_file="${tm_file} dbxcoff.h"
1163         fi
1164         use_fixproto=no
1165         ;;
1166 i[34567]86-*-interix*)
1167         tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h interix.h"
1168         tmake_file="i386/t-interix"
1169         extra_objs=winnt.o
1170         if test x$enable_threads = xyes ; then
1171                 thread_file='posix'
1172         fi
1173         if test x$stabs = xyes ; then
1174                 tm_file="${tm_file} dbxcoff.h"
1175         fi
1176         use_fixproto=no
1177         ;;
1178 i[34567]86-*-kaos*)
1179         tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h kaos.h i386/kaos-i386.h"
1180         tmake_file="i386/t-i386elf t-svr4"
1181         ;;
1182 i860-*-sysv4*)
1183         tm_file="${tm_file} elfos.h svr4.h i860/sysv4.h"
1184         tmake_file="i860/t-i860 i860/t-svr4"
1185         extra_parts="crtbegin.o crtend.o"
1186         ;;
1187 i960-*-coff*)
1188         tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1189         tmake_file=i960/t-960bare
1190         c_target_objs="i960-c.o"
1191         cxx_target_objs="i960-c.o"
1192         ;;
1193 i960-*-rtems)
1194         tmake_file="i960/t-960bare t-rtems"
1195         tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/rtems.h rtems.h"
1196         if test x$enable_threads = xyes; then
1197           thread_file='rtems'
1198         fi
1199         c_target_objs="i960-c.o"
1200         cxx_target_objs="i960-c.o"
1201         use_fixproto=no
1202         ;;
1203 i960-*-*)                       # Default i960 environment.
1204         use_collect2=yes
1205         tmake_file=i960/t-960bare
1206         c_target_objs="i960-c.o"
1207         cxx_target_objs="i960-c.o"
1208         ;;
1209 ia64*-*-elf*)
1210         tm_file="${tm_file} dbxelf.h elfos.h ia64/sysv4.h ia64/elf.h"
1211         tmake_file="ia64/t-ia64"
1212         target_cpu_default="0"
1213         if test x$gas = xyes
1214         then
1215                 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1216         fi
1217         if test x$gnu_ld = xyes
1218         then
1219                 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1220         fi
1221         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
1222         ;;
1223 ia64*-*-freebsd*)
1224         tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} ia64/sysv4.h ia64/freebsd.h"
1225         target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1226         tmake_file="${tmake_file} ia64/t-ia64"
1227         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
1228         use_fixproto=no
1229         ;;
1230 ia64*-*-linux*)
1231         tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h ia64/sysv4.h ia64/linux.h"
1232         tmake_file="t-slibgcc-elf-ver t-linux ia64/t-ia64 ia64/t-glibc"
1233         target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1234         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
1235         if test x"$use_libunwind_exceptions" = xyes; then
1236           tmake_file="$tmake_file t-libunwind"
1237         fi
1238         use_fixproto=no
1239         ;;
1240 ia64*-*-hpux*)
1241         tm_file="${tm_file} dbxelf.h elfos.h svr4.h ia64/sysv4.h ia64/hpux.h ia64/hpux_longdouble.h"
1242         tmake_file="ia64/t-ia64 ia64/t-hpux"
1243         target_cpu_default="MASK_GNU_AS"
1244         case x$enable_threads in
1245         xyes | xposix )
1246                 thread_file=posix
1247                 ;;
1248         esac
1249         use_collect2=no
1250         c_target_objs="ia64-c.o"
1251         cxx_target_objs="ia64-c.o"
1252         # If we decide to run fixproto we should define FIXPROTO_DEFINES
1253         # in ia64/t-hpux, and also fix the definition of putenv in
1254         # sys-protos.h (const char not char).
1255         use_fixproto=no
1256         ;;
1257 ip2k-*-elf)
1258         tm_file="elfos.h ${tm_file}"
1259         ;;
1260 iq2000*-*-elf*)
1261         tm_file="svr4.h elfos.h iq2000/iq2000.h"
1262         tmake_file=iq2000/t-iq2000
1263         out_file=iq2000/iq2000.c
1264         md_file=iq2000/iq2000.md
1265         ;;
1266 m32r-*-elf*)
1267         tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
1268         extra_parts="crtinit.o crtfini.o"
1269         ;;
1270 # m68hc11 and m68hc12 share the same machine description.
1271 m68hc11-*-*|m6811-*-*)
1272         tm_file="dbxelf.h elfos.h m68hc11/m68hc11.h"
1273         tm_p_file="m68hc11/m68hc11-protos.h"
1274         md_file="m68hc11/m68hc11.md"
1275         out_file="m68hc11/m68hc11.c"
1276         tmake_file="m68hc11/t-m68hc11-gas"
1277         ;;
1278 m68hc12-*-*|m6812-*-*)
1279         tm_file="m68hc11/m68hc12.h dbxelf.h elfos.h m68hc11/m68hc11.h"
1280         tm_p_file="m68hc11/m68hc11-protos.h"
1281         md_file="m68hc11/m68hc11.md"
1282         out_file="m68hc11/m68hc11.c"
1283         tmake_file="m68hc11/t-m68hc11-gas"
1284         ;;
1285 m68000-hp-hpux*)                # HP 9000 series 300
1286         tm_file="m68k/hp320base.h m68k/m68k.h m68k/hp320.h m68k/hp310.h"
1287         tm_defines="TARGET_DEFAULT=0" # 68000, no 68881, no bitfield ops
1288         if test x$gas = xyes
1289         then
1290                 tm_defines="${tm_defines} DBX_DEBUGGING_INFO=1 USE_GAS"
1291         fi
1292         tmake_file=m68k/t-hp320
1293         use_collect2=yes
1294         ;;
1295 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
1296         tm_file="m68k/hp320base.h m68k/m68k.h m68k/hp320.h"
1297         if test x$gas = xyes
1298         then
1299                 tm_defines="DBX_DEBUGGING_INFO=1 USE_GAS"
1300         else
1301                 tm_defines="NO_DOT_IN_LABEL NO_BUGS"
1302         fi
1303         use_collect2=yes
1304         ;;
1305 m68k-hp-hpux*)  # HP 9000 series 300
1306         tm_file="m68k/hp320base.h m68k/m68k.h m68k/hp320.h"
1307         if test x$gas = xyes
1308         then
1309                 tm_defines="DBX_DEBUGGING_INFO=1 USE_GAS"
1310         fi
1311         use_collect2=yes
1312         ;;
1313 m68k-*-aout*)
1314         tmake_file=m68k/t-m68kbare
1315         tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kemb.h m68k/m68k-aout.h libgloss.h"
1316         ;;
1317 m68k-*-coff*)
1318         tmake_file=m68k/t-m68kbare
1319         tm_defines="MOTOROLA USE_GAS"
1320         tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kemb.h dbxcoff.h m68k/coff.h dbx.h"
1321         ;;
1322 m68020-*-elf* | m68k-*-elf*)
1323         tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h"
1324         tmake_file=m68k/t-m68kelf
1325         extra_parts="crtbegin.o crtend.o"
1326         ;;
1327 m68010-*-netbsdelf* | m68k*-*-netbsdelf*)
1328         tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h m68k/netbsd-elf.h"
1329         case ${target} in
1330         m68010*)
1331                 target_cpu_default="0"
1332                 ;;
1333         *)
1334                 target_cpu_default="MASK_68020|MASK_68881|MASK_BITFIELD"
1335                 ;;
1336         esac
1337         use_fixproto=no
1338         ;;
1339 m68k*-*-netbsd*)
1340         tm_file="m68k/m68k.h netbsd.h netbsd-aout.h m68k/netbsd.h"
1341         tmake_file=t-netbsd
1342         extra_parts=""
1343         use_collect2=yes
1344         use_fixproto=no
1345         ;;
1346 m68k*-*-openbsd*)
1347         # needed to unconfuse gdb
1348         tm_defines="OBSD_OLD_GAS TARGET_DEFAULT=(MASK_68020|MASK_68881|MASK_BITFIELD)"
1349         tm_file="m68k/m68k.h openbsd.h m68k/openbsd.h"
1350         tmake_file="t-libc-ok t-openbsd m68k/t-openbsd"
1351         # we need collect2 until our bug is fixed...
1352         use_collect2=yes
1353         use_fixproto=no
1354         ;;
1355 m68k-*-sysv4*)                  # Motorola m68k's running system V.4
1356         tm_file="m68k/m68k.h m68k/sgs.h dbxelf.h elfos.h svr4.h m68k/m68kv4.h"
1357         tm_defines="MOTOROLA SGS SGS_CMP_ORDER SGS_SWITCH_TABLES"
1358         tmake_file=t-svr4
1359         extra_parts="crtbegin.o crtend.o"
1360         ;;
1361 m68k-*-linux*)          # Motorola m68k's running GNU/Linux
1362                                 # with ELF format using glibc 2
1363                                 # aka the GNU/Linux C library 6.
1364         tm_file="m68k/m68k.h dbxelf.h elfos.h svr4.h linux.h m68k/linux.h"
1365         tm_defines="MOTOROLA USE_GAS"
1366         tmake_file="t-slibgcc-elf-ver t-linux"
1367         use_fixproto=no
1368         ;;
1369 m68k-*-rtems*)
1370         tmake_file="m68k/t-m68kbare m68k/t-crtstuff t-rtems m68k/t-rtems"
1371         tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h m68k/rtemself.h rtems.h"
1372         extra_parts="crtbegin.o crtend.o"
1373         if test x$enable_threads = xyes; then
1374           thread_file='rtems'
1375         fi
1376         use_fixproto=no
1377         ;;
1378 mcore-*-elf)
1379         tm_file="dbxelf.h elfos.h svr4.h ${tm_file} mcore/mcore-elf.h"
1380         tmake_file=mcore/t-mcore
1381         ;;
1382 mcore-*-pe*)
1383         tm_file="svr3.h dbxcoff.h ${tm_file} mcore/mcore-pe.h"
1384         tmake_file=mcore/t-mcore-pe
1385         ;;
1386 mips-sgi-irix6*o32)             # SGI System V.4., IRIX 6, O32 ABI
1387         tm_file="${tm_file} mips/iris5.h"
1388         if test x$gas = xyes
1389         then
1390                 tm_file="${tm_file} mips/sdb.h mips/iris5gas.h mips/iris6-o32-gas.h"
1391                 if test x$stabs = xyes
1392                 then
1393                         tm_file="${tm_file} dbx.h mips/dbxmdebug.h"
1394                 fi
1395                 tmake_file=mips/t-iris5-gas
1396         else
1397                 tm_file="${tm_file} mips/iris6-o32-as.h"
1398                 tmake_file=mips/t-iris5-as
1399         fi
1400         tm_file="${tm_file} mips/iris6-o32.h"
1401         tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
1402         xm_file=mips/xm-iris5.h
1403         target_cpu_default="MASK_ABICALLS"
1404         # mips-tfile doesn't work yet
1405         # See comment in mips/iris5.h file.
1406         use_collect2=yes
1407 #       if test x$enable_threads = xyes; then
1408 #               thread_file='irix'
1409 #       fi
1410         ;;
1411 mips-sgi-irix6*)                # SGI System V.4., IRIX 6
1412         tm_file="${tm_file} mips/iris5.h mips/iris6.h"
1413         if test "x$gnu_ld" = xyes
1414         then
1415                 tm_file="${tm_file} mips/iris6gld.h"
1416         fi
1417         tmake_file="mips/t-iris mips/t-iris5-6 mips/t-iris6"
1418         target_cpu_default="MASK_ABICALLS|MASK_FLOAT64|MASK_64BIT"
1419         tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"
1420 #       if test x$enable_threads = xyes; then
1421 #               thread_file='irix'
1422 #       fi
1423         ;;
1424 mips-sgi-irix5cross64)          # Irix5 host, Irix 6 target, cross64
1425         tm_file="${tm_file} mips/iris5.h mips/iris6.h mips/cross64.h"
1426         xm_file=mips/xm-iris5.h
1427         tmake_file="mips/t-iris mips/t-cross64"
1428         target_cpu_default="MASK_ABICALLS|MASK_FLOAT64|MASK_64BIT"
1429         tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32"
1430         # See comment in mips/iris[56].h files.
1431         use_collect2=yes
1432 #       if test x$enable_threads = xyes; then
1433 #               thread_file='irix'
1434 #       fi
1435         ;;
1436 mips-sgi-irix5*)                # SGI System V.4., IRIX 5
1437         tm_file="${tm_file} mips/iris5.h"
1438         if test x$gas = xyes
1439         then
1440                 tm_file="${tm_file} mips/sdb.h mips/iris5gas.h"
1441                 if test x$stabs = xyes
1442                 then
1443                         tm_file="${tm_file} dbx.h mips/dbxmdebug.h"
1444                 fi
1445                 tmake_file=mips/t-iris5-gas
1446         else
1447                 tmake_file=mips/t-iris5-as
1448         fi
1449         tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
1450         xm_file=mips/xm-iris5.h
1451         target_cpu_default="MASK_ABICALLS"
1452         # mips-tfile doesn't work yet
1453         # See comment in mips/iris5.h file.
1454         use_collect2=yes
1455 #       if test x$enable_threads = xyes; then
1456 #               thread_file='irix'
1457 #       fi
1458         ;;
1459 mips*-*-netbsd*)                        # NetBSD/mips, either endian.
1460         target_cpu_default="MASK_GAS|MASK_ABICALLS"
1461         tm_file="elfos.h ${tm_file} mips/elf.h netbsd.h netbsd-elf.h mips/netbsd.h"
1462         tmake_file="${tmake_file}"
1463         use_fixproto=no
1464         ;;
1465 mips64*-*-linux*)
1466         tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h mips/linux64.h"
1467         tmake_file="t-slibgcc-elf-ver t-linux mips/t-linux64"
1468
1469         # This default ABI is a partial lie: t-linux64 overrides the
1470         # DRIVER_SELF_SPEC that sets the default abi, in the spec file
1471         # that is installed.  What GCC thinks of as the default must
1472         # remain as ABI_32 such that the SONAMEs of the libgcc shared
1473         # libraries remain compatible with those of mips-linux-gnu.
1474         tm_defines="MIPS_ISA_DEFAULT=1 MIPS_ABI_DEFAULT=ABI_32"
1475         target_cpu_default="MASK_ABICALLS|MASK_FLOAT64|MASK_64BIT"
1476         extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
1477         gnu_ld=yes
1478         gas=yes
1479         if test x$enable_threads = xyes; then
1480                 thread_file='posix'
1481         fi
1482         use_fixproto=no
1483         ;;
1484 mips*-*-linux*)                         # Linux MIPS, either endian.
1485         tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
1486         case ${target} in
1487         mipsisa32*-*)
1488                 target_cpu_default="MASK_SOFT_FLOAT"
1489                 tm_defines="MIPS_ISA_DEFAULT=32"
1490                 ;;
1491         esac
1492         tmake_file="t-slibgcc-elf-ver t-linux"
1493         use_fixproto=no
1494         ;;
1495 mips*-*-openbsd*)
1496         tm_defines="OBSD_HAS_DECLARE_FUNCTION_NAME OBSD_HAS_DECLARE_OBJECT OBSD_HAS_CORRECT_SPECS"
1497         target_cpu_default="MASK_GAS|MASK_ABICALLS"
1498         tm_file="mips/mips.h openbsd.h mips/openbsd.h mips/sdb.h"
1499         case ${target} in
1500         mips*el-*-openbsd*) 
1501             tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=0";;
1502         *)  tm_defines="${tm_defines} TARGET_ENDIAN_DEFAULT=MASK_BIG_ENDIAN";;
1503         esac
1504         use_fixproto=no
1505         ;;
1506 mipsisa32-*-elf* | mipsisa32el-*-elf*)
1507         tm_file="${tm_file} mips/elf.h"
1508         tmake_file=mips/t-isa3264
1509         tm_defines="MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_EABI"
1510         ;;
1511 mipsisa32r2-*-elf* | mipsisa32r2el-*-elf*)
1512         tm_file="${tm_file} mips/elf.h"
1513         tmake_file=mips/t-isa3264
1514         tm_defines="MIPS_ISA_DEFAULT=33 MIPS_ABI_DEFAULT=ABI_EABI"
1515         ;;
1516 mipsisa64-*-elf* | mipsisa64el-*-elf*)
1517         tm_file="${tm_file} mips/elf.h"
1518         tmake_file=mips/t-isa3264
1519         target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1520         tm_defines="MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_EABI"
1521         ;;
1522 mipsisa64sr71k-*-elf*)
1523         tm_file="${tm_file} mips/elf.h"
1524         tmake_file=mips/t-sr71k
1525         target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1526         tm_defines="MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sr71000\\\" MIPS_ABI_DEFAULT=ABI_EABI"
1527         ;;
1528 mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*)
1529         tm_file="${tm_file} mips/elf.h"
1530         tmake_file=mips/t-elf
1531         target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1532         tm_defines="MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sb1\\\" MIPS_ABI_DEFAULT=ABI_O64"
1533         ;;
1534 mips-*-elf* | mipsel-*-elf*)
1535         tm_file="${tm_file} mips/elf.h"
1536         tmake_file=mips/t-elf
1537         ;;
1538 mips64-*-elf* | mips64el-*-elf*)
1539         tm_file="${tm_file} mips/elf64.h"
1540         tmake_file=mips/t-elf
1541         target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1542         tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
1543         ;;
1544 mips64vr-*-elf* | mips64vrel-*-elf*)
1545         tm_file="mips/vr.h ${tm_file} mips/elf64.h"
1546         tm_defines="MIPS_ABI_DEFAULT=ABI_O64 MIPS_MARCH_CONTROLS_SOFT_FLOAT=1"
1547         tmake_file=mips/t-vr
1548         ;;
1549 mips64orion-*-elf* | mips64orionel-*-elf*)
1550         tm_file="${tm_file} mips/elforion.h mips/elf64.h"
1551         tmake_file=mips/t-elf
1552         tmake_file=mips/t-elf
1553         target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1554         tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
1555         ;;
1556 mips*-*-rtems*)
1557         tm_file="${tm_file} mips/elf.h mips/rtems.h rtems.h"
1558         tmake_file="mips/t-elf t-rtems mips/t-rtems"
1559         if test x$enable_threads = xyes; then
1560           thread_file='rtems'
1561         fi
1562         use_fixproto=no
1563         ;;
1564 mipstx39-*-elf* | mipstx39el-*-elf*)
1565         tm_file="${tm_file} mips/r3900.h mips/elf.h"
1566         tmake_file=mips/t-r3900
1567         ;;
1568 mmix-knuth-mmixware)
1569         need_64bit_hwint=yes
1570         use_fixproto=no
1571         ;;
1572 mn10300-*-*)
1573         tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
1574         if test x$stabs = xyes
1575         then
1576                 tm_file="${tm_file} dbx.h"
1577         fi
1578         use_collect2=no
1579         ;;
1580 ns32k-*-netbsdelf*)
1581         echo "GCC does not yet support the ${target} target"; exit 1
1582         use_fixproto=no
1583         ;;
1584 ns32k-*-netbsd*)
1585         tm_file="${tm_file} netbsd.h netbsd-aout.h ns32k/netbsd.h"
1586         # On NetBSD, the headers are already okay, except for math.h.
1587         tmake_file="t-netbsd ns32k/t-ns32k"
1588         extra_parts=""
1589         use_collect2=yes
1590         use_fixproto=no
1591         ;;
1592 pdp11-*-bsd)
1593         tm_file="${tm_file} pdp11/2bsd.h"
1594         ;;
1595 pdp11-*-*)
1596         ;;
1597 avr-*-*)
1598         ;;
1599 # port not yet contributed
1600 #powerpc-*-openbsd*)
1601 #       tmake_file="${tmake_file} rs6000/t-fprules "
1602 #       extra_headers=
1603 #       use_fixproto=no
1604 #       ;;
1605 powerpc64-*-linux*)
1606         tm_file="rs6000/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
1607         case x$with_cpu in
1608         x|xpowerpc64|xdefault64) tm_file="${tm_file} rs6000/default64.h";;
1609         esac
1610         tm_file="${tm_file} rs6000/linux64.h"
1611         tmake_file="rs6000/t-fprules t-slibgcc-elf-ver t-linux rs6000/t-ppccomm rs6000/t-linux64"
1612         use_fixproto=no
1613         ;;
1614 powerpc64-*-gnu*)
1615         tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux64.h rs6000/gnu.h"
1616         tmake_file="rs6000/t-fprules t-slibgcc-elf-ver t-gnu rs6000/t-linux64"
1617         use_fixproto=no
1618         ;;
1619 powerpc-*-beos*)
1620         tm_file="${tm_file} rs6000/aix.h rs6000/beos.h rs6000/xcoff.h"
1621         tmake_file="rs6000/t-fprules rs6000/t-beos"
1622         extra_headers=
1623         ;;
1624 powerpc-*-darwin*)
1625         tm_file="${tm_file} rs6000/darwin.h"
1626         tmake_file="t-darwin rs6000/t-darwin"
1627         extra_headers=altivec.h
1628         # override ppc default
1629         need_64bit_hwint=
1630         ;;
1631 powerpc*-*-freebsd*)
1632         tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} rs6000/sysv4.h rs6000/freebsd.h"
1633         tmake_file="rs6000/t-fprules rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
1634         use_fixproto=no
1635         ;;
1636 powerpc-*-netbsd*)
1637         tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h"
1638         tmake_file="${tmake_file} rs6000/t-netbsd"
1639         use_fixproto=no
1640         ;;
1641 powerpc-*-chorusos*)
1642         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h chorus.h"
1643         tmake_file="rs6000/t-fprules rs6000/t-ppcos rs6000/t-ppccomm"
1644         case x${enable_threads} in
1645           xyes | xpthreads | xposix)
1646                 thread_file='posix'
1647                 ;;
1648         esac
1649         ;;
1650 powerpc-*-eabispe*)
1651         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabispe.h"
1652         tmake_file="rs6000/t-spe rs6000/t-ppccomm"
1653         ;;
1654 powerpc-*-eabisimaltivec*)
1655         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h rs6000/eabialtivec.h"
1656         tmake_file="rs6000/t-fprules rs6000/t-ppcendian rs6000/t-ppccomm"
1657         ;;
1658 powerpc-*-eabisim*)
1659         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
1660         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1661         use_fixproto=no
1662         ;;
1663 powerpc-*-elf*)
1664         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
1665         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1666         ;;
1667 powerpc-*-eabialtivec*)
1668         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabialtivec.h"
1669         tmake_file="rs6000/t-fprules rs6000/t-ppcendian rs6000/t-ppccomm"
1670         ;;
1671 powerpc-*-eabi*)
1672         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h"
1673         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1674         use_fixproto=no
1675         ;;
1676 powerpc-*-rtems*)
1677         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h rtems.h"
1678         tmake_file="rs6000/t-fprules t-rtems rs6000/t-ppccomm"
1679         if test x$enable_threads = xyes; then
1680           thread_file='rtems'
1681         fi
1682         use_fixproto=no
1683         ;;
1684 powerpc-*-linux*altivec*)
1685         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h"
1686         tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
1687         use_fixproto=no
1688         ;;
1689 powerpc-*-linux*spe*)
1690         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxspe.h"
1691         tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
1692         use_fixproto=no
1693         ;;
1694 powerpc-*-linux*)
1695         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
1696         tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
1697         use_fixproto=no
1698         ;;
1699 powerpc-*-gnu-gnualtivec*)
1700         tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h rs6000/gnu.h"
1701         tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
1702         if test x$enable_threads = xyes; then
1703                 thread_file='posix'
1704         fi
1705         use_fixproto=no
1706         ;;
1707 powerpc-*-gnu*)
1708         tm_file="${cpu_type}/${cpu_type}.h elfos.h svr4.h freebsd-spec.h gnu.h rs6000/sysv4.h rs6000/linux.h rs6000/gnu.h"
1709         tmake_file="rs6000/t-fprules rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
1710         if test x$enable_threads = xyes; then
1711                 thread_file='posix'
1712         fi
1713         use_fixproto=no
1714         ;;
1715 powerpc-wrs-vxworks*)
1716         # We want vxworks.h after rs6000/sysv4.h, which unfortunately
1717         # means we have to redo the tm_file list from scratch.
1718         tm_file="rs6000/rs6000.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
1719         tm_file="${tm_file} vxworks.h rs6000/vxworks.h"
1720         tmake_file="${tmake_file} rs6000/t-fprules rs6000/t-ppccomm rs6000/t-vxworks"
1721         extra_headers=ppc-asm.h
1722         use_fixproto=no
1723         ;;
1724 powerpc-wrs-windiss*)
1725         tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/windiss.h"
1726         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1727         thread_file=""
1728         ;;
1729 powerpcle-*-sysv*)
1730         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
1731         tmake_file="rs6000/t-fprules rs6000/t-ppcos rs6000/t-ppccomm"
1732         ;;
1733 powerpcle-*-elf*)
1734         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
1735         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1736         ;;
1737 powerpcle-*-eabisim*)
1738         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
1739         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1740         use_fixproto=no
1741         ;;
1742 powerpcle-*-eabi*)
1743         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
1744         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1745         use_fixproto=no
1746         ;;
1747 powerpc-*-kaos*)
1748         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h kaos.h rs6000/kaos-ppc.h"
1749         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1750         ;;
1751 powerpcle-*-kaos*)
1752         tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h kaos.h rs6000/kaos-ppc.h"
1753         tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
1754         ;;
1755 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
1756         tm_file="${tm_file} rs6000/aix.h rs6000/aix41.h rs6000/xcoff.h"
1757         tmake_file="rs6000/t-fprules rs6000/t-newas"
1758         use_collect2=yes
1759         extra_headers=
1760         ;;
1761 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
1762         tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h"
1763         tmake_file=rs6000/t-aix43
1764         use_collect2=yes
1765         thread_file='aix'
1766         extra_headers=
1767         use_fixproto=no
1768         ;;
1769 rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*)
1770         tm_file="rs6000/biarch64.h ${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h"
1771         tmake_file=rs6000/t-aix43
1772         use_collect2=yes
1773         thread_file='aix'
1774         extra_headers=
1775         use_fixproto=no
1776         ;;
1777 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
1778         tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h"
1779         tmake_file=rs6000/t-aix52
1780         use_collect2=yes
1781         thread_file='aix'
1782         extra_headers=
1783         use_fixproto=no
1784         ;;
1785 rs6000-*-lynxos*)
1786         tm_file="svr3.h lynx.h rs6000/lynxbase.h rs6000/rs6000.h rs6000/lynx.h"
1787         tmake_file=rs6000/t-fprules
1788         use_collect2=yes
1789         ;;
1790 s390-*-linux*)
1791         tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
1792         tmake_file="t-slibgcc-elf-ver t-linux s390/t-crtstuff"
1793         use_fixproto=no
1794         ;;
1795 s390x-*-linux*)
1796         tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
1797         tm_p_file=s390/s390-protos.h
1798         md_file=s390/s390.md
1799         extra_modes=s390/s390-modes.def
1800         out_file=s390/s390.c
1801         tmake_file="t-slibgcc-elf-ver t-linux s390/t-crtstuff s390/t-linux64"
1802         use_fixproto=no
1803         ;;
1804 sh-*-elf* | sh[2346l]*-*-elf* | sh*-*-kaos*)
1805         tmake_file="sh/t-sh sh/t-elf"
1806         case ${target} in
1807         shl* | sh64l*)
1808                 tm_file="sh/little.h ${tm_file}"
1809                 tmake_file="${tmake_file} sh/t-le"
1810                 ;;
1811         esac
1812         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h"
1813         case ${target} in
1814         sh64*)
1815                 tmake_file="${tmake_file} sh/t-sh64"
1816                 tm_file="${tm_file} sh/sh64.h"
1817                 extra_headers="shmedia.h ushmedia.h sshmedia.h"
1818                 ;;
1819         sh4_single*)  target_cpu_default="SELECT_SH4_SINGLE" ;;
1820         sh4*)  target_cpu_default="SELECT_SH4" ;;
1821         sh3e*) target_cpu_default="SELECT_SH3E" ;;
1822         sh3*)  target_cpu_default="SELECT_SH3" ;;
1823         sh2e*) target_cpu_default="SELECT_SH2E" ;;
1824         sh2*)  target_cpu_default="SELECT_SH2" ;;
1825         esac
1826         case ${target} in
1827         sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
1828         esac
1829         case ${target} in
1830         sh*-*-kaos*) tm_file="${tm_file} kaos.h sh/kaos-sh.h" ;;
1831         esac
1832         ;;
1833 sh-*-rtemself*)
1834         tmake_file="sh/t-sh sh/t-elf t-rtems"
1835         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/embed-elf.h sh/rtemself.h rtems.h"
1836         if test x$enable_threads = xyes; then
1837           thread_file='rtems'
1838         fi
1839         use_fixproto=no
1840         ;;
1841 sh-*-rtems*)
1842         tmake_file="sh/t-sh t-rtems"
1843         tm_file="${tm_file} dbxcoff.h sh/coff.h sh/rtems.h rtems.h"
1844         if test x$enable_threads = xyes; then
1845           thread_file='rtems'
1846         fi
1847         use_fixproto=no
1848         ;;
1849 sh-*-linux* | sh[2346lbe]*-*-linux*)
1850         tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver t-linux"
1851         case ${target} in
1852         sh*be-*-* | sh*eb-*-*) ;;
1853         *)
1854                 tm_file="sh/little.h ${tm_file}"
1855                 tmake_file="${tmake_file} sh/t-le"
1856                 ;;
1857         esac
1858         tmake_file="${tmake_file} sh/t-linux"
1859         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
1860         case ${target} in
1861         sh64*)
1862                 tmake_file="${tmake_file} sh/t-sh64"
1863                 tm_file="${tm_file} sh/sh64.h"
1864                 extra_headers="shmedia.h ushmedia.h sshmedia.h"
1865                 ;;
1866         sh4_single*) target_cpu_default="SELECT_SH4_SINGLE" ;;
1867         sh4*) target_cpu_default="SELECT_SH4" ;;
1868         sh3e[lb]e*) target_cpu_default="SELECT_SH3E" ;;
1869         sh3e[lb]*) target_cpu_default="SELECT_SH3" ;;
1870         sh3e*) target_cpu_default="SELECT_SH3E" ;;
1871         sh3*) target_cpu_default="SELECT_SH3" ;;
1872         sh2e[lb]e*) target_cpu_default="SELECT_SH2E" ;;
1873         sh2e[lb]*) target_cpu_default="SELECT_SH2" ;;
1874         sh2e*) target_cpu_default="SELECT_SH2E" ;;
1875         sh2*) target_cpu_default="SELECT_SH2" ;;
1876         esac
1877         case ${target} in
1878         sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
1879         esac
1880         use_fixproto=no
1881         ;;
1882 sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
1883   sh64-*-netbsd* | sh64l*-*-netbsd*)
1884         tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h netbsd.h netbsd-elf.h sh/netbsd-elf.h"
1885         tmake_file="${tmake_file} sh/t-sh sh/t-elf"
1886         case ${target} in
1887         sh*l*-*)
1888                 tm_file="sh/little.h ${tm_file}"
1889                 tmake_file="${tmake_file} sh/t-le"
1890                 ;;
1891         *)
1892                 tmake_file="${tmake_file} sh/t-be"
1893                 ;;
1894         esac
1895         case ${target} in
1896         sh5*-*)
1897                 # SHmedia, 32-bit ABI
1898                 target_cpu_default="SH5_BIT|SH4_BIT|SH3_BIT|SH_E_BIT"
1899                 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5"
1900                 ;;
1901         sh64*-*)
1902                 # SHmedia, 64-bit ABI
1903                 target_cpu_default="SH5_BIT|SH4_BIT"
1904                 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5 sh/t-netbsd-sh5-64"
1905                 ;;
1906         *)
1907                 # SH3, software floating point
1908                 target_cpu_default="SH1_BIT|SH2_BIT|SH3_BIT"
1909                 tmake_file="${tmake_file} sh/t-netbsd"
1910                 ;;
1911         esac
1912         use_fixproto=no
1913         ;;
1914 sh-*-*)
1915         tm_file="${tm_file} dbxcoff.h sh/coff.h"
1916         ;;
1917 sparc-tti-*)
1918         tm_file="${tm_file} sparc/pbd.h"
1919         ;;
1920 sparc-*-netbsdelf*)
1921         tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
1922         use_fixproto=no
1923         ;;
1924 sparc-*-openbsd*)
1925         tm_defines=OBSD_OLD_GAS
1926         tm_file="sparc/sparc.h openbsd.h sparc/openbsd.h"
1927         # needed to unconfuse gdb
1928         tmake_file="t-libc-ok t-openbsd sparc/t-openbsd"
1929         # we need collect2 until our bug is fixed...
1930         use_collect2=yes
1931         use_fixproto=no
1932         ;;
1933 sparc64-*-openbsd*)
1934         tm_file="sparc/openbsd1-64.h sparc/sparc.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sp64-elf.h openbsd.h sparc/openbsd64.h"
1935         gas=yes gnu_ld=yes
1936         with_cpu=ultrasparc
1937         use_fixproto=no
1938         ;;
1939 sparc-*-elf*)
1940         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h"
1941         tmake_file="sparc/t-elf sparc/t-crtfm"
1942         extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1943         ;;
1944 sparc-*-linux*)         # SPARC's running GNU/Linux, libc6
1945         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
1946         tmake_file="t-slibgcc-elf-ver t-linux sparc/t-crtfm"
1947         use_fixproto=no
1948         ;;
1949 sparc-*-rtems*)
1950         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h sparc/rtemself.h rtems.h"
1951         tmake_file="sparc/t-elf sparc/t-crtfm t-rtems"
1952         extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1953         if test x$enable_threads = xyes; then
1954           thread_file='rtems'
1955         fi
1956         use_fixproto=no
1957         ;;
1958 sparc64-*-solaris2* | sparcv9-*-solaris2*)
1959         tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/sol2-64.h sparc/sol2-bi.h"
1960         if test x$gnu_ld = xyes; then
1961                 tm_file="${tm_file} sparc/sol2-gld.h sparc/sol2-gld-bi.h"
1962         fi
1963         if test x$gas = xyes; then
1964                 tm_file="${tm_file} sparc/sol2-gas-bi.h"
1965         fi
1966         tmake_file="sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm"
1967         if test x$gnu_ld = xyes; then
1968                 tmake_file="$tmake_file t-slibgcc-elf-ver"
1969         else
1970                 tmake_file="$tmake_file t-slibgcc-sld"
1971         fi
1972         extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
1973         if test x${enable_threads} = x ; then
1974             enable_threads=$have_pthread_h
1975             if test x${enable_threads} = x ; then
1976                 enable_threads=$have_thread_h
1977             fi
1978         fi
1979         if test x${enable_threads} = xyes ; then
1980             if test x${have_pthread_h} = xyes ; then
1981                 thread_file='posix'
1982             else
1983                 thread_file='solaris'
1984             fi
1985         fi
1986         need_64bit_hwint=yes
1987         ;;
1988 sparc-*-solaris2*)
1989         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h"
1990         if test x$gnu_ld = xyes; then
1991                 tm_file="${tm_file} sparc/sol2-gld.h"
1992         fi
1993         tmake_file="sparc/t-sol2 sparc/t-crtfm"
1994         if test x$gnu_ld = xyes; then
1995                 tmake_file="$tmake_file t-slibgcc-elf-ver"
1996         else
1997                 tmake_file="$tmake_file t-slibgcc-sld"
1998         fi
1999         case ${target} in
2000         *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*)
2001                 if test x$gnu_ld = xno; then
2002                         tm_file="${tm_file} sparc/sol26-sld.h"
2003                 fi
2004                 ;;
2005         *-*-solaris2.[789])
2006                 tm_file="sparc/biarch64.h ${tm_file} sparc/sol2-bi.h"
2007                 if test x$gnu_ld = xyes; then
2008                         tm_file="${tm_file} sparc/sol2-gld-bi.h"
2009                 fi
2010                 if test x$gas = xyes; then
2011                         tm_file="${tm_file} sparc/sol2-gas-bi.h"
2012                 fi
2013                 tmake_file="$tmake_file sparc/t-sol2-64"
2014                 need_64bit_hwint=yes
2015                 ;;
2016         esac
2017         extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
2018         if test x${enable_threads} = x; then
2019             enable_threads=$have_pthread_h
2020             if test x${enable_threads} = x; then
2021                 enable_threads=$have_thread_h
2022             fi
2023         fi
2024         if test x${enable_threads} = xyes; then
2025             if test x${have_pthread_h} = xyes; then
2026                 thread_file='posix'
2027             else
2028                 thread_file='solaris'
2029             fi
2030         fi
2031         ;;
2032 sparc-*-sysv4*)
2033         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sysv4-only.h"
2034         tmake_file=t-svr4
2035         extra_parts="crtbegin.o crtend.o"
2036         ;;
2037 sparclite-*-coff*)
2038         tm_file="${tm_file} gofast.h sparc/lite.h svr3.h sparc/litecoff.h dbxcoff.h libgloss.h"
2039         tmake_file=sparc/t-sparclite
2040         ;;
2041 sparclite-*-elf*)
2042         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h gofast.h sparc/liteelf.h"
2043         tmake_file="sparc/t-sparclite sparc/t-crtfm"
2044         extra_parts="crtbegin.o crtend.o"
2045         ;;
2046 sparc86x-*-elf*)
2047         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h gofast.h sparc/sp86x-elf.h"
2048         tmake_file="sparc/t-sp86x sparc/t-crtfm"
2049         extra_parts="crtbegin.o crtend.o"
2050         ;;
2051 sparc64-*-aout*)
2052         tm_file="sparc/sparc.h sparc/aout.h sparc/sp64-aout.h"
2053         ;;
2054 sparc64-*-elf*)
2055         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/sp64-elf.h"
2056         tmake_file="${tmake_file} sparc/t-crtfm"
2057         extra_parts="crtbegin.o crtend.o"
2058         ;;
2059 sparc64-*-freebsd*|ultrasparc-*-freebsd*)
2060         tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h"
2061         tmake_file="${tmake_file} sparc/t-crtfm"
2062         case "x$with_cpu" in
2063                 xultrasparc) ;;
2064                 x) with_cpu=ultrasparc ;;
2065                 *) echo "$with_cpu not supported for freebsd target"; exit 1 ;;
2066         esac
2067         need_64bit_hwint=yes
2068         use_fixproto=no
2069         ;;
2070 sparc64-*-linux*)               # 64-bit SPARC's running GNU/Linux
2071         tmake_file="t-slibgcc-elf-ver t-linux sparc/t-linux64 sparc/t-crtfm"
2072         tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux64.h"
2073         use_fixproto=no
2074         ;;
2075 sparc64-*-netbsd*)
2076         tmake_file="${tmake_file} sparc/t-netbsd64"
2077         tm_file="sparc/biarch64.h ${tm_file}"
2078         tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
2079         use_fixproto=no
2080         ;;
2081 strongarm-*-elf*)
2082         tm_file="arm/strongarm-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
2083         tmake_file=arm/t-strongarm-elf
2084         out_file=arm/arm.c
2085         md_file=arm/arm.md
2086         extra_modes=arm/arm-modes.def
2087         ;;
2088 strongarm-*-pe)
2089         tm_file="arm/semi.h arm/aout.h arm/coff.h dbxcoff.h arm/strongarm-coff.h arm/arm.h arm/pe.h arm/strongarm-pe.h"
2090         tmake_file=arm/t-strongarm-pe
2091         out_file=arm/arm.c
2092         md_file=arm/arm.md
2093         extra_modes=arm/arm-modes.def
2094         extra_objs=pe.o
2095         ;;
2096 strongarm-*-kaos*)
2097         tm_file="arm/strongarm-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h kaos.h arm/kaos-strongarm.h"
2098         tmake_file=arm/t-strongarm-elf
2099         out_file=arm/arm.c
2100         md_file=arm/arm.md
2101         extra_modes=arm/arm-modes.def
2102         ;;
2103 v850e1-*-*)
2104         target_cpu_default="TARGET_CPU_v850e1"
2105         tm_file="dbxelf.h elfos.h svr4.h v850/v850.h"
2106         tm_p_file=v850/v850-protos.h
2107         tmake_file=v850/t-v850e
2108         md_file=v850/v850.md
2109         out_file=v850/v850.c
2110         if test x$stabs = xyes
2111         then
2112                 tm_file="${tm_file} dbx.h"
2113         fi
2114         use_collect2=no
2115         c_target_objs="v850-c.o"
2116         cxx_target_objs="v850-c.o"
2117         ;;
2118 v850e-*-*)
2119         target_cpu_default="TARGET_CPU_v850e"
2120         tm_file="dbxelf.h elfos.h svr4.h v850/v850.h"
2121         tm_p_file=v850/v850-protos.h
2122         tmake_file=v850/t-v850e
2123         md_file=v850/v850.md
2124         out_file=v850/v850.c
2125         if test x$stabs = xyes
2126         then
2127                 tm_file="${tm_file} dbx.h"
2128         fi
2129         use_collect2=no
2130         c_target_objs="v850-c.o"
2131         cxx_target_objs="v850-c.o"
2132         ;;
2133 v850-*-*)
2134         target_cpu_default="TARGET_CPU_generic"
2135         tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
2136         tmake_file=v850/t-v850
2137         if test x$stabs = xyes
2138         then
2139                 tm_file="${tm_file} dbx.h"
2140         fi
2141         use_collect2=no
2142         c_target_objs="v850-c.o"
2143         cxx_target_objs="v850-c.o"
2144         ;;
2145 vax-*-bsd*)                     # VAXen running BSD
2146         tm_file="${tm_file} vax/bsd.h"
2147         use_collect2=yes
2148         ;;
2149 vax-*-sysv*)                    # VAXen running system V
2150         tm_file="${tm_file} vax/vaxv.h"
2151         ;;
2152 vax-*-netbsdelf*)
2153         tm_file="${tm_file} elfos.h netbsd.h netbsd-elf.h vax/elf.h vax/netbsd-elf.h"
2154         use_fixproto=no
2155         ;;
2156 vax-*-netbsd*)
2157         tm_file="${tm_file} netbsd.h netbsd-aout.h vax/netbsd.h"
2158         tmake_file=t-netbsd
2159         extra_parts=""
2160         use_collect2=yes
2161         use_fixproto=no
2162         ;;
2163 vax-*-openbsd*)
2164         tm_file="vax/vax.h vax/openbsd1.h openbsd.h vax/openbsd.h"
2165         use_collect2=yes
2166         use_fixproto=no
2167         ;;
2168 vax-*-ultrix*)                  # VAXen running ultrix
2169         tm_file="${tm_file} vax/ultrix.h"
2170         ;;
2171 vax-*-*)                        # VAX default entry
2172         ;;
2173 xscale-*-elf)
2174         tm_file="arm/xscale-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
2175         tmake_file=arm/t-xscale-elf
2176         out_file=arm/arm.c
2177         md_file=arm/arm.md
2178         extra_modes=arm/arm-modes.def
2179         ;;
2180 xscale-*-coff)
2181         tm_file="arm/semi.h arm/aout.h arm/coff.h dbxcoff.h arm/xscale-coff.h arm/arm.h"
2182         tmake_file=arm/t-xscale-coff
2183         out_file=arm/arm.c
2184         md_file=arm/arm.md
2185         extra_modes=arm/arm-modes.def
2186         ;;
2187 xstormy16-*-elf)
2188         # For historical reasons, the target files omit the 'x'.
2189         tm_file="dbxelf.h elfos.h svr4.h stormy16/stormy16.h"
2190         tm_p_file=stormy16/stormy16-protos.h
2191         md_file=stormy16/stormy16.md
2192         out_file=stormy16/stormy16.c
2193         tmake_file="stormy16/t-stormy16"
2194         extra_parts="crtbegin.o crtend.o"
2195         ;;
2196 xtensa-*-elf*)
2197         tm_file="${tm_file} dbxelf.h elfos.h svr4.h xtensa/elf.h"
2198         tmake_file="xtensa/t-xtensa xtensa/t-elf"
2199         use_fixproto=no
2200         ;;
2201 xtensa-*-linux*)
2202         tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h xtensa/linux.h"
2203         tmake_file="t-slibgcc-elf-ver t-linux xtensa/t-xtensa xtensa/t-linux"
2204         use_fixproto=no
2205         ;;
2206 am33_2.0-*-linux*)
2207         tm_file="mn10300/mn10300.h dbxelf.h elfos.h linux.h mn10300/linux.h"
2208         tmake_file="t-linux mn10300/t-linux"
2209         gas=yes gnu_ld=yes
2210         if test x$enable_threads = xyes; then
2211                 thread_file='posix'
2212         fi
2213         extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
2214         use_collect2=no
2215         use_fixproto=no
2216         ;;
2217 *)
2218         echo "*** Configuration ${target} not supported" 1>&2
2219         exit 1
2220         ;;
2221 esac
2222
2223 # Support for --with-cpu and related options (and a few unrelated options,
2224 # too).
2225 case ${with_cpu} in
2226   yes | no)
2227     echo "--with-cpu must be passed a value" 1>&2
2228     exit 1
2229     ;;
2230 esac
2231
2232 # If there is no $with_cpu option, try to infer one from ${target}.
2233 # This block sets nothing except for with_cpu.
2234 if test x$with_cpu = x ; then
2235   case ${target} in
2236     ep9312-*-*)
2237       # A Cirrus ARM variant.
2238       with_cpu="ep9312"
2239       ;;
2240     i486-*-*)
2241       with_cpu=i486
2242       ;;
2243     i586-*-*)
2244       case $target_alias in
2245         k6_2-*)
2246           with_cpu=k6-2
2247           ;;
2248         k6_3-*)
2249           with_cpu=k6-3
2250           ;;
2251         k6-*)
2252           with_cpu=k6
2253           ;;
2254         pentium_mmx-*|winchip_c6-*|winchip2-*|c3-*)
2255           with_cpu=pentium-mmx
2256           ;;
2257         *)
2258           with_cpu=pentium
2259           ;;
2260       esac
2261       ;;
2262     i686-*-* | i786-*-*)
2263       case $target_alias in
2264         k8-*)
2265           with_cpu=k8
2266           ;;
2267         athlon_xp-*|athlon_mp-*|athlon_4-*)
2268           with_cpu=athlon-4
2269           ;;
2270         athlon_tbird-*|athlon-*)
2271           with_cpu=athlon
2272           ;;
2273         pentium2-*)
2274           with_cpu=pentium2
2275           ;;
2276         pentium3-*)
2277           with_cpu=pentium3
2278           ;;
2279         pentium4-*)
2280           with_cpu=pentium4
2281           ;;
2282         *)
2283           with_cpu=pentiumpro
2284           ;;
2285       esac
2286       ;;
2287     x86_64-*-*)
2288       with_cpu=k8
2289       ;;
2290     alphaev6[78]*-*-*)
2291       with_cpu=ev67
2292       ;;
2293     alphaev6*-*-*)
2294       with_cpu=ev6
2295       ;;
2296     alphapca56*-*-*)
2297       with_cpu=pca56
2298       ;;
2299     alphaev56*-*-*)
2300       with_cpu=ev56
2301       ;;
2302     alphaev5*-*-*)
2303       with_cpu=ev5
2304       ;;
2305     sparc*-*-*)
2306       with_cpu="`echo ${target} | sed 's/-.*$//'`"
2307       if [ x$with_cpu = xsparc64 ]; then
2308         with_cpu=v9
2309       fi
2310       ;;
2311   esac
2312 fi
2313
2314         # Similarly for --with-schedule.
2315         if test x$with_schedule = x; then
2316                 case ${target} in
2317                 hppa1* | parisc1*)
2318                         # Override default PA8000 scheduling model.
2319                         with_schedule=7100LC
2320                         ;;
2321                 esac
2322         fi
2323
2324         # Validate and mark as valid any --with options supported
2325         # by this target.  In order to use a particular --with option
2326         # you must list it in supported_defaults; validating the value
2327         # is optional.  This case statement should set nothing besides
2328         # supported_defaults.
2329
2330         supported_defaults=
2331         case "${target}" in
2332         alpha*-*-*)
2333                 supported_defaults="cpu tune"
2334                 for which in cpu tune; do
2335                         eval "val=\$with_$which"
2336                         case "$val" in
2337                         "" \
2338                         | ev4 | ev45 | 21064 | ev5 | 21164 | ev56 | 21164a \
2339                         | pca56 | 21164PC | 21164pc | ev6 | 21264 | ev67 \
2340                         | 21264a)
2341                                 ;;
2342                         *)
2343                                 echo "Unknown CPU used in --with-$which=$val" 1>&2
2344                                 exit 1
2345                                 ;;
2346                         esac
2347                 done
2348                 ;;
2349
2350         arm*-*-*)
2351                 supported_defaults="arch cpu float tune"
2352                 for which in cpu tune; do
2353                         eval "val=\$with_$which"
2354                         case "$val" in
2355                         "" \
2356                         | arm[236789] | arm250 | arm[67][01]0 \
2357                         | arm60 | arm620 | arm7d | arm7di \
2358                         | arm7m | arm7dm | arm7dmi | arm[79]tdmi \
2359                         | arm70 | arm700i | arm710t | arm720 \
2360                         | arm720t | arm740t | arm710c | arm920 \
2361                         | arm920t | arm940t | arm9e | arm10tdmi \
2362                         | arm7100 | arm7500 | arm7500fe | arm810 \
2363                         | arm1020t \
2364                         | xscale | iwmmxt \
2365                         | ep9312 \
2366                         | strongarm | strongarm110 | strongarm11[01]0)
2367                                 # OK
2368                                 ;;
2369                         *)
2370                                 echo "Unknown CPU used in --with-$which=$val" 1>&2
2371                                 exit 1
2372                                 ;;
2373                         esac
2374                 done
2375
2376                 case "$with_arch" in
2377                 "" \
2378                 | armv[2345] | armv2a | armv3m | armv4t | armv5t \
2379                 | armv5te | ep9312)
2380                         # OK
2381                         ;;
2382                 *)
2383                         echo "Unknown arch used in --with-arch=$with_arch" 1>&2
2384                         exit 1
2385                         ;;
2386                 esac
2387
2388                 case "$with_float" in
2389                 "" \
2390                 | soft | hard)
2391                         # OK
2392                         ;;
2393                 *)
2394                         echo "Unknown floating point type used in --with-float=$with_float" 1>&2
2395                         exit 1
2396                         ;;
2397                 esac
2398
2399                 if test "x$with_arch" != x && test "x$with_cpu" != x; then
2400                         echo "Warning: --with-arch overrides --with-cpu" 1>&2
2401                 fi
2402                 ;;
2403
2404         hppa*-*-* | parisc*-*-*)
2405                 supported_defaults="arch schedule"
2406
2407                 case "$with_arch" in
2408                 "" | 1.0 | 1.1 | 2.0)
2409                         # OK
2410                         ;;
2411                 *)
2412                         echo "Unknown architecture used in --with-arch=$with_arch" 1>&2
2413                         exit 1
2414                         ;;
2415                 esac
2416
2417                 case "$with_schedule" in
2418                 "" | 700 | 7100 | 7100LC | 7200 | 7300 | 8000)
2419                         # OK
2420                         ;;
2421                 *)
2422                         echo "Unknown processor used in --with-schedule=$with_schedule." 1>&2
2423                         exit 1
2424                         ;;
2425                 esac
2426                 ;;
2427
2428         i[34567]86-*-* | x86_64-*-*)
2429                 supported_defaults="arch cpu tune"
2430                 for which in arch cpu tune; do
2431                         eval "val=\$with_$which"
2432                         case "x$val" in
2433                         x \
2434                         | xi386 | xi486 \
2435                         | xi586 | xpentium | xpentium-mmx | xwinchip-c6 | xwinchip2 \
2436                         | xc3 | xc3-2 | xi686 | xpentiumpro | xpentium2 | xpentium3 \
2437                         | xpentium4 | xk6 | xk6-2 | xk6-3 | xathlon | xathlon-tbird \
2438                         | xathlon-4 | xathlon-xp | xathlon-mp | xk8)
2439                                 # OK
2440                                 ;;
2441                         *)
2442                                 echo "Unknown CPU given in --with-$which=$val." 1>&2
2443                                 exit 1
2444                                 ;;
2445                         esac
2446                 done
2447                 ;;
2448
2449         mips*-*-*)
2450                 supported_defaults="abi arch float tune"
2451
2452                 case "x$with_float" in
2453                 x \
2454                 | xsoft | xhard)
2455                         # OK
2456                         ;;
2457                 *)
2458                         echo "Unknown floating point type used in --with-float=$with_float" 1>&2
2459                         exit 1
2460                         ;;
2461                 esac
2462
2463                 case "x$with_abi" in
2464                 x \
2465                 | x32 | xo64 | xn32 | x64 | xeabi)
2466                         # OK
2467                         ;;
2468                 *)
2469                         echo "Unknown ABI used in --with-abi=$with_abi" 1>&2
2470                         exit 1
2471                         ;;
2472                 esac
2473                 ;;
2474
2475         powerpc*-*-* | rs6000-*-*)
2476                 supported_defaults="cpu float tune"
2477
2478                 for which in cpu tune; do
2479                         eval "val=\$with_$which"
2480                         case "x$val" in
2481                         x \
2482                         | xdefault32 | xdefault64 \
2483                         | xcommon \
2484                         | xpower | xpower2 | xpower3 | xpower4 \
2485                         | xpowerpc | xpowerpc64 \
2486                         | xrios | xrios1 | xrios2 | xrsc | xrsc1 | xrs64a \
2487                         | x401 | x403 | x405 | x405fp | x440 | x440fp | x505 \
2488                         | x601 | x602 | x603 | x603e | xec603e | x604 \
2489                         | x604e | x620 | x630 | x740 | x750 | x7400 | x7450 \
2490                         | x8540 | x801 | x821 | x823 | x860 | x970)
2491                                 # OK
2492                                 ;;
2493                         *)
2494                                 echo "Unknown cpu used in --with-$which=$val." 1>&2
2495                                 exit 1
2496                                 ;;
2497                         esac
2498                 done
2499                 ;;
2500
2501         s390*-*-*)
2502                 supported_defaults="arch mode tune"
2503
2504                 for which in arch tune; do
2505                         eval "val=\$with_$which"
2506                         case x$val in
2507                         x \
2508                         | xg5 | xg6 | xz900 | xz990)
2509                                 # OK
2510                                 ;;
2511                         *)
2512                                 echo "Unknown cpu used in --with-$which=$val." 1>&2
2513                                 exit 1
2514                                 ;;
2515                         esac
2516                 done
2517
2518                 case "x$with_mode" in
2519                 x \
2520                 | xesa | xzarch)
2521                         # OK
2522                         ;;
2523                 *)
2524                         echo "Unknown architecture mode used in --with-mode=$with_mode." 1>&2
2525                         exit 1
2526                         ;;
2527                 esac
2528                 ;;
2529
2530         sparc*-*-*)
2531                 supported_defaults="cpu float tune"
2532
2533                 for which in cpu tune; do
2534                         eval "val=\$with_$which"
2535                         case x$val in
2536                         x \
2537                         | xsparc | xsparcv9 | xsparc64 | xsparc86x \
2538                         | xv7 | xcypress | xv8 | xsupersparc | xsparclite | xf930 \
2539                         | xf934 | xhypersparc | xsparclite86x | xsparclet | tsc701 \
2540                         | xv9 | xultrasparc | xultrasparc3)
2541                                 # OK
2542                                 ;;
2543                         *)
2544                                 echo "Unknown cpu used in --with-$which=$val" 1>&2
2545                                 exit 1
2546                                 ;;
2547                         esac
2548                 done
2549
2550                 case "x$with_float" in
2551                 x \
2552                 | xsoft | xhard)
2553                         # OK
2554                         ;;
2555                 *)
2556                         echo "Unknown floating point type used in --with-float=$with_float" 1>&2
2557                         exit 1
2558                         ;;
2559                 esac
2560                 ;;
2561
2562         v850*-*-*)
2563                 supported_defaults=cpu
2564                 case "x$with_cpu" in
2565                 x | xv850e | xv850e1)
2566                         # OK
2567                         ;;
2568                 *)
2569                         echo "Unknown cpu used in --with-cpu=$with_cpu" 1>&2
2570                         exit 1
2571                         ;;
2572                 esac
2573                 ;;
2574         esac
2575
2576         # Set some miscellaneous flags for particular targets.
2577         target_cpu_default2=
2578         case ${target} in
2579         alpha*-*-*)
2580                 if test x$gas = xyes
2581                 then
2582                         target_cpu_default2="MASK_GAS"
2583                 fi
2584                 ;;
2585
2586         arm*-*-*)
2587                 case "x$with_cpu" in
2588                 x)
2589                         # The most generic
2590                         target_cpu_default2="TARGET_CPU_generic"
2591                         ;;
2592
2593                 *)
2594                         target_cpu_default2="TARGET_CPU_$with_cpu"
2595                         ;;
2596                 esac
2597                 ;;
2598
2599         hppa*-*-* | parisc*-*-*)
2600                 if test x$gas = xyes
2601                 then
2602                         target_cpu_default2="MASK_GAS|MASK_JUMP_IN_DELAY"
2603                 fi
2604                 ;;
2605
2606         mips*-*-*)
2607                 case ${target} in
2608                 mips*-*-ecoff* | mips*-*-elf*)
2609                         if test x$gas = xyes
2610                         then
2611                                 if test x$gnu_ld = xyes
2612                                 then
2613                                         target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
2614                                 else
2615                                         target_cpu_default2="MASK_GAS"
2616                                 fi
2617                         fi
2618                         ;;
2619                 mips*-*-*)
2620                         if test x$gas = xyes
2621                         then
2622                                 target_cpu_default2="MASK_GAS"
2623                         fi
2624                         ;;
2625                 esac
2626                 case ${target} in
2627                         mips*el-*-*)
2628                                 tm_defines="TARGET_ENDIAN_DEFAULT=0 $tm_defines"
2629                                 ;;
2630                 esac
2631                 case $tm_file in
2632                         *mips/elf.h* | *mips/elf64.h*)
2633                                 tm_defines="OBJECT_FORMAT_ELF $tm_defines"
2634                                 ;;
2635                 esac
2636                 if test "x$enable_gofast" = xyes
2637                 then
2638                         tm_defines="INIT_SUBTARGET_OPTABS=INIT_GOFAST_OPTABS $tm_defines"
2639                         tm_file="gofast.h $tm_file"
2640                         tmake_file="mips/t-gofast $tmake_file"
2641                 else
2642                         tmake_file="mips/t-mips $tmake_file"
2643                 fi
2644                 ;;
2645
2646         powerpc*-*-* | rs6000-*-*)
2647                 if test x$enable_altivec = xyes
2648                 then
2649                         tm_file="$tm_file rs6000/altivec-defs.h"
2650                 fi
2651                 # FIXME: The PowerPC port uses the value set at compile time,
2652                 # although it's only cosmetic.
2653                 if test "x$with_cpu" != x
2654                 then
2655                         target_cpu_default2="\\\"$with_cpu\\\""
2656                 fi
2657                 out_file=rs6000/rs6000.c
2658                 c_target_objs="${c_target_objs} rs6000-c.o"
2659                 cxx_target_objs="${cxx_target_objs} rs6000-c.o"
2660                 tmake_file="rs6000/t-rs6000 ${tmake_file}"
2661                 ;;
2662
2663         sparc*-*-*)
2664                 # Some standard aliases.
2665                 case x$with_cpu in
2666                 xsparc)
2667                         with_cpu=v7
2668                         ;;
2669                 xsparc86x)
2670                         with_cpu=sparclite86x
2671                         ;;
2672                 xsparcv9 | xsparc64)
2673                         with_cpu=v9
2674                         ;;
2675                 esac
2676
2677                 # The Sparc port checks this value at compile-time.
2678                 target_cpu_default2="TARGET_CPU_$with_cpu"
2679                 ;;
2680         v850*-*-*)
2681                 # FIXME: The v850 is "special" in that it does not support
2682                 # runtime CPU selection, only --with-cpu.
2683                 case "x$with_cpu" in
2684                 x)
2685                         ;;
2686                 xv850e)
2687                         target_cpu_default2="TARGET_CPU_$with_cpu"
2688                         ;;
2689                 esac
2690                 ;;
2691         esac
2692
2693         t=
2694         all_defaults="abi cpu arch tune schedule float mode"
2695         for option in $all_defaults
2696         do
2697                 eval "val=\$with_$option"
2698                 if test -n "$val"; then
2699                         case " $supported_defaults " in
2700                         *" $option "*)
2701                                 ;;
2702                         *)
2703                                 echo "This target does not support --with-$option." 2>&1
2704                                 exit 1
2705                                 ;;
2706                         esac
2707
2708                         if test "x$t" = x
2709                         then
2710                                 t="{ \"$option\", \"$val\" }"
2711                         else
2712                                 t="${t}, { \"$option\", \"$val\" }"
2713                         fi
2714                 fi
2715         done
2716         if test "x$t" = x
2717         then
2718                 configure_default_options="{ { NULL, NULL} }"
2719         else
2720                 configure_default_options="{ ${t} }"
2721         fi
2722
2723         if test "$target_cpu_default2" != ""
2724         then
2725                 if test "$target_cpu_default" != ""
2726                 then
2727                         target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
2728                 else
2729                         target_cpu_default=$target_cpu_default2
2730                 fi
2731         fi