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