1 # configure.in for GNU CC
2 # Process this file with autoconf to generate a configuration script.
4 # Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
6 #This file is part of GNU CC.
8 #GNU CC is free software; you can redistribute it and/or modify
9 #it under the terms of the GNU General Public License as published by
10 #the Free Software Foundation; either version 2, or (at your option)
13 #GNU CC is distributed in the hope that it will be useful,
14 #but WITHOUT ANY WARRANTY; without even the implied warranty of
15 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 #GNU General Public License for more details.
18 #You should have received a copy of the GNU General Public License
19 #along with GNU CC; see the file COPYING. If not, write to
20 #the Free Software Foundation, 59 Temple Place - Suite 330,
21 #Boston, MA 02111-1307, USA.
23 # Initialization and defaults
26 AC_CONFIG_HEADER(auto-host.h:config.in)
33 # Check for bogus environment variables.
34 # Test if LIBRARY_PATH contains the notation for the current directory
35 # since this would lead to problems installing/building glibc.
36 # LIBRARY_PATH contains the current directory if one of the following
38 # - one of the terminals (":" and ";") is the first or last sign
39 # - two terminals occur directly after each other
40 # - the path contains an element with a dot in it
41 AC_MSG_CHECKING(LIBRARY_PATH variable)
43 case ${LIBRARY_PATH} in
44 [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
45 library_path_setting="contains current directory"
48 library_path_setting="ok"
52 AC_MSG_RESULT($library_path_setting)
53 if test "$library_path_setting" != "ok"; then
55 *** LIBRARY_PATH shouldn't contain the current directory when
56 *** building gcc. Please change the environment variable
57 *** and run configure again.])
60 # Test if GCC_EXEC_PREFIX contains the notation for the current directory
61 # since this would lead to problems installing/building glibc.
62 # GCC_EXEC_PREFIX contains the current directory if one of the following
64 # - one of the terminals (":" and ";") is the first or last sign
65 # - two terminals occur directly after each other
66 # - the path contains an element with a dot in it
67 AC_MSG_CHECKING(GCC_EXEC_PREFIX variable)
69 case ${GCC_EXEC_PREFIX} in
70 [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
71 gcc_exec_prefix_setting="contains current directory"
74 gcc_exec_prefix_setting="ok"
78 AC_MSG_RESULT($gcc_exec_prefix_setting)
79 if test "$gcc_exec_prefix_setting" != "ok"; then
81 *** GCC_EXEC_PREFIX shouldn't contain the current directory when
82 *** building gcc. Please change the environment variable
83 *** and run configure again.])
86 # Check for additional parameters
90 [ --with-gnu-ld arrange to work with GNU ld.],
91 gnu_ld_flag="$with_gnu_ld",
96 [ --with-ld arrange to use the specified ld (full pathname).],
97 DEFAULT_LINKER="$with_ld")
98 if test x"${DEFAULT_LINKER+set}" = x"set"; then
99 if test ! -x "$DEFAULT_LINKER"; then
100 AC_MSG_WARN([cannot execute: $DEFAULT_LINKER: check --with-ld or env. var. DEFAULT_LINKER])
101 elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep GNU > /dev/null; then
104 AC_DEFINE_UNQUOTED(DEFAULT_LINKER,"$DEFAULT_LINKER",
105 [Define to enable the use of a default linker.])
110 [ --with-gnu-as arrange to work with GNU as.],
111 gas_flag="$with_gnu_as",
115 [ --with-as arrange to use the specified as (full pathname).],
116 DEFAULT_ASSEMBLER="$with_as")
117 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
118 if test ! -x "$DEFAULT_ASSEMBLER"; then
119 AC_MSG_WARN([cannot execute: $DEFAULT_ASSEMBLER: check --with-as or env. var. DEFAULT_ASSEMBLER])
120 elif $DEFAULT_ASSEMBLER -v < /dev/null 2>&1 | grep GNU > /dev/null; then
123 AC_DEFINE_UNQUOTED(DEFAULT_ASSEMBLER,"$DEFAULT_ASSEMBLER",
124 [Define to enable the use of a default assembler.])
129 [ --with-stabs arrange to use stabs instead of host debug format.],
135 [ --with-elf arrange to use ELF instead of host debug format.],
139 # Specify the local prefix
141 AC_ARG_WITH(local-prefix,
142 [ --with-local-prefix=DIR specifies directory to put local include.],
143 [case "${withval}" in
144 yes) AC_MSG_ERROR(bad value ${withval} given for local include directory prefix) ;;
146 *) local_prefix=$with_local_prefix ;;
149 # Default local prefix if it is empty
150 if test x$local_prefix = x; then
151 local_prefix=/usr/local
154 # Don't set gcc_gxx_include_dir to gxx_include_dir since that's only
155 # passed in by the toplevel make and thus we'd get different behavior
156 # depending on where we built the sources.
158 # Specify the g++ header file directory
159 AC_ARG_WITH(gxx-include-dir,
160 [ --with-gxx-include-dir=DIR
161 specifies directory to put g++ header files.],
162 [case "${withval}" in
163 yes) AC_MSG_ERROR(bad value ${withval} given for g++ include directory) ;;
165 *) gcc_gxx_include_dir=$with_gxx_include_dir ;;
168 if test x${gcc_gxx_include_dir} = x; then
169 if test x${enable_version_specific_runtime_libs} = xyes; then
170 gcc_gxx_include_dir='${libsubdir}/include/g++'
172 topsrcdir=${srcdir}/.. . ${srcdir}/../config.if
173 changequote(<<, >>)dnl
174 gcc_gxx_include_dir="\$(libsubdir)/\$(unlibsubdir)/..\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/[^/]*|/..|g'\`/include/g++"-${libstdcxx_interface}
179 # Enable expensive internal checks
180 AC_ARG_ENABLE(checking,
181 [ --enable-checking[=LIST]
182 enable expensive run-time checks. With LIST,
183 enable only specific categories of checks.
184 Categories are: misc,tree,rtl,gc,gcac; default
190 ac_gc_always_collect=
191 case "${enableval}" in
192 yes) ac_checking=1 ; ac_tree_checking=1 ; ac_rtl_checking=1 ;;
194 *) IFS="${IFS= }"; ac_save_IFS="$IFS" IFS="$IFS,"
195 set fnord $enableval; shift
200 misc) ac_checking=1 ;;
201 tree) ac_tree_checking=1 ;;
202 rtl) ac_rtl_checking=1 ;;
203 gc) ac_gc_checking=1 ;;
204 gcac) ac_gc_always_collect=1 ;;
205 *) AC_MSG_ERROR(unknown check category $check) ;;
210 if test x$ac_checking != x ; then
211 AC_DEFINE(ENABLE_CHECKING, 1,
212 [Define if you want more run-time sanity checks. This one gets a grab
213 bag of miscellaneous but relatively cheap checks.])
215 if test x$ac_tree_checking != x ; then
216 AC_DEFINE(ENABLE_TREE_CHECKING, 1,
217 [Define if you want all operations on trees (the basic data
218 structure of the front ends) to be checked for dynamic type safety
219 at runtime. This is moderately expensive.])
221 if test x$ac_rtl_checking != x ; then
222 AC_DEFINE(ENABLE_RTL_CHECKING, 1,
223 [Define if you want all operations on RTL (the basic data structure
224 of the optimizer and back end) to be checked for dynamic type safety
225 at runtime. This is quite expensive.])
227 if test x$ac_gc_checking != x ; then
228 AC_DEFINE(ENABLE_GC_CHECKING, 1,
229 [Define if you want the garbage collector to do object poisoning and
230 other memory allocation checks. This is quite expensive.])
232 if test x$ac_gc_always_collect != x ; then
233 AC_DEFINE(ENABLE_GC_ALWAYS_COLLECT, 1,
234 [Define if you want the garbage collector to operate in maximally
235 paranoid mode, validating the entire heap and collecting garbage at
236 every opportunity. This is extremely expensive.])
241 [ --disable-cpp don't provide a user-visible C preprocessor.],
242 [], [enable_cpp=yes])
244 AC_ARG_WITH(cpp_install_dir,
245 [ --with-cpp-install-dir=DIR
246 install the user visible C preprocessor in DIR
247 (relative to PREFIX) as well as PREFIX/bin.],
248 [if test x$withval = xyes; then
249 AC_MSG_ERROR([option --with-cpp-install-dir requires an argument])
250 elif test x$withval != xno; then
251 cpp_install_dir=$withval
254 dnl Disable this for the moment; the library interface is changing.
255 dnl # Link cpplib into the compiler proper, for C/C++/ObjC.
256 dnl AC_ARG_ENABLE(c-cpplib,
257 dnl [ --enable-c-cpplib link cpplib directly into C and C++ compilers
258 dnl (EXPERIMENTAL) (implies --enable-cpplib).],
259 dnl if test x$enable_c_cpplib != xno; then
260 dnl extra_c_objs="${extra_c_objs} libcpp.a"
261 dnl extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
262 dnl extra_c_flags="${extra_c_flags} -DUSE_CPPLIB=1"
265 # Enable Multibyte Characters for C/C++
266 AC_ARG_ENABLE(c-mbchar,
267 [ --enable-c-mbchar Enable multibyte characters for C and C++.],
268 if test x$enable_c_mbchar != xno; then
269 extra_c_flags="${extra_c_flags} -DMULTIBYTE_CHARS=1"
273 # Pass with no value to take the default
274 # Pass with a value to specify a thread package
275 AC_ARG_ENABLE(threads,
276 [ --enable-threads enable thread usage for target GCC.
277 --enable-threads=LIB use LIB thread package for target GCC.],
278 if test x$enable_threads = xno; then
283 enable_threads_flag=$enable_threads
284 # Check if a valid thread package
285 case x${enable_threads_flag} in
288 target_thread_file='single'
292 target_thread_file=''
294 xdecosf1 | xirix | xmach | xos2 | xposix | xpthreads | xsingle | \
295 xsolaris | xwin32 | xdce | xvxworks)
296 target_thread_file=$enable_threads_flag
299 echo "$enable_threads is an unknown thread package" 1>&2
304 AC_ARG_ENABLE(objc-gc,
305 [ --enable-objc-gc enable the use of Boehm's garbage collector with
306 the GNU Objective-C runtime.],
307 if test x$enable_objc_gc = xno; then
315 [ --with-dwarf2 force the default debug format to be DWARF2.],
316 dwarf2="$with_dwarf2",
319 # Determine the host, build, and target systems
322 # Find the native compiler
325 if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = no"; then
326 NO_MINUS_C_MINUS_O=yes
328 AC_SUBST(NO_MINUS_C_MINUS_O)
332 AC_MSG_CHECKING(whether ${CC-cc} accepts -Wno-long-long)
333 echo 'void f(){}' > conftest.c
334 if test -z "`${CC-cc} -Wno-long-long -c conftest.c 2>&1`"; then
335 ac_cv_prog_cc_no_long_long=yes
337 ac_cv_prog_cc_no_long_long=no
340 echo "$ac_t"$ac_cv_prog_cc_no_long_long 1>&6
342 # If the native compiler is GCC, we can enable warnings even in stage1.
343 # That's useful for people building cross-compilers, or just running a
345 stage1_warn_cflags=" -W -Wall -Wtraditional -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes"
346 stage2_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
347 if test "x$GCC" = "xyes"; then
348 if test $ac_cv_prog_cc_no_long_long = yes; then
349 stage1_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
352 stage1_warn_cflags=""
354 AC_SUBST(stage1_warn_cflags)
355 AC_SUBST(stage2_warn_cflags)
359 AC_MSG_CHECKING([whether a default assembler was specified])
360 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
361 if test x"$gas_flag" = x"no"; then
362 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER)])
364 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER - GNU as)])
370 AC_MSG_CHECKING([whether a default linker was specified])
371 if test x"${DEFAULT_LINKER+set}" = x"set"; then
372 if test x"$gnu_ld_flag" = x"no"; then
373 AC_MSG_RESULT([yes ($DEFAULT_LINKER)])
375 AC_MSG_RESULT([yes ($DEFAULT_LINKER - GNU ld)])
381 # Find some useful tools
395 AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h \
396 fcntl.h unistd.h stab.h sys/file.h sys/time.h \
397 sys/resource.h sys/param.h sys/times.h sys/stat.h \
400 # Check for thread headers.
401 AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
402 AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
404 # See if GNAT has been installed
405 AC_CHECK_PROG(gnat, gnatbind, yes, no)
407 # Do we have a single-tree copy of texinfo?
408 if test -f $srcdir/../texinfo/Makefile.in; then
409 MAKEINFO='$(objdir)/../texinfo/makeinfo/makeinfo'
410 gcc_cv_prog_makeinfo_modern=yes
411 AC_MSG_RESULT([Using makeinfo from the unified source tree.])
413 # See if makeinfo has been installed and is modern enough
414 # that we can use it.
415 gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
416 [GNU texinfo.* \([0-9][0-9.]*\)],
417 [3.1[2-9] | 3.[2-9][0-9] | 4.* | 1.6[89] | 1.7[0-9]])
420 if test $gcc_cv_prog_makeinfo_modern = no; then
422 *** Makeinfo is missing or too old.
423 *** Info documentation will not be built or installed.])
427 BUILD_INFO=info AC_SUBST(BUILD_INFO)
428 INSTALL_INFO=install-info AC_SUBST(INSTALL_INFO)
431 # See if the stage1 system preprocessor understands the ANSI C
432 # preprocessor stringification operator.
435 # Use <inttypes.h> only if it exists,
436 # doesn't clash with <sys/types.h>, and declares intmax_t.
437 AC_MSG_CHECKING(for inttypes.h)
438 AC_CACHE_VAL(gcc_cv_header_inttypes_h,
440 [#include <sys/types.h>
441 #include <inttypes.h>],
443 [gcc_cv_header_inttypes_h=yes],
444 gcc_cv_header_inttypes_h=no)])
445 AC_MSG_RESULT($gcc_cv_header_inttypes_h)
446 if test $gcc_cv_header_inttypes_h = yes; then
447 AC_DEFINE(HAVE_INTTYPES_H, 1,
448 [Define if you have a working <inttypes.h> header file.])
452 # Determine if enumerated bitfields are unsigned. ISO C says they can
453 # be either signed or unsigned.
455 AC_CACHE_CHECK(for unsigned enumerated bitfields, gcc_cv_enum_bf_unsigned,
456 [AC_TRY_RUN(#include <stdlib.h>
457 enum t { BLAH = 128 } ;
458 struct s_t { enum t member : 8; } s ;
462 if (s.member < 0) exit(1);
465 }, gcc_cv_enum_bf_unsigned=yes, gcc_cv_enum_bf_unsigned=no, gcc_cv_enum_bf_unsigned=yes)])
466 if test $gcc_cv_enum_bf_unsigned = yes; then
467 AC_DEFINE(ENUM_BITFIELDS_ARE_UNSIGNED, 1,
468 [Define if enumerated bitfields are treated as unsigned values.])
471 AC_CHECK_FUNCS(strtoul bsearch putenv popen bcopy bzero bcmp \
472 index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
473 sysconf isascii gettimeofday strsignal putc_unlocked fputc_unlocked \
474 fputs_unlocked getrusage valloc)
476 AC_CHECK_TYPE(ssize_t, int)
478 gcc_AC_FUNC_VFPRINTF_DOPRNT
479 gcc_AC_FUNC_PRINTF_PTR
483 # Under some versions of uwin, vfork is notoriously buggy and the test
484 # can hang configure; on other versions, vfork exists just as a stub.
485 # FIXME: This should be removed once vfork in uwin's runtime is fixed.
486 ac_cv_func_vfork_works=no
490 AC_FUNC_MMAP_ANYWHERE
493 # We will need to find libiberty.h and ansidecl.h
494 saved_CFLAGS="$CFLAGS"
495 CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
496 gcc_AC_CHECK_DECLS(bcopy bzero bcmp \
497 index rindex getenv atol sbrk abort atof getcwd getwd \
498 strsignal putc_unlocked fputs_unlocked strstr environ \
499 malloc realloc calloc free basename getopt, , ,[
500 #include "gansidecl.h"
501 #include "system.h"])
503 gcc_AC_CHECK_DECLS(getrlimit setrlimit getrusage, , ,[
504 #include "gansidecl.h"
506 #ifdef HAVE_SYS_RESOURCE_H
507 #include <sys/resource.h>
511 # Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
512 CFLAGS="$saved_CFLAGS"
514 # mkdir takes a single argument on some systems.
515 gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
525 build_install_headers_dir=install-headers-tar
530 host_truncate_target=
533 # Decode the host machine, then the target machine.
534 # For the host machine, we save the xm_file variable as host_xm_file;
535 # then we decode the target machine and forget everything else
536 # that came from the host machine.
537 for machine in $build $host $target; do
551 # Set this to force installation and use of collect2.
553 # Set this to override the default target model.
555 # Set this to control how the header file directory is installed.
556 install_headers_dir=install-headers-tar
557 # Set this to a non-empty list of args to pass to cpp if the target
558 # wants its .md file passed through cpp.
560 # Set this if directory names should be truncated to 14 characters.
562 # Set this if gdb needs a dir command with `dirname $out_file`
563 gdb_needs_out_file_path=
564 # Set this if the build machine requires executables to have a
567 # Set this to control which thread package will be used.
569 # Reinitialize these from the flag values every loop pass, since some
570 # configure entries modify them.
572 gnu_ld="$gnu_ld_flag"
573 enable_threads=$enable_threads_flag
575 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
576 # updated in each machine entry.
578 cpu_type=`echo $machine | sed 's/-.*$//'`
620 tm_file=${cpu_type}/${cpu_type}.h
621 xm_file=${cpu_type}/xm-${cpu_type}.h
622 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
624 tm_p_file=${cpu_type}/${cpu_type}-protos.h;
626 # On a.out targets, we need to use collect2.
633 # Common parts for linux-gnu and openbsd systems
636 xm_defines="HAVE_ATEXIT POSIX BSTRING"
639 tm_file=${cpu_type}/openbsd.h
640 tmake_file="t-libc-ok t-openbsd"
641 # avoid surprises, always provide an xm-openbsd file
642 xm_file=${cpu_type}/xm-openbsd.h
643 # don't depend on processor x-fragments as well
645 if test x$enable_threads = xyes; then
647 tmake_file="${tmake_file} t-openbsd-thread"
653 # Support site-specific machine types.
655 cpu_type=`echo $machine | sed -e 's/-.*//'`
656 rest=`echo $machine | sed -e "s/$cpu_type-//"`
657 xm_file=${cpu_type}/xm-$rest.h
658 tm_file=${cpu_type}/$rest.h
659 if test -f $srcdir/config/${cpu_type}/x-$rest; \
660 then xmake_file=${cpu_type}/x-$rest; \
663 if test -f $srcdir/config/${cpu_type}/t-$rest; \
664 then tmake_file=${cpu_type}/t-$rest; \
670 a29k-*-bsd* | a29k-*-sym1*)
671 tm_file="${tm_file} a29k/unix.h"
673 xmake_file=a29k/x-unix
676 a29k-*-udi | a29k-*-coff)
677 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
678 tmake_file=a29k/t-a29kbare
681 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
682 tmake_file=a29k/t-vx29k
683 extra_parts="crtbegin.o crtend.o"
684 thread_file='vxworks'
686 a29k-*-*) # Default a29k environment.
690 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
692 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
693 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
695 # GAS + IEEE_CONFORMANT
696 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
698 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
699 xmake_file="x-interix alpha/t-pe"
700 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
701 if test x$enable_threads = xyes ; then
704 if test x$stabs = xyes ; then
705 tm_file="${tm_file} dbxcoff.h"
707 #prefix='$$INTERIX_ROOT'/usr/contrib
708 #local_prefix='$$INTERIX_ROOT'/usr/contrib
710 alpha*-*-linux-gnuecoff*)
711 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
712 target_cpu_default="MASK_GAS"
713 tmake_file="alpha/t-alpha alpha/t-ieee"
718 alpha*-*-linux-gnulibc1*)
719 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
720 target_cpu_default="MASK_GAS"
721 tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
722 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
725 if test x$enable_threads = xyes; then
730 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
731 target_cpu_default="MASK_GAS"
732 tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
733 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
736 if test x$enable_threads = xyes; then
741 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
742 target_cpu_default="MASK_GAS"
743 tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
744 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
750 # default x-alpha is only appropriate for dec-osf.
751 target_cpu_default="MASK_GAS"
752 tmake_file="alpha/t-alpha alpha/t-ieee"
756 if test x$stabs = xyes
758 tm_file="${tm_file} dbx.h"
760 if test x$gas != xyes
762 extra_passes="mips-tfile mips-tdump"
765 tmake_file="alpha/t-alpha alpha/t-ieee"
768 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
773 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
776 tm_file="${tm_file} alpha/osf.h"
777 # Some versions of OSF4 (specifically X4.0-9 296.7) have
778 # a broken tar, so we use cpio instead.
779 install_headers_dir=install-headers-cpio
782 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
787 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
789 target_cpu_default=MASK_SUPPORT_ARCH
794 tm_file="${tm_file} dbx.h alpha/vxworks.h"
795 tmake_file="alpha/t-alpha alpha/t-ieee"
798 extra_passes="mips-tfile mips-tdump"
801 thread_file='vxworks'
804 tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h"
805 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
806 tmake_file="t-libc-ok alpha/t-alpha alpha/t-ieee"
807 xmake_file=winnt/x-winnt
808 extra_host_objs=oldnames.o
809 extra_gcc_objs="spawnv.o oldnames.o"
810 if test x$gnu_ld != xyes
812 extra_programs=ld.exe
814 if test x$enable_threads = xyes; then
820 xm_file="${xm_file} alpha/xm-vms.h"
821 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
824 extra_parts="crtinit.o crtfini.o"
826 arm-*-coff* | armel-*-coff*)
828 tmake_file=arm/t-arm-coff
832 tmake_file=arm/t-arm-coff
833 thread_file='vxworks'
836 arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
838 tm_file=arm/riscix1-1.h
841 arm-*-riscix*) # Acorn RISC machine
844 tm_file=arm/rix-gas.h
848 xmake_file=arm/x-riscix
849 tmake_file=arm/t-riscix
852 arm-semi-aout | armel-semi-aout)
854 tmake_file=arm/t-semi
856 arm-semi-aof | armel-semi-aof)
857 tm_file=arm/semiaof.h
858 tmake_file=arm/t-semiaof
862 tmake_file="t-netbsd arm/t-netbsd"
865 arm*-*-linux-gnuaout*) # ARM GNU/Linux with a.out
868 tm_file=arm/linux-aout.h
869 tmake_file=arm/t-linux
872 arm*-*-linux-gnuoldld*) # ARM GNU/Linux with old ELF linker
873 xm_file=arm/xm-linux.h
875 tm_file="arm/linux-oldld.h arm/linux-elf.h"
878 tm_file="arm/linux-elf26.h $tm_file"
881 tmake_file="t-linux arm/t-linux"
882 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
884 case x${enable_threads} in
885 x | xyes | xpthreads | xposix)
890 arm*-*-linux-gnu*) # ARM GNU/Linux with ELF
891 xm_file=arm/xm-linux.h
893 tm_file="arm/linux-elf.h"
896 tm_file="arm/linux-elf26.h $tm_file"
899 tmake_file="t-linux arm/t-linux"
900 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
902 case x${enable_threads} in
903 x | xyes | xpthreads | xposix)
908 arm*-*-uclinux*) # ARM ucLinux
909 tm_file=arm/uclinux-elf.h
910 tmake_file=arm/t-arm-elf
914 tmake_file=arm/t-arm-aout
917 tm_file=arm/ecos-elf.h
918 tmake_file=arm/t-arm-elf
921 tm_file=arm/unknown-elf.h
922 tmake_file=arm/t-arm-elf
925 tm_file=arm/conix-elf.h
926 tmake_file=arm/t-arm-elf
929 tm_file=arm/unknown-elf-oabi.h
930 tmake_file=arm/t-arm-elf
939 c1-convex-*) # Convex C1
943 c2-convex-*) # Convex C2
956 target_cpu_default=16
963 clipper-intergraph-clix*)
964 tm_file="${tm_file} svr3.h clipper/clix.h"
965 xm_file=clipper/xm-clix.h
966 xmake_file=clipper/x-clix
967 extra_headers=va-clipper.h
968 extra_parts="crtbegin.o crtend.o"
969 install_headers_dir=install-headers-cpio
980 tm_file="fr30/fr30.h"
981 tmake_file=fr30/t-fr30
982 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
984 # This hasn't been upgraded to GCC 2.
985 # fx80-alliant-*) # Alliant FX/80
991 target_cpu_default="(MASK_PA_11 | MASK_GAS | MASK_JUMP_IN_DELAY)"
992 tm_file="${tm_file} pa/elf.h linux.h pa/pa-linux.h"
993 tmake_file="t-linux pa/t-linux"
994 extra_parts="crtbegin.o crtend.o"
997 if test x$enable_threads = xyes; then
1002 target_cpu_default="MASK_PA_11"
1003 tmake_file=pa/t-openbsd
1006 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1007 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
1008 xm_file=pa/xm-papro.h
1012 target_cpu_default="MASK_PA_11"
1013 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1017 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1018 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
1019 xm_file=pa/xm-papro.h
1023 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1027 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1028 target_cpu_default="MASK_PA_11"
1032 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1036 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
1037 xm_file=pa/xm-pahpux.h
1038 xmake_file=pa/x-pa-hpux
1039 if test x$gas = xyes
1041 tm_file="${tm_file} pa/gas.h"
1043 install_headers_dir=install-headers-cpio
1047 hppa1.0-*-hpux8.0[0-2]*)
1049 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1050 xm_file=pa/xm-pahpux.h
1051 xmake_file=pa/x-pa-hpux
1052 if test x$gas = xyes
1054 tm_file="${tm_file} pa/pa-gas.h"
1056 tm_file="pa/pa-oldas.h ${tm_file}"
1058 install_headers_dir=install-headers-cpio
1062 hppa1.1-*-hpux8.0[0-2]*)
1064 target_cpu_default="MASK_PA_11"
1065 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1066 xm_file=pa/xm-pahpux.h
1067 xmake_file=pa/x-pa-hpux
1068 if test x$gas = xyes
1070 tm_file="${tm_file} pa/pa-gas.h"
1072 tm_file="pa/pa-oldas.h ${tm_file}"
1074 install_headers_dir=install-headers-cpio
1078 target_cpu_default="MASK_PA_11"
1079 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1080 xm_file=pa/xm-pahpux.h
1081 xmake_file=pa/x-pa-hpux
1082 if test x$gas = xyes
1084 tm_file="${tm_file} pa/pa-gas.h"
1086 install_headers_dir=install-headers-cpio
1090 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1091 xm_file=pa/xm-pahpux.h
1092 xmake_file=pa/x-pa-hpux
1093 if test x$gas = xyes
1095 tm_file="${tm_file} pa/pa-gas.h"
1097 install_headers_dir=install-headers-cpio
1100 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
1101 target_cpu_default="MASK_PA_11"
1102 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1104 xm_file=pa/xm-pahpux.h
1105 xmake_file=pa/x-pa-hpux
1107 if test x$gas = xyes
1109 tm_file="${tm_file} pa/pa-gas.h"
1111 if test x$enable_threads = x; then
1112 enable_threads=$have_pthread_h
1114 if test x$enable_threads = xyes; then
1116 tmake_file="${tmake_file} pa/t-dce-thr"
1118 install_headers_dir=install-headers-cpio
1122 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1124 xm_file=pa/xm-pahpux.h
1125 xmake_file=pa/x-pa-hpux
1127 if test x$gas = xyes
1129 tm_file="${tm_file} pa/pa-gas.h"
1131 if test x$enable_threads = x; then
1132 enable_threads=$have_pthread_h
1134 if test x$enable_threads = xyes; then
1136 tmake_file="${tmake_file} pa/t-dce-thr"
1138 install_headers_dir=install-headers-cpio
1142 target_cpu_default="MASK_PA_11"
1143 xm_file=pa/xm-pa64hpux.h
1144 xmake_file=pa/x-pa-hpux
1146 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"
1148 tmake_file=pa/t-pa64
1149 target_cpu_default="(MASK_PA_11|MASK_PA_20)"
1151 if [[ x$gas = xyes ]]
1153 tm_file="${tm_file} pa/pa-gas.h"
1155 # if [[ x$enable_threads = x ]]; then
1156 # enable_threads=$have_pthread_h
1158 # if [[ x$enable_threads = xyes ]]; then
1160 # tmake_file="${tmake_file} pa/t-dce-thr"
1162 install_headers_dir=install-headers-cpio
1165 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
1166 target_cpu_default="MASK_PA_11"
1167 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1169 xm_file=pa/xm-pahpux.h
1170 xmake_file=pa/x-pa-hpux
1172 if test x$gas = xyes
1174 tm_file="${tm_file} pa/pa-gas.h"
1176 # if test x$enable_threads = x; then
1177 # enable_threads=$have_pthread_h
1179 # if test x$enable_threads = xyes; then
1181 # tmake_file="${tmake_file} pa/t-dce-thr"
1183 install_headers_dir=install-headers-cpio
1187 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1189 xm_file=pa/xm-pahpux.h
1190 xmake_file=pa/x-pa-hpux
1191 if test x$gas = xyes
1193 tm_file="${tm_file} pa/pa-gas.h"
1195 # if test x$enable_threads = x; then
1196 # enable_threads=$have_pthread_h
1198 # if test x$enable_threads = xyes; then
1200 # tmake_file="${tmake_file} pa/t-dce-thr"
1202 install_headers_dir=install-headers-cpio
1205 hppa1.1-*-hpux* | hppa2*-*-hpux*)
1206 target_cpu_default="MASK_PA_11"
1207 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1208 xm_file=pa/xm-pahpux.h
1209 xmake_file=pa/x-pa-hpux
1210 if test x$gas = xyes
1212 tm_file="${tm_file} pa/pa-gas.h"
1214 install_headers_dir=install-headers-cpio
1218 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1219 xm_file=pa/xm-pahpux.h
1220 xmake_file=pa/x-pa-hpux
1221 if test x$gas = xyes
1223 tm_file="${tm_file} pa/pa-gas.h"
1225 install_headers_dir=install-headers-cpio
1228 hppa1.1-*-hiux* | hppa2*-*-hiux*)
1229 target_cpu_default="MASK_PA_11"
1230 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1231 xm_file=pa/xm-pahpux.h
1232 xmake_file=pa/x-pa-hpux
1233 if test x$gas = xyes
1235 tm_file="${tm_file} pa/pa-gas.h"
1237 install_headers_dir=install-headers-cpio
1241 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1242 xm_file=pa/xm-pahpux.h
1243 xmake_file=pa/x-pa-hpux
1244 if test x$gas = xyes
1246 tm_file="${tm_file} pa/pa-gas.h"
1248 install_headers_dir=install-headers-cpio
1252 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
1253 target_cpu_default="MASK_PA_11"
1257 tm_file="${tm_file} pa/pa-mpeix.h"
1258 xm_file=pa/xm-pampeix.h
1259 xmake_file=pa/x-pa-mpeix
1260 echo "You must use gas. Assuming it is already installed."
1261 install_headers_dir=install-headers-tar
1264 i370-*-opened*) # IBM 360/370/390 Architecture
1265 xm_file=i370/xm-oe.h
1267 xmake_file=i370/x-oe
1268 tmake_file=i370/t-oe
1271 xm_file=i370/xm-mvs.h
1273 tmake_file=i370/t-mvs
1276 xm_file="xm-linux.h i370/xm-linux.h"
1278 tm_file="i370/linux.h ${tm_file}"
1279 tmake_file="t-linux i370/t-linux"
1280 # broken_install=yes
1281 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1282 # extra_parts="crtbegin.o crtend.o"
1286 if test x$enable_threads = xyes; then
1293 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h"
1294 tm_file=i386/i386elf.h
1295 tmake_file=i386/t-i386elf
1299 i[34567]86-ibm-aix*) # IBM PS/2 running AIX
1301 if test x$gas = xyes
1303 tm_file=i386/aix386.h
1304 extra_parts="crtbegin.o crtend.o"
1305 tmake_file=i386/t-crtstuff
1307 tm_file=i386/aix386ng.h
1310 xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
1312 xmake_file=i386/x-aix
1315 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
1317 xm_file="xm-alloca.h ${xm_file}"
1318 xm_defines="USG POSIX SMALL_ARG_MAX"
1319 xmake_file=i386/x-ncr3000
1320 if test x$stabs = xyes -a x$gas = xyes
1322 tm_file=i386/sysv4gdb.h
1324 tm_file=i386/sysv4.h
1326 extra_parts="crtbegin.o crtend.o"
1327 tmake_file=i386/t-crtpic
1333 xm_file=i386/xm-next.h
1334 tmake_file=i386/t-next
1335 xmake_file=i386/x-next
1336 extra_objs=nextstep.o
1337 extra_parts="crtbegin.o crtend.o"
1338 if test x$enable_threads = xyes; then
1343 i[34567]86-sequent-bsd*) # 80386 from Sequent
1346 if test x$gas = xyes
1348 tm_file=i386/seq-gas.h
1350 tm_file=i386/sequent.h
1354 i[34567]86-sequent-ptx1*)
1356 xm_defines="USG SVR3"
1357 xmake_file=i386/x-sysv3
1358 tm_file=i386/seq-sysv3.h
1359 tmake_file=i386/t-crtstuff
1360 extra_parts="crtbegin.o crtend.o"
1361 install_headers_dir=install-headers-cpio
1364 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1366 xm_defines="USG SVR3"
1367 xmake_file=i386/x-sysv3
1368 tm_file=i386/seq2-sysv3.h
1369 tmake_file=i386/t-crtstuff
1370 extra_parts="crtbegin.o crtend.o"
1371 install_headers_dir=install-headers-cpio
1374 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1376 xm_file="xm-alloca.h ${xm_file}"
1377 xm_defines="USG POSIX SMALL_ARG_MAX"
1379 tm_file=i386/ptx4-i.h
1381 extra_parts="crtbegin.o crtend.o"
1382 install_headers_dir=install-headers-cpio
1384 i386-sun-sunos*) # Sun i386 roadrunner
1390 i[34567]86-wrs-vxworks*)
1392 tm_file=i386/vxi386.h
1393 tmake_file=i386/t-i386bare
1394 thread_file='vxworks'
1399 tm_file=i386/i386-aout.h
1400 tmake_file=i386/t-i386bare
1403 i[34567]86-*-beospe*)
1405 xm_file=i386/xm-beos.h
1406 xm_defines="USE_C_ALLOCA"
1407 tmake_file=i386/t-beos
1408 tm_file=i386/beos-pe.h
1409 xmake_file=i386/x-beos
1413 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1415 xm_file=i386/xm-beos.h
1416 tmake_file='i386/t-beos i386/t-crtpic'
1417 tm_file=i386/beos-elf.h
1418 xmake_file=i386/x-beos
1420 extra_parts='crtbegin.o crtend.o'
1423 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1425 tm_file=i386/bsd386.h
1426 # tmake_file=t-libc-ok
1431 tm_file=i386/386bsd.h
1432 # tmake_file=t-libc-ok
1433 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1437 i[34567]86-*-freebsdelf*)
1439 tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd-elf.h i386/perform.h"
1440 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1441 tmake_file=t-freebsd
1445 case x${enable_threads} in
1446 xyes | xpthreads | xposix)
1448 tmake_file="${tmake_file} t-freebsd-thread"
1453 i[34567]86-*-freebsd*)
1455 tm_file="i386/freebsd.h i386/perform.h"
1456 tmake_file=t-freebsd
1459 i[34567]86-*-netbsd*)
1461 tm_file=i386/netbsd.h
1466 i[34567]86-*-openbsd*)
1468 # we need collect2 until our bug is fixed...
1474 tm_file=i386/i386-coff.h
1475 tmake_file=i386/t-i386bare
1478 i[34567]86-*-isc*) # 80386 running ISC system
1480 xm_file="${xm_file} i386/xm-isc.h"
1481 xm_defines="USG SVR3"
1484 i[34567]86-*-isc[34]*)
1486 xmake_file=i386/x-isc3
1489 xmake_file=i386/x-isc
1492 if test x$gas = xyes -a x$stabs = xyes
1494 tm_file=i386/iscdbx.h
1495 tmake_file=i386/t-svr3dbx
1496 extra_parts="svr3.ifile svr3z.ifile"
1498 tm_file=i386/isccoff.h
1499 tmake_file=i386/t-crtstuff
1500 extra_parts="crtbegin.o crtend.o"
1502 tmake_file="$tmake_file i386/t-i386bare"
1503 install_headers_dir=install-headers-cpio
1506 i[34567]86-*-linux-gnuoldld*) # Intel 80386's running GNU/Linux
1507 changequote([,])dnl # with a.out format using
1509 xmake_file=x-linux-aout
1510 tmake_file="t-linux-aout i386/t-crtstuff"
1511 tm_file=i386/linux-oldld.h
1516 i[34567]86-*-linux-gnuaout*) # Intel 80386's running GNU/Linux
1517 changequote([,])dnl # with a.out format
1518 xmake_file=x-linux-aout
1519 tmake_file="t-linux-aout i386/t-crtstuff"
1520 tm_file=i386/linux-aout.h
1525 i[34567]86-*-linux-gnulibc1) # Intel 80386's running GNU/Linux
1526 changequote([,])dnl # with ELF format using the
1527 # GNU/Linux C library 5
1529 tm_file=i386/linux.h
1530 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1531 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1534 if test x$enable_threads = xyes; then
1535 thread_file='single'
1539 i[34567]86-*-linux-gnu*) # Intel 80386's running GNU/Linux
1540 changequote([,])dnl # with ELF format using glibc 2
1541 # aka GNU/Linux C library 6
1543 tm_file=i386/linux.h
1544 tmake_file="t-linux i386/t-crtstuff"
1545 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1548 if test x$enable_threads = xyes; then
1558 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1560 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1564 i[34567]86-pc-msdosdjgpp*)
1566 xm_file=i386/xm-djgpp.h
1567 tm_file=i386/djgpp.h
1568 tmake_file=i386/t-djgpp
1569 xmake_file=i386/x-djgpp
1574 case $host in *pc-msdosdjgpp*)
1580 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1583 tmake_file=t-libc-ok
1588 i[34567]86-*-lynxos*)
1590 if test x$gas = xyes
1594 tm_file=i386/lynx-ng.h
1596 xm_file=i386/xm-lynx.h
1597 tmake_file=i386/t-i386bare
1604 # tmake_file=t-libc-ok
1608 i[34567]86-*-osfrose*) # 386 using OSF/rose
1610 if test x$elf = xyes
1612 tm_file=i386/osfelf.h
1615 tm_file=i386/osfrose.h
1618 xm_file="i386/xm-osf.h ${xm_file}"
1619 xmake_file=i386/x-osfrose
1620 tmake_file=i386/t-osf
1621 extra_objs=halfpic.o
1624 i[34567]86-go32-rtems*)
1627 xm_file=i386/xm-go32.h
1628 tm_file=i386/go32-rtems.h
1629 tmake_file="i386/t-go32 t-rtems"
1632 i[34567]86-*-rtemscoff*)
1635 tm_file=i386/rtems.h
1636 tmake_file="i386/t-i386bare t-rtems"
1639 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1642 tm_file=i386/rtemself.h
1643 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1644 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1647 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1649 xm_file="xm-alloca.h ${xm_file} i386/xm-sco5.h"
1650 xm_defines="USG SVR3"
1651 xmake_file=i386/x-sco5
1652 install_headers_dir=install-headers-cpio
1654 if test x$gas = xyes
1656 tm_file="i386/sco5gas.h ${tm_file}"
1657 tmake_file=i386/t-sco5gas
1659 tmake_file=i386/t-sco5
1661 tmake_file="$tmake_file i386/t-i386bare"
1662 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1665 i[34567]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
1667 xm_file="${xm_file} i386/xm-sco.h"
1668 xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX"
1669 xmake_file=i386/x-sco4
1670 install_headers_dir=install-headers-cpio
1671 if test x$stabs = xyes
1673 tm_file=i386/sco4dbx.h
1674 tmake_file=i386/t-svr3dbx
1675 extra_parts="svr3.ifile svr3z.rfile"
1678 tmake_file=i386/t-crtstuff
1679 extra_parts="crtbegin.o crtend.o"
1681 tmake_file="$tmake_file i386/t-i386bare"
1682 # The default EAFS filesystem supports long file names.
1683 # Truncating the target makes $host != $target which
1684 # makes gcc think it is doing a cross-compile.
1685 # truncate_target=yes
1688 i[34567]86-*-sco*) # 80386 running SCO system
1690 xm_file=i386/xm-sco.h
1691 xmake_file=i386/x-sco
1692 install_headers_dir=install-headers-cpio
1693 if test x$stabs = xyes
1695 tm_file=i386/scodbx.h
1696 tmake_file=i386/t-svr3dbx
1697 extra_parts="svr3.ifile svr3z.rfile"
1700 extra_parts="crtbegin.o crtend.o"
1701 tmake_file=i386/t-crtstuff
1703 tmake_file="$tmake_file i386/t-i386bare"
1707 i[34567]86-*-solaris2*)
1709 xm_file="xm-alloca.h ${xm_file}"
1710 xm_defines="USG POSIX SMALL_ARG_MAX"
1712 if test x$gas = xyes; then
1713 # Only needed if gas does not support -s
1714 tm_file="i386/sol2gas.h ${tm_file}"
1716 tmake_file="i386/t-i386bare i386/t-sol2"
1717 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1719 if test x${enable_threads} = x; then
1720 enable_threads=$have_pthread_h
1721 if test x${enable_threads} = x; then
1722 enable_threads=$have_thread_h
1725 if test x${enable_threads} = xyes; then
1726 if test x${have_pthread_h} = xyes; then
1729 thread_file='solaris'
1734 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1736 xm_file="xm-alloca.h ${xm_file}"
1737 xm_defines="USG POSIX"
1738 tm_file=i386/sysv5.h
1739 if test x$stabs = xyes
1741 tm_file="${tm_file} dbx.h"
1743 tmake_file="i386/t-i386bare i386/t-crtpic"
1745 extra_parts="crtbegin.o crtend.o"
1746 if test x$enable_threads = xyes; then
1751 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1753 xm_file="xm-alloca.h ${xm_file}"
1754 xm_defines="USG POSIX SMALL_ARG_MAX"
1755 tm_file=i386/sysv4.h
1756 if test x$stabs = xyes
1758 tm_file="${tm_file} dbx.h"
1760 tmake_file="i386/t-i386bare i386/t-crtpic"
1762 extra_parts="crtbegin.o crtend.o"
1765 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1767 xm_file="xm-alloca.h ${xm_file}"
1768 xm_defines="USG POSIX"
1770 tmake_file="i386/t-i386bare i386/t-crtpic i386/t-udk"
1772 extra_parts="crtbegin.o crtend.o"
1773 install_headers_dir=install-headers-cpio
1776 i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
1779 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
1780 xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
1781 if test x$stabs = xyes
1783 tm_file=i386/osf1elfgdb.h
1785 tm_file=i386/osf1elf.h
1787 tmake_file=i386/t-osf1elf
1788 xmake_file=i386/x-osf1elf
1789 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1792 i[34567]86-*-sysv*) # Intel 80386's running system V
1794 xm_defines="USG SVR3"
1795 xmake_file=i386/x-sysv3
1796 if test x$gas = xyes
1798 if test x$stabs = xyes
1800 tm_file=i386/svr3dbx.h
1801 tmake_file=i386/t-svr3dbx
1802 extra_parts="svr3.ifile svr3z.rfile"
1804 tm_file=i386/svr3gas.h
1805 extra_parts="crtbegin.o crtend.o"
1806 tmake_file=i386/t-crtstuff
1809 tm_file=i386/sysv3.h
1810 extra_parts="crtbegin.o crtend.o"
1811 tmake_file=i386/t-crtstuff
1813 tmake_file="$tmake_file i386/t-crtpic"
1815 i386-*-vsta) # Intel 80386's running VSTa kernel
1816 xm_file="${xm_file} i386/xm-vsta.h"
1818 tmake_file=i386/t-vsta
1819 xmake_file=i386/x-vsta
1824 xm_file="${xm_file} i386/xm-cygwin.h"
1825 tmake_file=i386/t-cygwin
1826 tm_file=i386/win32.h
1827 xmake_file=i386/x-cygwin
1829 if test x$enable_threads = xyes; then
1835 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1837 xm_file="${xm_file} i386/xm-cygwin.h"
1838 tmake_file=i386/t-cygwin
1839 tm_file=i386/cygwin.h
1840 xmake_file=i386/x-cygwin
1842 if test x$enable_threads = xyes; then
1848 i[34567]86-*-mingw32*)
1850 tm_file=i386/mingw32.h
1851 xm_file="${xm_file} i386/xm-mingw32.h"
1852 tmake_file="i386/t-cygwin i386/t-mingw32"
1854 xmake_file=i386/x-cygwin
1855 if test x$enable_threads = xyes; then
1862 *minwg32crt* | *mingw32*)
1863 tm_file="${tm_file} i386/crtdll.h"
1871 xm_file="${xm_file} i386/xm-uwin.h"
1872 xm_defines="USG NO_STAB_H"
1873 tmake_file="i386/t-cygwin i386/t-uwin"
1875 xmake_file=i386/x-cygwin
1876 if test x$enable_threads = xyes; then
1882 i[34567]86-*-interix*)
1884 tm_file="i386/i386-interix.h interix.h"
1885 xm_file="i386/xm-i386-interix.h xm-interix.h"
1887 tmake_file="i386/t-interix"
1888 extra_objs=interix.o
1889 xmake_file=x-interix
1890 if test x$enable_threads = xyes ; then
1893 if test x$stabs = xyes ; then
1894 tm_file="${tm_file} dbxcoff.h"
1898 i[34567]86-*-winnt3*)
1900 tm_file=i386/win-nt.h
1901 out_file=i386/i386.c
1902 xm_file="xm-winnt.h ${xm_file}"
1903 xmake_file=winnt/x-winnt
1904 tmake_file=i386/t-winnt
1905 extra_host_objs="winnt.o oldnames.o"
1906 extra_gcc_objs="spawnv.o oldnames.o"
1907 if test x$gnu_ld != xyes
1909 extra_programs=ld.exe
1911 if test x$enable_threads = xyes; then
1916 i[34567]86-dg-dgux*)
1918 xm_file="xm-alloca.h ${xm_file}"
1919 xm_defines="USG POSIX"
1920 out_file=i386/dgux.c
1922 tmake_file=i386/t-dgux
1923 xmake_file=i386/x-dgux
1924 install_headers_dir=install-headers-cpio
1926 i860-alliant-*) # Alliant FX/2800
1927 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1928 xm_file="${xm_file}"
1929 xmake_file=i860/x-fx2800
1930 tmake_file=i860/t-fx2800
1931 extra_parts="crtbegin.o crtend.o"
1934 tm_file="${tm_file} i860/bsd.h"
1935 if test x$gas = xyes
1937 tm_file="${tm_file} i860/bsd-gas.h"
1942 tm_file="${tm_file} i860/mach.h"
1943 tmake_file=t-libc-ok
1945 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1946 tm_file="${tm_file} svr3.h i860/paragon.h"
1947 xm_defines="USG SVR3"
1951 tm_file="${tm_file} svr3.h i860/sysv3.h"
1952 xm_defines="USG SVR3"
1953 xmake_file=i860/x-sysv3
1954 extra_parts="crtbegin.o crtend.o"
1957 tm_file="${tm_file} svr4.h i860/sysv4.h"
1958 xm_defines="USG SVR3"
1959 xmake_file=i860/x-sysv4
1961 extra_parts="crtbegin.o crtend.o"
1963 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1964 tm_file="${tm_file} i960/vx960.h"
1965 tmake_file=i960/t-vxworks960
1967 thread_file='vxworks'
1969 i960-wrs-vxworks5* | i960-wrs-vxworks)
1970 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1971 tmake_file=i960/t-vxworks960
1973 thread_file='vxworks'
1976 tm_file="${tm_file} i960/vx960.h"
1977 tmake_file=i960/t-vxworks960
1979 thread_file='vxworks'
1982 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1983 tmake_file=i960/t-960bare
1987 tmake_file="i960/t-960bare t-rtems"
1988 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
1991 i960-*-*) # Default i960 environment.
1996 tmake_file="ia64/t-ia64"
1997 target_cpu_default="0"
1998 if test x$gas = xyes
2000 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
2002 if test x$gnu_ld = xyes
2004 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
2008 tm_file=ia64/linux.h
2009 tmake_file="t-linux ia64/t-ia64"
2010 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
2011 if test x$enable_threads = xyes; then
2016 extra_parts="crtinit.o crtfini.o"
2018 m68000-convergent-sysv*)
2020 xm_file="m68k/xm-3b1.h ${xm_file}"
2023 extra_headers=math-68881.h
2025 m68000-hp-bsd*) # HP 9000/200 running BSD
2026 tm_file=m68k/hp2bsd.h
2027 xmake_file=m68k/x-hp2bsd
2029 extra_headers=math-68881.h
2031 m68000-hp-hpux*) # HP 9000 series 300
2032 xm_file="xm-alloca.h ${xm_file}"
2034 if test x$gas = xyes
2036 xmake_file=m68k/x-hp320g
2037 tm_file=m68k/hp310g.h
2039 xmake_file=m68k/x-hp320
2040 tm_file=m68k/hp310.h
2042 install_headers_dir=install-headers-cpio
2044 extra_headers=math-68881.h
2049 extra_headers=math-68881.h
2052 tm_file=m68k/sun2o4.h
2054 extra_headers=math-68881.h
2057 xm_file="m68k/xm-3b1.h ${xm_file}"
2059 if test x$gas = xyes
2066 extra_headers=math-68881.h
2068 m68k-apple-aux*) # Apple Macintosh running A/UX
2069 xm_defines="USG AUX"
2070 tmake_file=m68k/t-aux
2071 install_headers_dir=install-headers-cpio
2072 extra_headers=math-68881.h
2073 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
2075 if test "$gnu_ld" = yes
2077 tm_file="${tm_file} m68k/auxgld.h"
2079 tm_file="${tm_file} m68k/auxld.h"
2081 if test "$gas" = yes
2083 tm_file="${tm_file} m68k/auxgas.h"
2085 tm_file="${tm_file} m68k/auxas.h"
2087 tm_file="${tm_file} m68k/a-ux.h"
2091 tm_file=m68k/apollo68.h
2092 xmake_file=m68k/x-apollo68
2094 extra_headers=math-68881.h
2097 m68k-altos-sysv*) # Altos 3068
2098 if test x$gas = xyes
2100 tm_file=m68k/altos3068.h
2103 echo "The Altos is supported only with the GNU assembler" 1>&2
2106 extra_headers=math-68881.h
2108 m68k-bull-sysv*) # Bull DPX/2
2109 if test x$gas = xyes
2111 if test x$stabs = xyes
2113 tm_file=m68k/dpx2cdbx.h
2115 tm_file=m68k/dpx2g.h
2120 xm_file="xm-alloca.h ${xm_file}"
2122 xmake_file=m68k/x-dpx2
2124 extra_headers=math-68881.h
2126 m68k-atari-sysv4*) # Atari variant of V.4.
2127 tm_file=m68k/atari.h
2128 xm_file="xm-alloca.h ${xm_file}"
2129 xm_defines="USG FULL_PROTOTYPES"
2131 extra_parts="crtbegin.o crtend.o"
2132 extra_headers=math-68881.h
2135 m68k-motorola-sysv*)
2136 tm_file=m68k/mot3300.h
2137 xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
2138 if test x$gas = xyes
2140 xmake_file=m68k/x-mot3300-gas
2141 if test x$gnu_ld = xyes
2143 tmake_file=m68k/t-mot3300-gald
2145 tmake_file=m68k/t-mot3300-gas
2149 xmake_file=m68k/x-mot3300
2150 if test x$gnu_ld = xyes
2152 tmake_file=m68k/t-mot3300-gld
2154 tmake_file=m68k/t-mot3300
2158 gdb_needs_out_file_path=yes
2159 extra_parts="crt0.o mcrt0.o"
2160 extra_headers=math-68881.h
2163 m68k-ncr-sysv*) # NCR Tower 32 SVR3
2164 tm_file=m68k/tower-as.h
2165 xm_defines="USG SVR3"
2166 xmake_file=m68k/x-tower
2167 extra_parts="crtbegin.o crtend.o"
2168 extra_headers=math-68881.h
2171 tm_file=m68k/plexus.h
2172 xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
2175 extra_headers=math-68881.h
2179 xm_file="xm-alloca.h ${xm_file}"
2181 extra_headers=math-68881.h
2184 xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
2185 xm_defines="USG unos"
2186 xmake_file=m68k/x-crds
2189 extra_headers=math-68881.h
2191 m68k-cbm-sysv4*) # Commodore variant of V.4.
2193 xm_file="xm-alloca.h ${xm_file}"
2194 xm_defines="USG FULL_PROTOTYPES"
2195 xmake_file=m68k/x-amix
2197 extra_parts="crtbegin.o crtend.o"
2198 extra_headers=math-68881.h
2202 tm_file=m68k/ccur-GAS.h
2203 xmake_file=m68k/x-ccur
2204 extra_headers=math-68881.h
2208 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
2209 tm_file=m68k/hp3bsd44.h
2210 xmake_file=m68k/x-hp3bsd44
2212 extra_headers=math-68881.h
2215 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
2216 tm_file=m68k/hp3bsd.h
2218 extra_headers=math-68881.h
2222 if test x$with_fp = xno
2224 tm_file=m68k/isi-nfp.h
2230 extra_headers=math-68881.h
2232 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
2233 xm_file="xm-alloca.h ${xm_file}"
2235 if test x$gas = xyes
2237 xmake_file=m68k/x-hp320g
2238 tm_file=m68k/hp320g.h
2240 xmake_file=m68k/x-hp320
2241 tm_file=m68k/hpux7.h
2243 install_headers_dir=install-headers-cpio
2245 extra_headers=math-68881.h
2248 m68k-hp-hpux*) # HP 9000 series 300
2249 xm_file="xm-alloca.h ${xm_file}"
2251 if test x$gas = xyes
2253 xmake_file=m68k/x-hp320g
2254 tm_file=m68k/hp320g.h
2256 xmake_file=m68k/x-hp320
2257 tm_file=m68k/hp320.h
2259 install_headers_dir=install-headers-cpio
2261 extra_headers=math-68881.h
2265 tm_file=m68k/sun3mach.h
2267 extra_headers=math-68881.h
2271 if test x$gas = xyes
2273 tm_file=m68k/news3gas.h
2275 tm_file=m68k/news3.h
2278 extra_headers=math-68881.h
2281 m68k-sony-bsd* | m68k-sony-newsos*)
2282 if test x$gas = xyes
2284 tm_file=m68k/newsgas.h
2289 extra_headers=math-68881.h
2292 m68k-next-nextstep2*)
2293 tm_file=m68k/next21.h
2294 xm_file="m68k/xm-next.h ${xm_file}"
2295 tmake_file=m68k/t-next
2296 xmake_file=m68k/x-next
2297 extra_objs=nextstep.o
2298 extra_headers=math-68881.h
2303 m68k-next-nextstep[34]*)
2306 xm_file="m68k/xm-next.h ${xm_file}"
2307 tmake_file=m68k/t-next
2308 xmake_file=m68k/x-next
2309 extra_objs=nextstep.o
2310 extra_parts="crtbegin.o crtend.o"
2311 extra_headers=math-68881.h
2313 if test x$enable_threads = xyes; then
2318 if test x$with_fp = xno
2320 tm_file=m68k/sun3n3.h
2322 tm_file=m68k/sun3o3.h
2326 extra_headers=math-68881.h
2328 m68k-sun-sunos*) # For SunOS 4 (the default).
2329 if test x$with_fp = xno
2331 tm_file=m68k/sun3n.h
2337 extra_headers=math-68881.h
2340 tm_file=m68k/vxm68k.h
2341 tmake_file=m68k/t-vxworks68
2342 extra_headers=math-68881.h
2343 thread_file='vxworks'
2347 tmake_file=m68k/t-m68kbare
2348 tm_file="m68k/m68k-aout.h libgloss.h"
2349 extra_headers=math-68881.h
2353 tmake_file=m68k/t-m68kbare
2354 tm_file="m68k/m68k-coff.h dbx.h libgloss.h"
2355 extra_headers=math-68881.h
2358 m68020-*-elf* | m68k-*-elf*)
2359 tm_file="m68k/m68020-elf.h"
2360 xm_file=m68k/xm-m68kv.h
2361 tmake_file=m68k/t-m68kelf
2362 header_files=math-68881.h
2365 if test x$gas = xyes
2369 tm_file=m68k/lynx-ng.h
2371 xm_file=m68k/xm-lynx.h
2373 tmake_file=m68k/t-lynx
2374 extra_headers=math-68881.h
2378 tm_file=m68k/netbsd.h
2385 # we need collect2 until our bug is fixed...
2388 m68k-*-sysv3*) # Motorola m68k's running system V.3
2389 xm_file="xm-alloca.h ${xm_file}"
2391 xmake_file=m68k/x-m68kv
2392 extra_parts="crtbegin.o crtend.o"
2393 extra_headers=math-68881.h
2396 m68k-*-sysv4*) # Motorola m68k's running system V.4
2397 tm_file=m68k/m68kv4.h
2398 xm_file="xm-alloca.h ${xm_file}"
2401 extra_parts="crtbegin.o crtend.o"
2402 extra_headers=math-68881.h
2405 m68k-*-linux-gnuaout*) # Motorola m68k's running GNU/Linux
2408 tm_file=m68k/linux-aout.h
2409 tmake_file="t-linux-aout m68k/t-linux-aout"
2410 extra_headers=math-68881.h
2414 m68k-*-linux-gnulibc1) # Motorola m68k's running GNU/Linux
2415 # with ELF format using the
2416 # GNU/Linux C library 5
2418 tm_file=m68k/linux.h
2419 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
2420 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2421 extra_headers=math-68881.h
2425 m68k-*-linux-gnu*) # Motorola m68k's running GNU/Linux
2426 # with ELF format using glibc 2
2427 # aka the GNU/Linux C library 6.
2429 tm_file=m68k/linux.h
2430 tmake_file="t-linux m68k/t-linux"
2431 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2432 extra_headers=math-68881.h
2435 if test x$enable_threads = xyes; then
2440 tmake_file=m68k/t-m68kbare
2441 tm_file=m68k/m68k-psos.h
2442 extra_headers=math-68881.h
2446 tmake_file="m68k/t-m68kbare t-rtems"
2447 tm_file=m68k/rtems.h
2448 extra_headers=math-68881.h
2451 m68k-*-rtemself*|m68k-*-rtems*)
2452 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2453 tm_file=m68k/rtemself.h
2454 extra_headers=math-68881.h
2460 tm_file=m88k/dguxbcs.h
2461 tmake_file=m88k/t-dguxbcs
2465 tmake_file=m88k/t-dgux
2468 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2469 xmake_file=m88k/x-dgux
2470 if test x$gas = xyes
2472 tmake_file=m88k/t-dgux-gas
2475 m88k-dolphin-sysv3*)
2476 tm_file=m88k/dolph.h
2477 extra_parts="crtbegin.o crtend.o"
2478 xm_file="m88k/xm-sysv3.h ${xm_file}"
2479 xmake_file=m88k/x-dolph
2480 if test x$gas = xyes
2482 tmake_file=m88k/t-m88k-gas
2485 m88k-tektronix-sysv3)
2486 tm_file=m88k/tekXD88.h
2487 extra_parts="crtbegin.o crtend.o"
2488 xm_file="m88k/xm-sysv3.h ${xm_file}"
2489 xmake_file=m88k/x-tekXD88
2490 if test x$gas = xyes
2492 tmake_file=m88k/t-m88k-gas
2496 tm_file=m88k/m88k-aout.h
2499 tm_file=m88k/m88k-coff.h
2500 tmake_file=m88k/t-bug
2504 extra_parts="crtbegin.o crtend.o"
2505 if test x$gas = xyes
2507 tmake_file=m88k/t-luna-gas
2509 tmake_file=m88k/t-luna
2513 tmake_file="${tmake_file} m88k/t-luna-gas"
2516 tm_file=m88k/sysv3.h
2517 extra_parts="crtbegin.o crtend.o"
2518 xm_file="m88k/xm-sysv3.h ${xm_file}"
2519 xmake_file=m88k/x-sysv3
2520 if test x$gas = xyes
2522 tmake_file=m88k/t-m88k-gas
2526 tm_file=m88k/sysv4.h
2527 extra_parts="crtbegin.o crtend.o"
2528 xmake_file=m88k/x-sysv4
2529 tmake_file=m88k/t-sysv4
2532 tm_file=mcore/mcore-elf.h
2533 tmake_file=mcore/t-mcore
2536 tm_file=mcore/mcore-pe.h
2537 tmake_file=mcore/t-mcore-pe
2539 mips-sgi-irix6*) # SGI System V.4., IRIX 6
2540 if test "x$gnu_ld" = xyes
2542 tm_file="mips/iris6.h mips/iris6gld.h"
2544 tm_file=mips/iris6.h
2546 tmake_file=mips/t-iris6
2547 xm_file=mips/xm-iris6.h
2548 xmake_file=mips/x-iris6
2549 # if test x$enable_threads = xyes; then
2550 # thread_file='irix'
2554 tm_file="mips/elf.h mips/vxworks.h"
2555 tmake_file=mips/t-ecoff
2558 extra_parts="crtbegin.o crtend.o"
2559 thread_file='vxworks'
2561 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2562 tm_file="mips/iris6.h mips/cross64.h"
2564 xm_file="mips/xm-iris5.h"
2565 xmake_file=mips/x-iris
2566 tmake_file=mips/t-cross64
2567 # See comment in mips/iris[56].h files.
2569 # if test x$enable_threads = xyes; then
2570 # thread_file='irix'
2574 if test x$gas = xyes
2576 if test x$stabs = xyes
2578 tm_file=mips/iris5gdb.h
2580 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2583 tm_file=mips/sni-svr4.h
2586 xmake_file=mips/x-sni-svr4
2587 tmake_file=mips/t-mips-gas
2588 if test x$gnu_ld != xyes
2593 mips-sgi-irix5*) # SGI System V.4., IRIX 5
2594 if test x$gas = xyes
2596 tm_file="mips/iris5.h mips/iris5gas.h"
2597 if test x$stabs = xyes
2599 tm_file="${tm_file} dbx.h"
2602 tm_file=mips/iris5.h
2605 xm_file="mips/xm-iris5.h"
2606 xmake_file=mips/x-iris
2607 # mips-tfile doesn't work yet
2608 tmake_file=mips/t-mips-gas
2609 # See comment in mips/iris5.h file.
2611 # if test x$enable_threads = xyes; then
2612 # thread_file='irix'
2615 mips-sgi-irix4loser*) # Mostly like a MIPS.
2616 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2617 if test x$stabs = xyes; then
2618 tm_file="${tm_file} dbx.h"
2621 xmake_file=mips/x-iris
2622 if test x$gas = xyes
2624 tmake_file=mips/t-mips-gas
2626 extra_passes="mips-tfile mips-tdump"
2628 if test x$gnu_ld != xyes
2632 # if test x$enable_threads = xyes; then
2633 # thread_file='irix'
2636 mips-sgi-irix4*) # Mostly like a MIPS.
2637 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2638 if test x$stabs = xyes; then
2639 tm_file="${tm_file} dbx.h"
2642 xmake_file=mips/x-iris
2643 if test x$gas = xyes
2645 tmake_file=mips/t-mips-gas
2647 extra_passes="mips-tfile mips-tdump"
2649 if test x$gnu_ld != xyes
2653 # if test x$enable_threads = xyes; then
2654 # thread_file='irix'
2657 mips-sgi-*) # Mostly like a MIPS.
2658 tm_file="mips/iris3.h ${tm_file}"
2659 if test x$stabs = xyes; then
2660 tm_file="${tm_file} dbx.h"
2663 xmake_file=mips/x-iris3
2664 if test x$gas = xyes
2666 tmake_file=mips/t-mips-gas
2668 extra_passes="mips-tfile mips-tdump"
2670 if test x$gnu_ld != xyes
2675 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2676 tm_file="mips/osfrose.h ${tm_file}"
2677 xmake_file=mips/x-osfrose
2678 tmake_file=mips/t-osfrose
2679 extra_objs=halfpic.o
2682 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2683 tm_file=mips/dec-osf1.h
2684 if test x$stabs = xyes; then
2685 tm_file="${tm_file} dbx.h"
2687 xmake_file=mips/x-dec-osf1
2688 if test x$gas = xyes
2690 tmake_file=mips/t-mips-gas
2692 tmake_file=mips/t-ultrix
2693 extra_passes="mips-tfile mips-tdump"
2695 if test x$gnu_ld != xyes
2700 mips-dec-bsd*) # Decstation running 4.4 BSD
2701 tm_file=mips/dec-bsd.h
2702 if test x$gas = xyes
2704 tmake_file=mips/t-mips-gas
2706 tmake_file=mips/t-ultrix
2707 extra_passes="mips-tfile mips-tdump"
2709 if test x$gnu_ld != xyes
2714 mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2715 tm_file=mips/netbsd.h
2716 # On NetBSD, the headers are already okay, except for math.h.
2719 mips*-*-linux*) # Linux MIPS, either endian.
2722 mipsel-*) tm_file="mips/elfl.h mips/linux.h" ;;
2723 *) tm_file="mips/elf.h mips/linux.h" ;;
2725 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2728 if test x$enable_threads = xyes; then
2732 mips*el-*-openbsd*) # mips little endian
2733 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2735 mips*-*-openbsd*) # mips big endian
2736 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2737 tm_file="mips/openbsd-be.h ${tm_file}"
2739 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2740 tm_file="mips/news4.h ${tm_file}"
2741 if test x$stabs = xyes; then
2742 tm_file="${tm_file} dbx.h"
2744 if test x$gas = xyes
2746 tmake_file=mips/t-mips-gas
2748 extra_passes="mips-tfile mips-tdump"
2750 if test x$gnu_ld != xyes
2754 xmake_file=mips/x-sony
2756 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2757 # That is based on svr4.
2758 # t-svr4 is not right because this system doesn't use ELF.
2759 tm_file="mips/news5.h ${tm_file}"
2760 if test x$stabs = xyes; then
2761 tm_file="${tm_file} dbx.h"
2764 if test x$gas = xyes
2766 tmake_file=mips/t-mips-gas
2768 extra_passes="mips-tfile mips-tdump"
2770 if test x$gnu_ld != xyes
2775 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2776 tm_file="mips/svr4-5.h mips/svr4-t.h"
2777 if test x$stabs = xyes; then
2778 tm_file="${tm_file} dbx.h"
2781 xmake_file=mips/x-sysv
2782 if test x$gas = xyes
2784 tmake_file=mips/t-mips-gas
2785 extra_parts="crtbegin.o crtend.o"
2787 tmake_file=mips/t-mips
2788 extra_passes="mips-tfile mips-tdump"
2790 if test x$gnu_ld != xyes
2795 mips-*-ultrix* | mips-dec-mach3) # Decstation.
2796 tm_file="mips/ultrix.h ${tm_file}"
2797 if test x$stabs = xyes; then
2798 tm_file="${tm_file} dbx.h"
2800 xmake_file=mips/x-ultrix
2801 if test x$gas = xyes
2803 tmake_file=mips/t-mips-gas
2805 tmake_file=mips/t-ultrix
2806 extra_passes="mips-tfile mips-tdump"
2808 if test x$gnu_ld != xyes
2814 mips-*-riscos[56789]bsd*)
2816 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
2817 if test x$stabs = xyes; then
2818 tm_file="${tm_file} dbx.h"
2820 if test x$gas = xyes
2822 tmake_file=mips/t-bsd-gas
2824 tmake_file=mips/t-bsd
2825 extra_passes="mips-tfile mips-tdump"
2827 if test x$gnu_ld != xyes
2833 mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2835 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2836 if test x$stabs = xyes; then
2837 tm_file="${tm_file} dbx.h"
2839 if test x$gas = xyes
2841 tmake_file=mips/t-bsd-gas
2843 tmake_file=mips/t-bsd
2844 extra_passes="mips-tfile mips-tdump"
2846 if test x$gnu_ld != xyes
2852 mips-*-riscos[56789]sysv4*)
2854 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2855 if test x$stabs = xyes; then
2856 tm_file="${tm_file} dbx.h"
2858 xmake_file=mips/x-sysv
2859 if test x$gas = xyes
2861 tmake_file=mips/t-svr4-gas
2863 tmake_file=mips/t-svr4
2864 extra_passes="mips-tfile mips-tdump"
2866 if test x$gnu_ld != xyes
2872 mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2874 tm_file="mips/svr4-4.h ${tm_file}"
2875 if test x$stabs = xyes; then
2876 tm_file="${tm_file} dbx.h"
2879 xmake_file=mips/x-sysv
2880 if test x$gas = xyes
2882 tmake_file=mips/t-svr4-gas
2884 tmake_file=mips/t-svr4
2885 extra_passes="mips-tfile mips-tdump"
2887 if test x$gnu_ld != xyes
2893 mips-*-riscos[56789]sysv*)
2895 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
2896 if test x$stabs = xyes; then
2897 tm_file="${tm_file} dbx.h"
2900 xmake_file=mips/x-sysv
2901 if test x$gas = xyes
2903 tmake_file=mips/t-svr3-gas
2905 tmake_file=mips/t-svr3
2906 extra_passes="mips-tfile mips-tdump"
2908 if test x$gnu_ld != xyes
2913 mips-*-sysv* | mips-*-riscos*sysv*)
2914 tm_file="mips/svr3-4.h ${tm_file}"
2915 if test x$stabs = xyes; then
2916 tm_file="${tm_file} dbx.h"
2919 xmake_file=mips/x-sysv
2920 if test x$gas = xyes
2922 tmake_file=mips/t-svr3-gas
2924 tmake_file=mips/t-svr3
2925 extra_passes="mips-tfile mips-tdump"
2927 if test x$gnu_ld != xyes
2933 mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
2935 tm_file=mips/mips-5.h
2936 if test x$stabs = xyes; then
2937 tm_file="${tm_file} dbx.h"
2939 if test x$gas = xyes
2941 tmake_file=mips/t-mips-gas
2943 extra_passes="mips-tfile mips-tdump"
2945 if test x$gnu_ld != xyes
2953 tm_file=mips/ecoffl.h
2954 if test x$stabs = xyes; then
2955 tm_file="${tm_file} dbx.h"
2957 tmake_file=mips/t-ecoff
2960 tm_file="gofast.h mips/ecoff.h"
2961 if test x$stabs = xyes; then
2962 tm_file="${tm_file} dbx.h"
2964 tmake_file=mips/t-ecoff
2967 tm_file="mips/elfl.h"
2968 tmake_file=mips/t-elf
2971 tm_file="mips/elf.h"
2972 tmake_file=mips/t-elf
2975 tm_file="mips/elfl64.h"
2976 tmake_file=mips/t-elf
2978 mips64orionel-*-elf*)
2979 tm_file="mips/elforion.h mips/elfl64.h"
2980 tmake_file=mips/t-elf
2983 tm_file="mips/elf64.h"
2984 tmake_file=mips/t-elf
2987 tm_file="mips/elforion.h mips/elf64.h"
2988 tmake_file=mips/t-elf
2990 mips64orion-*-rtems*)
2991 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
2992 tmake_file="mips/t-elf t-rtems"
2995 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
2996 tmake_file=mips/t-r3900
2999 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
3000 tmake_file=mips/t-r3900
3002 mips-*-*) # Default MIPS RISC-OS 4.0.
3003 if test x$stabs = xyes; then
3004 tm_file="${tm_file} dbx.h"
3006 if test x$gas = xyes
3008 tmake_file=mips/t-mips-gas
3010 extra_passes="mips-tfile mips-tdump"
3012 if test x$gnu_ld != xyes
3020 tm_file="mn10200/mn10200.h"
3021 if test x$stabs = xyes
3023 tm_file="${tm_file} dbx.h"
3029 tm_file="mn10300/mn10300.h"
3030 if test x$stabs = xyes
3032 tm_file="${tm_file} dbx.h"
3037 tm_file=ns32k/encore.h
3041 tm_file=ns32k/sequent.h
3045 tm_file=ns32k/tek6100.h
3049 tm_file=ns32k/tek6200.h
3052 # This has not been updated to GCC 2.
3055 # xmake_file=ns32k/x-genix
3056 # tm_file=ns32k/genix.h
3060 tm_file=ns32k/merlin.h
3064 tm_file=ns32k/pc532-mach.h
3068 tm_file=ns32k/pc532-min.h
3069 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
3074 tm_file=ns32k/netbsd.h
3075 xm_file="ns32k/xm-netbsd.h ${xm_file}"
3076 # On NetBSD, the headers are already okay, except for math.h.
3081 tm_file="${tm_file} pdp11/2bsd.h"
3090 # This has not been updated to GCC 2.
3093 # xmake_file=pyr/x-pyr
3098 tm_file="svr4.h pj/linux.h ${tm_file}"
3103 tm_file="svr4.h pj/pjl.h ${tm_file}"
3110 xmake_file=romp/x-mach
3117 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
3121 tm_file=rs6000/beos.h
3122 xm_file=rs6000/xm-beos.h
3123 tmake_file=rs6000/t-beos
3124 xmake_file=rs6000/x-beos
3127 tm_file=rs6000/sysv4.h
3128 xm_file="rs6000/xm-sysv4.h"
3129 xm_defines="USG POSIX"
3130 extra_headers=ppc-asm.h
3131 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3132 xmake_file=rs6000/x-sysv4
3135 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
3136 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3137 extra_headers=ppc-asm.h
3140 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
3141 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3142 extra_headers=ppc-asm.h
3145 tm_file="rs6000/sysv4.h"
3146 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3147 extra_headers=ppc-asm.h
3150 tm_file="rs6000/sysv4.h rs6000/eabi.h"
3151 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3152 extra_headers=ppc-asm.h
3155 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h"
3156 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
3157 extra_headers=ppc-asm.h
3159 powerpc-*-linux-gnulibc1)
3160 tm_file="rs6000/sysv4.h rs6000/linux.h"
3161 xm_file=rs6000/xm-sysv4.h
3162 out_file=rs6000/rs6000.c
3163 tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
3165 extra_headers=ppc-asm.h
3166 if test x$enable_threads = xyes; then
3170 powerpc-*-linux-gnu*)
3171 tm_file="rs6000/sysv4.h rs6000/linux.h"
3172 xm_file="rs6000/xm-sysv4.h"
3173 xm_defines="USG ${xm_defines}"
3174 out_file=rs6000/rs6000.c
3175 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
3177 extra_headers=ppc-asm.h
3178 if test x$enable_threads = xyes; then
3182 powerpc-wrs-vxworks*)
3184 xm_file="rs6000/xm-sysv4.h"
3185 xm_defines="USG POSIX"
3186 tm_file="rs6000/sysv4.h rs6000/vxppc.h"
3187 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3188 extra_headers=ppc-asm.h
3189 thread_file='vxworks'
3191 powerpcle-wrs-vxworks*)
3193 xm_file="rs6000/xm-sysv4.h"
3194 xm_defines="USG POSIX"
3195 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
3196 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3197 extra_headers=ppc-asm.h
3198 thread_file='vxworks'
3201 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3202 xm_file="rs6000/xm-sysv4.h"
3203 xm_defines="USG POSIX"
3204 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3205 xmake_file=rs6000/x-sysv4
3206 extra_headers=ppc-asm.h
3209 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3210 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3211 extra_headers=ppc-asm.h
3213 powerpcle-*-eabisim*)
3214 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
3215 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3216 extra_headers=ppc-asm.h
3219 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
3220 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3221 extra_headers=ppc-asm.h
3223 powerpcle-*-solaris2*)
3224 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
3225 xm_file="rs6000/xm-sysv4.h"
3226 xm_defines="USG POSIX"
3227 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3228 xmake_file=rs6000/x-sysv4
3229 extra_headers=ppc-asm.h
3232 rs6000-ibm-aix3.[01]*)
3234 tm_file=rs6000/aix31.h
3235 xmake_file=rs6000/x-aix31
3240 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
3242 tm_file=rs6000/aix3newas.h
3243 if test x$host != x$target
3245 tmake_file=rs6000/t-xnewas
3247 tmake_file=rs6000/t-newas
3253 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
3255 tm_file=rs6000/aix41.h
3256 if test x$host != x$target
3258 tmake_file=rs6000/t-xnewas
3260 tmake_file=rs6000/t-newas
3262 if test "$gnu_ld" = yes
3264 xmake_file=rs6000/x-aix41-gld
3266 tmake_file="rs6000/t-newas rs6000/t-aix41"
3268 xmake_file=rs6000/x-aix41
3273 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
3275 tm_file=rs6000/aix43.h
3276 tmake_file=rs6000/t-aix43
3277 xmake_file=rs6000/x-aix41
3282 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
3284 tm_file=rs6000/aix43.h
3285 tmake_file=rs6000/t-aix43
3286 xmake_file=rs6000/x-aix41
3299 tm_file=rs6000/mach.h
3300 xm_file="${xm_file} rs6000/xm-mach.h"
3301 xmake_file=rs6000/x-mach
3305 tm_file=rs6000/lynx.h
3306 xm_file=rs6000/xm-lynx.h
3307 tmake_file=rs6000/t-rs6000
3308 xmake_file=rs6000/x-lynx
3316 tmake_file="sh/t-sh t-rtems"
3317 tm_file=sh/rtemself.h
3321 tmake_file="sh/t-sh t-rtems"
3330 xm_file="xm-alloca.h ${xm_file}"
3333 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
3334 tm_file=sparc/vxsparc.h
3335 tmake_file=sparc/t-vxsparc
3337 thread_file='vxworks'
3340 tmake_file=sparc/t-sparcbare
3341 tm_file="sparc/aout.h libgloss.h"
3344 tm_file=sparc/netbsd.h
3349 # we need collect2 until our bug is fixed...
3357 tmake_file=sparc/t-elf
3358 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3362 sparc-*-linux-gnuaout*) # Sparc's running GNU/Linux, a.out
3363 xm_file="${xm_file} sparc/xm-linux.h"
3364 tm_file=sparc/linux-aout.h
3368 sparc-*-linux-gnulibc1*) # Sparc's running GNU/Linux, libc5
3369 xm_file="${xm_file} sparc/xm-linux.h"
3371 tm_file=sparc/linux.h
3372 tmake_file="t-linux t-linux-gnulibc1"
3373 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3377 sparc-*-linux-gnu*) # Sparc's running GNU/Linux, libc6
3378 xm_file="${xm_file} sparc/xm-linux.h"
3380 tm_file=sparc/linux.h
3381 tmake_file="t-linux"
3382 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3384 if test x$enable_threads = xyes; then
3390 if test x$gas = xyes
3392 tm_file=sparc/lynx.h
3394 tm_file=sparc/lynx-ng.h
3396 xm_file=sparc/xm-lynx.h
3397 tmake_file=sparc/t-sunos41
3401 tmake_file="sparc/t-sparcbare t-rtems"
3402 tm_file=sparc/rtems.h
3404 sparc-*-rtems*|sparc-*-rtemself*)
3405 tm_file="sparc/rtemself.h"
3406 tmake_file="sparc/t-elf t-rtems"
3407 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3411 sparcv9-*-solaris2*)
3412 if test x$gnu_ld = xyes
3414 tm_file=sparc/sol2-64.h
3416 tm_file=sparc/sol2-sld-64.h
3418 xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
3419 xm_defines="USG POSIX"
3420 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3421 xmake_file=sparc/x-sysv4
3422 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3424 if test x${enable_threads} = x ; then
3425 enable_threads=$have_pthread_h
3426 if test x${enable_threads} = x ; then
3427 enable_threads=$have_thread_h
3430 if test x${enable_threads} = xyes ; then
3431 if test x${have_pthread_h} = xyes ; then
3434 thread_file='solaris'
3438 sparc-hal-solaris2*)
3439 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3440 xm_defines="USG POSIX"
3441 tm_file="sparc/sol2.h sparc/hal.h"
3442 tmake_file="sparc/t-halos sparc/t-sol2"
3443 xmake_file=sparc/x-sysv4
3444 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3455 thread_file='solaris'
3458 if test x$gnu_ld = xyes
3460 tm_file=sparc/sol2.h
3462 tm_file=sparc/sol2-sld.h
3464 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3465 xm_defines="USG POSIX"
3466 tmake_file=sparc/t-sol2
3467 xmake_file=sparc/x-sysv4
3468 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3471 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3474 if test x$gnu_ld = xyes
3476 tm_file=sparc/sol2-64.h
3478 tm_file=sparc/sol2-sld-64.h
3480 tmake_file="$tmake_file sparc/t-sol2-64"
3493 if test x${enable_threads} = x; then
3494 enable_threads=$have_pthread_h
3495 if test x${enable_threads} = x; then
3496 enable_threads=$have_thread_h
3499 if test x${enable_threads} = xyes; then
3500 if test x${have_pthread_h} = xyes; then
3503 thread_file='solaris'
3508 tm_file=sparc/sunos4.h
3509 tmake_file=sparc/t-sunos40
3513 tm_file=sparc/sunos4.h
3514 tmake_file=sparc/t-sunos41
3516 if test x$gas = xyes; then
3517 tm_file="${tm_file} sparc/sun4gas.h"
3521 tm_file=sparc/sun4o3.h
3525 tm_file=sparc/sysv4.h
3526 xm_file="sparc/xm-sysv4.h"
3527 xm_defines="USG POSIX"
3529 xmake_file=sparc/x-sysv4
3530 extra_parts="crtbegin.o crtend.o"
3533 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3534 xm_defines="USG POSIX"
3535 tm_file=sparc/vxsim.h
3536 tmake_file=sparc/t-vxsparc
3537 xmake_file=sparc/x-sysv4
3540 tm_file="sparc/splet.h libgloss.h"
3541 tmake_file=sparc/t-splet
3544 tm_file="sparc/litecoff.h libgloss.h"
3545 tmake_file=sparc/t-sparclite
3548 tm_file="sparc/lite.h aoutos.h libgloss.h"
3549 tmake_file=sparc/t-sparclite
3552 tm_file="sparc/liteelf.h"
3553 tmake_file=sparc/t-sparclite
3554 extra_parts="crtbegin.o crtend.o"
3557 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3558 tmake_file=sparc/t-sp86x
3561 tm_file="sparc/sp86x-elf.h"
3562 tmake_file=sparc/t-sp86x
3563 extra_parts="crtbegin.o crtend.o"
3566 tmake_file=sparc/t-sp64
3567 tm_file=sparc/sp64-aout.h
3570 tmake_file=sparc/t-sp64
3571 tm_file=sparc/sp64-elf.h
3572 extra_parts="crtbegin.o crtend.o"
3574 sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
3575 tmake_file="t-linux sparc/t-linux64"
3576 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3577 tm_file=sparc/linux64.h
3579 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3581 if test x$enable_threads = xyes; then
3586 # This hasn't been upgraded to GCC 2.
3587 # tahoe-harris-*) # Harris tahoe, using COFF.
3588 # tm_file=tahoe/harris.h
3590 # tahoe-*-bsd*) # tahoe running BSD
3595 *** The Thumb targets have been depreciated. The equivalent
3596 *** ARM based toolchain can now generated Thumb instructions
3597 *** when the -mthumb switch is given to the compiler.])
3599 # This hasn't been upgraded to GCC 2.
3606 tm_file="v850/rtems.h"
3607 xm_file="v850/xm-v850.h"
3608 tmake_file="v850/t-v850 t-rtems"
3609 if test x$stabs = xyes
3611 tm_file="${tm_file} dbx.h"
3616 target_cpu_default="TARGET_CPU_generic"
3618 tm_file="v850/v850.h"
3619 xm_file="v850/xm-v850.h"
3620 tmake_file=v850/t-v850
3621 if test x$stabs = xyes
3623 tm_file="${tm_file} dbx.h"
3627 vax-*-bsd*) # vaxen running BSD
3631 vax-*-sysv*) # vaxen running system V
3632 tm_file="${tm_file} vax/vaxv.h"
3637 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3643 tmake_file="${tmake_file} vax/t-openbsd"
3645 vax-*-ultrix*) # vaxen running ultrix
3646 tm_file="${tm_file} vax/ultrix.h"
3650 vax-*-vms*) # vaxen running VMS
3651 xm_file=vax/xm-vms.h
3655 vax-*-*) # vax default entry
3659 xm_file="${xm_file} xm-svr3"
3663 echo "Configuration $machine not supported" 1>&2
3670 ;; # Existing GNU/Linux systems do not use the GNU setup.
3672 # On the GNU system, the setup is just about the same on
3673 # each different CPU. The specific machines that GNU
3674 # supports are matched above and just set $cpu_type.
3675 xm_file="xm-gnu.h ${xm_file}"
3676 tm_file=${cpu_type}/gnu.h
3677 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
3678 # GNU always uses ELF.
3680 # GNU tools are the only tools.
3683 xmake_file=x-linux # These details are the same as Linux.
3684 tmake_file=t-gnu # These are not.
3687 xmake_try_sysv=x-sysv
3688 install_headers_dir=install-headers-cpio
3691 install_headers_dir=install-headers-cpio
3695 # Distinguish i[34567]86
3696 # Also, do not run mips-tfile on MIPS if using gas.
3697 # Process --with-cpu= for PowerPC/rs6000
3698 target_cpu_default2=
3701 target_cpu_default2=1
3704 case $target_alias in
3706 target_cpu_default2=4
3709 target_cpu_default2=2
3713 i686-*-* | i786-*-*)
3714 target_cpu_default2=3
3721 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3724 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3727 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3730 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3733 target_cpu_default2="MASK_CPU_EV5"
3737 if test x$gas = xyes
3739 if test "$target_cpu_default2" = ""
3741 target_cpu_default2="MASK_GAS"
3743 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3748 case "x$with_cpu" in
3751 target_cpu_default2="TARGET_CPU_generic"
3754 # Distinguish cores, and major variants
3755 # arm7m doesn't exist, but D & I don't affect code
3757 xarm[23678] | xarm250 | xarm[67][01]0 \
3758 | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
3759 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3760 | xstrongarm | xstrongarm110 | xstrongarm1100)
3762 target_cpu_default2="TARGET_CPU_$with_cpu"
3766 echo "--with-cpu must be passed a value" 1>&2
3771 if test x$pass2done = xyes
3773 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3780 mips*-*-ecoff* | mips*-*-elf*)
3781 if test x$gas = xyes
3783 if test x$gnu_ld = xyes
3785 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3787 target_cpu_default2="MASK_GAS"
3792 if test x$gas = xyes
3794 target_cpu_default2="MASK_GAS"
3797 powerpc*-*-* | rs6000-*-*)
3798 case "x$with_cpu" in
3802 xcommon | xpower | xpower2 | xpowerpc | xrios \
3803 | xrios1 | xrios2 | xrsc | xrsc1 \
3804 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3805 | xec603e | x740 | x750 | x401 \
3806 | x403 | x505 | x801 | x821 | x823 | x860)
3807 target_cpu_default2="\"$with_cpu\""
3811 echo "--with-cpu must be passed a value" 1>&2
3816 if test x$pass2done = xyes
3818 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3825 case ".$with_cpu" in
3827 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3829 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3830 target_cpu_default2="TARGET_CPU_$with_cpu"
3833 if test x$pass2done = xyes
3835 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3843 if test "$target_cpu_default2" != ""
3845 if test "$target_cpu_default" != ""
3847 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3849 target_cpu_default=$target_cpu_default2
3853 # No need for collect2 if we have the GNU linker.
3854 # Actually, there is now; GNU ld doesn't handle the EH info or
3855 # collecting for shared libraries.
3862 # Save data on machine being used to compile GCC in build_xm_file.
3863 # Save data on host machine in vars host_xm_file and host_xmake_file.
3864 if test x$pass1done = x
3866 if test x"$xm_file" = x
3867 then build_xm_file=$cpu_type/xm-$cpu_type.h
3868 else build_xm_file=$xm_file
3870 build_xm_defines=$xm_defines
3871 build_install_headers_dir=$install_headers_dir
3872 build_exeext=$exeext
3875 if test x$pass2done = x
3877 if test x"$xm_file" = x
3878 then host_xm_file=$cpu_type/xm-$cpu_type.h
3879 else host_xm_file=$xm_file
3881 host_xm_defines=$xm_defines
3882 if test x"$xmake_file" = x
3883 then xmake_file=$cpu_type/x-$cpu_type
3885 host_xmake_file="$xmake_file"
3886 host_truncate_target=$truncate_target
3887 host_extra_gcc_objs=$extra_gcc_objs
3888 host_extra_objs=$extra_host_objs
3895 extra_objs="${host_extra_objs} ${extra_objs}"
3897 # Default the target-machine variables that were not explicitly set.
3898 if test x"$tm_file" = x
3899 then tm_file=$cpu_type/$cpu_type.h; fi
3901 if test x$extra_headers = x
3902 then extra_headers=; fi
3904 if test x"$xm_file" = x
3905 then xm_file=$cpu_type/xm-$cpu_type.h; fi
3907 if test x$md_file = x
3908 then md_file=$cpu_type/$cpu_type.md; fi
3910 if test x$out_file = x
3911 then out_file=$cpu_type/$cpu_type.c; fi
3913 if test x"$tmake_file" = x
3914 then tmake_file=$cpu_type/t-$cpu_type
3917 if test x"$dwarf2" = xyes
3918 then tm_file="$tm_file tm-dwarf2.h"
3921 if test x$float_format = x
3922 then float_format=i64
3925 if test $float_format = none
3926 then float_h_file=Makefile.in
3927 else float_h_file=float-$float_format.h
3930 # Handle cpp installation.
3931 if test x$enable_cpp != xno
3933 tmake_file="$tmake_file t-install-cpp"
3936 # Say what files are being used for the output code and MD file.
3937 echo "Using \`$srcdir/config/$out_file' to output insns."
3938 echo "Using \`$srcdir/config/$md_file' as machine description file."
3941 for f in $tm_file; do
3944 if test $count = ax; then
3945 echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
3947 echo "Using the following target machine macro files:"
3948 for f in $tm_file; do
3949 echo " $srcdir/config/$f"
3954 for f in $host_xm_file; do
3957 if test $count = ax; then
3958 echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
3960 echo "Using the following host machine macro files:"
3961 for f in $host_xm_file; do
3962 echo " $srcdir/config/$f"
3966 if test "$host_xm_file" != "$build_xm_file"; then
3968 for f in $build_xm_file; do
3971 if test $count = ax; then
3972 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
3974 echo "Using the following build machine macro files:"
3975 for f in $build_xm_file; do
3976 echo " $srcdir/config/$f"
3981 if test x$thread_file = x; then
3982 if test x$target_thread_file != x; then
3983 thread_file=$target_thread_file
3985 thread_file='single'
3989 # Set up the header files.
3990 # $links is the list of header files to create.
3991 # $vars is the list of shell variables with file names to include.
3992 # auto-host.h is the file containing items generated by autoconf and is
3993 # the first file included by config.h.
3995 host_xm_file="auto-host.h gansidecl.h ${host_xm_file} hwint.h"
3997 # If host=build, it is correct to have hconfig include auto-host.h
3998 # as well. If host!=build, we are in error and need to do more
3999 # work to find out the build config parameters.
4000 if test x$host = x$build
4002 build_xm_file="auto-host.h gansidecl.h ${build_xm_file} hwint.h"
4004 # We create a subdir, then run autoconf in the subdir.
4005 # To prevent recursion we set host and build for the new
4006 # invocation of configure to the build for this invocation
4013 /*) realsrcdir=${srcdir};;
4014 *) realsrcdir=../${srcdir};;
4016 CC=${CC_FOR_BUILD} ${realsrcdir}/configure \
4017 --target=$target --host=$build --build=$build
4019 # We just finished tests for the build machine, so rename
4020 # the file auto-build.h in the gcc directory.
4021 mv auto-host.h ../auto-build.h
4024 build_xm_file="auto-build.h gansidecl.h ${build_xm_file} hwint.h"
4027 xm_file="gansidecl.h ${xm_file}"
4028 tm_file="gansidecl.h ${tm_file}"
4030 vars="host_xm_file tm_file tm_p_file xm_file build_xm_file"
4031 links="config.h tm.h tm_p.h tconfig.h hconfig.h"
4032 defines="host_xm_defines null_defines null_defines xm_defines build_xm_defines"
4035 if test -f config.status; then mv -f config.status config.bak; fi
4038 while test -n "$vars"
4040 set $vars; var=$1; shift; vars=$*
4041 set $links; link=$1; shift; links=$*
4042 set $defines; define=$1; shift; defines=$*
4045 # Make sure the file is created, even if it is empty.
4048 # Define TARGET_CPU_DEFAULT if the system wants one.
4049 # This substitutes for lots of *.h files.
4050 if test "$target_cpu_default" != "" -a $link = tm.h
4052 echo "#define TARGET_CPU_DEFAULT ($target_cpu_default)" >>$link
4055 for file in `eval echo '$'$var`; do
4060 echo '#ifdef IN_GCC' >>$link
4063 echo "#include \"$file\"" >>$link
4068 echo '#endif' >>$link
4073 for def in `eval echo '$'$define`; do
4074 echo "#ifndef $def" >>$link
4075 echo "#define $def" >>$link
4076 echo "#endif" >>$link
4080 # Truncate the target if necessary
4081 if test x$host_truncate_target != x; then
4082 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4085 # Get the version trigger filename from the toplevel
4086 if test "${with_gcc_version_trigger+set}" = set; then
4087 gcc_version_trigger=$with_gcc_version_trigger
4089 gcc_version_trigger=${srcdir}/version.c
4092 gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
4095 # Internationalization
4097 VERSION="$gcc_version"
4098 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",
4099 [Define to the name of the distribution.])
4100 AC_DEFINE_UNQUOTED(VERSION, "$VERSION",
4101 [Define to the version of the distribution.])
4107 # NLS support is still experimental, so disable it by default for now.
4109 [ --enable-nls use Native Language Support (disabled by default)],
4113 XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
4115 # Windows32 Registry support for specifying GCC installation paths.
4116 AC_ARG_ENABLE(win32-registry,
4117 [ --disable-win32-registry
4118 Disable lookup of installation paths in the
4119 Registry on Windows hosts.
4120 --enable-win32-registry Enable registry lookup (default).
4121 --enable-win32-registry=KEY
4122 Use KEY instead of GCC version as the last portion
4123 of the registry key.],,)
4125 AC_MSG_CHECKING(whether windows registry support is requested)
4126 if test x$enable_win32_registry != xno; then
4127 AC_DEFINE(ENABLE_WIN32_REGISTRY, 1,
4128 [Define to 1 if installation paths should be looked up in Windows32
4129 Registry. Ignored on non windows32 hosts.])
4135 # Check if user specified a different registry key.
4136 case x${enable_win32_registry} in
4139 gcc_cv_win32_registry_key="$VERSION"
4142 # no registry lookup.
4143 gcc_cv_win32_registry_key=''
4146 # user-specified key.
4147 gcc_cv_win32_registry_key="$enable_win32_registry"
4151 if test x$enable_win32_registry != xno; then
4152 AC_MSG_CHECKING(registry key on windows hosts)
4153 AC_DEFINE_UNQUOTED(WIN32_REGISTRY_KEY, "$gcc_cv_win32_registry_key",
4154 [Define to be the last portion of registry key on windows hosts.])
4155 AC_MSG_RESULT($gcc_cv_win32_registry_key)
4158 # Get an absolute path to the GCC top-level source directory
4164 # Conditionalize the makefile for this host machine.
4165 # Make-host contains the concatenation of all host makefile fragments
4166 # [there can be more than one]. This file is built by configure.frag.
4167 host_overrides=Make-host
4168 dep_host_xmake_file=
4169 for f in .. ${host_xmake_file}
4171 if test -f ${srcdir}/config/$f
4173 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
4177 # Conditionalize the makefile for this target machine.
4178 # Make-target contains the concatenation of all host makefile fragments
4179 # [there can be more than one]. This file is built by configure.frag.
4180 target_overrides=Make-target
4182 for f in .. ${tmake_file}
4184 if test -f ${srcdir}/config/$f
4186 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
4190 # If the host doesn't support symlinks, modify CC in
4191 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
4192 # Otherwise, we can use "CC=$(CC)".
4194 if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
4196 cc_set_by_configure="\$(CC)"
4197 quoted_cc_set_by_configure="\$(CC)"
4198 stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
4201 if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
4203 symbolic_link="cp -p"
4207 cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
4208 quoted_cc_set_by_configure="\\\`case '\\\$(CC)' in stage*) echo '\\\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\\\$(CC)';; esac\\\`"
4209 stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
4213 out_object_file=`basename $out_file .c`.o
4216 for f in $tm_file; do
4219 tm_file_list="${tm_file_list} $f" ;;
4220 *) tm_file_list="${tm_file_list} \$(srcdir)/config/$f" ;;
4225 for f in $host_xm_file; do
4227 auto-host.h | gansidecl.h | hwint.h )
4228 host_xm_file_list="${host_xm_file_list} $f" ;;
4229 *) host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f" ;;
4234 for f in $build_xm_file; do
4236 auto-build.h | auto-host.h | gansidecl.h | hwint.h )
4237 build_xm_file_list="${build_xm_file_list} $f" ;;
4238 *) build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f" ;;
4242 # Define macro CROSS_COMPILE in compilation
4243 # if this is a cross-compiler.
4244 # Also use all.cross instead of all.internal
4245 # and add cross-make to Makefile.
4246 cross_overrides="/dev/null"
4247 if test x$host != x$target
4249 cross_defines="CROSS=-DCROSS_COMPILE"
4250 cross_overrides="${topdir}/cross-make"
4253 # If this is a cross-compiler that does not
4254 # have its own set of headers then define
4257 # If this is using newlib, then define inhibit_libc in
4258 # LIBGCC2_CFLAGS. This will cause __eprintf to be left out of
4259 # libgcc.a, but that's OK because newlib should have its own version of
4262 if [test x$host != x$target] && [test x$with_headers = x]; then
4263 inhibit_libc=-Dinhibit_libc
4265 if [test x$with_newlib = xyes]; then
4266 inhibit_libc=-Dinhibit_libc
4269 AC_SUBST(inhibit_libc)
4271 # When building gcc with a cross-compiler, we need to fix a few things.
4272 # This must come after cross-make as we want all.build to override
4274 build_overrides="/dev/null"
4275 if test x$build != x$host
4277 build_overrides="${topdir}/build-make"
4280 # Expand extra_headers to include complete path.
4281 # This substitutes for lots of t-* files.
4283 if test "x$extra_headers" = x
4286 # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
4287 for file in $extra_headers;
4289 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
4293 if test x$use_collect2 = xno; then
4297 # Add a definition of USE_COLLECT2 if system wants one.
4298 # Also tell toplev.c what to do.
4299 # This substitutes for lots of t-* files.
4300 if test x$use_collect2 = x
4305 will_use_collect2="collect2"
4306 maybe_use_collect2="-DUSE_COLLECT2"
4310 # Set MD_DEPS if the real md file is in md.pre-cpp.
4311 # Set MD_CPP to the cpp to pass the md file through. Md files use ';'
4312 # for line oriented comments, so we must always use a GNU cpp. If
4313 # building gcc with a cross compiler, use the cross compiler just
4314 # built. Otherwise, we can use the cpp just built.
4316 if test "x$md_cppflags" = x
4318 md_file_sub=$srcdir/config/$md_file
4323 # If we have gas in the build tree, make a link to it.
4324 if test -f ../gas/Makefile; then
4325 rm -f as; $symbolic_link ../gas/as-new$host_exeext as$host_exeext 2>/dev/null
4328 # If we have nm in the build tree, make a link to it.
4329 if test -f ../binutils/Makefile; then
4330 rm -f nm; $symbolic_link ../binutils/nm-new$host_exeext nm$host_exeext 2>/dev/null
4333 # If we have ld in the build tree, make a link to it.
4334 if test -f ../ld/Makefile; then
4335 # if test x$use_collect2 = x; then
4336 # rm -f ld; $symbolic_link ../ld/ld-new$host_exeext ld$host_exeext 2>/dev/null
4338 rm -f collect-ld; $symbolic_link ../ld/ld-new$host_exeext collect-ld$host_exeext 2>/dev/null
4342 # Figure out what assembler alignment features are present.
4343 AC_MSG_CHECKING(assembler alignment features)
4345 gcc_cv_as_alignment_features=
4346 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
4347 if test -x "$DEFAULT_ASSEMBLER"; then
4348 gcc_cv_as="$DEFAULT_ASSEMBLER"
4349 elif test -x "$AS"; then
4351 elif test -x as$host_exeext; then
4352 # Build using assembler in the current directory.
4353 gcc_cv_as=./as$host_exeext
4354 elif test -f $gcc_cv_as_gas_srcdir/configure.in -a -f ../gas/Makefile; then
4355 # Single tree build which includes gas.
4356 for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
4359 gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f`
4361 if test x$gcc_cv_gas_version != x; then
4366 gcc_cv_gas_major_version=`expr "$gcc_cv_gas_version" : "VERSION=\([0-9]*\)"`
4367 gcc_cv_gas_minor_version=`expr "$gcc_cv_gas_version" : "VERSION=[0-9]*\.\([0-9]*\)"`
4369 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4370 # Gas version 2.6 and later support for .balign and .p2align.
4371 # bytes to skip when using .p2align.
4372 if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 6 -o "$gcc_cv_gas_major_version" -gt 2; then
4373 gcc_cv_as_alignment_features=".balign and .p2align"
4374 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4376 # Gas version 2.8 and later support specifying the maximum
4377 # bytes to skip when using .p2align.
4378 if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 8 -o "$gcc_cv_gas_major_version" -gt 2; then
4379 gcc_cv_as_alignment_features=".p2align including maximum skip"
4380 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4383 elif test x$host = x$target; then
4385 # Search the same directories that the installed compiler will
4386 # search. Else we may find the wrong assembler and lose. If we
4387 # do not find a suitable assembler binary, then try the user's
4390 # Also note we have to check MD_EXEC_PREFIX before checking the
4391 # user's path. Unfortunately, there is no good way to get at the
4392 # value of MD_EXEC_PREFIX here. So we do a brute force search
4393 # through all the known MD_EXEC_PREFIX values. Ugh. This needs
4394 # to be fixed as part of the make/configure rewrite too.
4396 if test "x$exec_prefix" = xNONE; then
4397 if test "x$prefix" = xNONE; then
4398 test_prefix=/usr/local
4403 test_prefix=$exec_prefix
4406 # If the loop below does not find an assembler, then use whatever
4407 # one we can find in the users's path.
4411 test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \
4412 $test_prefix/lib/gcc-lib/$target \
4413 /usr/lib/gcc/$target/$gcc_version \
4414 /usr/lib/gcc/$target \
4415 $test_prefix/$target/bin/$target/$gcc_version \
4416 $test_prefix/$target/bin \
4421 /bsd43/usr/lib/cmplrs/cc \
4422 /usr/cross64/usr/bin \
4423 /usr/lib/cmplrs/cc \
4424 /sysv/usr/lib/cmplrs/cc \
4425 /svr4/usr/lib/cmplrs/cc \
4428 for dir in $test_dirs; do
4429 if test -f $dir/as$host_exeext; then
4430 gcc_cv_as=$dir/as$host_exeext
4435 if test x$gcc_cv_as != x; then
4436 # Check if we have .balign and .p2align
4437 echo ".balign 4" > conftest.s
4438 echo ".p2align 2" >> conftest.s
4439 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4440 gcc_cv_as_alignment_features=".balign and .p2align"
4441 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4443 rm -f conftest.s conftest.o
4444 # Check if specifying the maximum bytes to skip when
4445 # using .p2align is supported.
4446 echo ".p2align 4,,7" > conftest.s
4447 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4448 gcc_cv_as_alignment_features=".p2align including maximum skip"
4449 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4451 rm -f conftest.s conftest.o
4453 AC_MSG_RESULT($gcc_cv_as_alignment_features)
4455 AC_MSG_CHECKING(assembler subsection support)
4456 gcc_cv_as_subsections=
4457 if test x$gcc_cv_as != x; then
4458 # Check if we have .subsection
4459 echo ".subsection 1" > conftest.s
4460 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4461 gcc_cv_as_subsections=".subsection"
4462 if test -x nm$host_exeext; then
4463 gcc_cv_nm=./nm$host_exeext
4464 elif test x$host = x$target; then
4466 gcc_cv_nm=nm$host_exeext
4468 if test x$gcc_cv_nm != x; then
4469 cat > conftest.s <<EOF
4470 conftest_label1: .word 0
4472 conftest_label2: .word 0
4475 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4476 $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1
4477 $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2
4478 if cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then
4481 gcc_cv_as_subsections="working .subsection -1"
4482 AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING, 1,
4483 [Define if your assembler supports .subsection and .subsection -1 starts
4484 emitting at the beginning of your section.])
4489 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4491 AC_MSG_RESULT($gcc_cv_as_subsections)
4493 AC_MSG_CHECKING(assembler weak support)
4495 if test x$gcc_cv_as != x; then
4496 # Check if we have .weak
4497 echo " .weak foobar" > conftest.s
4498 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4499 AC_DEFINE(HAVE_GAS_WEAK, 1,
4500 [Define if your assembler supports .weak.])
4501 gcc_cv_as_weak="yes"
4503 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4505 AC_MSG_RESULT($gcc_cv_as_weak)
4507 AC_MSG_CHECKING(assembler hidden support)
4509 if test x$gcc_cv_as != x; then
4510 # Check if we have .hidden
4511 echo " .hidden foobar" > conftest.s
4512 echo "foobar:" >> conftest.s
4513 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4514 AC_DEFINE(HAVE_GAS_HIDDEN, 1,
4515 [Define if your assembler supports .hidden.])
4516 gcc_cv_as_hidden="yes"
4518 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4520 AC_MSG_RESULT($gcc_cv_as_hidden)
4524 AC_CACHE_CHECK([assembler .register pseudo-op support],
4525 gcc_cv_as_register_pseudo_op, [
4526 gcc_cv_as_register_pseudo_op=unknown
4527 if test x$gcc_cv_as != x; then
4528 # Check if we have .register
4529 echo ".register %g2, #scratch" > conftest.s
4530 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4531 gcc_cv_as_register_pseudo_op=yes
4533 gcc_cv_as_register_pseudo_op=no
4535 rm -f conftest.s conftest.o
4538 if test "x$gcc_cv_as_register_pseudo_op" = xyes; then
4539 AC_DEFINE(HAVE_AS_REGISTER_PSEUDO_OP, 1,
4540 [Define if your assembler supports .register.])
4545 AC_CACHE_CHECK([for 64 bit support in assembler ($gcc_cv_as)],
4546 gcc_cv_as_flags64, [
4547 if test -n "$gcc_cv_as"; then
4548 echo ".xword foo" > conftest.s
4549 gcc_cv_as_flags64=no
4550 for flag in "-xarch=v9" "-64 -Av9"; do
4551 if $gcc_cv_as $flag -o conftest.o conftest.s \
4552 > /dev/null 2>&1; then
4553 gcc_cv_as_flags64=$flag
4557 rm -f conftest.s conftest.o
4559 if test "$gas" = yes; then
4560 gcc_cv_as_flags64="-64 -Av9"
4562 gcc_cv_as_flags64="-xarch=v9"
4566 if test "x$gcc_cv_as_flags64" = xno; then
4568 tmake_file=`echo " $tmake_file " | sed -e 's, sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4569 dep_tmake_file=`echo " $dep_tmake_file " | sed -e 's, [^ ]*/config/sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4572 AC_DEFINE_UNQUOTED(AS_SPARC64_FLAG, "$gcc_cv_as_flags64",
4573 [Define if the assembler supports 64bit sparc.])
4576 *) gcc_cv_as_flags64=${gcc_cv_as_flags64-no}
4580 if test "x$gcc_cv_as_flags64" != xno; then
4581 AC_CACHE_CHECK([for assembler offsetable %lo() support],
4582 gcc_cv_as_offsetable_lo10, [
4583 gcc_cv_as_offsetable_lo10=unknown
4584 if test "x$gcc_cv_as" != x; then
4585 # Check if assembler has offsetable %lo()
4586 echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
4587 echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
4588 if $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s \
4590 $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s \
4591 > /dev/null 2>&1; then
4592 if cmp conftest.o conftest1.o > /dev/null 2>&1; then
4593 gcc_cv_as_offsetable_lo10=no
4595 gcc_cv_as_offsetable_lo10=yes
4598 gcc_cv_as_offsetable_lo10=no
4600 rm -f conftest.s conftest.o conftest1.s conftest1.o
4603 if test "x$gcc_cv_as_offsetable_lo10" = xyes; then
4604 AC_DEFINE(HAVE_AS_OFFSETABLE_LO10, 1,
4605 [Define if your assembler supports offsetable %lo().])
4613 AC_MSG_CHECKING(assembler instructions)
4614 gcc_cv_as_instructions=
4615 if test x$gcc_cv_as != x; then
4616 set "filds fists" "filds mem; fists mem"
4619 echo "$2" > conftest.s
4620 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4621 gcc_cv_as_instructions=${gcc_cv_as_instructions}$1" "
4622 AC_DEFINE_UNQUOTED(HAVE_GAS_`echo "$1" | tr '[a-z ]' '[A-Z_]'`)
4626 rm -f conftest.s conftest.o
4628 AC_MSG_RESULT($gcc_cv_as_instructions)
4632 # Figure out what language subdirectories are present.
4633 # Look if the user specified --enable-languages="..."; if not, use
4634 # the environment variable $LANGUAGES if defined. $LANGUAGES might
4636 if test x"${enable_languages+set}" != xset; then
4637 if test x"${LANGUAGES+set}" = xset; then
4638 enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
4640 enable_languages=all
4643 if test x"${enable_languages}" = x; then
4644 AC_MSG_ERROR([--enable-languages needs at least one argument])
4648 for lang in ${srcdir}/*/config-lang.in ..
4652 # The odd quoting in the next line works around
4653 # an apparent bug in bash 1.12 on linux.
4655 ${srcdir}/[*]/config-lang.in) ;;
4657 lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
4658 if test "x$lang_alias" = x
4660 echo "$lang doesn't set \$language." 1>&2
4663 if test x"${enable_languages}" = xall; then
4666 case "${enable_languages}" in
4667 ${lang_alias} | "${lang_alias},"* | *",${lang_alias},"* | *",${lang_alias}" )
4675 if test x"${add_this_lang}" = xyes; then
4677 ${srcdir}/ada/config-lang.in)
4678 if test x$gnat = xyes ; then
4679 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4683 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4692 # Make gthr-default.h if we have a thread file.
4694 if test $thread_file != single; then
4695 rm -f gthr-default.h
4696 echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h
4697 gthread_flags=-DHAVE_GTHR_DEFAULT
4699 AC_SUBST(gthread_flags)
4701 # Find out what GC implementation we want, or may, use.
4703 [ --with-gc={simple,page} Choose the garbage collection mechanism to use
4704 with the compiler.],
4710 AC_MSG_ERROR([$withval is an invalid option to --with-gc])
4713 [if test $ac_cv_func_mmap_anywhere = yes \
4714 || test $ac_cv_func_valloc = yes; then
4720 echo "Using $GGC for garbage collection."
4722 # Build a new-abi (c++) system
4723 AC_ARG_ENABLE(new-gxx-abi,
4724 [ --enable-new-gxx-abi
4725 select the new abi for g++. You must select an ABI
4726 at configuration time, so that the correct runtime
4727 support is built. You cannot mix ABIs.],
4728 [AC_DEFINE(ENABLE_NEW_GXX_ABI, 1,
4729 [Define if you want to always select the new-abi for g++.])
4730 GXX_ABI_FLAG='-fnew-abi'
4731 echo "Building a new-abi g++ compiler."
4733 AC_SUBST(GXX_ABI_FLAG)
4735 # Build a new-libstdc++ system (ie libstdc++-v3)
4736 AC_MSG_CHECKING([for libstdc++ to install])
4737 AC_ARG_ENABLE(libstdcxx-v3,
4738 [ --enable-libstdcxx-v3
4739 enable libstdc++-v3 for building and installation],
4740 [enable_libstdcxx_v3=yes], [enable_libstdcxx_v3=no])
4742 if test x$enable_libstdcxx_v3 = xyes; then
4749 AC_DEFINE_UNQUOTED(ENABLE_STD_NAMESPACE, $ac_esn,
4750 [Define to 1 if you want to enable namespaces (-fhonor-std) by default.])
4752 # Make empty files to contain the specs and options for each language.
4753 # Then add #include lines to for a compiler that has specs and/or options.
4758 rm -f specs.h options.h gencheck.h
4759 touch specs.h options.h gencheck.h
4760 for subdir in . $subdirs
4762 if test -f $srcdir/$subdir/lang-specs.h; then
4763 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
4764 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
4766 if test -f $srcdir/$subdir/lang-options.h; then
4767 echo "#include \"$subdir/lang-options.h\"" >>options.h
4768 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
4770 if test -f $srcdir/$subdir/$subdir-tree.def; then
4771 echo "#include \"$subdir/$subdir-tree.def\"" >>gencheck.h
4772 lang_tree_files="$lang_tree_files $srcdir/$subdir/$subdir-tree.def"
4776 # These (without "all_") are set in each config-lang.in.
4777 # `language' must be a single word so is spelled singularly.
4783 all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile gccbug mklibgcc'
4784 # List of language makefile fragments.
4789 # Add the language fragments.
4790 # Languages are added via two mechanisms. Some information must be
4791 # recorded in makefile variables, these are defined in config-lang.in.
4792 # We accumulate them and plug them into the main Makefile.
4793 # The other mechanism is a set of hooks for each of the main targets
4794 # like `clean', `install', etc.
4796 language_fragments="Make-lang"
4797 language_hooks="Make-hooks"
4800 for s in .. $subdirs
4812 . ${srcdir}/$s/config-lang.in
4813 if test "x$language" = x
4815 echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
4818 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in ${srcdir}/$s/Makefile.in"
4819 all_languages="$all_languages $language"
4820 if test "x$boot_language" = xyes
4822 all_boot_languages="$all_boot_languages $language"
4824 all_compilers="$all_compilers $compilers"
4825 all_stagestuff="$all_stagestuff $stagestuff"
4826 all_diff_excludes="$all_diff_excludes $diff_excludes"
4827 all_headers="$all_headers $headers"
4828 all_outputs="$all_outputs $outputs"
4829 if test x$outputs = x
4831 oldstyle_subdirs="$oldstyle_subdirs $s"
4833 all_lib2funcs="$all_lib2funcs $lib2funcs"
4837 # Since we can't use `::' targets, we link each language in
4838 # with a set of hooks, reached indirectly via lang.${target}.
4842 target_list="all.build all.cross start.encap rest.encap \
4844 install-normal install-common install-info install-man \
4846 mostlyclean clean distclean extraclean maintainer-clean \
4847 stage1 stage2 stage3 stage4"
4848 for t in $target_list
4851 for lang in .. $all_languages
4853 if test $lang != ".."; then
4857 echo "lang.$t: $x" >> Make-hooks
4860 # If we're not building in srcdir, create .gdbinit.
4862 if test ! -f Makefile.in; then
4863 echo "dir ." > .gdbinit
4864 echo "dir ${srcdir}" >> .gdbinit
4865 if test x$gdb_needs_out_file_path = xyes
4867 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
4869 if test "x$subdirs" != x; then
4872 echo "dir ${srcdir}/$s" >> .gdbinit
4875 echo "source ${srcdir}/.gdbinit" >> .gdbinit
4878 # Define variables host_canonical and build_canonical
4879 # because some Cygnus local changes in the Makefile depend on them.
4880 build_canonical=${build}
4881 host_canonical=${host}
4883 if test "${host}" != "${target}" ; then
4884 target_subdir=${target}/
4886 AC_SUBST(build_canonical)
4887 AC_SUBST(host_canonical)
4888 AC_SUBST(target_subdir)
4890 # If $(exec_prefix) exists and is not the same as $(prefix), then compute an
4891 # absolute path for gcc_tooldir based on inserting the number of up-directory
4892 # movements required to get from $(exec_prefix) to $(prefix) into the basic
4893 # $(libsubdir)/@(unlibsubdir) based path.
4894 # Don't set gcc_tooldir to tooldir since that's only passed in by the toplevel
4895 # make and thus we'd get different behavior depending on where we built the
4897 if test x$exec_prefix = xNONE -o x$exec_prefix = x$prefix; then
4898 gcc_tooldir='$(libsubdir)/$(unlibsubdir)/../$(target_alias)'
4900 changequote(<<, >>)dnl
4901 # An explanation of the sed strings:
4902 # -e 's|^\$(prefix)||' matches and eliminates 'prefix' from 'exec_prefix'
4903 # -e 's|/$||' match a trailing forward slash and eliminates it
4904 # -e 's|^[^/]|/|' forces the string to start with a forward slash (*)
4905 # -e 's|/[^/]*|../|g' replaces each occurance of /<directory> with ../
4907 # (*) Note this pattern overwrites the first character of the string
4908 # with a forward slash if one is not already present. This is not a
4909 # problem because the exact names of the sub-directories concerned is
4910 # unimportant, just the number of them matters.
4912 # The practical upshot of these patterns is like this:
4914 # prefix exec_prefix result
4915 # ------ ----------- ------
4917 # /foo/ /foo/bar ../
4918 # /foo /foo/bar/ ../
4919 # /foo/ /foo/bar/ ../
4920 # /foo /foo/bar/ugg ../../
4923 gcc_tooldir="\$(libsubdir)/\$(unlibsubdir)/\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/\$(dollar)||' -e 's|^[^/]|/|' -e 's|/[^/]*|../|g'\`\$(target_alias)"
4924 changequote([, ])dnl
4926 AC_SUBST(gcc_tooldir)
4929 # Nothing to do for FLOAT_H, float_format already handled.
4933 # Process the language and host/target makefile fragments.
4934 ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
4936 # Substitute configuration variables
4938 AC_SUBST(all_boot_languages)
4939 AC_SUBST(all_compilers)
4940 AC_SUBST(all_diff_excludes)
4941 AC_SUBST(all_headers)
4942 AC_SUBST(all_lang_makefiles)
4943 AC_SUBST(all_languages)
4944 AC_SUBST(all_lib2funcs)
4945 AC_SUBST(all_stagestuff)
4946 AC_SUBST(build_exeext)
4947 AC_SUBST(build_install_headers_dir)
4948 AC_SUBST(build_xm_file_list)
4949 AC_SUBST(cc_set_by_configure)
4950 AC_SUBST(quoted_cc_set_by_configure)
4951 AC_SUBST(cpp_install_dir)
4952 AC_SUBST(dep_host_xmake_file)
4953 AC_SUBST(dep_tmake_file)
4954 AC_SUBST(extra_c_flags)
4955 AC_SUBST(extra_c_objs)
4956 AC_SUBST(extra_cpp_objs)
4957 AC_SUBST(extra_cxx_objs)
4958 AC_SUBST(extra_headers_list)
4959 AC_SUBST(extra_objs)
4960 AC_SUBST(extra_parts)
4961 AC_SUBST(extra_passes)
4962 AC_SUBST(extra_programs)
4963 AC_SUBST(float_h_file)
4964 AC_SUBST(gcc_gxx_include_dir)
4965 AC_SUBST(gcc_version)
4966 AC_SUBST(gcc_version_trigger)
4967 AC_SUBST(host_exeext)
4968 AC_SUBST(host_extra_gcc_objs)
4969 AC_SUBST(host_xm_file_list)
4971 AC_SUBST(lang_options_files)
4972 AC_SUBST(lang_specs_files)
4973 AC_SUBST(lang_tree_files)
4974 AC_SUBST(local_prefix)
4975 AC_SUBST(maybe_use_collect2)
4977 AC_SUBST(objc_boehm_gc)
4979 AC_SUBST(out_object_file)
4980 AC_SUBST(stage_prefix_set_by_configure)
4981 AC_SUBST(symbolic_link)
4982 AC_SUBST(thread_file)
4983 AC_SUBST(tm_file_list)
4984 AC_SUBST(will_use_collect2)
4987 AC_SUBST_FILE(target_overrides)
4988 AC_SUBST_FILE(host_overrides)
4989 AC_SUBST(cross_defines)
4990 AC_SUBST_FILE(cross_overrides)
4991 AC_SUBST_FILE(build_overrides)
4992 AC_SUBST_FILE(language_fragments)
4993 AC_SUBST_FILE(language_hooks)
4995 # Echo that links are built
4996 if test x$host = x$target
5004 if test x$host != x$build
5006 str3=" on a $build system"
5009 if test "x$str2" != x || test "x$str3" != x
5014 echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
5016 if test "x$str2" != x || test "x$str3" != x
5018 echo " ${str2}${str3}." 1>&2
5021 # Truncate the target if necessary
5022 if test x$host_truncate_target != x; then
5023 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
5026 # Configure the subdirectories
5027 # AC_CONFIG_SUBDIRS($subdirs)
5029 # Create the Makefile
5030 # and configure language subdirectories
5031 AC_OUTPUT($all_outputs,
5033 . $srcdir/configure.lang
5034 case x$CONFIG_HEADERS in
5035 xauto-host.h:config.in)
5038 # If the host supports symlinks, point stage[1234] at ../stage[1234] so
5039 # bootstrapping and the installation procedure can still use
5040 # CC="stage1/xgcc -Bstage1/". If the host doesn't support symlinks,
5041 # FLAGS_TO_PASS has been modified to solve the problem there.
5042 # This is virtually a duplicate of what happens in configure.lang; we do
5043 # an extra check to make sure this only happens if ln -s can be used.
5044 if test "$symbolic_link" = "ln -s"; then
5045 for d in .. ${subdirs} ; do
5046 if test $d != ..; then
5049 for t in stage1 stage2 stage3 stage4 include
5052 $symbolic_link ../$t $t 2>/dev/null
5058 # Avoid having to add intl to our include paths.
5059 if test -f intl/libintl.h; then
5060 echo creating libintl.h
5061 echo '#include "intl/libintl.h"' >libintl.h
5068 target_alias='${target_alias}'
5070 subdirs='${subdirs}'
5071 oldstyle_subdirs='${oldstyle_subdirs}'
5072 symbolic_link='${symbolic_link}'
5073 program_transform_set='${program_transform_set}'
5074 program_transform_name='${program_transform_name}'
5075 dep_host_xmake_file='${dep_host_xmake_file}'
5076 host_xmake_file='${host_xmake_file}'
5077 dep_tmake_file='${dep_tmake_file}'
5078 tmake_file='${tmake_file}'
5079 thread_file='${thread_file}'
5080 gcc_version='${gcc_version}'
5081 gcc_version_trigger='${gcc_version_trigger}'
5082 local_prefix='${local_prefix}'
5083 build_install_headers_dir='${build_install_headers_dir}'
5084 build_exeext='${build_exeext}'
5085 host_exeext='${host_exeext}'
5086 out_file='${out_file}'
5087 gdb_needs_out_file_path='${gdb_needs_out_file_path}'
5088 SET_MAKE='${SET_MAKE}'
5089 target_list='${target_list}'
5090 target_overrides='${target_overrides}'
5091 host_overrides='${host_overrides}'
5092 cross_defines='${cross_defines}'
5093 cross_overrides='${cross_overrides}'
5094 build_overrides='${build_overrides}'
5095 cpp_install_dir='${cpp_install_dir}'