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 AC_SUBST(NO_MINUS_C_MINUS_O)
329 # If the native compiler is GCC, we can enable warnings even in stage1.
330 # That's useful for people building cross-compilers, or just running a
332 if test "x$GCC" = "xyes"; then
333 stage1_warn_cflags='$(WARN_CFLAGS)'
335 stage1_warn_cflags=""
337 AC_SUBST(stage1_warn_cflags)
341 AC_MSG_CHECKING([whether a default assembler was specified])
342 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
343 if test x"$gas_flag" = x"no"; then
344 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER)])
346 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER - GNU as)])
352 AC_MSG_CHECKING([whether a default linker was specified])
353 if test x"${DEFAULT_LINKER+set}" = x"set"; then
354 if test x"$gnu_ld_flag" = x"no"; then
355 AC_MSG_RESULT([yes ($DEFAULT_LINKER)])
357 AC_MSG_RESULT([yes ($DEFAULT_LINKER - GNU ld)])
363 # Find some useful tools
377 AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h \
378 fcntl.h unistd.h stab.h sys/file.h sys/time.h \
379 sys/resource.h sys/param.h sys/times.h sys/stat.h \
382 # Check for thread headers.
383 AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
384 AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
386 # See if GNAT has been installed
387 AC_CHECK_PROG(gnat, gnatbind, yes, no)
389 # Do we have a single-tree copy of texinfo?
390 if test -f $srcdir/../texinfo/Makefile.in; then
391 MAKEINFO='$(objdir)/../texinfo/makeinfo/makeinfo'
392 gcc_cv_prog_makeinfo_modern=yes
393 AC_MSG_RESULT([Using makeinfo from the unified source tree.])
395 # See if makeinfo has been installed and is modern enough
396 # that we can use it.
397 gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
398 [GNU texinfo.* \([0-9][0-9.]*\)],
399 [3.1[2-9] | 3.[2-9][0-9] | 4.* | 1.6[89] | 1.7[0-9]])
402 if test $gcc_cv_prog_makeinfo_modern = no; then
404 *** Makeinfo is missing or too old.
405 *** Info documentation will not be built or installed.])
409 BUILD_INFO=info AC_SUBST(BUILD_INFO)
410 INSTALL_INFO=install-info AC_SUBST(INSTALL_INFO)
413 # See if the stage1 system preprocessor understands the ANSI C
414 # preprocessor stringification operator.
417 # Use <inttypes.h> only if it exists,
418 # doesn't clash with <sys/types.h>, and declares intmax_t.
419 AC_MSG_CHECKING(for inttypes.h)
420 AC_CACHE_VAL(gcc_cv_header_inttypes_h,
422 [#include <sys/types.h>
423 #include <inttypes.h>],
425 [gcc_cv_header_inttypes_h=yes],
426 gcc_cv_header_inttypes_h=no)])
427 AC_MSG_RESULT($gcc_cv_header_inttypes_h)
428 if test $gcc_cv_header_inttypes_h = yes; then
429 AC_DEFINE(HAVE_INTTYPES_H, 1,
430 [Define if you have a working <inttypes.h> header file.])
434 # Determine if enumerated bitfields are unsigned. ISO C says they can
435 # be either signed or unsigned.
437 AC_CACHE_CHECK(for unsigned enumerated bitfields, gcc_cv_enum_bf_unsigned,
438 [AC_TRY_RUN(#include <stdlib.h>
439 enum t { BLAH = 128 } ;
440 struct s_t { enum t member : 8; } s ;
444 if (s.member < 0) exit(1);
447 }, gcc_cv_enum_bf_unsigned=yes, gcc_cv_enum_bf_unsigned=no, gcc_cv_enum_bf_unsigned=yes)])
448 if test $gcc_cv_enum_bf_unsigned = yes; then
449 AC_DEFINE(ENUM_BITFIELDS_ARE_UNSIGNED, 1,
450 [Define if enumerated bitfields are treated as unsigned values.])
453 AC_CHECK_FUNCS(strtoul bsearch putenv popen bcopy bzero bcmp \
454 index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
455 sysconf isascii gettimeofday strsignal putc_unlocked fputc_unlocked \
456 fputs_unlocked getrusage valloc)
458 # Make sure wchar_t is available
459 #AC_CHECK_TYPE(wchar_t, unsigned int)
461 gcc_AC_FUNC_VFPRINTF_DOPRNT
462 gcc_AC_FUNC_PRINTF_PTR
466 # Under some versions of uwin, vfork is notoriously buggy and the test
467 # can hang configure; on other versions, vfork exists just as a stub.
468 # FIXME: This should be removed once vfork in uwin's runtime is fixed.
469 ac_cv_func_vfork_works=no
473 AC_FUNC_MMAP_ANYWHERE
476 # We will need to find libiberty.h and ansidecl.h
477 saved_CFLAGS="$CFLAGS"
478 CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
479 gcc_AC_NEED_DECLARATIONS(bcopy bzero bcmp \
480 index rindex getenv atol sbrk abort atof getcwd getwd \
481 strsignal putc_unlocked fputs_unlocked strstr environ \
482 malloc realloc calloc free, [
483 #include "gansidecl.h"
484 #include "system.h"])
486 gcc_AC_NEED_DECLARATIONS(getrlimit setrlimit getrusage, [
487 #include "gansidecl.h"
489 #ifdef HAVE_SYS_RESOURCE_H
490 #include <sys/resource.h>
494 # Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
495 CFLAGS="$saved_CFLAGS"
497 # mkdir takes a single argument on some systems.
498 gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
508 build_install_headers_dir=install-headers-tar
513 host_truncate_target=
516 # Decode the host machine, then the target machine.
517 # For the host machine, we save the xm_file variable as host_xm_file;
518 # then we decode the target machine and forget everything else
519 # that came from the host machine.
520 for machine in $build $host $target; do
534 # Set this to force installation and use of collect2.
536 # Set this to override the default target model.
538 # Set this to control how the header file directory is installed.
539 install_headers_dir=install-headers-tar
540 # Set this to a non-empty list of args to pass to cpp if the target
541 # wants its .md file passed through cpp.
543 # Set this if directory names should be truncated to 14 characters.
545 # Set this if gdb needs a dir command with `dirname $out_file`
546 gdb_needs_out_file_path=
547 # Set this if the build machine requires executables to have a
550 # Set this to control which thread package will be used.
552 # Reinitialize these from the flag values every loop pass, since some
553 # configure entries modify them.
555 gnu_ld="$gnu_ld_flag"
556 enable_threads=$enable_threads_flag
558 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
559 # updated in each machine entry.
561 cpu_type=`echo $machine | sed 's/-.*$//'`
600 tm_file=${cpu_type}/${cpu_type}.h
601 xm_file=${cpu_type}/xm-${cpu_type}.h
602 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
604 tm_p_file=${cpu_type}/${cpu_type}-protos.h;
606 # On a.out targets, we need to use collect2.
613 # Common parts for linux-gnu and openbsd systems
616 xm_defines="HAVE_ATEXIT POSIX BSTRING"
619 tm_file=${cpu_type}/openbsd.h
620 tmake_file="t-libc-ok t-openbsd"
621 # avoid surprises, always provide an xm-openbsd file
622 xm_file=${cpu_type}/xm-openbsd.h
623 # don't depend on processor x-fragments as well
625 if test x$enable_threads = xyes; then
627 tmake_file="${tmake_file} t-openbsd-thread"
633 # Support site-specific machine types.
635 cpu_type=`echo $machine | sed -e 's/-.*//'`
636 rest=`echo $machine | sed -e "s/$cpu_type-//"`
637 xm_file=${cpu_type}/xm-$rest.h
638 tm_file=${cpu_type}/$rest.h
639 if test -f $srcdir/config/${cpu_type}/x-$rest; \
640 then xmake_file=${cpu_type}/x-$rest; \
643 if test -f $srcdir/config/${cpu_type}/t-$rest; \
644 then tmake_file=${cpu_type}/t-$rest; \
650 a29k-*-bsd* | a29k-*-sym1*)
651 tm_file="${tm_file} a29k/unix.h"
653 xmake_file=a29k/x-unix
656 a29k-*-udi | a29k-*-coff)
657 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
658 tmake_file=a29k/t-a29kbare
661 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
662 tmake_file=a29k/t-vx29k
663 extra_parts="crtbegin.o crtend.o"
664 thread_file='vxworks'
666 a29k-*-*) # Default a29k environment.
670 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
672 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
673 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
675 # GAS + IEEE_CONFORMANT
676 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
678 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
679 xmake_file="x-interix alpha/t-pe"
680 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
681 if test x$enable_threads = xyes ; then
684 if test x$stabs = xyes ; then
685 tm_file="${tm_file} dbxcoff.h"
687 #prefix='$$INTERIX_ROOT'/usr/contrib
688 #local_prefix='$$INTERIX_ROOT'/usr/contrib
690 alpha*-*-linux-gnuecoff*)
691 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
692 target_cpu_default="MASK_GAS"
693 tmake_file="alpha/t-alpha alpha/t-ieee"
698 alpha*-*-linux-gnulibc1*)
699 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
700 target_cpu_default="MASK_GAS"
701 tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
702 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
705 if test x$enable_threads = xyes; then
710 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
711 target_cpu_default="MASK_GAS"
712 tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
713 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
716 if test x$enable_threads = xyes; then
721 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
722 target_cpu_default="MASK_GAS"
723 tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
724 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
730 # default x-alpha is only appropriate for dec-osf.
731 target_cpu_default="MASK_GAS"
732 tmake_file="alpha/t-alpha alpha/t-ieee"
736 if test x$stabs = xyes
738 tm_file="${tm_file} dbx.h"
740 if test x$gas != xyes
742 extra_passes="mips-tfile mips-tdump"
745 tmake_file="alpha/t-alpha alpha/t-ieee"
748 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
753 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
756 tm_file="${tm_file} alpha/osf.h"
757 # Some versions of OSF4 (specifically X4.0-9 296.7) have
758 # a broken tar, so we use cpio instead.
759 install_headers_dir=install-headers-cpio
762 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
767 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
769 target_cpu_default=MASK_SUPPORT_ARCH
774 tm_file="${tm_file} dbx.h alpha/vxworks.h"
775 tmake_file="alpha/t-alpha alpha/t-ieee"
778 extra_passes="mips-tfile mips-tdump"
781 thread_file='vxworks'
784 tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h"
785 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
786 tmake_file="t-libc-ok alpha/t-alpha alpha/t-ieee"
787 xmake_file=winnt/x-winnt
788 extra_host_objs=oldnames.o
789 extra_gcc_objs="spawnv.o oldnames.o"
790 if test x$gnu_ld != xyes
792 extra_programs=ld.exe
794 if test x$enable_threads = xyes; then
800 xm_file="${xm_file} alpha/xm-vms.h"
801 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
804 extra_parts="crtinit.o crtfini.o"
806 arm-*-coff* | armel-*-coff*)
808 tmake_file=arm/t-arm-coff
812 tmake_file=arm/t-arm-coff
813 thread_file='vxworks'
816 arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
818 tm_file=arm/riscix1-1.h
821 arm-*-riscix*) # Acorn RISC machine
824 tm_file=arm/rix-gas.h
828 xmake_file=arm/x-riscix
829 tmake_file=arm/t-riscix
832 arm-semi-aout | armel-semi-aout)
834 tmake_file=arm/t-semi
836 arm-semi-aof | armel-semi-aof)
837 tm_file=arm/semiaof.h
838 tmake_file=arm/t-semiaof
842 tmake_file="t-netbsd arm/t-netbsd"
845 arm*-*-linux-gnuaout*) # ARM GNU/Linux with a.out
848 tm_file=arm/linux-aout.h
849 tmake_file=arm/t-linux
852 arm*-*-linux-gnuoldld*) # ARM GNU/Linux with old ELF linker
853 xm_file=arm/xm-linux.h
855 tm_file="arm/linux-oldld.h arm/linux-elf.h"
858 tm_file="arm/linux-elf26.h $tm_file"
861 tmake_file="t-linux arm/t-linux"
862 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
864 case x${enable_threads} in
865 x | xyes | xpthreads | xposix)
870 arm*-*-linux-gnu*) # ARM GNU/Linux with ELF
871 xm_file=arm/xm-linux.h
873 tm_file="arm/linux-elf.h"
876 tm_file="arm/linux-elf26.h $tm_file"
879 tmake_file="t-linux arm/t-linux"
880 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
882 case x${enable_threads} in
883 x | xyes | xpthreads | xposix)
888 arm*-*-uclinux*) # ARM ucLinux
889 tm_file=arm/uclinux-elf.h
890 tmake_file=arm/t-arm-elf
894 tmake_file=arm/t-arm-aout
897 tm_file=arm/ecos-elf.h
898 tmake_file=arm/t-arm-elf
901 tm_file=arm/unknown-elf.h
902 tmake_file=arm/t-arm-elf
905 tm_file=arm/conix-elf.h
906 tmake_file=arm/t-arm-elf
909 tm_file=arm/unknown-elf-oabi.h
910 tmake_file=arm/t-arm-elf
919 c1-convex-*) # Convex C1
923 c2-convex-*) # Convex C2
936 target_cpu_default=16
943 clipper-intergraph-clix*)
944 tm_file="${tm_file} svr3.h clipper/clix.h"
945 xm_file=clipper/xm-clix.h
946 xmake_file=clipper/x-clix
947 extra_headers=va-clipper.h
948 extra_parts="crtbegin.o crtend.o"
949 install_headers_dir=install-headers-cpio
960 tm_file="fr30/fr30.h"
961 tmake_file=fr30/t-fr30
962 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
964 # This hasn't been upgraded to GCC 2.
965 # fx80-alliant-*) # Alliant FX/80
971 target_cpu_default="(MASK_PA_11 | MASK_GAS | MASK_JUMP_IN_DELAY)"
972 tm_file="${tm_file} pa/elf.h linux.h pa/pa-linux.h"
973 tmake_file="t-linux pa/t-linux"
974 extra_parts="crtbegin.o crtend.o"
977 if test x$enable_threads = xyes; then
982 target_cpu_default="MASK_PA_11"
983 tmake_file=pa/t-openbsd
986 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
987 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
988 xm_file=pa/xm-papro.h
992 target_cpu_default="MASK_PA_11"
993 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
997 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
998 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
999 xm_file=pa/xm-papro.h
1003 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1007 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1008 target_cpu_default="MASK_PA_11"
1012 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1016 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
1017 xm_file=pa/xm-pahpux.h
1018 xmake_file=pa/x-pa-hpux
1019 if test x$gas = xyes
1021 tm_file="${tm_file} pa/gas.h"
1023 install_headers_dir=install-headers-cpio
1027 hppa1.0-*-hpux8.0[0-2]*)
1029 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1030 xm_file=pa/xm-pahpux.h
1031 xmake_file=pa/x-pa-hpux
1032 if test x$gas = xyes
1034 tm_file="${tm_file} pa/pa-gas.h"
1036 tm_file="pa/pa-oldas.h ${tm_file}"
1038 install_headers_dir=install-headers-cpio
1042 hppa1.1-*-hpux8.0[0-2]*)
1044 target_cpu_default="MASK_PA_11"
1045 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1046 xm_file=pa/xm-pahpux.h
1047 xmake_file=pa/x-pa-hpux
1048 if test x$gas = xyes
1050 tm_file="${tm_file} pa/pa-gas.h"
1052 tm_file="pa/pa-oldas.h ${tm_file}"
1054 install_headers_dir=install-headers-cpio
1058 target_cpu_default="MASK_PA_11"
1059 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1060 xm_file=pa/xm-pahpux.h
1061 xmake_file=pa/x-pa-hpux
1062 if test x$gas = xyes
1064 tm_file="${tm_file} pa/pa-gas.h"
1066 install_headers_dir=install-headers-cpio
1070 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1071 xm_file=pa/xm-pahpux.h
1072 xmake_file=pa/x-pa-hpux
1073 if test x$gas = xyes
1075 tm_file="${tm_file} pa/pa-gas.h"
1077 install_headers_dir=install-headers-cpio
1080 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
1081 target_cpu_default="MASK_PA_11"
1082 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1084 xm_file=pa/xm-pahpux.h
1085 xmake_file=pa/x-pa-hpux
1087 if test x$gas = xyes
1089 tm_file="${tm_file} pa/pa-gas.h"
1091 if test x$enable_threads = x; then
1092 enable_threads=$have_pthread_h
1094 if test x$enable_threads = xyes; then
1096 tmake_file="${tmake_file} pa/t-dce-thr"
1098 install_headers_dir=install-headers-cpio
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
1121 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
1122 target_cpu_default="MASK_PA_11"
1123 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1125 xm_file=pa/xm-pahpux.h
1126 xmake_file=pa/x-pa-hpux
1128 if test x$gas = xyes
1130 tm_file="${tm_file} pa/pa-gas.h"
1132 # if test x$enable_threads = x; then
1133 # enable_threads=$have_pthread_h
1135 # if test x$enable_threads = xyes; then
1137 # tmake_file="${tmake_file} pa/t-dce-thr"
1139 install_headers_dir=install-headers-cpio
1143 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1145 xm_file=pa/xm-pahpux.h
1146 xmake_file=pa/x-pa-hpux
1147 if test x$gas = xyes
1149 tm_file="${tm_file} pa/pa-gas.h"
1151 # if test x$enable_threads = x; then
1152 # enable_threads=$have_pthread_h
1154 # if test x$enable_threads = xyes; then
1156 # tmake_file="${tmake_file} pa/t-dce-thr"
1158 install_headers_dir=install-headers-cpio
1161 hppa1.1-*-hpux* | hppa2*-*-hpux*)
1162 target_cpu_default="MASK_PA_11"
1163 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1164 xm_file=pa/xm-pahpux.h
1165 xmake_file=pa/x-pa-hpux
1166 if test x$gas = xyes
1168 tm_file="${tm_file} pa/pa-gas.h"
1170 install_headers_dir=install-headers-cpio
1174 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1175 xm_file=pa/xm-pahpux.h
1176 xmake_file=pa/x-pa-hpux
1177 if test x$gas = xyes
1179 tm_file="${tm_file} pa/pa-gas.h"
1181 install_headers_dir=install-headers-cpio
1184 hppa1.1-*-hiux* | hppa2*-*-hiux*)
1185 target_cpu_default="MASK_PA_11"
1186 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1187 xm_file=pa/xm-pahpux.h
1188 xmake_file=pa/x-pa-hpux
1189 if test x$gas = xyes
1191 tm_file="${tm_file} pa/pa-gas.h"
1193 install_headers_dir=install-headers-cpio
1197 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1198 xm_file=pa/xm-pahpux.h
1199 xmake_file=pa/x-pa-hpux
1200 if test x$gas = xyes
1202 tm_file="${tm_file} pa/pa-gas.h"
1204 install_headers_dir=install-headers-cpio
1208 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
1209 target_cpu_default="MASK_PA_11"
1213 tm_file="${tm_file} pa/pa-mpeix.h"
1214 xm_file=pa/xm-pampeix.h
1215 xmake_file=pa/x-pa-mpeix
1216 echo "You must use gas. Assuming it is already installed."
1217 install_headers_dir=install-headers-tar
1220 i370-*-opened*) # IBM 360/370/390 Architecture
1221 xm_file=i370/xm-oe.h
1223 xmake_file=i370/x-oe
1224 tmake_file=i370/t-oe
1227 xm_file=i370/xm-mvs.h
1229 tmake_file=i370/t-mvs
1232 xm_file="xm-linux.h i370/xm-linux.h"
1234 tm_file="i370/linux.h ${tm_file}"
1235 tmake_file="t-linux i370/t-linux"
1236 # broken_install=yes
1237 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1238 # extra_parts="crtbegin.o crtend.o"
1242 if test x$enable_threads = xyes; then
1249 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h"
1250 tm_file=i386/i386elf.h
1251 tmake_file=i386/t-i386elf
1255 i[34567]86-ibm-aix*) # IBM PS/2 running AIX
1257 if test x$gas = xyes
1259 tm_file=i386/aix386.h
1260 extra_parts="crtbegin.o crtend.o"
1261 tmake_file=i386/t-crtstuff
1263 tm_file=i386/aix386ng.h
1266 xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
1268 xmake_file=i386/x-aix
1271 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
1273 xm_file="xm-alloca.h ${xm_file}"
1274 xm_defines="USG POSIX SMALL_ARG_MAX"
1275 xmake_file=i386/x-ncr3000
1276 if test x$stabs = xyes -a x$gas = xyes
1278 tm_file=i386/sysv4gdb.h
1280 tm_file=i386/sysv4.h
1282 extra_parts="crtbegin.o crtend.o"
1283 tmake_file=i386/t-crtpic
1289 xm_file=i386/xm-next.h
1290 tmake_file=i386/t-next
1291 xmake_file=i386/x-next
1292 extra_objs=nextstep.o
1293 extra_parts="crtbegin.o crtend.o"
1294 if test x$enable_threads = xyes; then
1299 i[34567]86-sequent-bsd*) # 80386 from Sequent
1302 if test x$gas = xyes
1304 tm_file=i386/seq-gas.h
1306 tm_file=i386/sequent.h
1310 i[34567]86-sequent-ptx1*)
1312 xm_defines="USG SVR3"
1313 xmake_file=i386/x-sysv3
1314 tm_file=i386/seq-sysv3.h
1315 tmake_file=i386/t-crtstuff
1316 extra_parts="crtbegin.o crtend.o"
1317 install_headers_dir=install-headers-cpio
1320 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1322 xm_defines="USG SVR3"
1323 xmake_file=i386/x-sysv3
1324 tm_file=i386/seq2-sysv3.h
1325 tmake_file=i386/t-crtstuff
1326 extra_parts="crtbegin.o crtend.o"
1327 install_headers_dir=install-headers-cpio
1330 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1332 xm_file="xm-alloca.h ${xm_file}"
1333 xm_defines="USG POSIX SMALL_ARG_MAX"
1335 tm_file=i386/ptx4-i.h
1337 extra_parts="crtbegin.o crtend.o"
1338 install_headers_dir=install-headers-cpio
1340 i386-sun-sunos*) # Sun i386 roadrunner
1346 i[34567]86-wrs-vxworks*)
1348 tm_file=i386/vxi386.h
1349 tmake_file=i386/t-i386bare
1350 thread_file='vxworks'
1355 tm_file=i386/i386-aout.h
1356 tmake_file=i386/t-i386bare
1359 i[34567]86-*-beospe*)
1361 xm_file=i386/xm-beos.h
1362 xm_defines="USE_C_ALLOCA"
1363 tmake_file=i386/t-beos
1364 tm_file=i386/beos-pe.h
1365 xmake_file=i386/x-beos
1369 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1371 xm_file=i386/xm-beos.h
1372 tmake_file='i386/t-beos i386/t-crtpic'
1373 tm_file=i386/beos-elf.h
1374 xmake_file=i386/x-beos
1376 extra_parts='crtbegin.o crtend.o'
1379 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1381 tm_file=i386/bsd386.h
1382 # tmake_file=t-libc-ok
1387 tm_file=i386/386bsd.h
1388 # tmake_file=t-libc-ok
1389 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1393 i[34567]86-*-freebsdelf*)
1395 tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd-elf.h i386/perform.h"
1396 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1397 tmake_file=t-freebsd
1401 case x${enable_threads} in
1402 xyes | xpthreads | xposix)
1404 tmake_file="${tmake_file} t-freebsd-thread"
1409 i[34567]86-*-freebsd*)
1411 tm_file="i386/freebsd.h i386/perform.h"
1412 tmake_file=t-freebsd
1415 i[34567]86-*-netbsd*)
1417 tm_file=i386/netbsd.h
1422 i[34567]86-*-openbsd*)
1424 # we need collect2 until our bug is fixed...
1430 tm_file=i386/i386-coff.h
1431 tmake_file=i386/t-i386bare
1434 i[34567]86-*-isc*) # 80386 running ISC system
1436 xm_file="${xm_file} i386/xm-isc.h"
1437 xm_defines="USG SVR3"
1440 i[34567]86-*-isc[34]*)
1442 xmake_file=i386/x-isc3
1445 xmake_file=i386/x-isc
1448 if test x$gas = xyes -a x$stabs = xyes
1450 tm_file=i386/iscdbx.h
1451 tmake_file=i386/t-svr3dbx
1452 extra_parts="svr3.ifile svr3z.ifile"
1454 tm_file=i386/isccoff.h
1455 tmake_file=i386/t-crtstuff
1456 extra_parts="crtbegin.o crtend.o"
1458 install_headers_dir=install-headers-cpio
1461 i[34567]86-*-linux-gnuoldld*) # Intel 80386's running GNU/Linux
1462 changequote([,])dnl # with a.out format using
1464 xmake_file=x-linux-aout
1465 tmake_file="t-linux-aout i386/t-crtstuff"
1466 tm_file=i386/linux-oldld.h
1471 i[34567]86-*-linux-gnuaout*) # Intel 80386's running GNU/Linux
1472 changequote([,])dnl # with a.out format
1473 xmake_file=x-linux-aout
1474 tmake_file="t-linux-aout i386/t-crtstuff"
1475 tm_file=i386/linux-aout.h
1480 i[34567]86-*-linux-gnulibc1) # Intel 80386's running GNU/Linux
1481 changequote([,])dnl # with ELF format using the
1482 # GNU/Linux C library 5
1484 tm_file=i386/linux.h
1485 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1486 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1489 if test x$enable_threads = xyes; then
1490 thread_file='single'
1494 i[34567]86-*-linux-gnu*) # Intel 80386's running GNU/Linux
1495 changequote([,])dnl # with ELF format using glibc 2
1496 # aka GNU/Linux C library 6
1498 tm_file=i386/linux.h
1499 tmake_file="t-linux i386/t-crtstuff"
1500 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1503 if test x$enable_threads = xyes; then
1513 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1515 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1519 i[34567]86-pc-msdosdjgpp*)
1521 xm_file=i386/xm-djgpp.h
1522 tm_file=i386/djgpp.h
1523 tmake_file=i386/t-djgpp
1524 xmake_file=i386/x-djgpp
1528 case $host in *pc-msdosdjgpp*)
1534 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1537 tmake_file=t-libc-ok
1542 i[34567]86-*-lynxos*)
1544 if test x$gas = xyes
1548 tm_file=i386/lynx-ng.h
1550 xm_file=i386/xm-lynx.h
1551 tmake_file=i386/t-i386bare
1558 # tmake_file=t-libc-ok
1562 i[34567]86-*-osfrose*) # 386 using OSF/rose
1564 if test x$elf = xyes
1566 tm_file=i386/osfelf.h
1569 tm_file=i386/osfrose.h
1572 xm_file="i386/xm-osf.h ${xm_file}"
1573 xmake_file=i386/x-osfrose
1574 tmake_file=i386/t-osf
1575 extra_objs=halfpic.o
1578 i[34567]86-go32-rtems*)
1581 xm_file=i386/xm-go32.h
1582 tm_file=i386/go32-rtems.h
1583 tmake_file="i386/t-go32 t-rtems"
1586 i[34567]86-*-rtemscoff*)
1589 tm_file=i386/rtems.h
1590 tmake_file="i386/t-i386bare t-rtems"
1593 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1596 tm_file=i386/rtemself.h
1597 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1598 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1601 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1603 xm_file="xm-alloca.h ${xm_file} i386/xm-sco5.h"
1604 xm_defines="USG SVR3"
1605 xmake_file=i386/x-sco5
1606 install_headers_dir=install-headers-cpio
1608 if test x$gas = xyes
1610 tm_file="i386/sco5gas.h ${tm_file}"
1611 tmake_file=i386/t-sco5gas
1613 tmake_file=i386/t-sco5
1615 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1618 i[34567]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
1620 xm_file="${xm_file} i386/xm-sco.h"
1621 xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX"
1622 xmake_file=i386/x-sco4
1623 install_headers_dir=install-headers-cpio
1624 if test x$stabs = xyes
1626 tm_file=i386/sco4dbx.h
1627 tmake_file=i386/t-svr3dbx
1628 extra_parts="svr3.ifile svr3z.rfile"
1631 tmake_file=i386/t-crtstuff
1632 extra_parts="crtbegin.o crtend.o"
1634 # The default EAFS filesystem supports long file names.
1635 # Truncating the target makes $host != $target which
1636 # makes gcc think it is doing a cross-compile.
1637 # truncate_target=yes
1640 i[34567]86-*-sco*) # 80386 running SCO system
1642 xm_file=i386/xm-sco.h
1643 xmake_file=i386/x-sco
1644 install_headers_dir=install-headers-cpio
1645 if test x$stabs = xyes
1647 tm_file=i386/scodbx.h
1648 tmake_file=i386/t-svr3dbx
1649 extra_parts="svr3.ifile svr3z.rfile"
1652 extra_parts="crtbegin.o crtend.o"
1653 tmake_file=i386/t-crtstuff
1658 i[34567]86-*-solaris2*)
1660 xm_file="xm-alloca.h ${xm_file}"
1661 xm_defines="USG POSIX SMALL_ARG_MAX"
1663 if test x$gas = xyes; then
1664 # Only needed if gas does not support -s
1665 tm_file="i386/sol2gas.h ${tm_file}"
1667 tmake_file=i386/t-sol2
1668 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1670 if test x${enable_threads} = x; then
1671 enable_threads=$have_pthread_h
1672 if test x${enable_threads} = x; then
1673 enable_threads=$have_thread_h
1676 if test x${enable_threads} = xyes; then
1677 if test x${have_pthread_h} = xyes; then
1680 thread_file='solaris'
1685 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1687 xm_file="xm-alloca.h ${xm_file}"
1688 xm_defines="USG POSIX"
1689 tm_file=i386/sysv5.h
1690 if test x$stabs = xyes
1692 tm_file="${tm_file} dbx.h"
1694 tmake_file=i386/t-crtpic
1696 extra_parts="crtbegin.o crtend.o"
1697 if test x$enable_threads = xyes; then
1702 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1704 xm_file="xm-alloca.h ${xm_file}"
1705 xm_defines="USG POSIX SMALL_ARG_MAX"
1706 tm_file=i386/sysv4.h
1707 if test x$stabs = xyes
1709 tm_file="${tm_file} dbx.h"
1711 tmake_file=i386/t-crtpic
1713 extra_parts="crtbegin.o crtend.o"
1716 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1718 xm_file="xm-alloca.h ${xm_file}"
1719 xm_defines="USG POSIX"
1721 tmake_file="i386/t-crtpic i386/t-udk"
1723 extra_parts="crtbegin.o crtend.o"
1724 install_headers_dir=install-headers-cpio
1727 i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
1730 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
1731 xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
1732 if test x$stabs = xyes
1734 tm_file=i386/osf1elfgdb.h
1736 tm_file=i386/osf1elf.h
1738 tmake_file=i386/t-osf1elf
1739 xmake_file=i386/x-osf1elf
1740 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1743 i[34567]86-*-sysv*) # Intel 80386's running system V
1745 xm_defines="USG SVR3"
1746 xmake_file=i386/x-sysv3
1747 if test x$gas = xyes
1749 if test x$stabs = xyes
1751 tm_file=i386/svr3dbx.h
1752 tmake_file=i386/t-svr3dbx
1753 extra_parts="svr3.ifile svr3z.rfile"
1755 tm_file=i386/svr3gas.h
1756 extra_parts="crtbegin.o crtend.o"
1757 tmake_file=i386/t-crtstuff
1760 tm_file=i386/sysv3.h
1761 extra_parts="crtbegin.o crtend.o"
1762 tmake_file=i386/t-crtstuff
1765 i386-*-vsta) # Intel 80386's running VSTa kernel
1766 xm_file="${xm_file} i386/xm-vsta.h"
1768 tmake_file=i386/t-vsta
1769 xmake_file=i386/x-vsta
1774 xm_file="${xm_file} i386/xm-cygwin.h"
1775 tmake_file=i386/t-cygwin
1776 tm_file=i386/win32.h
1777 xmake_file=i386/x-cygwin
1779 if test x$enable_threads = xyes; then
1785 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1787 xm_file="${xm_file} i386/xm-cygwin.h"
1788 tmake_file=i386/t-cygwin
1789 tm_file=i386/cygwin.h
1790 xmake_file=i386/x-cygwin
1792 if test x$enable_threads = xyes; then
1798 i[34567]86-*-mingw32*)
1800 tm_file=i386/mingw32.h
1801 xm_file="${xm_file} i386/xm-mingw32.h"
1802 tmake_file="i386/t-cygwin i386/t-mingw32"
1804 xmake_file=i386/x-cygwin
1805 if test x$enable_threads = xyes; then
1812 *minwg32crt* | *mingw32*)
1813 tm_file="${tm_file} i386/crtdll.h"
1821 xm_file="${xm_file} i386/xm-uwin.h"
1822 xm_defines="USG NO_STAB_H"
1823 tmake_file="i386/t-cygwin i386/t-uwin"
1825 xmake_file=i386/x-cygwin
1826 if test x$enable_threads = xyes; then
1832 i[34567]86-*-interix*)
1834 tm_file="i386/i386-interix.h interix.h"
1835 xm_file="i386/xm-i386-interix.h xm-interix.h"
1837 tmake_file="i386/t-interix"
1838 extra_objs=interix.o
1839 xmake_file=x-interix
1840 if test x$enable_threads = xyes ; then
1843 if test x$stabs = xyes ; then
1844 tm_file="${tm_file} dbxcoff.h"
1848 i[34567]86-*-winnt3*)
1850 tm_file=i386/win-nt.h
1851 out_file=i386/i386.c
1852 xm_file="xm-winnt.h ${xm_file}"
1853 xmake_file=winnt/x-winnt
1854 tmake_file=i386/t-winnt
1855 extra_host_objs="winnt.o oldnames.o"
1856 extra_gcc_objs="spawnv.o oldnames.o"
1857 if test x$gnu_ld != xyes
1859 extra_programs=ld.exe
1861 if test x$enable_threads = xyes; then
1866 i[34567]86-dg-dgux*)
1868 xm_file="xm-alloca.h ${xm_file}"
1869 xm_defines="USG POSIX"
1870 out_file=i386/dgux.c
1872 tmake_file=i386/t-dgux
1873 xmake_file=i386/x-dgux
1874 install_headers_dir=install-headers-cpio
1876 i860-alliant-*) # Alliant FX/2800
1877 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1878 xm_file="${xm_file}"
1879 xmake_file=i860/x-fx2800
1880 tmake_file=i860/t-fx2800
1881 extra_parts="crtbegin.o crtend.o"
1884 tm_file="${tm_file} i860/bsd.h"
1885 if test x$gas = xyes
1887 tm_file="${tm_file} i860/bsd-gas.h"
1892 tm_file="${tm_file} i860/mach.h"
1893 tmake_file=t-libc-ok
1895 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1896 tm_file="${tm_file} svr3.h i860/paragon.h"
1897 xm_defines="USG SVR3"
1901 tm_file="${tm_file} svr3.h i860/sysv3.h"
1902 xm_defines="USG SVR3"
1903 xmake_file=i860/x-sysv3
1904 extra_parts="crtbegin.o crtend.o"
1907 tm_file="${tm_file} svr4.h i860/sysv4.h"
1908 xm_defines="USG SVR3"
1909 xmake_file=i860/x-sysv4
1911 extra_parts="crtbegin.o crtend.o"
1913 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1914 tm_file="${tm_file} i960/vx960.h"
1915 tmake_file=i960/t-vxworks960
1917 thread_file='vxworks'
1919 i960-wrs-vxworks5* | i960-wrs-vxworks)
1920 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1921 tmake_file=i960/t-vxworks960
1923 thread_file='vxworks'
1926 tm_file="${tm_file} i960/vx960.h"
1927 tmake_file=i960/t-vxworks960
1929 thread_file='vxworks'
1932 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1933 tmake_file=i960/t-960bare
1937 tmake_file="i960/t-960bare t-rtems"
1938 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
1941 i960-*-*) # Default i960 environment.
1946 tmake_file="ia64/t-ia64"
1947 target_cpu_default="0"
1948 if test x$gas = xyes
1950 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1952 if test x$gnu_ld = xyes
1954 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1958 tm_file=ia64/linux.h
1959 tmake_file="t-linux ia64/t-ia64"
1960 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1961 if test x$enable_threads = xyes; then
1966 extra_parts="crtinit.o crtfini.o"
1968 m68000-convergent-sysv*)
1970 xm_file="m68k/xm-3b1.h ${xm_file}"
1973 extra_headers=math-68881.h
1975 m68000-hp-bsd*) # HP 9000/200 running BSD
1976 tm_file=m68k/hp2bsd.h
1977 xmake_file=m68k/x-hp2bsd
1979 extra_headers=math-68881.h
1981 m68000-hp-hpux*) # HP 9000 series 300
1982 xm_file="xm-alloca.h ${xm_file}"
1984 if test x$gas = xyes
1986 xmake_file=m68k/x-hp320g
1987 tm_file=m68k/hp310g.h
1989 xmake_file=m68k/x-hp320
1990 tm_file=m68k/hp310.h
1992 install_headers_dir=install-headers-cpio
1994 extra_headers=math-68881.h
1999 extra_headers=math-68881.h
2002 tm_file=m68k/sun2o4.h
2004 extra_headers=math-68881.h
2007 xm_file="m68k/xm-3b1.h ${xm_file}"
2009 if test x$gas = xyes
2016 extra_headers=math-68881.h
2018 m68k-apple-aux*) # Apple Macintosh running A/UX
2019 xm_defines="USG AUX"
2020 tmake_file=m68k/t-aux
2021 install_headers_dir=install-headers-cpio
2022 extra_headers=math-68881.h
2023 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
2025 if test "$gnu_ld" = yes
2027 tm_file="${tm_file} m68k/auxgld.h"
2029 tm_file="${tm_file} m68k/auxld.h"
2031 if test "$gas" = yes
2033 tm_file="${tm_file} m68k/auxgas.h"
2035 tm_file="${tm_file} m68k/auxas.h"
2037 tm_file="${tm_file} m68k/a-ux.h"
2041 tm_file=m68k/apollo68.h
2042 xmake_file=m68k/x-apollo68
2044 extra_headers=math-68881.h
2047 m68k-altos-sysv*) # Altos 3068
2048 if test x$gas = xyes
2050 tm_file=m68k/altos3068.h
2053 echo "The Altos is supported only with the GNU assembler" 1>&2
2056 extra_headers=math-68881.h
2058 m68k-bull-sysv*) # Bull DPX/2
2059 if test x$gas = xyes
2061 if test x$stabs = xyes
2063 tm_file=m68k/dpx2cdbx.h
2065 tm_file=m68k/dpx2g.h
2070 xm_file="xm-alloca.h ${xm_file}"
2072 xmake_file=m68k/x-dpx2
2074 extra_headers=math-68881.h
2076 m68k-atari-sysv4*) # Atari variant of V.4.
2077 tm_file=m68k/atari.h
2078 xm_file="xm-alloca.h ${xm_file}"
2079 xm_defines="USG FULL_PROTOTYPES"
2081 extra_parts="crtbegin.o crtend.o"
2082 extra_headers=math-68881.h
2085 m68k-motorola-sysv*)
2086 tm_file=m68k/mot3300.h
2087 xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
2088 if test x$gas = xyes
2090 xmake_file=m68k/x-mot3300-gas
2091 if test x$gnu_ld = xyes
2093 tmake_file=m68k/t-mot3300-gald
2095 tmake_file=m68k/t-mot3300-gas
2099 xmake_file=m68k/x-mot3300
2100 if test x$gnu_ld = xyes
2102 tmake_file=m68k/t-mot3300-gld
2104 tmake_file=m68k/t-mot3300
2108 gdb_needs_out_file_path=yes
2109 extra_parts="crt0.o mcrt0.o"
2110 extra_headers=math-68881.h
2113 m68k-ncr-sysv*) # NCR Tower 32 SVR3
2114 tm_file=m68k/tower-as.h
2115 xm_defines="USG SVR3"
2116 xmake_file=m68k/x-tower
2117 extra_parts="crtbegin.o crtend.o"
2118 extra_headers=math-68881.h
2121 tm_file=m68k/plexus.h
2122 xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
2125 extra_headers=math-68881.h
2129 xm_file="xm-alloca.h ${xm_file}"
2131 extra_headers=math-68881.h
2134 xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
2135 xm_defines="USG unos"
2136 xmake_file=m68k/x-crds
2139 extra_headers=math-68881.h
2141 m68k-cbm-sysv4*) # Commodore variant of V.4.
2143 xm_file="xm-alloca.h ${xm_file}"
2144 xm_defines="USG FULL_PROTOTYPES"
2145 xmake_file=m68k/x-amix
2147 extra_parts="crtbegin.o crtend.o"
2148 extra_headers=math-68881.h
2152 tm_file=m68k/ccur-GAS.h
2153 xmake_file=m68k/x-ccur
2154 extra_headers=math-68881.h
2158 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
2159 tm_file=m68k/hp3bsd44.h
2160 xmake_file=m68k/x-hp3bsd44
2162 extra_headers=math-68881.h
2165 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
2166 tm_file=m68k/hp3bsd.h
2168 extra_headers=math-68881.h
2172 if test x$with_fp = xno
2174 tm_file=m68k/isi-nfp.h
2180 extra_headers=math-68881.h
2182 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
2183 xm_file="xm-alloca.h ${xm_file}"
2185 if test x$gas = xyes
2187 xmake_file=m68k/x-hp320g
2188 tm_file=m68k/hp320g.h
2190 xmake_file=m68k/x-hp320
2191 tm_file=m68k/hpux7.h
2193 install_headers_dir=install-headers-cpio
2195 extra_headers=math-68881.h
2198 m68k-hp-hpux*) # HP 9000 series 300
2199 xm_file="xm-alloca.h ${xm_file}"
2201 if test x$gas = xyes
2203 xmake_file=m68k/x-hp320g
2204 tm_file=m68k/hp320g.h
2206 xmake_file=m68k/x-hp320
2207 tm_file=m68k/hp320.h
2209 install_headers_dir=install-headers-cpio
2211 extra_headers=math-68881.h
2215 tm_file=m68k/sun3mach.h
2217 extra_headers=math-68881.h
2221 if test x$gas = xyes
2223 tm_file=m68k/news3gas.h
2225 tm_file=m68k/news3.h
2228 extra_headers=math-68881.h
2231 m68k-sony-bsd* | m68k-sony-newsos*)
2232 if test x$gas = xyes
2234 tm_file=m68k/newsgas.h
2239 extra_headers=math-68881.h
2242 m68k-next-nextstep2*)
2243 tm_file=m68k/next21.h
2244 xm_file="m68k/xm-next.h ${xm_file}"
2245 tmake_file=m68k/t-next
2246 xmake_file=m68k/x-next
2247 extra_objs=nextstep.o
2248 extra_headers=math-68881.h
2253 m68k-next-nextstep[34]*)
2256 xm_file="m68k/xm-next.h ${xm_file}"
2257 tmake_file=m68k/t-next
2258 xmake_file=m68k/x-next
2259 extra_objs=nextstep.o
2260 extra_parts="crtbegin.o crtend.o"
2261 extra_headers=math-68881.h
2263 if test x$enable_threads = xyes; then
2268 if test x$with_fp = xno
2270 tm_file=m68k/sun3n3.h
2272 tm_file=m68k/sun3o3.h
2276 extra_headers=math-68881.h
2278 m68k-sun-sunos*) # For SunOS 4 (the default).
2279 if test x$with_fp = xno
2281 tm_file=m68k/sun3n.h
2287 extra_headers=math-68881.h
2290 tm_file=m68k/vxm68k.h
2291 tmake_file=m68k/t-vxworks68
2292 extra_headers=math-68881.h
2293 thread_file='vxworks'
2297 tmake_file=m68k/t-m68kbare
2298 tm_file="m68k/m68k-aout.h libgloss.h"
2299 extra_headers=math-68881.h
2303 tmake_file=m68k/t-m68kbare
2304 tm_file="m68k/m68k-coff.h dbx.h libgloss.h"
2305 extra_headers=math-68881.h
2308 m68020-*-elf* | m68k-*-elf*)
2309 tm_file="m68k/m68020-elf.h"
2310 xm_file=m68k/xm-m68kv.h
2311 tmake_file=m68k/t-m68kelf
2312 header_files=math-68881.h
2315 if test x$gas = xyes
2319 tm_file=m68k/lynx-ng.h
2321 xm_file=m68k/xm-lynx.h
2323 tmake_file=m68k/t-lynx
2324 extra_headers=math-68881.h
2328 tm_file=m68k/netbsd.h
2335 # we need collect2 until our bug is fixed...
2338 m68k-*-sysv3*) # Motorola m68k's running system V.3
2339 xm_file="xm-alloca.h ${xm_file}"
2341 xmake_file=m68k/x-m68kv
2342 extra_parts="crtbegin.o crtend.o"
2343 extra_headers=math-68881.h
2346 m68k-*-sysv4*) # Motorola m68k's running system V.4
2347 tm_file=m68k/m68kv4.h
2348 xm_file="xm-alloca.h ${xm_file}"
2351 extra_parts="crtbegin.o crtend.o"
2352 extra_headers=math-68881.h
2355 m68k-*-linux-gnuaout*) # Motorola m68k's running GNU/Linux
2358 tm_file=m68k/linux-aout.h
2359 tmake_file="t-linux-aout m68k/t-linux-aout"
2360 extra_headers=math-68881.h
2364 m68k-*-linux-gnulibc1) # Motorola m68k's running GNU/Linux
2365 # with ELF format using the
2366 # GNU/Linux C library 5
2368 tm_file=m68k/linux.h
2369 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
2370 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2371 extra_headers=math-68881.h
2375 m68k-*-linux-gnu*) # Motorola m68k's running GNU/Linux
2376 # with ELF format using glibc 2
2377 # aka the GNU/Linux C library 6.
2379 tm_file=m68k/linux.h
2380 tmake_file="t-linux m68k/t-linux"
2381 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2382 extra_headers=math-68881.h
2385 if test x$enable_threads = xyes; then
2390 tmake_file=m68k/t-m68kbare
2391 tm_file=m68k/m68k-psos.h
2392 extra_headers=math-68881.h
2396 tmake_file="m68k/t-m68kbare t-rtems"
2397 tm_file=m68k/rtems.h
2398 extra_headers=math-68881.h
2401 m68k-*-rtemself*|m68k-*-rtems*)
2402 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2403 tm_file=m68k/rtemself.h
2404 extra_headers=math-68881.h
2410 tm_file=m88k/dguxbcs.h
2411 tmake_file=m88k/t-dguxbcs
2415 tmake_file=m88k/t-dgux
2418 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2419 xmake_file=m88k/x-dgux
2420 if test x$gas = xyes
2422 tmake_file=m88k/t-dgux-gas
2425 m88k-dolphin-sysv3*)
2426 tm_file=m88k/dolph.h
2427 extra_parts="crtbegin.o crtend.o"
2428 xm_file="m88k/xm-sysv3.h ${xm_file}"
2429 xmake_file=m88k/x-dolph
2430 if test x$gas = xyes
2432 tmake_file=m88k/t-m88k-gas
2435 m88k-tektronix-sysv3)
2436 tm_file=m88k/tekXD88.h
2437 extra_parts="crtbegin.o crtend.o"
2438 xm_file="m88k/xm-sysv3.h ${xm_file}"
2439 xmake_file=m88k/x-tekXD88
2440 if test x$gas = xyes
2442 tmake_file=m88k/t-m88k-gas
2446 tm_file=m88k/m88k-aout.h
2449 tm_file=m88k/m88k-coff.h
2450 tmake_file=m88k/t-bug
2454 extra_parts="crtbegin.o crtend.o"
2455 if test x$gas = xyes
2457 tmake_file=m88k/t-luna-gas
2459 tmake_file=m88k/t-luna
2463 tmake_file="${tmake_file} m88k/t-luna-gas"
2466 tm_file=m88k/sysv3.h
2467 extra_parts="crtbegin.o crtend.o"
2468 xm_file="m88k/xm-sysv3.h ${xm_file}"
2469 xmake_file=m88k/x-sysv3
2470 if test x$gas = xyes
2472 tmake_file=m88k/t-m88k-gas
2476 tm_file=m88k/sysv4.h
2477 extra_parts="crtbegin.o crtend.o"
2478 xmake_file=m88k/x-sysv4
2479 tmake_file=m88k/t-sysv4
2482 tm_file=mcore/mcore-elf.h
2483 tmake_file=mcore/t-mcore
2486 tm_file=mcore/mcore-pe.h
2487 tmake_file=mcore/t-mcore-pe
2489 mips-sgi-irix6*) # SGI System V.4., IRIX 6
2490 if test "x$gnu_ld" = xyes
2492 tm_file="mips/iris6.h mips/iris6gld.h"
2494 tm_file=mips/iris6.h
2496 tmake_file=mips/t-iris6
2497 xm_file=mips/xm-iris6.h
2498 xmake_file=mips/x-iris6
2499 # if test x$enable_threads = xyes; then
2500 # thread_file='irix'
2504 tm_file="mips/elf.h mips/vxworks.h"
2505 tmake_file=mips/t-ecoff
2508 extra_parts="crtbegin.o crtend.o"
2509 thread_file='vxworks'
2511 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2512 tm_file="mips/iris6.h mips/cross64.h"
2514 xm_file="mips/xm-iris5.h"
2515 xmake_file=mips/x-iris
2516 tmake_file=mips/t-cross64
2517 # See comment in mips/iris[56].h files.
2519 # if test x$enable_threads = xyes; then
2520 # thread_file='irix'
2524 if test x$gas = xyes
2526 if test x$stabs = xyes
2528 tm_file=mips/iris5gdb.h
2530 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2533 tm_file=mips/sni-svr4.h
2536 xmake_file=mips/x-sni-svr4
2537 tmake_file=mips/t-mips-gas
2538 if test x$gnu_ld != xyes
2543 mips-sgi-irix5*) # SGI System V.4., IRIX 5
2544 if test x$gas = xyes
2546 tm_file="mips/iris5.h mips/iris5gas.h"
2547 if test x$stabs = xyes
2549 tm_file="${tm_file} dbx.h"
2552 tm_file=mips/iris5.h
2555 xm_file="mips/xm-iris5.h"
2556 xmake_file=mips/x-iris
2557 # mips-tfile doesn't work yet
2558 tmake_file=mips/t-mips-gas
2559 # See comment in mips/iris5.h file.
2561 # if test x$enable_threads = xyes; then
2562 # thread_file='irix'
2565 mips-sgi-irix4loser*) # Mostly like a MIPS.
2566 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2567 if test x$stabs = xyes; then
2568 tm_file="${tm_file} dbx.h"
2571 xmake_file=mips/x-iris
2572 if test x$gas = xyes
2574 tmake_file=mips/t-mips-gas
2576 extra_passes="mips-tfile mips-tdump"
2578 if test x$gnu_ld != xyes
2582 # if test x$enable_threads = xyes; then
2583 # thread_file='irix'
2586 mips-sgi-irix4*) # Mostly like a MIPS.
2587 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2588 if test x$stabs = xyes; then
2589 tm_file="${tm_file} dbx.h"
2592 xmake_file=mips/x-iris
2593 if test x$gas = xyes
2595 tmake_file=mips/t-mips-gas
2597 extra_passes="mips-tfile mips-tdump"
2599 if test x$gnu_ld != xyes
2603 # if test x$enable_threads = xyes; then
2604 # thread_file='irix'
2607 mips-sgi-*) # Mostly like a MIPS.
2608 tm_file="mips/iris3.h ${tm_file}"
2609 if test x$stabs = xyes; then
2610 tm_file="${tm_file} dbx.h"
2613 xmake_file=mips/x-iris3
2614 if test x$gas = xyes
2616 tmake_file=mips/t-mips-gas
2618 extra_passes="mips-tfile mips-tdump"
2620 if test x$gnu_ld != xyes
2625 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2626 tm_file="mips/osfrose.h ${tm_file}"
2627 xmake_file=mips/x-osfrose
2628 tmake_file=mips/t-osfrose
2629 extra_objs=halfpic.o
2632 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2633 tm_file=mips/dec-osf1.h
2634 if test x$stabs = xyes; then
2635 tm_file="${tm_file} dbx.h"
2637 xmake_file=mips/x-dec-osf1
2638 if test x$gas = xyes
2640 tmake_file=mips/t-mips-gas
2642 tmake_file=mips/t-ultrix
2643 extra_passes="mips-tfile mips-tdump"
2645 if test x$gnu_ld != xyes
2650 mips-dec-bsd*) # Decstation running 4.4 BSD
2651 tm_file=mips/dec-bsd.h
2652 if test x$gas = xyes
2654 tmake_file=mips/t-mips-gas
2656 tmake_file=mips/t-ultrix
2657 extra_passes="mips-tfile mips-tdump"
2659 if test x$gnu_ld != xyes
2664 mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2665 tm_file=mips/netbsd.h
2666 # On NetBSD, the headers are already okay, except for math.h.
2669 mips*-*-linux*) # Linux MIPS, either endian.
2672 mipsel-*) tm_file="mips/elfl.h mips/linux.h" ;;
2673 *) tm_file="mips/elf.h mips/linux.h" ;;
2675 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2678 if test x$enable_threads = xyes; then
2682 mips*el-*-openbsd*) # mips little endian
2683 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2685 mips*-*-openbsd*) # mips big endian
2686 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2687 tm_file="mips/openbsd-be.h ${tm_file}"
2689 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2690 tm_file="mips/news4.h ${tm_file}"
2691 if test x$stabs = xyes; then
2692 tm_file="${tm_file} dbx.h"
2694 if test x$gas = xyes
2696 tmake_file=mips/t-mips-gas
2698 extra_passes="mips-tfile mips-tdump"
2700 if test x$gnu_ld != xyes
2704 xmake_file=mips/x-sony
2706 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2707 # That is based on svr4.
2708 # t-svr4 is not right because this system doesn't use ELF.
2709 tm_file="mips/news5.h ${tm_file}"
2710 if test x$stabs = xyes; then
2711 tm_file="${tm_file} dbx.h"
2714 if test x$gas = xyes
2716 tmake_file=mips/t-mips-gas
2718 extra_passes="mips-tfile mips-tdump"
2720 if test x$gnu_ld != xyes
2725 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2726 tm_file="mips/svr4-5.h mips/svr4-t.h"
2727 if test x$stabs = xyes; then
2728 tm_file="${tm_file} dbx.h"
2731 xmake_file=mips/x-sysv
2732 if test x$gas = xyes
2734 tmake_file=mips/t-mips-gas
2735 extra_parts="crtbegin.o crtend.o"
2737 tmake_file=mips/t-mips
2738 extra_passes="mips-tfile mips-tdump"
2740 if test x$gnu_ld != xyes
2745 mips-*-ultrix* | mips-dec-mach3) # Decstation.
2746 tm_file="mips/ultrix.h ${tm_file}"
2747 if test x$stabs = xyes; then
2748 tm_file="${tm_file} dbx.h"
2750 xmake_file=mips/x-ultrix
2751 if test x$gas = xyes
2753 tmake_file=mips/t-mips-gas
2755 tmake_file=mips/t-ultrix
2756 extra_passes="mips-tfile mips-tdump"
2758 if test x$gnu_ld != xyes
2764 mips-*-riscos[56789]bsd*)
2766 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
2767 if test x$stabs = xyes; then
2768 tm_file="${tm_file} dbx.h"
2770 if test x$gas = xyes
2772 tmake_file=mips/t-bsd-gas
2774 tmake_file=mips/t-bsd
2775 extra_passes="mips-tfile mips-tdump"
2777 if test x$gnu_ld != xyes
2783 mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2785 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2786 if test x$stabs = xyes; then
2787 tm_file="${tm_file} dbx.h"
2789 if test x$gas = xyes
2791 tmake_file=mips/t-bsd-gas
2793 tmake_file=mips/t-bsd
2794 extra_passes="mips-tfile mips-tdump"
2796 if test x$gnu_ld != xyes
2802 mips-*-riscos[56789]sysv4*)
2804 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2805 if test x$stabs = xyes; then
2806 tm_file="${tm_file} dbx.h"
2808 xmake_file=mips/x-sysv
2809 if test x$gas = xyes
2811 tmake_file=mips/t-svr4-gas
2813 tmake_file=mips/t-svr4
2814 extra_passes="mips-tfile mips-tdump"
2816 if test x$gnu_ld != xyes
2822 mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2824 tm_file="mips/svr4-4.h ${tm_file}"
2825 if test x$stabs = xyes; then
2826 tm_file="${tm_file} dbx.h"
2829 xmake_file=mips/x-sysv
2830 if test x$gas = xyes
2832 tmake_file=mips/t-svr4-gas
2834 tmake_file=mips/t-svr4
2835 extra_passes="mips-tfile mips-tdump"
2837 if test x$gnu_ld != xyes
2843 mips-*-riscos[56789]sysv*)
2845 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
2846 if test x$stabs = xyes; then
2847 tm_file="${tm_file} dbx.h"
2850 xmake_file=mips/x-sysv
2851 if test x$gas = xyes
2853 tmake_file=mips/t-svr3-gas
2855 tmake_file=mips/t-svr3
2856 extra_passes="mips-tfile mips-tdump"
2858 if test x$gnu_ld != xyes
2863 mips-*-sysv* | mips-*-riscos*sysv*)
2864 tm_file="mips/svr3-4.h ${tm_file}"
2865 if test x$stabs = xyes; then
2866 tm_file="${tm_file} dbx.h"
2869 xmake_file=mips/x-sysv
2870 if test x$gas = xyes
2872 tmake_file=mips/t-svr3-gas
2874 tmake_file=mips/t-svr3
2875 extra_passes="mips-tfile mips-tdump"
2877 if test x$gnu_ld != xyes
2883 mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
2885 tm_file=mips/mips-5.h
2886 if test x$stabs = xyes; then
2887 tm_file="${tm_file} dbx.h"
2889 if test x$gas = xyes
2891 tmake_file=mips/t-mips-gas
2893 extra_passes="mips-tfile mips-tdump"
2895 if test x$gnu_ld != xyes
2903 tm_file=mips/ecoffl.h
2904 if test x$stabs = xyes; then
2905 tm_file="${tm_file} dbx.h"
2907 tmake_file=mips/t-ecoff
2910 tm_file="gofast.h mips/ecoff.h"
2911 if test x$stabs = xyes; then
2912 tm_file="${tm_file} dbx.h"
2914 tmake_file=mips/t-ecoff
2917 tm_file="mips/elfl.h"
2918 tmake_file=mips/t-elf
2921 tm_file="mips/elf.h"
2922 tmake_file=mips/t-elf
2925 tm_file="mips/elfl64.h"
2926 tmake_file=mips/t-elf
2928 mips64orionel-*-elf*)
2929 tm_file="mips/elforion.h mips/elfl64.h"
2930 tmake_file=mips/t-elf
2933 tm_file="mips/elf64.h"
2934 tmake_file=mips/t-elf
2937 tm_file="mips/elforion.h mips/elf64.h"
2938 tmake_file=mips/t-elf
2940 mips64orion-*-rtems*)
2941 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
2942 tmake_file="mips/t-elf t-rtems"
2945 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
2946 tmake_file=mips/t-r3900
2949 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
2950 tmake_file=mips/t-r3900
2952 mips-*-*) # Default MIPS RISC-OS 4.0.
2953 if test x$stabs = xyes; then
2954 tm_file="${tm_file} dbx.h"
2956 if test x$gas = xyes
2958 tmake_file=mips/t-mips-gas
2960 extra_passes="mips-tfile mips-tdump"
2962 if test x$gnu_ld != xyes
2970 tm_file="mn10200/mn10200.h"
2971 if test x$stabs = xyes
2973 tm_file="${tm_file} dbx.h"
2979 tm_file="mn10300/mn10300.h"
2980 if test x$stabs = xyes
2982 tm_file="${tm_file} dbx.h"
2987 tm_file=ns32k/encore.h
2991 tm_file=ns32k/sequent.h
2995 tm_file=ns32k/tek6100.h
2999 tm_file=ns32k/tek6200.h
3002 # This has not been updated to GCC 2.
3005 # xmake_file=ns32k/x-genix
3006 # tm_file=ns32k/genix.h
3010 tm_file=ns32k/merlin.h
3014 tm_file=ns32k/pc532-mach.h
3018 tm_file=ns32k/pc532-min.h
3019 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
3024 tm_file=ns32k/netbsd.h
3025 xm_file="ns32k/xm-netbsd.h ${xm_file}"
3026 # On NetBSD, the headers are already okay, except for math.h.
3031 tm_file="${tm_file} pdp11/2bsd.h"
3040 # This has not been updated to GCC 2.
3043 # xmake_file=pyr/x-pyr
3048 tm_file="svr4.h pj/linux.h ${tm_file}"
3053 tm_file="svr4.h pj/pjl.h ${tm_file}"
3060 xmake_file=romp/x-mach
3067 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
3071 tm_file=rs6000/beos.h
3072 xm_file=rs6000/xm-beos.h
3073 tmake_file=rs6000/t-beos
3074 xmake_file=rs6000/x-beos
3077 tm_file=rs6000/sysv4.h
3078 xm_file="rs6000/xm-sysv4.h"
3079 xm_defines="USG POSIX"
3080 extra_headers=ppc-asm.h
3081 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3082 xmake_file=rs6000/x-sysv4
3085 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
3086 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3087 extra_headers=ppc-asm.h
3090 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
3091 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3092 extra_headers=ppc-asm.h
3095 tm_file="rs6000/sysv4.h"
3096 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3097 extra_headers=ppc-asm.h
3100 tm_file="rs6000/sysv4.h rs6000/eabi.h"
3101 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3102 extra_headers=ppc-asm.h
3105 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h"
3106 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
3107 extra_headers=ppc-asm.h
3109 powerpc-*-linux-gnulibc1)
3110 tm_file="rs6000/sysv4.h rs6000/linux.h"
3111 xm_file=rs6000/xm-sysv4.h
3112 out_file=rs6000/rs6000.c
3113 tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
3115 extra_headers=ppc-asm.h
3116 if test x$enable_threads = xyes; then
3120 powerpc-*-linux-gnu*)
3121 tm_file="rs6000/sysv4.h rs6000/linux.h"
3122 xm_file="rs6000/xm-sysv4.h"
3123 xm_defines="USG ${xm_defines}"
3124 out_file=rs6000/rs6000.c
3125 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
3127 extra_headers=ppc-asm.h
3128 if test x$enable_threads = xyes; then
3132 powerpc-wrs-vxworks*)
3134 xm_file="rs6000/xm-sysv4.h"
3135 xm_defines="USG POSIX"
3136 tm_file="rs6000/sysv4.h rs6000/vxppc.h"
3137 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3138 extra_headers=ppc-asm.h
3139 thread_file='vxworks'
3141 powerpcle-wrs-vxworks*)
3143 xm_file="rs6000/xm-sysv4.h"
3144 xm_defines="USG POSIX"
3145 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
3146 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3147 extra_headers=ppc-asm.h
3148 thread_file='vxworks'
3151 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3152 xm_file="rs6000/xm-sysv4.h"
3153 xm_defines="USG POSIX"
3154 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3155 xmake_file=rs6000/x-sysv4
3156 extra_headers=ppc-asm.h
3159 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3160 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3161 extra_headers=ppc-asm.h
3163 powerpcle-*-eabisim*)
3164 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
3165 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3166 extra_headers=ppc-asm.h
3169 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
3170 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3171 extra_headers=ppc-asm.h
3173 powerpcle-*-solaris2*)
3174 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
3175 xm_file="rs6000/xm-sysv4.h"
3176 xm_defines="USG POSIX"
3177 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3178 xmake_file=rs6000/x-sysv4
3179 extra_headers=ppc-asm.h
3182 rs6000-ibm-aix3.[01]*)
3184 tm_file=rs6000/aix31.h
3185 xmake_file=rs6000/x-aix31
3190 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
3192 tm_file=rs6000/aix3newas.h
3193 if test x$host != x$target
3195 tmake_file=rs6000/t-xnewas
3197 tmake_file=rs6000/t-newas
3203 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
3205 tm_file=rs6000/aix41.h
3206 if test x$host != x$target
3208 tmake_file=rs6000/t-xnewas
3210 tmake_file=rs6000/t-newas
3212 if test "$gnu_ld" = yes
3214 xmake_file=rs6000/x-aix41-gld
3216 tmake_file="rs6000/t-newas rs6000/t-aix41"
3218 xmake_file=rs6000/x-aix41
3223 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
3225 tm_file=rs6000/aix43.h
3226 tmake_file=rs6000/t-aix43
3227 xmake_file=rs6000/x-aix41
3232 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
3234 tm_file=rs6000/aix43.h
3235 tmake_file=rs6000/t-aix43
3236 xmake_file=rs6000/x-aix41
3249 tm_file=rs6000/mach.h
3250 xm_file="${xm_file} rs6000/xm-mach.h"
3251 xmake_file=rs6000/x-mach
3255 tm_file=rs6000/lynx.h
3256 xm_file=rs6000/xm-lynx.h
3257 tmake_file=rs6000/t-rs6000
3258 xmake_file=rs6000/x-lynx
3266 tmake_file="sh/t-sh t-rtems"
3267 tm_file=sh/rtemself.h
3271 tmake_file="sh/t-sh t-rtems"
3280 xm_file="xm-alloca.h ${xm_file}"
3283 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
3284 tm_file=sparc/vxsparc.h
3285 tmake_file=sparc/t-vxsparc
3287 thread_file='vxworks'
3290 tmake_file=sparc/t-sparcbare
3291 tm_file="sparc/aout.h libgloss.h"
3294 tm_file=sparc/netbsd.h
3299 # we need collect2 until our bug is fixed...
3307 tmake_file=sparc/t-elf
3308 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3312 sparc-*-linux-gnuaout*) # Sparc's running GNU/Linux, a.out
3313 xm_file="${xm_file} sparc/xm-linux.h"
3314 tm_file=sparc/linux-aout.h
3318 sparc-*-linux-gnulibc1*) # Sparc's running GNU/Linux, libc5
3319 xm_file="${xm_file} sparc/xm-linux.h"
3321 tm_file=sparc/linux.h
3322 tmake_file="t-linux t-linux-gnulibc1"
3323 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3327 sparc-*-linux-gnu*) # Sparc's running GNU/Linux, libc6
3328 xm_file="${xm_file} sparc/xm-linux.h"
3330 tm_file=sparc/linux.h
3331 tmake_file="t-linux"
3332 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3334 if test x$enable_threads = xyes; then
3340 if test x$gas = xyes
3342 tm_file=sparc/lynx.h
3344 tm_file=sparc/lynx-ng.h
3346 xm_file=sparc/xm-lynx.h
3347 tmake_file=sparc/t-sunos41
3351 tmake_file="sparc/t-sparcbare t-rtems"
3352 tm_file=sparc/rtems.h
3354 sparc-*-rtems*|sparc-*-rtemself*)
3355 tm_file="sparc/rtemself.h"
3356 tmake_file="sparc/t-elf t-rtems"
3357 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3361 sparcv9-*-solaris2*)
3362 if test x$gnu_ld = xyes
3364 tm_file=sparc/sol2-64.h
3366 tm_file=sparc/sol2-sld-64.h
3368 xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
3369 xm_defines="USG POSIX"
3370 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3371 xmake_file=sparc/x-sysv4
3372 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3374 if test x${enable_threads} = x ; then
3375 enable_threads=$have_pthread_h
3376 if test x${enable_threads} = x ; then
3377 enable_threads=$have_thread_h
3380 if test x${enable_threads} = xyes ; then
3381 if test x${have_pthread_h} = xyes ; then
3384 thread_file='solaris'
3388 sparc-hal-solaris2*)
3389 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3390 xm_defines="USG POSIX"
3391 tm_file="sparc/sol2.h sparc/hal.h"
3392 tmake_file="sparc/t-halos sparc/t-sol2"
3393 xmake_file=sparc/x-sysv4
3394 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3405 thread_file='solaris'
3408 if test x$gnu_ld = xyes
3410 tm_file=sparc/sol2.h
3412 tm_file=sparc/sol2-sld.h
3414 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3415 xm_defines="USG POSIX"
3416 tmake_file=sparc/t-sol2
3417 xmake_file=sparc/x-sysv4
3418 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3421 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3424 if test x$gnu_ld = xyes
3426 tm_file=sparc/sol2-64.h
3428 tm_file=sparc/sol2-sld-64.h
3430 tmake_file="$tmake_file sparc/t-sol2-64"
3443 if test x${enable_threads} = x; then
3444 enable_threads=$have_pthread_h
3445 if test x${enable_threads} = x; then
3446 enable_threads=$have_thread_h
3449 if test x${enable_threads} = xyes; then
3450 if test x${have_pthread_h} = xyes; then
3453 thread_file='solaris'
3458 tm_file=sparc/sunos4.h
3459 tmake_file=sparc/t-sunos40
3463 tm_file=sparc/sunos4.h
3464 tmake_file=sparc/t-sunos41
3466 if test x$gas = xyes; then
3467 tm_file="${tm_file} sparc/sun4gas.h"
3471 tm_file=sparc/sun4o3.h
3475 tm_file=sparc/sysv4.h
3476 xm_file="sparc/xm-sysv4.h"
3477 xm_defines="USG POSIX"
3479 xmake_file=sparc/x-sysv4
3480 extra_parts="crtbegin.o crtend.o"
3483 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3484 xm_defines="USG POSIX"
3485 tm_file=sparc/vxsim.h
3486 tmake_file=sparc/t-vxsparc
3487 xmake_file=sparc/x-sysv4
3490 tm_file="sparc/splet.h libgloss.h"
3491 tmake_file=sparc/t-splet
3494 tm_file="sparc/litecoff.h libgloss.h"
3495 tmake_file=sparc/t-sparclite
3498 tm_file="sparc/lite.h aoutos.h libgloss.h"
3499 tmake_file=sparc/t-sparclite
3502 tm_file="sparc/liteelf.h"
3503 tmake_file=sparc/t-sparclite
3504 extra_parts="crtbegin.o crtend.o"
3507 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3508 tmake_file=sparc/t-sp86x
3511 tm_file="sparc/sp86x-elf.h"
3512 tmake_file=sparc/t-sp86x
3513 extra_parts="crtbegin.o crtend.o"
3516 tmake_file=sparc/t-sp64
3517 tm_file=sparc/sp64-aout.h
3520 tmake_file=sparc/t-sp64
3521 tm_file=sparc/sp64-elf.h
3522 extra_parts="crtbegin.o crtend.o"
3524 sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
3525 tmake_file="t-linux sparc/t-linux64"
3526 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3527 tm_file=sparc/linux64.h
3529 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3531 if test x$enable_threads = xyes; then
3536 # This hasn't been upgraded to GCC 2.
3537 # tahoe-harris-*) # Harris tahoe, using COFF.
3538 # tm_file=tahoe/harris.h
3540 # tahoe-*-bsd*) # tahoe running BSD
3545 *** The Thumb targets have been depreciated. The equivalent
3546 *** ARM based toolchain can now generated Thumb instructions
3547 *** when the -mthumb switch is given to the compiler.])
3549 # This hasn't been upgraded to GCC 2.
3556 tm_file="v850/rtems.h"
3557 xm_file="v850/xm-v850.h"
3558 tmake_file="v850/t-v850 t-rtems"
3559 if test x$stabs = xyes
3561 tm_file="${tm_file} dbx.h"
3566 target_cpu_default="TARGET_CPU_generic"
3568 tm_file="v850/v850.h"
3569 xm_file="v850/xm-v850.h"
3570 tmake_file=v850/t-v850
3571 if test x$stabs = xyes
3573 tm_file="${tm_file} dbx.h"
3577 vax-*-bsd*) # vaxen running BSD
3581 vax-*-sysv*) # vaxen running system V
3582 tm_file="${tm_file} vax/vaxv.h"
3587 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3593 tmake_file="${tmake_file} vax/t-openbsd"
3595 vax-*-ultrix*) # vaxen running ultrix
3596 tm_file="${tm_file} vax/ultrix.h"
3600 vax-*-vms*) # vaxen running VMS
3601 xm_file=vax/xm-vms.h
3605 vax-*-*) # vax default entry
3609 xm_file="${xm_file} xm-svr3"
3613 echo "Configuration $machine not supported" 1>&2
3620 ;; # Existing GNU/Linux systems do not use the GNU setup.
3622 # On the GNU system, the setup is just about the same on
3623 # each different CPU. The specific machines that GNU
3624 # supports are matched above and just set $cpu_type.
3625 xm_file="xm-gnu.h ${xm_file}"
3626 tm_file=${cpu_type}/gnu.h
3627 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
3628 # GNU always uses ELF.
3630 # GNU tools are the only tools.
3633 xmake_file=x-linux # These details are the same as Linux.
3634 tmake_file=t-gnu # These are not.
3637 xmake_try_sysv=x-sysv
3638 install_headers_dir=install-headers-cpio
3641 install_headers_dir=install-headers-cpio
3645 # Distinguish i[34567]86
3646 # Also, do not run mips-tfile on MIPS if using gas.
3647 # Process --with-cpu= for PowerPC/rs6000
3648 target_cpu_default2=
3651 target_cpu_default2=1
3654 case $target_alias in
3656 target_cpu_default2=4
3659 target_cpu_default2=2
3663 i686-*-* | i786-*-*)
3664 target_cpu_default2=3
3671 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3674 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3677 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3680 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3683 target_cpu_default2="MASK_CPU_EV5"
3687 if test x$gas = xyes
3689 if test "$target_cpu_default2" = ""
3691 target_cpu_default2="MASK_GAS"
3693 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3698 case "x$with_cpu" in
3701 target_cpu_default2="TARGET_CPU_generic"
3704 # Distinguish cores, and major variants
3705 # arm7m doesn't exist, but D & I don't affect code
3707 xarm[23678] | xarm250 | xarm[67][01]0 \
3708 | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
3709 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3710 | xstrongarm | xstrongarm110 | xstrongarm1100)
3712 target_cpu_default2="TARGET_CPU_$with_cpu"
3716 echo "--with-cpu must be passed a value" 1>&2
3721 if test x$pass2done = xyes
3723 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3730 mips*-*-ecoff* | mips*-*-elf*)
3731 if test x$gas = xyes
3733 if test x$gnu_ld = xyes
3735 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3737 target_cpu_default2="MASK_GAS"
3742 if test x$gas = xyes
3744 target_cpu_default2="MASK_GAS"
3747 powerpc*-*-* | rs6000-*-*)
3748 case "x$with_cpu" in
3752 xcommon | xpower | xpower2 | xpowerpc | xrios \
3753 | xrios1 | xrios2 | xrsc | xrsc1 \
3754 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3755 | xec603e | x740 | x750 | x401 \
3756 | x403 | x505 | x801 | x821 | x823 | x860)
3757 target_cpu_default2="\"$with_cpu\""
3761 echo "--with-cpu must be passed a value" 1>&2
3766 if test x$pass2done = xyes
3768 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3775 case ".$with_cpu" in
3777 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3779 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3780 target_cpu_default2="TARGET_CPU_$with_cpu"
3783 if test x$pass2done = xyes
3785 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3793 if test "$target_cpu_default2" != ""
3795 if test "$target_cpu_default" != ""
3797 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3799 target_cpu_default=$target_cpu_default2
3803 # No need for collect2 if we have the GNU linker.
3804 # Actually, there is now; GNU ld doesn't handle the EH info or
3805 # collecting for shared libraries.
3812 # Save data on machine being used to compile GCC in build_xm_file.
3813 # Save data on host machine in vars host_xm_file and host_xmake_file.
3814 if test x$pass1done = x
3816 if test x"$xm_file" = x
3817 then build_xm_file=$cpu_type/xm-$cpu_type.h
3818 else build_xm_file=$xm_file
3820 build_xm_defines=$xm_defines
3821 build_install_headers_dir=$install_headers_dir
3822 build_exeext=$exeext
3825 if test x$pass2done = x
3827 if test x"$xm_file" = x
3828 then host_xm_file=$cpu_type/xm-$cpu_type.h
3829 else host_xm_file=$xm_file
3831 host_xm_defines=$xm_defines
3832 if test x"$xmake_file" = x
3833 then xmake_file=$cpu_type/x-$cpu_type
3835 host_xmake_file="$xmake_file"
3836 host_truncate_target=$truncate_target
3837 host_extra_gcc_objs=$extra_gcc_objs
3838 host_extra_objs=$extra_host_objs
3845 extra_objs="${host_extra_objs} ${extra_objs}"
3847 # Default the target-machine variables that were not explicitly set.
3848 if test x"$tm_file" = x
3849 then tm_file=$cpu_type/$cpu_type.h; fi
3851 if test x$extra_headers = x
3852 then extra_headers=; fi
3854 if test x"$xm_file" = x
3855 then xm_file=$cpu_type/xm-$cpu_type.h; fi
3857 if test x$md_file = x
3858 then md_file=$cpu_type/$cpu_type.md; fi
3860 if test x$out_file = x
3861 then out_file=$cpu_type/$cpu_type.c; fi
3863 if test x"$tmake_file" = x
3864 then tmake_file=$cpu_type/t-$cpu_type
3867 if test x"$dwarf2" = xyes
3868 then tm_file="$tm_file tm-dwarf2.h"
3871 if test x$float_format = x
3872 then float_format=i64
3875 if test $float_format = none
3876 then float_h_file=Makefile.in
3877 else float_h_file=float-$float_format.h
3880 # Handle cpp installation.
3881 if test x$enable_cpp != xno
3883 tmake_file="$tmake_file t-install-cpp"
3886 # Say what files are being used for the output code and MD file.
3887 echo "Using \`$srcdir/config/$out_file' to output insns."
3888 echo "Using \`$srcdir/config/$md_file' as machine description file."
3891 for f in $tm_file; do
3894 if test $count = ax; then
3895 echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
3897 echo "Using the following target machine macro files:"
3898 for f in $tm_file; do
3899 echo " $srcdir/config/$f"
3904 for f in $host_xm_file; do
3907 if test $count = ax; then
3908 echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
3910 echo "Using the following host machine macro files:"
3911 for f in $host_xm_file; do
3912 echo " $srcdir/config/$f"
3916 if test "$host_xm_file" != "$build_xm_file"; then
3918 for f in $build_xm_file; do
3921 if test $count = ax; then
3922 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
3924 echo "Using the following build machine macro files:"
3925 for f in $build_xm_file; do
3926 echo " $srcdir/config/$f"
3931 if test x$thread_file = x; then
3932 if test x$target_thread_file != x; then
3933 thread_file=$target_thread_file
3935 thread_file='single'
3939 # Set up the header files.
3940 # $links is the list of header files to create.
3941 # $vars is the list of shell variables with file names to include.
3942 # auto-host.h is the file containing items generated by autoconf and is
3943 # the first file included by config.h.
3945 host_xm_file="auto-host.h gansidecl.h ${host_xm_file} hwint.h"
3947 # If host=build, it is correct to have hconfig include auto-host.h
3948 # as well. If host!=build, we are in error and need to do more
3949 # work to find out the build config parameters.
3950 if test x$host = x$build
3952 build_xm_file="auto-host.h gansidecl.h ${build_xm_file} hwint.h"
3954 # We create a subdir, then run autoconf in the subdir.
3955 # To prevent recursion we set host and build for the new
3956 # invocation of configure to the build for this invocation
3963 /*) realsrcdir=${srcdir};;
3964 *) realsrcdir=../${srcdir};;
3966 CC=${CC_FOR_BUILD} ${realsrcdir}/configure \
3967 --target=$target --host=$build --build=$build
3969 # We just finished tests for the build machine, so rename
3970 # the file auto-build.h in the gcc directory.
3971 mv auto-host.h ../auto-build.h
3974 build_xm_file="auto-build.h gansidecl.h ${build_xm_file} hwint.h"
3977 xm_file="gansidecl.h ${xm_file}"
3978 tm_file="gansidecl.h ${tm_file}"
3980 vars="host_xm_file tm_file tm_p_file xm_file build_xm_file"
3981 links="config.h tm.h tm_p.h tconfig.h hconfig.h"
3982 defines="host_xm_defines null_defines null_defines xm_defines build_xm_defines"
3985 if test -f config.status; then mv -f config.status config.bak; fi
3988 while test -n "$vars"
3990 set $vars; var=$1; shift; vars=$*
3991 set $links; link=$1; shift; links=$*
3992 set $defines; define=$1; shift; defines=$*
3995 # Make sure the file is created, even if it is empty.
3998 # Define TARGET_CPU_DEFAULT if the system wants one.
3999 # This substitutes for lots of *.h files.
4000 if test "$target_cpu_default" != "" -a $link = tm.h
4002 echo "#define TARGET_CPU_DEFAULT ($target_cpu_default)" >>$link
4005 for file in `eval echo '$'$var`; do
4010 echo '#ifdef IN_GCC' >>$link
4013 echo "#include \"$file\"" >>$link
4018 echo '#endif' >>$link
4023 for def in `eval echo '$'$define`; do
4024 echo "#ifndef $def" >>$link
4025 echo "#define $def" >>$link
4026 echo "#endif" >>$link
4030 # Truncate the target if necessary
4031 if test x$host_truncate_target != x; then
4032 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4035 # Get the version trigger filename from the toplevel
4036 if test "${with_gcc_version_trigger+set}" = set; then
4037 gcc_version_trigger=$with_gcc_version_trigger
4039 gcc_version_trigger=${srcdir}/version.c
4042 gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
4045 # Internationalization
4047 VERSION="$gcc_version"
4048 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",
4049 [Define to the name of the distribution.])
4050 AC_DEFINE_UNQUOTED(VERSION, "$VERSION",
4051 [Define to the version of the distribution.])
4057 # NLS support is still experimental, so disable it by default for now.
4059 [ --enable-nls use Native Language Support (disabled by default)],
4063 XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
4065 # Windows32 Registry support for specifying GCC installation paths.
4066 AC_ARG_ENABLE(win32-registry,
4067 [ --disable-win32-registry
4068 Disable lookup of installation paths in the
4069 Registry on Windows hosts.
4070 --enable-win32-registry Enable registry lookup (default).
4071 --enable-win32-registry=KEY
4072 Use KEY instead of GCC version as the last portion
4073 of the registry key.],,)
4075 AC_MSG_CHECKING(whether windows registry support is requested)
4076 if test x$enable_win32_registry != xno; then
4077 AC_DEFINE(ENABLE_WIN32_REGISTRY, 1,
4078 [Define to 1 if installation paths should be looked up in Windows32
4079 Registry. Ignored on non windows32 hosts.])
4085 # Check if user specified a different registry key.
4086 case x${enable_win32_registry} in
4089 gcc_cv_win32_registry_key="$VERSION"
4092 # no registry lookup.
4093 gcc_cv_win32_registry_key=''
4096 # user-specified key.
4097 gcc_cv_win32_registry_key="$enable_win32_registry"
4101 if test x$enable_win32_registry != xno; then
4102 AC_MSG_CHECKING(registry key on windows hosts)
4103 AC_DEFINE_UNQUOTED(WIN32_REGISTRY_KEY, "$gcc_cv_win32_registry_key",
4104 [Define to be the last portion of registry key on windows hosts.])
4105 AC_MSG_RESULT($gcc_cv_win32_registry_key)
4108 # Get an absolute path to the GCC top-level source directory
4114 # Conditionalize the makefile for this host machine.
4115 # Make-host contains the concatenation of all host makefile fragments
4116 # [there can be more than one]. This file is built by configure.frag.
4117 host_overrides=Make-host
4118 dep_host_xmake_file=
4119 for f in .. ${host_xmake_file}
4121 if test -f ${srcdir}/config/$f
4123 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
4127 # Conditionalize the makefile for this target machine.
4128 # Make-target contains the concatenation of all host makefile fragments
4129 # [there can be more than one]. This file is built by configure.frag.
4130 target_overrides=Make-target
4132 for f in .. ${tmake_file}
4134 if test -f ${srcdir}/config/$f
4136 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
4140 # If the host doesn't support symlinks, modify CC in
4141 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
4142 # Otherwise, we can use "CC=$(CC)".
4144 if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
4146 cc_set_by_configure="\$(CC)"
4147 quoted_cc_set_by_configure="\$(CC)"
4148 stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
4151 if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
4153 symbolic_link="cp -p"
4157 cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
4158 quoted_cc_set_by_configure="\\\`case '\\\$(CC)' in stage*) echo '\\\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\\\$(CC)';; esac\\\`"
4159 stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
4163 out_object_file=`basename $out_file .c`.o
4166 for f in $tm_file; do
4169 tm_file_list="${tm_file_list} $f" ;;
4170 *) tm_file_list="${tm_file_list} \$(srcdir)/config/$f" ;;
4175 for f in $host_xm_file; do
4177 auto-host.h | gansidecl.h | hwint.h )
4178 host_xm_file_list="${host_xm_file_list} $f" ;;
4179 *) host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f" ;;
4184 for f in $build_xm_file; do
4186 auto-build.h | auto-host.h | gansidecl.h | hwint.h )
4187 build_xm_file_list="${build_xm_file_list} $f" ;;
4188 *) build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f" ;;
4192 # Define macro CROSS_COMPILE in compilation
4193 # if this is a cross-compiler.
4194 # Also use all.cross instead of all.internal
4195 # and add cross-make to Makefile.
4196 cross_overrides="/dev/null"
4197 if test x$host != x$target
4199 cross_defines="CROSS=-DCROSS_COMPILE"
4200 cross_overrides="${topdir}/cross-make"
4203 # When building gcc with a cross-compiler, we need to fix a few things.
4204 # This must come after cross-make as we want all.build to override
4206 build_overrides="/dev/null"
4207 if test x$build != x$host
4209 build_overrides="${topdir}/build-make"
4212 # Expand extra_headers to include complete path.
4213 # This substitutes for lots of t-* files.
4215 if test "x$extra_headers" = x
4218 # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
4219 for file in $extra_headers;
4221 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
4225 if test x$use_collect2 = xno; then
4229 # Add a definition of USE_COLLECT2 if system wants one.
4230 # Also tell toplev.c what to do.
4231 # This substitutes for lots of t-* files.
4232 if test x$use_collect2 = x
4237 will_use_collect2="collect2"
4238 maybe_use_collect2="-DUSE_COLLECT2"
4242 # Set MD_DEPS if the real md file is in md.pre-cpp.
4243 # Set MD_CPP to the cpp to pass the md file through. Md files use ';'
4244 # for line oriented comments, so we must always use a GNU cpp. If
4245 # building gcc with a cross compiler, use the cross compiler just
4246 # built. Otherwise, we can use the cpp just built.
4248 if test "x$md_cppflags" = x
4250 md_file_sub=$srcdir/config/$md_file
4255 # If we have gas in the build tree, make a link to it.
4256 if test -f ../gas/Makefile; then
4257 rm -f as; $symbolic_link ../gas/as-new$host_exeext as$host_exeext 2>/dev/null
4260 # If we have nm in the build tree, make a link to it.
4261 if test -f ../binutils/Makefile; then
4262 rm -f nm; $symbolic_link ../binutils/nm-new$host_exeext nm$host_exeext 2>/dev/null
4265 # If we have ld in the build tree, make a link to it.
4266 if test -f ../ld/Makefile; then
4267 # if test x$use_collect2 = x; then
4268 # rm -f ld; $symbolic_link ../ld/ld-new$host_exeext ld$host_exeext 2>/dev/null
4270 rm -f collect-ld; $symbolic_link ../ld/ld-new$host_exeext collect-ld$host_exeext 2>/dev/null
4274 # Figure out what assembler alignment features are present.
4275 AC_MSG_CHECKING(assembler alignment features)
4277 gcc_cv_as_alignment_features=
4278 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
4279 if test -x "$DEFAULT_ASSEMBLER"; then
4280 gcc_cv_as="$DEFAULT_ASSEMBLER"
4281 elif test -x "$AS"; then
4283 elif test -x as$host_exeext; then
4284 # Build using assembler in the current directory.
4285 gcc_cv_as=./as$host_exeext
4286 elif test -f $gcc_cv_as_gas_srcdir/configure.in -a -f ../gas/Makefile; then
4287 # Single tree build which includes gas.
4288 for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
4291 gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f`
4293 if test x$gcc_cv_gas_version != x; then
4298 gcc_cv_gas_major_version=`expr "$gcc_cv_gas_version" : "VERSION=\([0-9]*\)"`
4299 gcc_cv_gas_minor_version=`expr "$gcc_cv_gas_version" : "VERSION=[0-9]*\.\([0-9]*\)"`
4301 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4302 # Gas version 2.6 and later support for .balign and .p2align.
4303 # bytes to skip when using .p2align.
4304 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
4305 gcc_cv_as_alignment_features=".balign and .p2align"
4306 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4308 # Gas version 2.8 and later support specifying the maximum
4309 # bytes to skip when using .p2align.
4310 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
4311 gcc_cv_as_alignment_features=".p2align including maximum skip"
4312 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4315 elif test x$host = x$target; then
4317 # Search the same directories that the installed compiler will
4318 # search. Else we may find the wrong assembler and lose. If we
4319 # do not find a suitable assembler binary, then try the user's
4322 # Also note we have to check MD_EXEC_PREFIX before checking the
4323 # user's path. Unfortunately, there is no good way to get at the
4324 # value of MD_EXEC_PREFIX here. So we do a brute force search
4325 # through all the known MD_EXEC_PREFIX values. Ugh. This needs
4326 # to be fixed as part of the make/configure rewrite too.
4328 if test "x$exec_prefix" = xNONE; then
4329 if test "x$prefix" = xNONE; then
4330 test_prefix=/usr/local
4335 test_prefix=$exec_prefix
4338 # If the loop below does not find an assembler, then use whatever
4339 # one we can find in the users's path.
4343 test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \
4344 $test_prefix/lib/gcc-lib/$target \
4345 /usr/lib/gcc/$target/$gcc_version \
4346 /usr/lib/gcc/$target \
4347 $test_prefix/$target/bin/$target/$gcc_version \
4348 $test_prefix/$target/bin \
4353 /bsd43/usr/lib/cmplrs/cc \
4354 /usr/cross64/usr/bin \
4355 /usr/lib/cmplrs/cc \
4356 /sysv/usr/lib/cmplrs/cc \
4357 /svr4/usr/lib/cmplrs/cc \
4360 for dir in $test_dirs; do
4361 if test -f $dir/as$host_exeext; then
4362 gcc_cv_as=$dir/as$host_exeext
4367 if test x$gcc_cv_as != x; then
4368 # Check if we have .balign and .p2align
4369 echo ".balign 4" > conftest.s
4370 echo ".p2align 2" >> conftest.s
4371 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4372 gcc_cv_as_alignment_features=".balign and .p2align"
4373 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4375 rm -f conftest.s conftest.o
4376 # Check if specifying the maximum bytes to skip when
4377 # using .p2align is supported.
4378 echo ".p2align 4,,7" > conftest.s
4379 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4380 gcc_cv_as_alignment_features=".p2align including maximum skip"
4381 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4383 rm -f conftest.s conftest.o
4385 AC_MSG_RESULT($gcc_cv_as_alignment_features)
4387 AC_MSG_CHECKING(assembler subsection support)
4388 gcc_cv_as_subsections=
4389 if test x$gcc_cv_as != x; then
4390 # Check if we have .subsection
4391 echo ".subsection 1" > conftest.s
4392 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4393 gcc_cv_as_subsections=".subsection"
4394 if test -x nm$host_exeext; then
4395 gcc_cv_nm=./nm$host_exeext
4396 elif test x$host = x$target; then
4398 gcc_cv_nm=nm$host_exeext
4400 if test x$gcc_cv_nm != x; then
4401 cat > conftest.s <<EOF
4402 conftest_label1: .word 0
4404 conftest_label2: .word 0
4407 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4408 $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1
4409 $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2
4410 if cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then
4413 gcc_cv_as_subsections="working .subsection -1"
4414 AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING, 1,
4415 [Define if your assembler supports .subsection and .subsection -1 starts
4416 emitting at the beginning of your section.])
4421 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4423 AC_MSG_RESULT($gcc_cv_as_subsections)
4425 AC_MSG_CHECKING(assembler weak support)
4427 if test x$gcc_cv_as != x; then
4428 # Check if we have .weak
4429 echo " .weak foobar" > conftest.s
4430 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4431 AC_DEFINE(HAVE_GAS_WEAK, 1,
4432 [Define if your assembler supports .weak.])
4433 gcc_cv_as_weak="yes"
4435 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4437 AC_MSG_RESULT($gcc_cv_as_weak)
4439 AC_MSG_CHECKING(assembler hidden support)
4441 if test x$gcc_cv_as != x; then
4442 # Check if we have .hidden
4443 echo " .hidden foobar" > conftest.s
4444 echo "foobar:" >> conftest.s
4445 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4446 AC_DEFINE(HAVE_GAS_HIDDEN, 1,
4447 [Define if your assembler supports .hidden.])
4448 gcc_cv_as_hidden="yes"
4450 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4452 AC_MSG_RESULT($gcc_cv_as_hidden)
4456 AC_CACHE_CHECK([assembler .register pseudo-op support],
4457 gcc_cv_as_register_pseudo_op, [
4458 gcc_cv_as_register_pseudo_op=unknown
4459 if test x$gcc_cv_as != x; then
4460 # Check if we have .register
4461 echo ".register %g2, #scratch" > conftest.s
4462 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4463 gcc_cv_as_register_pseudo_op=yes
4465 gcc_cv_as_register_pseudo_op=no
4467 rm -f conftest.s conftest.o
4470 if test "x$gcc_cv_as_register_pseudo_op" = xyes; then
4471 AC_DEFINE(HAVE_AS_REGISTER_PSEUDO_OP, 1,
4472 [Define if your assembler supports .register.])
4477 AC_CACHE_CHECK([for 64 bit support in assembler ($gcc_cv_as)],
4478 gcc_cv_as_flags64, [
4479 if test -n "$gcc_cv_as"; then
4480 echo ".xword foo" > conftest.s
4481 gcc_cv_as_flags64=no
4482 for flag in "-xarch=v9" "-64 -Av9"; do
4483 if $gcc_cv_as $flag -o conftest.o conftest.s \
4484 > /dev/null 2>&1; then
4485 gcc_cv_as_flags64=$flag
4489 rm -f conftest.s conftest.o
4491 if test "$gas" = yes; then
4492 gcc_cv_as_flags64="-64 -Av9"
4494 gcc_cv_as_flags64="-xarch=v9"
4498 if test "x$gcc_cv_as_flags64" = xno; then
4500 tmake_file=`echo " $tmake_file " | sed -e 's, sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4501 dep_tmake_file=`echo " $dep_tmake_file " | sed -e 's, [^ ]*/config/sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4504 AC_DEFINE_UNQUOTED(AS_SPARC64_FLAG, "$gcc_cv_as_flags64",
4505 [Define if the assembler supports 64bit sparc.])
4508 *) gcc_cv_as_flags64=${gcc_cv_as_flags64-no}
4512 if test "x$gcc_cv_as_flags64" != xno; then
4513 AC_CACHE_CHECK([for assembler offsetable %lo() support],
4514 gcc_cv_as_offsetable_lo10, [
4515 gcc_cv_as_offsetable_lo10=unknown
4516 if test "x$gcc_cv_as" != x; then
4517 # Check if assembler has offsetable %lo()
4518 echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
4519 echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
4520 if $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s \
4522 $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s \
4523 > /dev/null 2>&1; then
4524 if cmp conftest.o conftest1.o > /dev/null 2>&1; then
4525 gcc_cv_as_offsetable_lo10=no
4527 gcc_cv_as_offsetable_lo10=yes
4530 gcc_cv_as_offsetable_lo10=no
4532 rm -f conftest.s conftest.o conftest1.s conftest1.o
4535 if test "x$gcc_cv_as_offsetable_lo10" = xyes; then
4536 AC_DEFINE(HAVE_AS_OFFSETABLE_LO10, 1,
4537 [Define if your assembler supports offsetable %lo().])
4545 AC_MSG_CHECKING(assembler instructions)
4546 gcc_cv_as_instructions=
4547 if test x$gcc_cv_as != x; then
4548 set "filds fists" "filds mem; fists mem"
4551 echo "$2" > conftest.s
4552 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4553 gcc_cv_as_instructions=${gcc_cv_as_instructions}$1" "
4554 AC_DEFINE_UNQUOTED(HAVE_GAS_`echo "$1" | tr '[a-z ]' '[A-Z_]'`)
4558 rm -f conftest.s conftest.o
4560 AC_MSG_RESULT($gcc_cv_as_instructions)
4564 # Figure out what language subdirectories are present.
4565 # Look if the user specified --enable-languages="..."; if not, use
4566 # the environment variable $LANGUAGES if defined. $LANGUAGES might
4568 if test x"${enable_languages+set}" != xset; then
4569 if test x"${LANGUAGES+set}" = xset; then
4570 enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
4572 enable_languages=all
4576 for lang in ${srcdir}/*/config-lang.in ..
4580 # The odd quoting in the next line works around
4581 # an apparent bug in bash 1.12 on linux.
4583 ${srcdir}/[*]/config-lang.in) ;;
4585 lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
4586 if test "x$lang_alias" = x
4588 echo "$lang doesn't set \$language." 1>&2
4591 if test x"${enable_languages}" = xall; then
4594 case "${enable_languages}" in
4595 ${lang_alias} | "${lang_alias},"* | *",${lang_alias},"* | *",${lang_alias}" )
4603 if test x"${add_this_lang}" = xyes; then
4605 ${srcdir}/ada/config-lang.in)
4606 if test x$gnat = xyes ; then
4607 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4611 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4620 # Make gthr-default.h if we have a thread file.
4622 if test $thread_file != single; then
4623 rm -f gthr-default.h
4624 echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h
4625 gthread_flags=-DHAVE_GTHR_DEFAULT
4627 AC_SUBST(gthread_flags)
4629 # Find out what GC implementation we want, or may, use.
4631 [ --with-gc={simple,page} Choose the garbage collection mechanism to use
4632 with the compiler.],
4638 AC_MSG_ERROR([$withval is an invalid option to --with-gc])
4641 [if test $ac_cv_func_mmap_anywhere = yes \
4642 || test $ac_cv_func_valloc = yes; then
4648 echo "Using $GGC for garbage collection."
4650 # Build a new-abi (c++) system
4651 AC_ARG_ENABLE(new-gxx-abi,
4652 [ --enable-new-gxx-abi
4653 select the new abi for g++. You must select an ABI
4654 at configuration time, so that the correct runtime
4655 support is built. You cannot mix ABIs.],
4656 [AC_DEFINE(ENABLE_NEW_GXX_ABI, 1,
4657 [Define if you want to always select the new-abi for g++.])
4658 GXX_ABI_FLAG='-fnew-abi'
4659 echo "Building a new-abi g++ compiler."
4661 AC_SUBST(GXX_ABI_FLAG)
4663 # Build a new-libstdc++ system (ie libstdc++-v3)
4664 AC_MSG_CHECKING([for libstdc++ to install])
4665 AC_ARG_ENABLE(libstdcxx-v3,
4666 [ --enable-libstdcxx-v3
4667 enable libstdc++-v3 for building and installation],
4668 [enable_libstdcxx_v3=yes], [enable_libstdcxx_v3=no])
4670 if test x$enable_libstdcxx_v3 = xyes; then
4677 AC_DEFINE_UNQUOTED(ENABLE_STD_NAMESPACE, $ac_esn,
4678 [Define to 1 if you want to enable namespaces (-fhonor-std) by default.])
4680 # Make empty files to contain the specs and options for each language.
4681 # Then add #include lines to for a compiler that has specs and/or options.
4686 rm -f specs.h options.h gencheck.h
4687 touch specs.h options.h gencheck.h
4688 for subdir in . $subdirs
4690 if test -f $srcdir/$subdir/lang-specs.h; then
4691 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
4692 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
4694 if test -f $srcdir/$subdir/lang-options.h; then
4695 echo "#include \"$subdir/lang-options.h\"" >>options.h
4696 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
4698 if test -f $srcdir/$subdir/$subdir-tree.def; then
4699 echo "#include \"$subdir/$subdir-tree.def\"" >>gencheck.h
4700 lang_tree_files="$lang_tree_files $srcdir/$subdir/$subdir-tree.def"
4704 # These (without "all_") are set in each config-lang.in.
4705 # `language' must be a single word so is spelled singularly.
4711 all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile gccbug mklibgcc'
4712 # List of language makefile fragments.
4717 # Add the language fragments.
4718 # Languages are added via two mechanisms. Some information must be
4719 # recorded in makefile variables, these are defined in config-lang.in.
4720 # We accumulate them and plug them into the main Makefile.
4721 # The other mechanism is a set of hooks for each of the main targets
4722 # like `clean', `install', etc.
4724 language_fragments="Make-lang"
4725 language_hooks="Make-hooks"
4728 for s in .. $subdirs
4740 . ${srcdir}/$s/config-lang.in
4741 if test "x$language" = x
4743 echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
4746 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in ${srcdir}/$s/Makefile.in"
4747 all_languages="$all_languages $language"
4748 if test "x$boot_language" = xyes
4750 all_boot_languages="$all_boot_languages $language"
4752 all_compilers="$all_compilers $compilers"
4753 all_stagestuff="$all_stagestuff $stagestuff"
4754 all_diff_excludes="$all_diff_excludes $diff_excludes"
4755 all_headers="$all_headers $headers"
4756 all_outputs="$all_outputs $outputs"
4757 if test x$outputs = x
4759 oldstyle_subdirs="$oldstyle_subdirs $s"
4761 all_lib2funcs="$all_lib2funcs $lib2funcs"
4765 # Since we can't use `::' targets, we link each language in
4766 # with a set of hooks, reached indirectly via lang.${target}.
4770 target_list="all.build all.cross start.encap rest.encap \
4772 install-normal install-common install-info install-man \
4774 mostlyclean clean distclean extraclean maintainer-clean \
4775 stage1 stage2 stage3 stage4"
4776 for t in $target_list
4779 for lang in .. $all_languages
4781 if test $lang != ".."; then
4785 echo "lang.$t: $x" >> Make-hooks
4788 # If we're not building in srcdir, create .gdbinit.
4790 if test ! -f Makefile.in; then
4791 echo "dir ." > .gdbinit
4792 echo "dir ${srcdir}" >> .gdbinit
4793 if test x$gdb_needs_out_file_path = xyes
4795 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
4797 if test "x$subdirs" != x; then
4800 echo "dir ${srcdir}/$s" >> .gdbinit
4803 echo "source ${srcdir}/.gdbinit" >> .gdbinit
4806 # Define variables host_canonical and build_canonical
4807 # because some Cygnus local changes in the Makefile depend on them.
4808 build_canonical=${build}
4809 host_canonical=${host}
4811 if test "${host}" != "${target}" ; then
4812 target_subdir=${target}/
4814 AC_SUBST(build_canonical)
4815 AC_SUBST(host_canonical)
4816 AC_SUBST(target_subdir)
4818 # If this is using newlib, then define inhibit_libc in
4819 # LIBGCC2_CFLAGS. This will cause __eprintf to be left out of
4820 # libgcc.a, but that's OK because newib should have its own version of
4823 if test x$with_newlib = xyes; then
4824 inhibit_libc=-Dinhibit_libc
4826 AC_SUBST(inhibit_libc)
4828 # If $(exec_prefix) exists and is not the same as $(prefix), then compute an
4829 # absolute path for gcc_tooldir based on inserting the number of up-directory
4830 # movements required to get from $(exec_prefix) to $(prefix) into the basic
4831 # $(libsubdir)/@(unlibsubdir) based path.
4832 # Don't set gcc_tooldir to tooldir since that's only passed in by the toplevel
4833 # make and thus we'd get different behavior depending on where we built the
4835 if test x$exec_prefix = xNONE -o x$exec_prefix = x$prefix; then
4836 gcc_tooldir='$(libsubdir)/$(unlibsubdir)/../$(target_alias)'
4838 changequote(<<, >>)dnl
4839 # An explanation of the sed strings:
4840 # -e 's|^\$(prefix)||' matches and eliminates 'prefix' from 'exec_prefix'
4841 # -e 's|/$||' match a trailing forward slash and eliminates it
4842 # -e 's|^[^/]|/|' forces the string to start with a forward slash (*)
4843 # -e 's|/[^/]*|../|g' replaces each occurance of /<directory> with ../
4845 # (*) Note this pattern overwrites the first character of the string
4846 # with a forward slash if one is not already present. This is not a
4847 # problem because the exact names of the sub-directories concerned is
4848 # unimportant, just the number of them matters.
4850 # The practical upshot of these patterns is like this:
4852 # prefix exec_prefix result
4853 # ------ ----------- ------
4855 # /foo/ /foo/bar ../
4856 # /foo /foo/bar/ ../
4857 # /foo/ /foo/bar/ ../
4858 # /foo /foo/bar/ugg ../../
4861 gcc_tooldir="\$(libsubdir)/\$(unlibsubdir)/\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/\$(dollar)||' -e 's|^[^/]|/|' -e 's|/[^/]*|../|g'\`\$(target_alias)"
4862 changequote([, ])dnl
4864 AC_SUBST(gcc_tooldir)
4867 # Nothing to do for FLOAT_H, float_format already handled.
4871 # Process the language and host/target makefile fragments.
4872 ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
4874 # Substitute configuration variables
4876 AC_SUBST(all_boot_languages)
4877 AC_SUBST(all_compilers)
4878 AC_SUBST(all_diff_excludes)
4879 AC_SUBST(all_headers)
4880 AC_SUBST(all_lang_makefiles)
4881 AC_SUBST(all_languages)
4882 AC_SUBST(all_lib2funcs)
4883 AC_SUBST(all_stagestuff)
4884 AC_SUBST(build_exeext)
4885 AC_SUBST(build_install_headers_dir)
4886 AC_SUBST(build_xm_file_list)
4887 AC_SUBST(cc_set_by_configure)
4888 AC_SUBST(quoted_cc_set_by_configure)
4889 AC_SUBST(cpp_install_dir)
4890 AC_SUBST(dep_host_xmake_file)
4891 AC_SUBST(dep_tmake_file)
4892 AC_SUBST(extra_c_flags)
4893 AC_SUBST(extra_c_objs)
4894 AC_SUBST(extra_cpp_objs)
4895 AC_SUBST(extra_cxx_objs)
4896 AC_SUBST(extra_headers_list)
4897 AC_SUBST(extra_objs)
4898 AC_SUBST(extra_parts)
4899 AC_SUBST(extra_passes)
4900 AC_SUBST(extra_programs)
4901 AC_SUBST(float_h_file)
4902 AC_SUBST(gcc_gxx_include_dir)
4903 AC_SUBST(gcc_version)
4904 AC_SUBST(gcc_version_trigger)
4905 AC_SUBST(host_exeext)
4906 AC_SUBST(host_extra_gcc_objs)
4907 AC_SUBST(host_xm_file_list)
4909 AC_SUBST(lang_options_files)
4910 AC_SUBST(lang_specs_files)
4911 AC_SUBST(lang_tree_files)
4912 AC_SUBST(local_prefix)
4913 AC_SUBST(maybe_use_collect2)
4915 AC_SUBST(objc_boehm_gc)
4917 AC_SUBST(out_object_file)
4918 AC_SUBST(stage_prefix_set_by_configure)
4919 AC_SUBST(symbolic_link)
4920 AC_SUBST(thread_file)
4921 AC_SUBST(tm_file_list)
4922 AC_SUBST(will_use_collect2)
4925 AC_SUBST_FILE(target_overrides)
4926 AC_SUBST_FILE(host_overrides)
4927 AC_SUBST(cross_defines)
4928 AC_SUBST_FILE(cross_overrides)
4929 AC_SUBST_FILE(build_overrides)
4930 AC_SUBST_FILE(language_fragments)
4931 AC_SUBST_FILE(language_hooks)
4933 # Echo that links are built
4934 if test x$host = x$target
4942 if test x$host != x$build
4944 str3=" on a $build system"
4947 if test "x$str2" != x || test "x$str3" != x
4952 echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
4954 if test "x$str2" != x || test "x$str3" != x
4956 echo " ${str2}${str3}." 1>&2
4959 # Truncate the target if necessary
4960 if test x$host_truncate_target != x; then
4961 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4964 # Configure the subdirectories
4965 # AC_CONFIG_SUBDIRS($subdirs)
4967 # Create the Makefile
4968 # and configure language subdirectories
4969 AC_OUTPUT($all_outputs,
4971 . $srcdir/configure.lang
4972 case x$CONFIG_HEADERS in
4973 xauto-host.h:config.in)
4976 # If the host supports symlinks, point stage[1234] at ../stage[1234] so
4977 # bootstrapping and the installation procedure can still use
4978 # CC="stage1/xgcc -Bstage1/". If the host doesn't support symlinks,
4979 # FLAGS_TO_PASS has been modified to solve the problem there.
4980 # This is virtually a duplicate of what happens in configure.lang; we do
4981 # an extra check to make sure this only happens if ln -s can be used.
4982 if test "$symbolic_link" = "ln -s"; then
4983 for d in .. ${subdirs} ; do
4984 if test $d != ..; then
4987 for t in stage1 stage2 stage3 stage4 include
4990 $symbolic_link ../$t $t 2>/dev/null
4996 # Avoid having to add intl to our include paths.
4997 if test -f intl/libintl.h; then
4998 echo creating libintl.h
4999 echo '#include "intl/libintl.h"' >libintl.h
5006 target_alias='${target_alias}'
5008 subdirs='${subdirs}'
5009 oldstyle_subdirs='${oldstyle_subdirs}'
5010 symbolic_link='${symbolic_link}'
5011 program_transform_set='${program_transform_set}'
5012 program_transform_name='${program_transform_name}'
5013 dep_host_xmake_file='${dep_host_xmake_file}'
5014 host_xmake_file='${host_xmake_file}'
5015 dep_tmake_file='${dep_tmake_file}'
5016 tmake_file='${tmake_file}'
5017 thread_file='${thread_file}'
5018 gcc_version='${gcc_version}'
5019 gcc_version_trigger='${gcc_version_trigger}'
5020 local_prefix='${local_prefix}'
5021 build_install_headers_dir='${build_install_headers_dir}'
5022 build_exeext='${build_exeext}'
5023 host_exeext='${host_exeext}'
5024 out_file='${out_file}'
5025 gdb_needs_out_file_path='${gdb_needs_out_file_path}'
5026 SET_MAKE='${SET_MAKE}'
5027 target_list='${target_list}'
5028 target_overrides='${target_overrides}'
5029 host_overrides='${host_overrides}'
5030 cross_defines='${cross_defines}'
5031 cross_overrides='${cross_overrides}'
5032 build_overrides='${build_overrides}'
5033 cpp_install_dir='${cpp_install_dir}'