1 # GCC build-, host- and target-specific configuration file.
2 # Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
4 #This file is part of GNU CC.
6 #GNU CC is free software; you can redistribute it and/or modify
7 #it under the terms of the GNU General Public License as published by
8 #the Free Software Foundation; either version 2, or (at your option)
11 #GNU CC is distributed in the hope that it will be useful,
12 #but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 #GNU General Public License for more details.
16 #You should have received a copy of the GNU General Public License
17 #along with GNU CC; see the file COPYING. If not, write to
18 #the Free Software Foundation, 59 Temple Place - Suite 330,
19 #Boston, MA 02111-1307, USA.
21 # This is the GCC build-, host- and target-specific configuration file
22 # where a configuration type, as recognized and generated by config.bfd,
23 # is mapped to different system-specific definitions and files. This is
24 # invoked by the autoconf-generated configure script, called for build,
25 # host and target in that order, setting ${machine} to each. Putting it
26 # in a separate shell file lets us skip running autoconf when modifying
27 # build-, host- and target-specific information.
29 # This file switches on the shell variable ${machine}, and also uses the
30 # following shell variables:
32 # with_* Various variables as set by configure.
34 # enable_threads_flag Either the name, yes or no depending on whether
35 # threads support was requested.
37 # gas_flag Either yes or no depending on whether GNU as was
40 # gnu_ld_flag Either yes or no depending on whether GNU ld was
43 # This file sets the following shell variables for use by the
44 # autoconf-generated configure script:
46 # cpu_type The name of the cpu, if different from machine.
48 # tm_file A list of target macro files, if different from
49 # "$cpu_type/$cpu_type.h".
51 # tm_p_file Location of file with declarations for functions
54 # out_file The name of the machine description C support
55 # file, if different from "$cpu_type/$cpu_type.c".
57 # md_file The name of the machine-description file, if
58 # different from "$cpu_type/$cpu_type.md".
60 # tmake_file A list of machine-description-specific
61 # makefile-fragments, if different from
62 # "$cpu_type/t-$cpu_type".
64 # float_format Set to the symbolic name for the floating-point
65 # formats used for this machine, if different from
66 # "i64". Used to derive a header file name to
67 # include, like "vax" for "float-vax.h". If no such
68 # file is wanted, set to "none".
70 # extra_objs List of extra objects that should be linked into
71 # the compiler proper (cc1, cc1obj, cc1plus)
72 # depending on target.
74 # extra_headers List of used header files from the directory
77 # host_xmake_file List of host-specific makefile-fragments.
79 # extra_passes List of extra executables compiled for this target
80 # machine, used for compiling from source to object.
82 # extra_parts List of extra object files that should be compiled
83 # for this target machine.
85 # extra_programs Like extra_passes, but these are used when linking.
87 # host_extra_objs List of extra host-dependant objects that should
88 # be linked into the compiler proper.
90 # host_extra_gcc_objs List of extra host-dependant objects that should
91 # be linked into the gcc driver.
93 # c_target_objs List of extra target-dependant objects that be
94 # linked into the C compiler only.
96 # cxx_target_objs List of extra target-dependant objects that be
97 # linked into the C++ compiler only.
99 # build_xm_defines List of macros to define when compiling for the
102 # build_xm_file List of files to include when compiling for the
105 # host_xm_defines List of macros to define when compiling for the
108 # host_xm_file List of files to include when compiling for the
111 # xm_defines List of macros to define when compiling for the
114 # xm_file List of files to include when compiling for the
117 # use_collect2 Set to yes or no, depending on whether collect2
120 # target_cpu_default Set to override the default target model.
122 # build_install_headers_dir
123 # Target to use when installing header files.
125 # host_truncate_target
126 # Non-empty if the target name should be truncated
127 # on this host, due to filename length issues.
129 # gdb_needs_out_file_path
130 # Set to yes if gdb needs a dir command with
131 # `dirname $out_file`.
133 # build_exeext Set to the suffix, if the build machine requires
134 # executables to have a file name suffix.
136 # host_exeext Set to the suffix, if the host machine requires
137 # executables to have a file name suffix.
139 # thread_file Set to control which thread package to use.
141 # gas Set to yes or no depending on whether the target
142 # system normally uses GNU as.
144 # The following variables are used in each case-construct to build up the
145 # outgoing variables:
147 # xmake_file Makefile-fragment when this system is as a host,
148 # for host_xmake_file.
150 # extra_host_objs List of extra objects that should be linked into
151 # the compiler proper when this system is a host,
152 # for host_extra_objs.
154 # install_headers_dir Makefile-target for how the header file directory
155 # is installed, when this system is a build system,
156 # for build_install_headers_dir.
158 # truncate_target Non-empty if the target name should be truncated
159 # when this system is a host, due to filename length
160 # issues. For host_truncate_target.
162 # exeext The suffix for executables on this system.
164 # gnu_ld Set to yes or no depending on whether the target
165 # system normally uses GNU ld.
181 # Set this to force installation and use of collect2.
183 # Set this to override the default target model.
185 # Set this to control how the header file directory is installed.
186 install_headers_dir=install-headers-tar
187 # Set this if directory names should be truncated to 14 characters.
189 # Set this if gdb needs a dir command with `dirname $out_file`
190 gdb_needs_out_file_path=
191 # Set this if the build machine requires executables to have a
194 # Set this to control which thread package will be used.
196 # Reinitialize these from the flag values every loop pass, since some
197 # configure entries modify them.
199 gnu_ld="$gnu_ld_flag"
200 enable_threads=$enable_threads_flag
202 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
203 # updated in each machine entry.
205 cpu_type=`echo $machine | sed 's/-.*$//'`
245 tm_file=${cpu_type}/${cpu_type}.h
246 xm_file=${cpu_type}/xm-${cpu_type}.h
247 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
249 tm_p_file=${cpu_type}/${cpu_type}-protos.h;
251 # On a.out targets, we need to use collect2.
258 # Common parts for GNU/Linux, GNU/Hurd and OpenBSD systems.
264 # On the Hurd, the setup is just about the same on
265 # each different CPU. The specific machines that we
266 # support are matched above and just set $cpu_type.
268 tm_file="${cpu_type}/gnu.h"
269 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
270 # GNU always uses ELF.
272 # GNU tools are the only tools.
275 # These details are the same as for Linux.
277 # But here we need a little extra magic.
278 tmake_file="t-linux t-gnu"
281 tm_file="${cpu_type}/${cpu_type}.h i386/att.h linux.h i386/linux.h gnu.h ${tm_file}"
284 tm_file="svr4.h ${cpu_type}/${cpu_type}.h ${tm_file}"
289 tm_file=${cpu_type}/openbsd.h
290 tmake_file="t-libc-ok t-openbsd"
292 # don't depend on processor x-fragments as well
294 if test x$enable_threads = xyes; then
296 tmake_file="${tmake_file} t-openbsd-thread"
302 # Support site-specific machine types.
304 cpu_type=`echo $machine | sed -e 's/-.*//'`
305 rest=`echo $machine | sed -e "s/$cpu_type-//"`
306 xm_file=${cpu_type}/xm-$rest.h
307 tm_file=${cpu_type}/$rest.h
308 if test -f $srcdir/config/${cpu_type}/x-$rest; \
309 then xmake_file=${cpu_type}/x-$rest; \
312 if test -f $srcdir/config/${cpu_type}/t-$rest; \
313 then tmake_file=${cpu_type}/t-$rest; \
318 # 1750a is only supported as a target.
319 case "$build,$host" in 1750a*,* | *,1750a* )
320 echo "*** $machine is only supported as a target" >&2
324 a29k-*-bsd* | a29k-*-sym1*)
325 tm_file="${tm_file} a29k/unix.h"
327 xmake_file=a29k/x-unix
330 a29k-*-udi | a29k-*-coff)
331 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
332 tmake_file=a29k/t-a29kbare
336 tmake_file="a29k/t-a29kbare t-rtems"
337 if test x$enable_threads = xyes; then
342 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
343 tmake_file=a29k/t-vx29k
344 extra_parts="crtbegin.o crtend.o"
345 thread_file='vxworks'
347 a29k-*-*) # Default a29k environment.
351 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
353 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
354 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
356 # GAS + IEEE_CONFORMANT
357 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
360 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
362 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
363 if test x$enable_threads = xyes ; then
366 if test x$stabs = xyes ; then
367 tm_file="${tm_file} dbxcoff.h"
369 #prefix='$$INTERIX_ROOT'/usr/contrib
370 #local_prefix='$$INTERIX_ROOT'/usr/contrib
372 alpha*-*-linux*ecoff*)
374 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
375 target_cpu_default="MASK_GAS"
376 tmake_file="alpha/t-alpha alpha/t-ieee"
381 alpha*-*-linux*libc1*)
382 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
383 target_cpu_default="MASK_GAS"
384 tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
385 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
388 if test x$enable_threads = xyes; then
393 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
394 target_cpu_default="MASK_GAS"
395 tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
396 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
399 if test x$enable_threads = xyes; then
405 tm_file="${tm_file} freebsd.h alpha/elf.h alpha/freebsd.h"
406 target_cpu_default="MASK_GAS"
407 tmake_file="t-freebsd alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
408 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
412 case x${enable_threads} in
413 xyes | xpthreads | xposix)
415 tmake_file="${tmake_file} t-freebsd-thread"
421 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
422 target_cpu_default="MASK_GAS"
423 tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
424 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
430 # default x-alpha is only appropriate for dec-osf.
431 target_cpu_default="MASK_GAS"
432 tmake_file="alpha/t-alpha alpha/t-ieee"
437 if test x$stabs = xyes
439 tm_file="${tm_file} dbx.h"
441 if test x$gas != xyes
443 extra_passes="mips-tfile mips-tdump"
446 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-osf"
447 xmake_file=alpha/x-osf
450 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
453 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
456 tm_file="${tm_file} alpha/osf.h"
457 tmake_file="$tmake_file alpha/t-osf4"
458 # Some versions of OSF4 (specifically X4.0-9 296.7) have
459 # a broken tar, so we use cpio instead.
460 install_headers_dir=install-headers-cpio
463 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
464 tmake_file="$tmake_file alpha/t-osf4"
469 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
470 target_cpu_default=MASK_SUPPORT_ARCH
476 tm_file="${tm_file} dbx.h alpha/vxworks.h"
477 tmake_file="alpha/t-alpha alpha/t-ieee"
480 extra_passes="mips-tfile mips-tdump"
483 thread_file='vxworks'
488 xm_file="${xm_file} alpha/xm-vms.h"
489 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
492 tm_file=arm/rtems-elf.h
493 tmake_file="arm/t-arm-elf t-rtems"
494 if test x$enable_threads = xyes; then
497 extra_parts="crtinit.o crtfini.o"
500 extra_parts="crtinit.o crtfini.o"
502 arm-*-coff* | armel-*-coff*)
504 tmake_file=arm/t-arm-coff
508 tmake_file=arm/t-arm-coff
509 thread_file='vxworks'
511 arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
512 tm_file=arm/riscix1-1.h
515 arm-*-riscix*) # Acorn RISC machine
518 tm_file=arm/rix-gas.h
522 xmake_file=arm/x-riscix
523 tmake_file=arm/t-riscix
526 arm-semi-aout | armel-semi-aout)
528 tmake_file=arm/t-semi
530 arm-semi-aof | armel-semi-aof)
531 tm_file=arm/semiaof.h
532 tmake_file=arm/t-semiaof
536 tmake_file="t-netbsd arm/t-netbsd"
539 arm*-*-linux*) # ARM GNU/Linux with ELF
540 xm_file=arm/xm-linux.h
542 tm_file="arm/linux-elf.h"
543 tmake_file="t-linux arm/t-linux"
544 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
546 case x${enable_threads} in
547 x | xyes | xpthreads | xposix)
552 arm*-*-uclinux*) # ARM ucLinux
553 tm_file=arm/uclinux-elf.h
554 tmake_file=arm/t-arm-elf
558 tmake_file=arm/t-arm-aout
561 tm_file=arm/ecos-elf.h
562 tmake_file=arm/t-arm-elf
565 tm_file=arm/unknown-elf.h
566 tmake_file=arm/t-arm-elf
569 tm_file=arm/conix-elf.h
570 tmake_file=arm/t-arm-elf
573 tm_file=arm/unknown-elf-oabi.h
574 tmake_file=arm/t-arm-elf
583 c1-convex-*) # Convex C1
587 c2-convex-*) # Convex C2
600 target_cpu_default=16
605 tmake_file="c4x/t-c4x t-rtems"
607 if test x$enable_threads = xyes; then
616 clipper-intergraph-clix*)
617 tm_file="${tm_file} svr3.h clipper/clix.h"
619 extra_headers=va-clipper.h
620 extra_parts="crtbegin.o crtend.o"
621 install_headers_dir=install-headers-cpio
632 tm_file="fr30/fr30.h"
633 tmake_file=fr30/t-fr30
634 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
637 tmake_file="h8300/t-h8300 t-rtems"
638 tm_file=h8300/rtems.h
639 if test x$enable_threads = xyes; then
648 target_cpu_default="(MASK_PA_11 | MASK_GAS | MASK_JUMP_IN_DELAY)"
649 tm_file="${tm_file} pa/elf.h linux.h pa/pa-linux.h"
650 tmake_file="t-linux pa/t-linux"
651 extra_parts="crtbegin.o crtend.o"
654 if test x$enable_threads = xyes; then
659 target_cpu_default="MASK_PA_11"
660 tmake_file=pa/t-openbsd
663 tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h pa/rtems.h"
664 xm_file=pa/xm-papro.h
665 tmake_file="pa/t-pro t-rtems"
666 if test x$enable_threads = xyes; then
671 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
672 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
673 xm_file=pa/xm-papro.h
677 target_cpu_default="MASK_PA_11"
678 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
682 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
683 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
684 xm_file=pa/xm-papro.h
688 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
692 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
693 target_cpu_default="MASK_PA_11"
697 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
701 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
703 xm_file=pa/xm-pahpux.h
704 xmake_file=pa/x-pa-hpux
707 tm_file="${tm_file} pa/gas.h"
709 install_headers_dir=install-headers-cpio
712 hppa1.0-*-hpux8.0[0-2]*)
713 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
715 xm_file=pa/xm-pahpux.h
716 xmake_file=pa/x-pa-hpux
719 tm_file="${tm_file} pa/pa-gas.h"
721 tm_file="pa/pa-oldas.h ${tm_file}"
723 install_headers_dir=install-headers-cpio
726 hppa1.1-*-hpux8.0[0-2]*)
727 target_cpu_default="MASK_PA_11"
728 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
730 xm_file=pa/xm-pahpux.h
731 xmake_file=pa/x-pa-hpux
734 tm_file="${tm_file} pa/pa-gas.h"
736 tm_file="pa/pa-oldas.h ${tm_file}"
738 install_headers_dir=install-headers-cpio
742 target_cpu_default="MASK_PA_11"
743 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
745 xm_file=pa/xm-pahpux.h
746 xmake_file=pa/x-pa-hpux
749 tm_file="${tm_file} pa/pa-gas.h"
751 install_headers_dir=install-headers-cpio
755 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
757 xm_file=pa/xm-pahpux.h
758 xmake_file=pa/x-pa-hpux
761 tm_file="${tm_file} pa/pa-gas.h"
763 install_headers_dir=install-headers-cpio
766 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
767 target_cpu_default="MASK_PA_11"
768 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
771 xm_file=pa/xm-pahpux.h
772 xmake_file=pa/x-pa-hpux
776 tm_file="${tm_file} pa/pa-gas.h"
778 if test x$enable_threads = x; then
779 enable_threads=$have_pthread_h
781 case x${enable_threads} in
783 tmake_file="${tmake_file} pa/t-dce-thr"
786 install_headers_dir=install-headers-cpio
790 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
793 xm_file=pa/xm-pahpux.h
794 xmake_file=pa/x-pa-hpux
798 tm_file="${tm_file} pa/pa-gas.h"
800 if test x$enable_threads = x; then
801 enable_threads=$have_pthread_h
803 case x${enable_threads} in
805 tmake_file="${tmake_file} pa/t-dce-thr"
808 install_headers_dir=install-headers-cpio
813 xm_file=pa/xm-pa64hpux.h
814 xmake_file=pa/x-pa-hpux
816 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"
819 target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
823 tm_file="${tm_file} pa/pa-gas.h"
825 # if [ x$enable_threads = x ]; then
826 # enable_threads=$have_pthread_h
828 # if [ x$enable_threads = xyes ]; then
830 # tmake_file="${tmake_file} pa/t-dce-thr"
832 install_headers_dir=install-headers-cpio
835 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
836 target_cpu_default="MASK_PA_11"
837 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
840 xm_file=pa/xm-pahpux.h
841 xmake_file=pa/x-pa-hpux
845 tm_file="${tm_file} pa/pa-gas.h"
847 # if test x$enable_threads = x; then
848 # enable_threads=$have_pthread_h
850 # if test x$enable_threads = xyes; then
852 # tmake_file="${tmake_file} pa/t-dce-thr"
854 install_headers_dir=install-headers-cpio
858 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
861 xm_file=pa/xm-pahpux.h
862 xmake_file=pa/x-pa-hpux
865 tm_file="${tm_file} pa/pa-gas.h"
867 # if test x$enable_threads = x; then
868 # enable_threads=$have_pthread_h
870 # if test x$enable_threads = xyes; then
872 # tmake_file="${tmake_file} pa/t-dce-thr"
874 install_headers_dir=install-headers-cpio
877 hppa1.1-*-hpux* | hppa2*-*-hpux*)
878 target_cpu_default="MASK_PA_11"
879 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
881 xm_file=pa/xm-pahpux.h
882 xmake_file=pa/x-pa-hpux
885 tm_file="${tm_file} pa/pa-gas.h"
887 install_headers_dir=install-headers-cpio
891 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
893 xm_file=pa/xm-pahpux.h
894 xmake_file=pa/x-pa-hpux
897 tm_file="${tm_file} pa/pa-gas.h"
899 install_headers_dir=install-headers-cpio
902 hppa1.1-*-hiux* | hppa2*-*-hiux*)
903 target_cpu_default="MASK_PA_11"
904 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
906 xm_file=pa/xm-pahpux.h
907 xmake_file=pa/x-pa-hpux
910 tm_file="${tm_file} pa/pa-gas.h"
912 install_headers_dir=install-headers-cpio
916 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
918 xm_file=pa/xm-pahpux.h
919 xmake_file=pa/x-pa-hpux
922 tm_file="${tm_file} pa/pa-gas.h"
924 install_headers_dir=install-headers-cpio
928 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
929 target_cpu_default="MASK_PA_11"
933 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
934 xm_file=pa/xm-pampeix.h
935 xmake_file=pa/x-pa-mpeix
936 echo "You must use gas. Assuming it is already installed."
937 install_headers_dir=install-headers-tar
940 i370-*-opened*) # IBM 360/370/390 Architecture
949 xm_file=i370/xm-mvs.h
951 tmake_file=i370/t-mvs
954 xm_file="xm-linux.h i370/xm-linux.h"
956 tm_file="i370/linux.h ${tm_file}"
957 tmake_file="t-linux i370/t-linux"
959 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
960 # extra_parts="crtbegin.o crtend.o"
964 if test x$enable_threads = xyes; then
968 i[34567]86-*-chorusos*)
969 xm_defines='USG POSIX'
970 tm_file="i386/i386.h i386/att.h elfos.h i386/i386afe.h i386/i386elf.h i386/chorus.h"
971 tmake_file=i386/t-i386elf
973 case x${enable_threads} in
974 xyes | xpthreads | xposix)
980 xm_defines='USG POSIX'
981 tm_file="i386/i386.h i386/att.h elfos.h i386/i386afe.h i386/i386elf.h"
982 tmake_file=i386/t-i386elf
985 i[34567]86-ibm-aix*) # IBM PS/2 running AIX
988 tm_file=i386/aix386.h
989 extra_parts="crtbegin.o crtend.o"
990 tmake_file=i386/t-crtstuff
992 tm_file=i386/aix386ng.h
996 xmake_file=i386/x-aix
998 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
999 xm_defines="USG POSIX SMALL_ARG_MAX"
1000 xmake_file=i386/x-ncr3000
1001 if test x$stabs = xyes -a x$gas = xyes
1003 tm_file=i386/sysv4gdb.h
1005 tm_file=i386/sysv4.h
1007 extra_parts="crtbegin.o crtend.o"
1008 tmake_file=i386/t-crtpic
1012 xm_file=i386/xm-next.h
1013 tmake_file=i386/t-next
1014 xmake_file=i386/x-next
1015 extra_objs=nextstep.o
1016 extra_parts="crtbegin.o crtend.o"
1017 if test x$enable_threads = xyes; then
1021 i[34567]86-*-netware) # Intel 80386's running netware
1022 tm_file=i386/netware.h
1023 tmake_file=i386/t-netware
1025 i[34567]86-sequent-bsd*) # 80386 from Sequent
1027 if test x$gas = xyes
1029 tm_file=i386/seq-gas.h
1031 tm_file=i386/sequent.h
1034 i[34567]86-sequent-ptx1*)
1036 xmake_file=i386/x-sysv3
1037 tm_file=i386/seq-sysv3.h
1038 tmake_file=i386/t-crtstuff
1039 extra_parts="crtbegin.o crtend.o"
1040 install_headers_dir=install-headers-cpio
1042 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1044 xmake_file=i386/x-sysv3
1045 tm_file=i386/seq2-sysv3.h
1046 tmake_file=i386/t-crtstuff
1047 extra_parts="crtbegin.o crtend.o"
1048 install_headers_dir=install-headers-cpio
1050 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1051 if test x$gas = xyes
1053 tm_file="${tm_file} usegas.h"
1055 xm_defines="USG POSIX SMALL_ARG_MAX"
1057 tm_file=i386/ptx4-i.h
1059 extra_parts="crtbegin.o crtend.o"
1060 install_headers_dir=install-headers-cpio
1062 i386-sun-sunos*) # Sun i386 roadrunner
1067 i[34567]86-wrs-vxworks*)
1068 tm_file=i386/vxi386.h
1069 tmake_file=i386/t-i386bare
1070 thread_file='vxworks'
1073 tm_file=i386/i386-aout.h
1074 tmake_file=i386/t-i386bare
1076 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1078 xm_file=i386/xm-beos.h
1079 tmake_file='i386/t-beos i386/t-crtpic'
1080 tm_file=i386/beos-elf.h
1081 xmake_file=i386/x-beos
1082 extra_parts='crtbegin.o crtend.o'
1084 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1085 tm_file=i386/bsd386.h
1086 # tmake_file=t-libc-ok
1089 tm_file=i386/386bsd.h
1090 # tmake_file=t-libc-ok
1091 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1094 i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
1095 tm_file="i386/freebsd-aout.h i386/perform.h"
1096 tmake_file=t-freebsd
1098 i[34567]86-*-freebsd*)
1099 tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/i386afe.h i386/freebsd.h i386/perform.h"
1100 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1101 tmake_file=t-freebsd
1105 case x${enable_threads} in
1106 xyes | xpthreads | xposix)
1108 tmake_file="${tmake_file} t-freebsd-thread"
1112 i[34567]86-*-netbsd*)
1113 tm_file=i386/netbsd.h
1117 i[34567]86-*-openbsd*)
1118 # we need collect2 until our bug is fixed...
1122 tm_file=i386/i386-coff.h
1123 tmake_file=i386/t-i386bare
1125 i[34567]86-*-isc*) # 80386 running ISC system
1126 xm_file="${xm_file} i386/xm-isc.h"
1129 i[34567]86-*-isc[34]*)
1130 xmake_file=i386/x-isc3
1133 xmake_file=i386/x-isc
1136 if test x$gas = xyes -a x$stabs = xyes
1138 tm_file=i386/iscdbx.h
1139 tmake_file=i386/t-svr3dbx
1140 extra_parts="svr3.ifile svr3z.ifile"
1142 tm_file=i386/isccoff.h
1143 tmake_file=i386/t-crtstuff
1144 extra_parts="crtbegin.o crtend.o"
1146 tmake_file="$tmake_file i386/t-i386bare"
1147 install_headers_dir=install-headers-cpio
1149 i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
1150 # with a.out format using
1152 tmake_file="t-linux-aout i386/t-crtstuff"
1153 tm_file=i386/linux-oldld.h
1157 i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1159 tmake_file="t-linux-aout i386/t-crtstuff"
1160 tm_file=i386/linux-aout.h
1164 i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1165 # with ELF format using the
1166 # GNU/Linux C library 5
1168 tm_file="i386/i386.h i386/att.h linux.h i386/i386afe.h i386/linux.h"
1169 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1170 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1173 if test x$enable_threads = xyes; then
1174 thread_file='single'
1177 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1178 # with ELF format using glibc 2
1179 # aka GNU/Linux C library 6
1181 tm_file="i386/i386.h i386/att.h linux.h i386/i386afe.h i386/linux.h"
1182 tmake_file="t-linux i386/t-crtstuff"
1183 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1186 if test x$enable_threads = xyes; then
1193 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1194 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1197 i[34567]86-pc-msdosdjgpp*)
1198 xm_file=i386/xm-djgpp.h
1199 tm_file=i386/djgpp.h
1200 tmake_file=i386/t-djgpp
1201 xmake_file=i386/x-djgpp
1206 case $host in *pc-msdosdjgpp*)
1211 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1212 tm_file="i386/i386.h i386/att.h linux.h i386/i386afe.h i386/linux.h i386/moss.h"
1213 tmake_file=t-libc-ok
1217 i[34567]86-*-lynxos*)
1218 if test x$gas = xyes
1222 tm_file=i386/lynx-ng.h
1224 tmake_file=i386/t-i386bare
1229 # tmake_file=t-libc-ok
1232 i[34567]86-*-osfrose*) # 386 using OSF/rose
1233 if test x$elf = xyes
1235 tm_file=i386/osfelf.h
1238 tm_file=i386/osfrose.h
1241 xmake_file=i386/x-osfrose
1242 tmake_file=i386/t-osf
1243 extra_objs=halfpic.o
1245 i[34567]86-go32-rtems*)
1247 xm_file=i386/xm-go32.h
1248 tm_file=i386/go32-rtems.h
1250 if test x$enable_threads = xyes; then
1254 i[34567]86-*-rtemscoff*)
1256 tm_file=i386/rtems.h
1257 tmake_file="i386/t-i386bare t-rtems"
1258 if test x$enable_threads = xyes; then
1262 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1264 tm_file=i386/rtemself.h
1265 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1266 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1267 if test x$enable_threads = xyes; then
1271 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1272 xm_file="${xm_file} i386/xm-sco5.h"
1274 xmake_file=i386/x-sco5
1275 install_headers_dir=install-headers-cpio
1277 if test x$gas = xyes
1279 tm_file="usegas.h ${tm_file}"
1280 tmake_file=i386/t-sco5gas
1282 tmake_file=i386/t-sco5
1284 tmake_file="$tmake_file i386/t-i386bare"
1285 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1287 i[34567]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
1288 xm_file="${xm_file} i386/xm-sco.h"
1289 xm_defines="USG BROKEN_LDEXP SMALL_ARG_MAX"
1290 xmake_file=i386/x-sco4
1291 install_headers_dir=install-headers-cpio
1292 if test x$stabs = xyes
1294 tm_file=i386/sco4dbx.h
1295 tmake_file=i386/t-svr3dbx
1296 extra_parts="svr3.ifile svr3z.rfile"
1299 tmake_file=i386/t-crtstuff
1300 extra_parts="crtbegin.o crtend.o"
1302 tmake_file="$tmake_file i386/t-i386bare"
1303 # The default EAFS filesystem supports long file names.
1304 # Truncating the target makes $host != $target which
1305 # makes gcc think it is doing a cross-compile.
1306 # truncate_target=yes
1308 i[34567]86-*-sco*) # 80386 running SCO system
1309 xm_file=i386/xm-sco.h
1310 xmake_file=i386/x-sco
1311 install_headers_dir=install-headers-cpio
1312 if test x$stabs = xyes
1314 tm_file=i386/scodbx.h
1315 tmake_file=i386/t-svr3dbx
1316 extra_parts="svr3.ifile svr3z.rfile"
1319 extra_parts="crtbegin.o crtend.o"
1320 tmake_file=i386/t-crtstuff
1322 tmake_file="$tmake_file i386/t-i386bare"
1325 i[34567]86-*-solaris2*)
1326 xm_defines="USG POSIX SMALL_ARG_MAX"
1328 if test x$gas = xyes; then
1329 # Only needed if gas does not support -s
1330 tm_file="i386/sol2gas.h ${tm_file}"
1332 tmake_file="i386/t-i386bare i386/t-sol2"
1333 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1335 if test x${enable_threads} = x; then
1336 enable_threads=$have_pthread_h
1337 if test x${enable_threads} = x; then
1338 enable_threads=$have_thread_h
1341 if test x${enable_threads} = xyes; then
1342 if test x${have_pthread_h} = xyes; then
1345 thread_file='solaris'
1349 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1350 xm_defines="USG POSIX"
1351 tm_file=i386/sysv5.h
1352 if test x$stabs = xyes
1354 tm_file="${tm_file} dbx.h"
1356 tmake_file="i386/t-i386bare i386/t-crtpic"
1358 extra_parts="crtbegin.o crtend.o"
1359 if test x$enable_threads = xyes; then
1363 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1364 xm_defines="USG POSIX SMALL_ARG_MAX"
1365 tm_file=i386/sysv4.h
1366 if test x$stabs = xyes
1368 tm_file="${tm_file} dbx.h"
1370 tmake_file="i386/t-i386bare i386/t-crtpic"
1372 extra_parts="crtbegin.o crtend.o"
1374 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1375 xm_defines="USG POSIX"
1377 tmake_file="i386/t-i386bare i386/t-crtpic i386/t-udk"
1379 extra_parts="crtbegin.o crtend.o"
1380 install_headers_dir=install-headers-cpio
1382 i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
1384 xm_file="${xm_file} i386/xm-osf1elf.h"
1385 xm_defines='USG POSIX USE_C_ALLOCA SMALL_ARG_MAX'
1386 if test x$stabs = xyes
1388 tm_file=i386/osf1elfgdb.h
1390 tm_file=i386/osf1elf.h
1392 tmake_file=i386/t-osf1elf
1393 xmake_file=i386/x-osf1elf
1394 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1396 i[34567]86-*-sysv*) # Intel 80386's running system V
1398 xmake_file=i386/x-sysv3
1399 if test x$gas = xyes
1401 if test x$stabs = xyes
1403 tm_file=i386/svr3dbx.h
1404 tmake_file=i386/t-svr3dbx
1405 extra_parts="svr3.ifile svr3z.rfile"
1407 tm_file=i386/svr3gas.h
1408 extra_parts="crtbegin.o crtend.o"
1409 tmake_file=i386/t-crtstuff
1412 tm_file=i386/sysv3.h
1413 extra_parts="crtbegin.o crtend.o"
1414 tmake_file=i386/t-crtstuff
1416 tmake_file="$tmake_file i386/t-crtpic"
1418 i386-*-vsta) # Intel 80386's running VSTa kernel
1419 xm_file="${xm_file} i386/xm-vsta.h"
1421 tmake_file=i386/t-vsta
1422 xmake_file=i386/x-vsta
1426 xm_file="${xm_file} i386/xm-cygwin.h"
1428 tmake_file=i386/t-cygwin
1429 tm_file=i386/win32.h
1430 xmake_file=i386/x-cygwin
1432 if test x$enable_threads = xyes; then
1437 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1439 xm_file="${xm_file} i386/xm-cygwin.h"
1441 tmake_file=i386/t-cygwin
1442 tm_file=i386/cygwin.h
1443 xmake_file=i386/x-cygwin
1445 if test x$enable_threads = xyes; then
1450 i[34567]86-*-mingw32*)
1451 tm_file=i386/mingw32.h
1454 xm_file="${xm_file} i386/xm-mingw32.h"
1455 tmake_file="i386/t-cygwin i386/t-mingw32"
1457 xmake_file=i386/x-cygwin
1458 if test x$enable_threads = xyes; then
1465 *minwg32crt* | *mingw32*)
1466 tm_file="${tm_file} i386/crtdll.h"
1472 tmake_file="i386/t-cygwin i386/t-uwin"
1474 xmake_file=i386/x-cygwin
1475 if test x$enable_threads = xyes; then
1480 i[34567]86-*-interix*)
1481 tm_file="i386/i386-interix.h interix.h"
1482 xm_file="i386/xm-i386-interix.h xm-interix.h"
1484 tmake_file="i386/t-interix"
1485 extra_objs=interix.o
1486 xmake_file=x-interix
1487 if test x$enable_threads = xyes ; then
1490 if test x$stabs = xyes ; then
1491 tm_file="${tm_file} dbxcoff.h"
1494 i[34567]86-dg-dgux*)
1495 xm_defines="USG POSIX"
1496 out_file=i386/dgux.c
1498 tmake_file=i386/t-dgux
1499 xmake_file=i386/x-dgux
1500 install_headers_dir=install-headers-cpio
1502 i860-alliant-*) # Alliant FX/2800
1503 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1504 xm_file="${xm_file}"
1505 tmake_file=i860/t-fx2800
1506 extra_parts="crtbegin.o crtend.o"
1509 tm_file="${tm_file} i860/bsd.h"
1510 if test x$gas = xyes
1512 tm_file="${tm_file} i860/bsd-gas.h"
1517 tm_file="${tm_file} i860/mach.h"
1518 tmake_file=t-libc-ok
1520 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1521 tm_file="${tm_file} svr3.h i860/paragon.h"
1525 tm_file="${tm_file} svr3.h i860/sysv3.h"
1527 extra_parts="crtbegin.o crtend.o"
1530 tm_file="${tm_file} svr4.h i860/sysv4.h"
1532 xmake_file=i860/x-sysv4
1534 extra_parts="crtbegin.o crtend.o"
1536 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1537 tm_file="${tm_file} i960/vx960.h"
1538 tmake_file=i960/t-vxworks960
1540 thread_file='vxworks'
1542 i960-wrs-vxworks5* | i960-wrs-vxworks)
1543 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1544 tmake_file=i960/t-vxworks960
1546 thread_file='vxworks'
1549 tm_file="${tm_file} i960/vx960.h"
1550 tmake_file=i960/t-vxworks960
1552 thread_file='vxworks'
1555 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1556 tmake_file=i960/t-960bare
1560 tmake_file="i960/t-960bare t-rtems"
1561 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
1563 if test x$enable_threads = xyes; then
1567 i960-*-*) # Default i960 environment.
1572 tmake_file="ia64/t-ia64"
1573 target_cpu_default="0"
1574 if test x$gas = xyes
1576 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1578 if test x$gnu_ld = xyes
1580 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1585 tm_file=ia64/linux.h
1586 tmake_file="t-linux ia64/t-ia64 ia64/t-glibc"
1587 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1588 if test x$enable_threads = xyes; then
1594 extra_parts="crtinit.o crtfini.o"
1596 # m68hc11 and m68hc12 share the same machine description.
1597 m68hc11-*-*|m6811-*-*)
1598 tm_file="m68hc11/m68hc11.h"
1599 xm_file="m68hc11/xm-m68hc11.h"
1600 tm_p_file="m68hc11/m68hc11-protos.h"
1601 md_file="m68hc11/m68hc11.md"
1602 out_file="m68hc11/m68hc11.c"
1603 tmake_file="m68hc11/t-m68hc11-gas"
1605 m68hc12-*-*|m6812-*-*)
1606 tm_file="m68hc11/m68hc12.h"
1607 tm_p_file="m68hc11/m68hc11-protos.h"
1608 xm_file="m68hc11/xm-m68hc11.h"
1609 md_file="m68hc11/m68hc11.md"
1610 out_file="m68hc11/m68hc11.c"
1611 tmake_file="m68hc11/t-m68hc11-gas"
1613 m68000-convergent-sysv*)
1617 extra_headers=math-68881.h
1619 m68000-hp-bsd*) # HP 9000/200 running BSD
1620 tm_file=m68k/hp2bsd.h
1621 xmake_file=m68k/x-hp2bsd
1623 extra_headers=math-68881.h
1625 m68000-hp-hpux*) # HP 9000 series 300
1627 if test x$gas = xyes
1629 xmake_file=m68k/x-hp320g
1630 tm_file=m68k/hp310g.h
1632 xmake_file=m68k/x-hp320
1633 tm_file=m68k/hp310.h
1635 install_headers_dir=install-headers-cpio
1637 extra_headers=math-68881.h
1642 extra_headers=math-68881.h
1645 tm_file=m68k/sun2o4.h
1647 extra_headers=math-68881.h
1651 if test x$gas = xyes
1658 extra_headers=math-68881.h
1660 m68k-apple-aux*) # Apple Macintosh running A/UX
1661 xm_defines="USG AUX"
1662 tmake_file=m68k/t-aux
1663 install_headers_dir=install-headers-cpio
1664 extra_headers=math-68881.h
1665 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
1667 if test "$gnu_ld" = yes
1669 tm_file="${tm_file} m68k/auxgld.h"
1671 tm_file="${tm_file} m68k/auxld.h"
1673 if test "$gas" = yes
1675 tm_file="${tm_file} m68k/auxgas.h"
1677 tm_file="${tm_file} m68k/auxas.h"
1679 tm_file="${tm_file} m68k/a-ux.h"
1683 tm_file=m68k/apollo68.h
1684 xmake_file=m68k/x-apollo68
1686 extra_headers=math-68881.h
1689 m68k-altos-sysv*) # Altos 3068
1690 if test x$gas = xyes
1692 tm_file=m68k/altos3068.h
1695 echo "The Altos is supported only with the GNU assembler" 1>&2
1698 extra_headers=math-68881.h
1700 m68k-bull-sysv*) # Bull DPX/2
1701 if test x$gas = xyes
1703 if test x$stabs = xyes
1705 tm_file=m68k/dpx2cdbx.h
1707 tm_file=m68k/dpx2g.h
1713 xmake_file=m68k/x-dpx2
1715 extra_headers=math-68881.h
1717 m68k-atari-sysv4*) # Atari variant of V.4.
1718 tm_file=m68k/atari.h
1721 extra_parts="crtbegin.o crtend.o"
1722 extra_headers=math-68881.h
1725 m68k-motorola-sysv*)
1726 tm_file=m68k/mot3300.h
1728 if test x$gas = xyes
1730 xmake_file=m68k/x-mot3300-gas
1731 if test x$gnu_ld = xyes
1733 tmake_file=m68k/t-mot3300-gald
1735 tmake_file=m68k/t-mot3300-gas
1739 xmake_file=m68k/x-mot3300
1740 if test x$gnu_ld = xyes
1742 tmake_file=m68k/t-mot3300-gld
1744 tmake_file=m68k/t-mot3300
1748 gdb_needs_out_file_path=yes
1749 extra_parts="crt0.o mcrt0.o"
1750 extra_headers=math-68881.h
1753 m68k-ncr-sysv*) # NCR Tower 32 SVR3
1754 tm_file=m68k/tower-as.h
1756 xmake_file=m68k/x-tower
1757 extra_parts="crtbegin.o crtend.o"
1758 extra_headers=math-68881.h
1761 tm_file=m68k/plexus.h
1762 xm_file="m68k/xm-plexus.h ${xm_file}"
1765 extra_headers=math-68881.h
1770 extra_headers=math-68881.h
1773 xm_defines="USG unos"
1774 xmake_file=m68k/x-crds
1777 extra_headers=math-68881.h
1779 m68k-cbm-sysv4*) # Commodore variant of V.4.
1782 xmake_file=m68k/x-amix
1784 extra_parts="crtbegin.o crtend.o"
1785 extra_headers=math-68881.h
1789 tm_file=m68k/ccur-GAS.h
1790 xmake_file=m68k/x-ccur
1791 extra_headers=math-68881.h
1795 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
1796 tm_file=m68k/hp3bsd44.h
1798 extra_headers=math-68881.h
1801 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
1802 tm_file=m68k/hp3bsd.h
1804 extra_headers=math-68881.h
1808 if test x$with_fp = xno
1810 tm_file=m68k/isi-nfp.h
1816 extra_headers=math-68881.h
1818 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
1820 if test x$gas = xyes
1822 xmake_file=m68k/x-hp320g
1823 tm_file=m68k/hp320g.h
1825 xmake_file=m68k/x-hp320
1826 tm_file=m68k/hpux7.h
1828 install_headers_dir=install-headers-cpio
1830 extra_headers=math-68881.h
1833 m68k-hp-hpux*) # HP 9000 series 300
1835 if test x$gas = xyes
1837 xmake_file=m68k/x-hp320g
1838 tm_file=m68k/hp320g.h
1840 xmake_file=m68k/x-hp320
1841 tm_file=m68k/hp320.h
1843 install_headers_dir=install-headers-cpio
1845 extra_headers=math-68881.h
1849 tm_file=m68k/sun3mach.h
1851 extra_headers=math-68881.h
1855 if test x$gas = xyes
1857 tm_file=m68k/news3gas.h
1859 tm_file=m68k/news3.h
1862 extra_headers=math-68881.h
1865 m68k-sony-bsd* | m68k-sony-newsos*)
1866 if test x$gas = xyes
1868 tm_file=m68k/newsgas.h
1873 extra_headers=math-68881.h
1876 m68k-next-nextstep2*)
1877 tm_file=m68k/next21.h
1878 xm_file="m68k/xm-next.h ${xm_file}"
1879 tmake_file=m68k/t-next
1880 xmake_file=m68k/x-next
1881 extra_objs=nextstep.o
1882 extra_headers=math-68881.h
1886 m68k-next-nextstep[34]*)
1888 xm_file="m68k/xm-next.h ${xm_file}"
1889 tmake_file=m68k/t-next
1890 xmake_file=m68k/x-next
1891 extra_objs=nextstep.o
1892 extra_parts="crtbegin.o crtend.o"
1893 extra_headers=math-68881.h
1895 if test x$enable_threads = xyes; then
1900 if test x$with_fp = xno
1902 tm_file=m68k/sun3n3.h
1904 tm_file=m68k/sun3o3.h
1908 extra_headers=math-68881.h
1910 m68k-sun-sunos*) # For SunOS 4 (the default).
1911 if test x$with_fp = xno
1913 tm_file=m68k/sun3n.h
1919 extra_headers=math-68881.h
1922 tm_file=m68k/vxm68k.h
1923 tmake_file=m68k/t-vxworks68
1924 extra_headers=math-68881.h
1925 thread_file='vxworks'
1929 tmake_file=m68k/t-m68kbare
1930 tm_file="m68k/m68k-aout.h libgloss.h"
1931 extra_headers=math-68881.h
1935 tmake_file=m68k/t-m68kbare
1936 tm_file="m68k/m68k-coff.h dbx.h"
1937 extra_headers=math-68881.h
1940 m68020-*-elf* | m68k-*-elf*)
1941 tm_file="m68k/m68020-elf.h"
1943 tmake_file=m68k/t-m68kelf
1944 header_files=math-68881.h
1947 if test x$gas = xyes
1951 tm_file=m68k/lynx-ng.h
1954 tmake_file=m68k/t-lynx
1955 extra_headers=math-68881.h
1959 tm_file=m68k/netbsd.h
1966 # we need collect2 until our bug is fixed...
1969 m68k-*-sysv3*) # Motorola m68k's running system V.3
1971 extra_parts="crtbegin.o crtend.o"
1972 extra_headers=math-68881.h
1975 m68k-*-sysv4*) # Motorola m68k's running system V.4
1976 tm_file=m68k/m68kv4.h
1979 extra_parts="crtbegin.o crtend.o"
1980 extra_headers=math-68881.h
1983 m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
1986 tm_file=m68k/linux-aout.h
1987 tmake_file="t-linux-aout m68k/t-linux-aout"
1988 extra_headers=math-68881.h
1992 m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
1993 # with ELF format using the
1994 # GNU/Linux C library 5
1996 tm_file=m68k/linux.h
1997 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
1998 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1999 extra_headers=math-68881.h
2003 m68k-*-linux*) # Motorola m68k's running GNU/Linux
2004 # with ELF format using glibc 2
2005 # aka the GNU/Linux C library 6.
2007 tm_file=m68k/linux.h
2008 tmake_file="t-linux m68k/t-linux"
2009 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2010 extra_headers=math-68881.h
2013 if test x$enable_threads = xyes; then
2018 tmake_file=m68k/t-m68kbare
2019 tm_file=m68k/m68k-psos.h
2020 extra_headers=math-68881.h
2024 tmake_file="m68k/t-m68kbare t-rtems"
2025 tm_file=m68k/rtems.h
2026 extra_headers=math-68881.h
2028 if test x$enable_threads = xyes; then
2032 m68k-*-rtemself*|m68k-*-rtems*)
2033 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2034 tm_file=m68k/rtemself.h
2035 extra_headers=math-68881.h
2037 if test x$enable_threads = xyes; then
2045 tm_file=m88k/dguxbcs.h
2046 tmake_file=m88k/t-dguxbcs
2050 tmake_file=m88k/t-dgux
2053 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2054 xmake_file=m88k/x-dgux
2055 if test x$gas = xyes
2057 tmake_file=m88k/t-dgux-gas
2060 m88k-dolphin-sysv3*)
2062 tm_file=m88k/dolph.h
2063 extra_parts="crtbegin.o crtend.o"
2064 xmake_file=m88k/x-dolph
2065 if test x$gas = xyes
2067 tmake_file=m88k/t-m88k-gas
2070 m88k-tektronix-sysv3)
2072 tm_file=m88k/tekXD88.h
2073 extra_parts="crtbegin.o crtend.o"
2074 xmake_file=m88k/x-tekXD88
2075 if test x$gas = xyes
2077 tmake_file=m88k/t-m88k-gas
2082 tm_file=m88k/m88k-aout.h
2086 tm_file=m88k/m88k-coff.h
2087 tmake_file=m88k/t-bug
2091 extra_parts="crtbegin.o crtend.o"
2092 if test x$gas = xyes
2094 tmake_file=m88k/t-luna-gas
2096 tmake_file=m88k/t-luna
2100 tmake_file="${tmake_file} m88k/t-luna-gas"
2101 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
2105 tm_file=m88k/sysv3.h
2106 extra_parts="crtbegin.o crtend.o"
2107 if test x$gas = xyes
2109 tmake_file=m88k/t-m88k-gas
2114 tm_file=m88k/sysv4.h
2115 extra_parts="crtbegin.o crtend.o"
2116 xmake_file=m88k/x-sysv4
2117 tmake_file=m88k/t-sysv4
2120 tm_file=mcore/mcore-elf.h
2121 tmake_file=mcore/t-mcore
2124 tm_file=mcore/mcore-pe.h
2125 tmake_file=mcore/t-mcore-pe
2127 mips-sgi-irix6*) # SGI System V.4., IRIX 6
2128 if test "x$gnu_ld" = xyes
2130 tm_file="mips/iris6.h mips/iris6gld.h"
2132 tm_file=mips/iris6.h
2134 tmake_file=mips/t-iris6
2136 xm_file='mips/xm-mips.h mips/xm-iris6.h'
2137 xmake_file=mips/x-iris6
2138 # if test x$enable_threads = xyes; then
2139 # thread_file='irix'
2143 tm_file="mips/elf.h mips/vxworks.h"
2144 tmake_file=mips/t-ecoff
2147 extra_parts="crtbegin.o crtend.o"
2148 thread_file='vxworks'
2150 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2151 tm_file="mips/iris6.h mips/cross64.h"
2153 xm_file="mips/xm-iris5.h"
2154 xmake_file=mips/x-iris
2155 tmake_file=mips/t-cross64
2156 # See comment in mips/iris[56].h files.
2158 # if test x$enable_threads = xyes; then
2159 # thread_file='irix'
2163 if test x$gas = xyes
2165 if test x$stabs = xyes
2167 tm_file=mips/iris5gdb.h
2169 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2172 tm_file=mips/sni-svr4.h
2175 xmake_file=mips/x-sni-svr4
2176 tmake_file=mips/t-mips-gas
2177 if test x$gnu_ld != xyes
2182 mips-sgi-irix5*) # SGI System V.4., IRIX 5
2183 if test x$gas = xyes
2185 tm_file="mips/iris5.h mips/iris5gas.h"
2186 if test x$stabs = xyes
2188 tm_file="${tm_file} dbx.h"
2191 tm_file=mips/iris5.h
2194 xm_file="mips/xm-iris5.h"
2195 xmake_file=mips/x-iris
2196 # mips-tfile doesn't work yet
2197 tmake_file=mips/t-mips-gas
2198 # See comment in mips/iris5.h file.
2200 # if test x$enable_threads = xyes; then
2201 # thread_file='irix'
2204 mips-sgi-irix4loser*) # Mostly like a MIPS.
2205 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2206 if test x$stabs = xyes; then
2207 tm_file="${tm_file} dbx.h"
2210 xmake_file=mips/x-iris
2211 if test x$gas = xyes
2213 tmake_file=mips/t-mips-gas
2215 extra_passes="mips-tfile mips-tdump"
2217 if test x$gnu_ld != xyes
2221 # if test x$enable_threads = xyes; then
2222 # thread_file='irix'
2225 mips-sgi-irix4*) # Mostly like a MIPS.
2226 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2227 if test x$stabs = xyes; then
2228 tm_file="${tm_file} dbx.h"
2231 xmake_file=mips/x-iris
2232 if test x$gas = xyes
2234 tmake_file=mips/t-mips-gas
2236 extra_passes="mips-tfile mips-tdump"
2238 if test x$gnu_ld != xyes
2242 # if test x$enable_threads = xyes; then
2243 # thread_file='irix'
2246 mips-sgi-*) # Mostly like a MIPS.
2247 tm_file="mips/iris3.h ${tm_file}"
2248 if test x$stabs = xyes; then
2249 tm_file="${tm_file} dbx.h"
2252 xmake_file=mips/x-iris3
2253 if test x$gas = xyes
2255 tmake_file=mips/t-mips-gas
2257 extra_passes="mips-tfile mips-tdump"
2259 if test x$gnu_ld != xyes
2264 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2265 tm_file="mips/osfrose.h ${tm_file}"
2266 xmake_file=mips/x-osfrose
2267 tmake_file=mips/t-osfrose
2268 extra_objs=halfpic.o
2271 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2272 tm_file=mips/dec-osf1.h
2273 if test x$stabs = xyes; then
2274 tm_file="${tm_file} dbx.h"
2276 xmake_file=mips/x-dec-osf1
2277 if test x$gas = xyes
2279 tmake_file=mips/t-mips-gas
2281 tmake_file=mips/t-ultrix
2282 extra_passes="mips-tfile mips-tdump"
2284 if test x$gnu_ld != xyes
2289 mips-dec-bsd*) # Decstation running 4.4 BSD
2290 tm_file=mips/dec-bsd.h
2291 if test x$gas = xyes
2293 tmake_file=mips/t-mips-gas
2295 tmake_file=mips/t-ultrix
2296 extra_passes="mips-tfile mips-tdump"
2298 if test x$gnu_ld != xyes
2303 mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2304 tm_file=mips/netbsd.h
2305 # On NetBSD, the headers are already okay, except for math.h.
2308 mips*-*-linux*) # Linux MIPS, either endian.
2311 mips*el-*) tm_file="mips/elfl.h mips/linux.h" ;;
2312 *) tm_file="mips/elf.h mips/linux.h" ;;
2315 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2318 if test x$enable_threads = xyes; then
2322 mips*el-*-openbsd*) # mips little endian
2323 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2325 mips*-*-openbsd*) # mips big endian
2326 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2327 tm_file="mips/openbsd-be.h ${tm_file}"
2329 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2330 tm_file="mips/news4.h ${tm_file}"
2331 if test x$stabs = xyes; then
2332 tm_file="${tm_file} dbx.h"
2334 if test x$gas = xyes
2336 tmake_file=mips/t-mips-gas
2338 extra_passes="mips-tfile mips-tdump"
2340 if test x$gnu_ld != xyes
2344 xmake_file=mips/x-sony
2346 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2347 # That is based on svr4.
2348 # t-svr4 is not right because this system doesn't use ELF.
2349 tm_file="mips/news5.h ${tm_file}"
2350 if test x$stabs = xyes; then
2351 tm_file="${tm_file} dbx.h"
2354 if test x$gas = xyes
2356 tmake_file=mips/t-mips-gas
2358 extra_passes="mips-tfile mips-tdump"
2360 if test x$gnu_ld != xyes
2365 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2366 tm_file="mips/svr4-5.h mips/svr4-t.h"
2367 if test x$stabs = xyes; then
2368 tm_file="${tm_file} dbx.h"
2371 xmake_file=mips/x-sysv
2372 if test x$gas = xyes
2374 tmake_file=mips/t-mips-gas
2375 extra_parts="crtbegin.o crtend.o"
2377 tmake_file=mips/t-mips
2378 extra_passes="mips-tfile mips-tdump"
2380 if test x$gnu_ld != xyes
2385 mips-*-ultrix* | mips-dec-mach3) # Decstation.
2386 tm_file="mips/ultrix.h ${tm_file}"
2387 if test x$stabs = xyes; then
2388 tm_file="${tm_file} dbx.h"
2390 xmake_file=mips/x-ultrix
2391 if test x$gas = xyes
2393 tmake_file=mips/t-mips-gas
2395 tmake_file=mips/t-ultrix
2396 extra_passes="mips-tfile mips-tdump"
2398 if test x$gnu_ld != xyes
2403 mips-*-riscos[56789]bsd*)
2404 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
2405 if test x$stabs = xyes; then
2406 tm_file="${tm_file} dbx.h"
2408 if test x$gas = xyes
2410 tmake_file=mips/t-bsd-gas
2412 tmake_file=mips/t-bsd
2413 extra_passes="mips-tfile mips-tdump"
2415 if test x$gnu_ld != xyes
2420 mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2421 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2422 if test x$stabs = xyes; then
2423 tm_file="${tm_file} dbx.h"
2425 if test x$gas = xyes
2427 tmake_file=mips/t-bsd-gas
2429 tmake_file=mips/t-bsd
2430 extra_passes="mips-tfile mips-tdump"
2432 if test x$gnu_ld != xyes
2437 mips-*-riscos[56789]sysv4*)
2438 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2439 if test x$stabs = xyes; then
2440 tm_file="${tm_file} dbx.h"
2442 xmake_file=mips/x-sysv
2443 if test x$gas = xyes
2445 tmake_file=mips/t-svr4-gas
2447 tmake_file=mips/t-svr4
2448 extra_passes="mips-tfile mips-tdump"
2450 if test x$gnu_ld != xyes
2455 mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2456 tm_file="mips/svr4-4.h ${tm_file}"
2457 if test x$stabs = xyes; then
2458 tm_file="${tm_file} dbx.h"
2461 xmake_file=mips/x-sysv
2462 if test x$gas = xyes
2464 tmake_file=mips/t-svr4-gas
2466 tmake_file=mips/t-svr4
2467 extra_passes="mips-tfile mips-tdump"
2469 if test x$gnu_ld != xyes
2474 mips-*-riscos[56789]sysv*)
2475 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
2476 if test x$stabs = xyes; then
2477 tm_file="${tm_file} dbx.h"
2480 xmake_file=mips/x-sysv
2481 if test x$gas = xyes
2483 tmake_file=mips/t-svr3-gas
2485 tmake_file=mips/t-svr3
2486 extra_passes="mips-tfile mips-tdump"
2488 if test x$gnu_ld != xyes
2493 mips-*-sysv* | mips-*-riscos*sysv*)
2494 tm_file="mips/svr3-4.h ${tm_file}"
2495 if test x$stabs = xyes; then
2496 tm_file="${tm_file} dbx.h"
2499 xmake_file=mips/x-sysv
2500 if test x$gas = xyes
2502 tmake_file=mips/t-svr3-gas
2504 tmake_file=mips/t-svr3
2505 extra_passes="mips-tfile mips-tdump"
2507 if test x$gnu_ld != xyes
2512 mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
2513 tm_file=mips/mips-5.h
2514 if test x$stabs = xyes; then
2515 tm_file="${tm_file} dbx.h"
2517 if test x$gas = xyes
2519 tmake_file=mips/t-mips-gas
2521 extra_passes="mips-tfile mips-tdump"
2523 if test x$gnu_ld != xyes
2531 tm_file=mips/ecoffl.h
2532 if test x$stabs = xyes; then
2533 tm_file="${tm_file} dbx.h"
2535 tmake_file=mips/t-ecoff
2538 tm_file="gofast.h mips/ecoff.h"
2539 if test x$stabs = xyes; then
2540 tm_file="${tm_file} dbx.h"
2542 tmake_file=mips/t-ecoff
2545 tm_file="mips/elfl.h"
2546 tmake_file=mips/t-elf
2549 tm_file="mips/elf.h"
2550 tmake_file=mips/t-elf
2553 tm_file="mips/elfl64.h"
2554 tmake_file=mips/t-elf
2556 mips64orionel-*-elf*)
2557 tm_file="mips/elforion.h mips/elfl64.h"
2558 tmake_file=mips/t-elf
2561 tm_file="mips/elf64.h"
2562 tmake_file=mips/t-elf
2565 tm_file="mips/elforion.h mips/elf64.h"
2566 tmake_file=mips/t-elf
2568 mips64orion-*-rtems*)
2569 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
2570 tmake_file="mips/t-elf t-rtems"
2571 if test x$enable_threads = xyes; then
2576 tm_file="mips/elf.h mips/rtems.h"
2577 tmake_file="mips/t-elf t-rtems"
2578 if test x$enable_threads = xyes; then
2583 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
2584 tmake_file=mips/t-r3900
2587 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
2588 tmake_file=mips/t-r3900
2590 mips-*-*) # Default MIPS RISC-OS 4.0.
2591 if test x$stabs = xyes; then
2592 tm_file="${tm_file} dbx.h"
2594 if test x$gas = xyes
2596 tmake_file=mips/t-mips-gas
2598 extra_passes="mips-tfile mips-tdump"
2600 if test x$gnu_ld != xyes
2608 tm_file="mn10200/mn10200.h"
2609 if test x$stabs = xyes
2611 tm_file="${tm_file} dbx.h"
2617 tm_file="mn10300/mn10300.h"
2618 if test x$stabs = xyes
2620 tm_file="${tm_file} dbx.h"
2625 tm_file=ns32k/encore.h
2629 tm_file=ns32k/sequent.h
2633 tm_file=ns32k/tek6100.h
2637 tm_file=ns32k/tek6200.h
2641 tm_file=ns32k/merlin.h
2645 tm_file=ns32k/pc532-mach.h
2649 tm_file=ns32k/pc532-min.h
2650 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
2655 tm_file=ns32k/netbsd.h
2656 # On NetBSD, the headers are already okay, except for math.h.
2661 tm_file="${tm_file} pdp11/2bsd.h"
2671 tm_file="svr4.h pj/linux.h ${tm_file}"
2676 tm_file="svr4.h pj/pjl.h ${tm_file}"
2683 xmake_file=romp/x-mach
2690 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
2694 tm_file="${tm_file} rs6000/aix.h rs6000/beos.h"
2696 xm_file=rs6000/xm-beos.h
2697 tmake_file=rs6000/t-beos
2698 xmake_file=rs6000/x-beos
2701 xm_file="rs6000/xm-rs6000.h rs6000/xm-darwin.h"
2702 xmake_file=rs6000/x-darwin
2705 tm_file="${tm_file} svr4.h rs6000/sysv4.h"
2706 xm_file="rs6000/xm-sysv4.h"
2707 xm_defines="USG POSIX"
2708 extra_headers=ppc-asm.h
2709 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2710 xmake_file=rs6000/x-sysv4
2712 powerpc-*-chorusos*)
2714 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/chorus.h"
2715 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2716 extra_headers=ppc-asm.h
2717 case x${enable_threads} in
2718 xyes | xpthreads | xposix)
2725 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
2726 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2727 extra_headers=ppc-asm.h
2731 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
2732 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2733 extra_headers=ppc-asm.h
2737 tm_file="${tm_file} svr4.h rs6000/sysv4.h"
2738 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2739 extra_headers=ppc-asm.h
2743 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/eabi.h"
2744 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2745 extra_headers=ppc-asm.h
2749 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/eabi.h rtems.h rs6000/rtems.h"
2750 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
2751 extra_headers=ppc-asm.h
2752 if test x$enable_threads = xyes; then
2756 powerpc-*-linux*libc1)
2757 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/linux.h"
2758 xm_defines='USG POSIX'
2759 xm_file=rs6000/xm-sysv4.h
2760 out_file=rs6000/rs6000.c
2761 tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
2763 extra_headers=ppc-asm.h
2764 if test x$enable_threads = xyes; then
2769 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/linux.h"
2770 xm_file="rs6000/xm-sysv4.h"
2771 xm_defines="USG ${xm_defines}"
2772 out_file=rs6000/rs6000.c
2773 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
2775 extra_headers=ppc-asm.h
2776 if test x$enable_threads = xyes; then
2780 powerpc-wrs-vxworks*)
2782 xm_file="rs6000/xm-sysv4.h"
2783 xm_defines="USG POSIX"
2784 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/vxppc.h"
2785 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2786 extra_headers=ppc-asm.h
2787 thread_file='vxworks'
2789 powerpcle-wrs-vxworks*)
2791 xm_file="rs6000/xm-sysv4.h"
2792 xm_defines="USG POSIX"
2793 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
2794 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2795 extra_headers=ppc-asm.h
2796 thread_file='vxworks'
2799 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/sysv4le.h"
2800 xm_file="rs6000/xm-sysv4.h"
2801 xm_defines="USG POSIX"
2802 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2803 xmake_file=rs6000/x-sysv4
2804 extra_headers=ppc-asm.h
2808 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/sysv4le.h"
2809 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2810 extra_headers=ppc-asm.h
2812 powerpcle-*-eabisim*)
2814 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
2815 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2816 extra_headers=ppc-asm.h
2820 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
2821 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2822 extra_headers=ppc-asm.h
2824 powerpcle-*-solaris2*)
2825 tm_file="${tm_file} svr4.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
2826 xm_file="rs6000/xm-sysv4.h"
2827 xm_defines="USG POSIX"
2828 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2829 xmake_file=rs6000/x-sysv4
2830 extra_headers=ppc-asm.h
2832 rs6000-ibm-aix3.[01]*)
2834 tm_file="${tm_file} rs6000/aix.h rs6000/aix31.h"
2835 xmake_file=rs6000/x-aix31
2839 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
2841 tm_file="${tm_file} rs6000/aix.h rs6000/aix3newas.h"
2842 tmake_file=rs6000/t-newas
2846 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
2848 tm_file="${tm_file} rs6000/aix.h rs6000/aix41.h"
2849 tmake_file=rs6000/t-newas
2850 xmake_file=rs6000/x-aix41
2854 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
2856 tm_file="${tm_file} rs6000/aix.h rs6000/aix43.h"
2857 tmake_file=rs6000/t-aix43
2858 xmake_file=rs6000/x-aix41
2863 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
2865 tm_file="${tm_file} rs6000/aix.h rs6000/aix51.h"
2866 tmake_file=rs6000/t-aix43
2867 xmake_file=rs6000/x-aix41
2874 tm_file="${tm_file} rs6000/aix.h"
2880 tm_file="${tm_file} rs6000/aix.h"
2885 tm_file=rs6000/mach.h
2887 xm_file="${xm_file} rs6000/xm-mach.h"
2888 xmake_file=rs6000/x-mach
2892 tm_file=rs6000/lynx.h
2893 xm_file=rs6000/xm-lynx.h
2894 tmake_file=rs6000/t-rs6000
2895 xmake_file=rs6000/x-lynx
2899 tmake_file="sh/t-sh sh/t-elf"
2900 tm_file="sh/sh.h sh/elf.h"
2904 tmake_file="sh/t-sh sh/t-elf t-rtems"
2905 tm_file="sh/sh.h sh/elf.h sh/rtemself.h"
2907 if test x$enable_threads = xyes; then
2912 tmake_file="sh/t-sh t-rtems"
2913 tm_file="sh/sh.h sh/rtems.h"
2915 if test x$enable_threads = xyes; then
2920 tm_file="sh/sh.h sh/elf.h sh/linux.h"
2921 tmake_file="sh/t-sh sh/t-elf sh/t-linux"
2924 if test x$enable_threads = xyes; then
2936 sparc64-wrs-vxworks*)
2937 tm_file="sparc/sol2.h sparc/elf.h sparc/vxsparc64.h"
2938 tmake_file=sparc/t-vxsparc64
2941 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
2942 tm_file=sparc/vxsparc.h
2943 tmake_file=sparc/t-vxsparc
2945 thread_file='vxworks'
2948 tmake_file=sparc/t-sparcbare
2949 tm_file="sparc/aout.h libgloss.h"
2952 tm_file=sparc/netbsd.h
2957 # we need collect2 until our bug is fixed...
2964 tm_file="sparc/sol2.h sparc/elf.h sparc/chorus.h"
2965 tmake_file=sparc/t-chorus-elf
2966 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2968 case x${enable_threads} in
2969 xyes | xpthreads | xposix)
2975 tm_file="sparc/sol2.h sparc/elf.h"
2976 tmake_file=sparc/t-elf
2977 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2981 sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
2982 xm_file="${xm_file} sparc/xm-linux.h"
2983 tm_file=sparc/linux-aout.h
2987 sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
2988 xm_file="${xm_file} sparc/xm-linux.h"
2990 tm_file=sparc/linux.h
2991 tmake_file="t-linux t-linux-gnulibc1"
2992 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2996 sparc-*-linux*) # Sparc's running GNU/Linux, libc6
2997 xm_file="${xm_file} sparc/xm-linux.h"
2999 tm_file=sparc/linux.h
3000 tmake_file="t-linux"
3001 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3003 if test x$enable_threads = xyes; then
3009 if test x$gas = xyes
3011 tm_file=sparc/lynx.h
3013 tm_file=sparc/lynx-ng.h
3015 tmake_file=sparc/t-sunos41
3019 tmake_file="sparc/t-sparcbare t-rtems"
3020 tm_file=sparc/rtems.h
3021 if test x$enable_threads = xyes; then
3025 sparc-*-rtems*|sparc-*-rtemself*)
3026 tm_file="sparc/sol2.h sparc/elf.h sparc/rtemself.h"
3027 tmake_file="sparc/t-elf t-rtems"
3028 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3031 if test x$enable_threads = xyes; then
3035 sparcv9-*-solaris2*)
3036 if test x$gnu_ld = xyes
3038 tm_file=sparc/sol2-64.h
3040 tm_file=sparc/sol2-sld-64.h
3042 xm_file="sparc/xm-sysv4-64.h"
3043 xm_defines="USG POSIX"
3044 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3045 if test x$gnu_ld = xyes; then
3046 tmake_file="$tmake_file sparc/t-slibgcc"
3048 tmake_file="$tmake_file sparc/t-slibgcc-sld"
3050 xmake_file=sparc/x-sysv4
3051 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3053 if test x${enable_threads} = x ; then
3054 enable_threads=$have_pthread_h
3055 if test x${enable_threads} = x ; then
3056 enable_threads=$have_thread_h
3059 if test x${enable_threads} = xyes ; then
3060 if test x${have_pthread_h} = xyes ; then
3063 thread_file='solaris'
3067 sparc-hal-solaris2*)
3068 xm_file="sparc/xm-sysv4.h"
3069 xm_defines="USG POSIX"
3070 tm_file="sparc/sol2.h sparc/hal.h"
3071 tmake_file="sparc/t-halos sparc/t-sol2"
3072 if test x$gnu_ld = xyes; then
3073 tmake_file="$tmake_file sparc/t-slibgcc"
3075 tmake_file="$tmake_file sparc/t-slibgcc-sld"
3077 xmake_file=sparc/x-sysv4
3078 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3087 thread_file='solaris'
3090 if test x$gnu_ld = xyes
3092 tm_file=sparc/sol2.h
3094 tm_file=sparc/sol2-sld.h
3096 xm_file="sparc/xm-sysv4.h"
3097 xm_defines="USG POSIX"
3098 tmake_file=sparc/t-sol2
3099 if test x$gnu_ld = xyes; then
3100 tmake_file="$tmake_file sparc/t-slibgcc"
3102 tmake_file="$tmake_file sparc/t-slibgcc-sld"
3104 xmake_file=sparc/x-sysv4
3105 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3106 # At the moment, 32-to-64 cross compilation doesn't work.
3108 # *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3110 # if test x$gnu_ld = xyes
3112 # tm_file=sparc/sol2-64.h
3114 # tm_file=sparc/sol2-sld-64.h
3116 # tmake_file="$tmake_file sparc/t-sol2-64"
3127 if test x${enable_threads} = x; then
3128 enable_threads=$have_pthread_h
3129 if test x${enable_threads} = x; then
3130 enable_threads=$have_thread_h
3133 if test x${enable_threads} = xyes; then
3134 if test x${have_pthread_h} = xyes; then
3137 thread_file='solaris'
3142 tm_file=sparc/sunos4.h
3143 tmake_file=sparc/t-sunos40
3147 tm_file=sparc/sunos4.h
3148 tmake_file=sparc/t-sunos41
3150 if test x$gas = xyes; then
3151 tm_file="${tm_file} sparc/sun4gas.h"
3155 tm_file=sparc/sun4o3.h
3159 tm_file=sparc/sysv4.h
3160 xm_file="sparc/xm-sysv4.h"
3161 xm_defines="USG POSIX"
3163 xmake_file=sparc/x-sysv4
3164 extra_parts="crtbegin.o crtend.o"
3167 xm_file="sparc/xm-sysv4.h"
3168 xm_defines="USG POSIX"
3169 tm_file=sparc/vxsim.h
3170 tmake_file=sparc/t-vxsparc
3171 xmake_file=sparc/x-sysv4
3174 tm_file="sparc/splet.h libgloss.h"
3175 tmake_file=sparc/t-splet
3178 tm_file="sparc/litecoff.h libgloss.h"
3179 tmake_file=sparc/t-sparclite
3182 tm_file="sparc/lite.h aoutos.h libgloss.h"
3183 tmake_file=sparc/t-sparclite
3186 tm_file="sparc/sol2.h sparc/elf.h sparc/liteelf.h"
3187 tmake_file=sparc/t-sparclite
3188 extra_parts="crtbegin.o crtend.o"
3191 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3192 tmake_file=sparc/t-sp86x
3195 tm_file="sparc/sol2.h sparc./elf.h sparc/sp86x-elf.h"
3196 tmake_file=sparc/t-sp86x
3197 extra_parts="crtbegin.o crtend.o"
3200 tmake_file=sparc/t-sp64
3201 tm_file=sparc/sp64-aout.h
3204 tmake_file=sparc/t-sp64
3205 tm_file=sparc/sp64-elf.h
3206 extra_parts="crtbegin.o crtend.o"
3208 sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
3209 tmake_file="t-linux sparc/t-linux64"
3210 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3211 tm_file=sparc/linux64.h
3213 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3215 if test x$enable_threads = xyes; then
3221 tm_file=arm/strongarm-elf.h
3222 tmake_file=arm/t-strongarm-elf
3224 xm_file=arm/xm-arm.h
3228 tm_file=arm/strongarm-coff.h
3229 tmake_file=arm/t-strongarm-coff
3231 xm_file=arm/xm-arm.h
3235 tm_file=arm/strongarm-pe.h
3236 tmake_file=arm/t-strongarm-pe
3238 xm_file=arm/xm-arm.h
3243 { echo "config.gcc: error:
3244 *** The Thumb targets have been deprecated. The equivalent
3245 *** ARM based toolchain can now generate Thumb instructions
3246 *** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
3250 tm_file="v850/rtems.h"
3251 tmake_file="v850/t-v850 t-rtems"
3252 if test x$stabs = xyes
3254 tm_file="${tm_file} dbx.h"
3257 c_target_objs="v850-c.o"
3258 cxx_target_objs="v850-c.o"
3261 target_cpu_default="TARGET_CPU_generic"
3263 tm_file="v850/v850.h"
3264 tmake_file=v850/t-v850
3265 if test x$stabs = xyes
3267 tm_file="${tm_file} dbx.h"
3270 c_target_objs="v850-c.o"
3271 cxx_target_objs="v850-c.o"
3273 vax-*-bsd*) # vaxen running BSD
3277 vax-*-sysv*) # vaxen running system V
3278 tm_file="${tm_file} vax/vaxv.h"
3283 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3289 tmake_file="${tmake_file} vax/t-openbsd"
3290 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
3294 vax-*-ultrix*) # vaxen running ultrix
3295 tm_file="${tm_file} vax/ultrix.h"
3298 vax-*-vms*) # vaxen running VMS
3299 xm_file=vax/xm-vms.h
3303 vax-*-*) # vax default entry
3311 tm_file=arm/xscale-elf.h
3312 tmake_file=arm/t-xscale-elf
3314 xm_file=arm/xm-arm.h
3318 tm_file=arm/xscale-coff.h
3319 tmake_file=arm/t-xscale-coff
3321 xm_file=arm/xm-arm.h
3325 echo "Configuration $machine not supported" 1>&2
3332 xmake_try_sysv=x-sysv
3333 install_headers_dir=install-headers-cpio
3336 install_headers_dir=install-headers-cpio
3340 # Distinguish i[34567]86
3341 # Also, do not run mips-tfile on MIPS if using gas.
3342 # Process --with-cpu= for PowerPC/rs6000
3343 target_cpu_default2=
3346 target_cpu_default2=1
3349 case $target_alias in
3351 target_cpu_default2=4
3354 target_cpu_default2=2
3358 i686-*-* | i786-*-*)
3359 target_cpu_default2=3
3364 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3367 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3370 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3373 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3376 target_cpu_default2="MASK_CPU_EV5"
3380 if test x$gas = xyes
3382 if test "$target_cpu_default2" = ""
3384 target_cpu_default2="MASK_GAS"
3386 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3391 case "x$with_cpu" in
3394 target_cpu_default2="TARGET_CPU_generic"
3397 # Distinguish cores, and major variants
3398 # arm7m doesn't exist, but D & I don't affect code
3399 xarm[236789] | xarm250 | xarm[67][01]0 \
3400 | xarm7m | xarm7dm | xarm7dmi | xarm[79]tdmi \
3401 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3403 | xstrongarm | xstrongarm110 | xstrongarm1100)
3404 target_cpu_default2="TARGET_CPU_$with_cpu"
3408 echo "--with-cpu must be passed a value" 1>&2
3413 if test x$pass2done = xyes
3415 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3422 mips*-*-ecoff* | mips*-*-elf*)
3423 if test x$gas = xyes
3425 if test x$gnu_ld = xyes
3427 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3429 target_cpu_default2="MASK_GAS"
3434 if test x$gas = xyes
3436 target_cpu_default2="MASK_GAS"
3439 powerpc*-*-* | rs6000-*-*)
3440 case "x$with_cpu" in
3444 xcommon | xpower | xpower2 | xpowerpc | xrios \
3445 | xrios1 | xrios2 | xrsc | xrsc1 \
3446 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3447 | xec603e | x740 | x750 | x401 \
3448 | x403 | x505 | x801 | x821 | x823 | x860)
3449 target_cpu_default2="\"$with_cpu\""
3453 echo "--with-cpu must be passed a value" 1>&2
3458 if test x$pass2done = xyes
3460 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3467 case ".$with_cpu" in
3469 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3471 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3472 target_cpu_default2="TARGET_CPU_$with_cpu"
3475 if test x$pass2done = xyes
3477 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3485 if test "$target_cpu_default2" != ""
3487 if test "$target_cpu_default" != ""
3489 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3491 target_cpu_default=$target_cpu_default2
3495 # No need for collect2 if we have the GNU linker.
3496 # Actually, there is now; GNU ld doesn't handle the EH info or
3497 # collecting for shared libraries.
3504 # Save data on machine being used to compile GCC in build_xm_file.
3505 # Save data on host machine in vars host_xm_file and host_xmake_file.
3506 if test x$pass1done = x
3508 if test x"$xm_file" = x
3509 then build_xm_file=$cpu_type/xm-$cpu_type.h
3510 else build_xm_file=$xm_file
3512 build_xm_defines=$xm_defines
3513 build_install_headers_dir=$install_headers_dir
3514 build_exeext=$exeext
3517 if test x$pass2done = x
3519 if test x"$xm_file" = x
3520 then host_xm_file=$cpu_type/xm-$cpu_type.h
3521 else host_xm_file=$xm_file
3523 host_xm_defines=$xm_defines
3524 if test x"$xmake_file" = x
3525 then xmake_file=$cpu_type/x-$cpu_type
3527 host_xmake_file="$xmake_file"
3528 host_truncate_target=$truncate_target
3529 host_extra_gcc_objs=$extra_gcc_objs
3530 host_extra_objs=$extra_host_objs