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_gc_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) ;;
211 # Enable some checks by default for development versions of GCC
212 [ac_checking=1; ac_tree_checking=1; ac_gc_checking=1;])
213 if test x$ac_checking != x ; then
214 AC_DEFINE(ENABLE_CHECKING, 1,
215 [Define if you want more run-time sanity checks. This one gets a grab
216 bag of miscellaneous but relatively cheap checks.])
218 if test x$ac_tree_checking != x ; then
219 AC_DEFINE(ENABLE_TREE_CHECKING, 1,
220 [Define if you want all operations on trees (the basic data
221 structure of the front ends) to be checked for dynamic type safety
222 at runtime. This is moderately expensive.])
224 if test x$ac_rtl_checking != x ; then
225 AC_DEFINE(ENABLE_RTL_CHECKING, 1,
226 [Define if you want all operations on RTL (the basic data structure
227 of the optimizer and back end) to be checked for dynamic type safety
228 at runtime. This is quite expensive.])
230 if test x$ac_gc_checking != x ; then
231 AC_DEFINE(ENABLE_GC_CHECKING, 1,
232 [Define if you want the garbage collector to do object poisoning and
233 other memory allocation checks. This is quite expensive.])
235 if test x$ac_gc_always_collect != x ; then
236 AC_DEFINE(ENABLE_GC_ALWAYS_COLLECT, 1,
237 [Define if you want the garbage collector to operate in maximally
238 paranoid mode, validating the entire heap and collecting garbage at
239 every opportunity. This is extremely expensive.])
244 [ --disable-cpp don't provide a user-visible C preprocessor.],
245 [], [enable_cpp=yes])
247 AC_ARG_WITH(cpp_install_dir,
248 [ --with-cpp-install-dir=DIR
249 install the user visible C preprocessor in DIR
250 (relative to PREFIX) as well as PREFIX/bin.],
251 [if test x$withval = xyes; then
252 AC_MSG_ERROR([option --with-cpp-install-dir requires an argument])
253 elif test x$withval != xno; then
254 cpp_install_dir=$withval
257 # Link cpplib into the compiler proper, for C/C++/ObjC.
258 AC_ARG_ENABLE(c-cpplib,
259 [ --enable-c-cpplib link cpplib directly into C and C++ compilers
260 (HIGHLY EXPERIMENTAL).],
261 if test x$enable_c_cpplib != xno; then
262 extra_c_objs="${extra_c_objs} libcpp.a"
263 extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
264 AC_DEFINE(USE_CPPLIB, 1,
265 [Define if you want the preprocessor merged into the C and C++ compilers.
266 This mode is not ready for production use.])
269 # Enable Multibyte Characters for C/C++
270 AC_ARG_ENABLE(c-mbchar,
271 [ --enable-c-mbchar Enable multibyte characters for C and C++.],
272 if test x$enable_c_mbchar != xno; then
273 AC_DEFINE(MULTIBYTE_CHARS, 1,
274 [Define if you want the C and C++ compilers to support multibyte
275 character sets for source code.])
279 # Pass with no value to take the default
280 # Pass with a value to specify a thread package
281 AC_ARG_ENABLE(threads,
282 [ --enable-threads enable thread usage for target GCC.
283 --enable-threads=LIB use LIB thread package for target GCC.],,
286 enable_threads_flag=$enable_threads
287 # Check if a valid thread package
288 case x${enable_threads_flag} in
291 target_thread_file='single'
295 target_thread_file=''
297 xdecosf1 | xirix | xmach | xos2 | xposix | xpthreads | xsingle | \
298 xsolaris | xwin32 | xdce | xvxworks | xaix)
299 target_thread_file=$enable_threads_flag
302 echo "$enable_threads is an unknown thread package" 1>&2
307 AC_ARG_ENABLE(objc-gc,
308 [ --enable-objc-gc enable the use of Boehm's garbage collector with
309 the GNU Objective-C runtime.],
310 if test x$enable_objc_gc = xno; then
318 [ --with-dwarf2 force the default debug format to be DWARF2.],
319 dwarf2="$with_dwarf2",
322 # Determine the host, build, and target systems
325 # Find the native compiler
328 if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = no"; then
329 NO_MINUS_C_MINUS_O=yes
331 AC_SUBST(NO_MINUS_C_MINUS_O)
335 AC_CACHE_CHECK(whether ${CC-cc} accepts -Wno-long-long,
336 ac_cv_prog_cc_no_long_long,
337 [save_CFLAGS="$CFLAGS"
338 CFLAGS="-Wno-long-long"
339 AC_TRY_COMPILE(,,ac_cv_prog_cc_no_long_long=yes,
340 ac_cv_prog_cc_no_long_long=no)
341 CFLAGS="$save_CFLAGS"])
343 # If the native compiler is GCC, we can enable warnings even in stage1.
344 # That's useful for people building cross-compilers, or just running a
346 stage1_warn_cflags=" -W -Wall -Wtraditional -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes"
347 stage2_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
348 if test "x$GCC" = "xyes"; then
349 if test $ac_cv_prog_cc_no_long_long = yes; then
350 stage1_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
353 stage1_warn_cflags=""
356 # Stage specific cflags for build.
361 stage1_warn_cflags="$stage1_warn_cflags -Wa,-J"
363 stage1_warn_cflags="$stage1_warn_cflags -J"
368 AC_SUBST(stage1_warn_cflags)
369 AC_SUBST(stage2_warn_cflags)
373 AC_MSG_CHECKING([whether a default assembler was specified])
374 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
375 if test x"$gas_flag" = x"no"; then
376 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER)])
378 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER - GNU as)])
384 AC_MSG_CHECKING([whether a default linker was specified])
385 if test x"${DEFAULT_LINKER+set}" = x"set"; then
386 if test x"$gnu_ld_flag" = x"no"; then
387 AC_MSG_RESULT([yes ($DEFAULT_LINKER)])
389 AC_MSG_RESULT([yes ($DEFAULT_LINKER - GNU ld)])
395 AC_MSG_CHECKING(for GNU C library)
396 AC_CACHE_VAL(gcc_cv_glibc,
398 [#include <features.h>],[
399 #if ! (defined __GLIBC__ || defined __GNU_LIBRARY__)
400 #error Not a GNU C library system
404 AC_MSG_RESULT($gcc_cv_glibc)
405 if test $gcc_cv_glibc = yes; then
406 AC_DEFINE(_GNU_SOURCE, 1, [Always define this when using the GNU C Library])
411 # Find some useful tools
425 AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h \
426 fcntl.h unistd.h stab.h sys/file.h sys/time.h \
427 sys/resource.h sys/param.h sys/times.h sys/stat.h \
428 direct.h malloc.h langinfo.h iconv.h)
430 # Check for thread headers.
431 AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
432 AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
434 # See if GNAT has been installed
435 AC_CHECK_PROG(gnat, gnatbind, yes, no)
437 # Do we have a single-tree copy of texinfo?
438 if test -f $srcdir/../texinfo/Makefile.in; then
439 MAKEINFO='$(objdir)/../texinfo/makeinfo/makeinfo'
440 gcc_cv_prog_makeinfo_modern=yes
441 AC_MSG_RESULT([Using makeinfo from the unified source tree.])
443 # See if makeinfo has been installed and is modern enough
444 # that we can use it.
445 gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
446 [GNU texinfo.* \([0-9][0-9.]*\)],
447 [3.1[2-9] | 3.[2-9][0-9] | 4.* | 1.6[89] | 1.7[0-9]])
450 if test $gcc_cv_prog_makeinfo_modern = no; then
452 *** Makeinfo is missing or too old.
453 *** Info documentation will not be built or installed.])
457 BUILD_INFO=info AC_SUBST(BUILD_INFO)
458 INSTALL_INFO=install-info AC_SUBST(INSTALL_INFO)
461 # See if the stage1 system preprocessor understands the ANSI C
462 # preprocessor stringification operator.
465 # Use <inttypes.h> only if it exists,
466 # doesn't clash with <sys/types.h>, and declares intmax_t.
467 AC_MSG_CHECKING(for inttypes.h)
468 AC_CACHE_VAL(gcc_cv_header_inttypes_h,
470 [#include <sys/types.h>
471 #include <inttypes.h>],
473 [gcc_cv_header_inttypes_h=yes],
474 gcc_cv_header_inttypes_h=no)])
475 AC_MSG_RESULT($gcc_cv_header_inttypes_h)
476 if test $gcc_cv_header_inttypes_h = yes; then
477 AC_DEFINE(HAVE_INTTYPES_H, 1,
478 [Define if you have a working <inttypes.h> header file.])
482 # Determine if enumerated bitfields are unsigned. ISO C says they can
483 # be either signed or unsigned.
485 AC_CACHE_CHECK(for unsigned enumerated bitfields, gcc_cv_enum_bf_unsigned,
486 [AC_TRY_RUN(#include <stdlib.h>
487 enum t { BLAH = 128 } ;
488 struct s_t { enum t member : 8; } s ;
492 if (s.member < 0) exit(1);
495 }, gcc_cv_enum_bf_unsigned=yes, gcc_cv_enum_bf_unsigned=no, gcc_cv_enum_bf_unsigned=yes)])
496 if test $gcc_cv_enum_bf_unsigned = yes; then
497 AC_DEFINE(ENUM_BITFIELDS_ARE_UNSIGNED, 1,
498 [Define if enumerated bitfields are treated as unsigned values.])
501 AC_CHECK_FUNCS(strtoul bsearch putenv popen bcopy bzero bcmp \
502 index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
503 sysconf isascii gettimeofday strsignal putc_unlocked fputc_unlocked \
504 fputs_unlocked getrusage valloc iconv nl_langinfo)
506 AC_CHECK_TYPE(ssize_t, int)
508 # Try to determine the array type of the second argument of getgroups
509 # for the target system (int or gid_t).
511 if test "${target}" = "${build}"; then
512 TARGET_GETGROUPS_T=$ac_cv_type_getgroups
515 # This condition may need some tweaking. It should include all
516 # targets where the array type of the second argument of getgroups
517 # is int and the type of gid_t is not equivalent to int.
518 *-*-sunos* | *-*-ultrix*)
519 TARGET_GETGROUPS_T=int
522 TARGET_GETGROUPS_T=gid_t
526 AC_SUBST(TARGET_GETGROUPS_T)
528 gcc_AC_FUNC_VFPRINTF_DOPRNT
529 gcc_AC_FUNC_PRINTF_PTR
533 # Under some versions of uwin, vfork is notoriously buggy and the test
534 # can hang configure; on other versions, vfork exists just as a stub.
535 # FIXME: This should be removed once vfork in uwin's runtime is fixed.
536 ac_cv_func_vfork_works=no
540 AC_FUNC_MMAP_ANYWHERE
543 # We will need to find libiberty.h and ansidecl.h
544 saved_CFLAGS="$CFLAGS"
545 CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
546 gcc_AC_CHECK_DECLS(bcopy bzero bcmp \
547 index rindex getenv atol sbrk abort atof getcwd getwd \
548 strsignal putc_unlocked fputs_unlocked strstr environ \
549 malloc realloc calloc free basename getopt, , ,[
550 #include "gansidecl.h"
551 #include "system.h"])
553 gcc_AC_CHECK_DECLS(getrlimit setrlimit getrusage, , ,[
554 #include "gansidecl.h"
556 #ifdef HAVE_SYS_RESOURCE_H
557 #include <sys/resource.h>
561 # Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
562 CFLAGS="$saved_CFLAGS"
564 # mkdir takes a single argument on some systems.
565 gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
575 build_install_headers_dir=install-headers-tar
580 host_truncate_target=
583 # Decode the host machine, then the target machine.
584 # For the host machine, we save the xm_file variable as host_xm_file;
585 # then we decode the target machine and forget everything else
586 # that came from the host machine.
587 for machine in $build $host $target; do
601 # Set this to force installation and use of collect2.
603 # Set this to override the default target model.
605 # Set this to control how the header file directory is installed.
606 install_headers_dir=install-headers-tar
607 # Set this to a non-empty list of args to pass to cpp if the target
608 # wants its .md file passed through cpp.
610 # Set this if directory names should be truncated to 14 characters.
612 # Set this if gdb needs a dir command with `dirname $out_file`
613 gdb_needs_out_file_path=
614 # Set this if the build machine requires executables to have a
617 # Set this to control which thread package will be used.
619 # Reinitialize these from the flag values every loop pass, since some
620 # configure entries modify them.
622 gnu_ld="$gnu_ld_flag"
623 enable_threads=$enable_threads_flag
625 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
626 # updated in each machine entry.
628 cpu_type=`echo $machine | sed 's/-.*$//'`
670 tm_file=${cpu_type}/${cpu_type}.h
671 xm_file=${cpu_type}/xm-${cpu_type}.h
672 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
674 tm_p_file=${cpu_type}/${cpu_type}-protos.h;
676 # On a.out targets, we need to use collect2.
683 # Common parts for linux and openbsd systems
686 xm_defines="HAVE_ATEXIT POSIX BSTRING"
689 tm_file=${cpu_type}/openbsd.h
690 tmake_file="t-libc-ok t-openbsd"
691 # avoid surprises, always provide an xm-openbsd file
692 xm_file=${cpu_type}/xm-openbsd.h
693 # don't depend on processor x-fragments as well
695 if test x$enable_threads = xyes; then
697 tmake_file="${tmake_file} t-openbsd-thread"
703 # Support site-specific machine types.
705 cpu_type=`echo $machine | sed -e 's/-.*//'`
706 rest=`echo $machine | sed -e "s/$cpu_type-//"`
707 xm_file=${cpu_type}/xm-$rest.h
708 tm_file=${cpu_type}/$rest.h
709 if test -f $srcdir/config/${cpu_type}/x-$rest; \
710 then xmake_file=${cpu_type}/x-$rest; \
713 if test -f $srcdir/config/${cpu_type}/t-$rest; \
714 then tmake_file=${cpu_type}/t-$rest; \
720 a29k-*-bsd* | a29k-*-sym1*)
721 tm_file="${tm_file} a29k/unix.h"
723 xmake_file=a29k/x-unix
726 a29k-*-udi | a29k-*-coff)
727 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
728 tmake_file=a29k/t-a29kbare
731 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
732 tmake_file=a29k/t-vx29k
733 extra_parts="crtbegin.o crtend.o"
734 thread_file='vxworks'
736 a29k-*-*) # Default a29k environment.
740 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
742 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
743 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
745 # GAS + IEEE_CONFORMANT
746 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
748 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
749 xmake_file="x-interix alpha/t-pe"
750 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
751 if test x$enable_threads = xyes ; then
754 if test x$stabs = xyes ; then
755 tm_file="${tm_file} dbxcoff.h"
757 #prefix='$$INTERIX_ROOT'/usr/contrib
758 #local_prefix='$$INTERIX_ROOT'/usr/contrib
760 alpha*-*-linux*ecoff*)
761 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
762 target_cpu_default="MASK_GAS"
763 tmake_file="alpha/t-alpha alpha/t-ieee"
768 alpha*-*-linux*libc1*)
769 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
770 target_cpu_default="MASK_GAS"
771 tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
772 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
775 if test x$enable_threads = xyes; then
780 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
781 target_cpu_default="MASK_GAS"
782 tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
783 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
786 if test x$enable_threads = xyes; then
791 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
792 target_cpu_default="MASK_GAS"
793 tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
794 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
800 # default x-alpha is only appropriate for dec-osf.
801 target_cpu_default="MASK_GAS"
802 tmake_file="alpha/t-alpha alpha/t-ieee"
806 if test x$stabs = xyes
808 tm_file="${tm_file} dbx.h"
810 if test x$gas != xyes
812 extra_passes="mips-tfile mips-tdump"
815 tmake_file="alpha/t-alpha alpha/t-ieee"
818 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
823 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
826 tm_file="${tm_file} alpha/osf.h"
827 # Some versions of OSF4 (specifically X4.0-9 296.7) have
828 # a broken tar, so we use cpio instead.
829 install_headers_dir=install-headers-cpio
832 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
837 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
839 target_cpu_default=MASK_SUPPORT_ARCH
844 tm_file="${tm_file} dbx.h alpha/vxworks.h"
845 tmake_file="alpha/t-alpha alpha/t-ieee"
848 extra_passes="mips-tfile mips-tdump"
851 thread_file='vxworks'
854 tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h"
855 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
856 tmake_file="t-libc-ok alpha/t-alpha alpha/t-ieee"
857 xmake_file=winnt/x-winnt
858 extra_host_objs=oldnames.o
859 extra_gcc_objs="spawnv.o oldnames.o"
860 if test x$gnu_ld != xyes
862 extra_programs=ld.exe
864 if test x$enable_threads = xyes; then
870 xm_file="${xm_file} alpha/xm-vms.h"
871 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
874 extra_parts="crtinit.o crtfini.o"
876 arm-*-coff* | armel-*-coff*)
878 tmake_file=arm/t-arm-coff
882 tmake_file=arm/t-arm-coff
883 thread_file='vxworks'
886 arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
888 tm_file=arm/riscix1-1.h
891 arm-*-riscix*) # Acorn RISC machine
894 tm_file=arm/rix-gas.h
898 xmake_file=arm/x-riscix
899 tmake_file=arm/t-riscix
902 arm-semi-aout | armel-semi-aout)
904 tmake_file=arm/t-semi
906 arm-semi-aof | armel-semi-aof)
907 tm_file=arm/semiaof.h
908 tmake_file=arm/t-semiaof
912 tmake_file="t-netbsd arm/t-netbsd"
915 arm*-*-linux*aout*) # ARM GNU/Linux with a.out
918 tm_file=arm/linux-aout.h
919 tmake_file=arm/t-linux
922 arm*-*-linux*oldld*) # ARM GNU/Linux with old ELF linker
923 xm_file=arm/xm-linux.h
925 tm_file="arm/linux-oldld.h arm/linux-elf.h"
928 tm_file="arm/linux-elf26.h $tm_file"
931 tmake_file="t-linux arm/t-linux"
932 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
934 case x${enable_threads} in
935 x | xyes | xpthreads | xposix)
940 arm*-*-linux*) # ARM GNU/Linux with ELF
941 xm_file=arm/xm-linux.h
943 tm_file="arm/linux-elf.h"
946 tm_file="arm/linux-elf26.h $tm_file"
949 tmake_file="t-linux arm/t-linux"
950 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
952 case x${enable_threads} in
953 x | xyes | xpthreads | xposix)
958 arm*-*-uclinux*) # ARM ucLinux
959 tm_file=arm/uclinux-elf.h
960 tmake_file=arm/t-arm-elf
964 tmake_file=arm/t-arm-aout
967 tm_file=arm/ecos-elf.h
968 tmake_file=arm/t-arm-elf
971 tm_file=arm/unknown-elf.h
972 tmake_file=arm/t-arm-elf
975 tm_file=arm/conix-elf.h
976 tmake_file=arm/t-arm-elf
979 tm_file=arm/unknown-elf-oabi.h
980 tmake_file=arm/t-arm-elf
989 c1-convex-*) # Convex C1
993 c2-convex-*) # Convex C2
1002 target_cpu_default=8
1006 target_cpu_default=16
1011 tmake_file=c4x/t-c4x
1013 clipper-intergraph-clix*)
1014 tm_file="${tm_file} svr3.h clipper/clix.h"
1015 xm_file=clipper/xm-clix.h
1016 xmake_file=clipper/x-clix
1017 extra_headers=va-clipper.h
1018 extra_parts="crtbegin.o crtend.o"
1019 install_headers_dir=install-headers-cpio
1030 tm_file="fr30/fr30.h"
1031 tmake_file=fr30/t-fr30
1032 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1034 # This hasn't been upgraded to GCC 2.
1035 # fx80-alliant-*) # Alliant FX/80
1041 target_cpu_default="(MASK_PA_11 | MASK_GAS | MASK_JUMP_IN_DELAY)"
1042 tm_file="${tm_file} pa/elf.h linux.h pa/pa-linux.h"
1043 tmake_file="t-linux pa/t-linux"
1044 extra_parts="crtbegin.o crtend.o"
1047 if test x$enable_threads = xyes; then
1052 target_cpu_default="MASK_PA_11"
1053 tmake_file=pa/t-openbsd
1056 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1057 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
1058 xm_file=pa/xm-papro.h
1062 target_cpu_default="MASK_PA_11"
1063 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1067 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1068 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
1069 xm_file=pa/xm-papro.h
1073 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1077 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1078 target_cpu_default="MASK_PA_11"
1082 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1086 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
1087 xm_file=pa/xm-pahpux.h
1088 xmake_file=pa/x-pa-hpux
1089 if test x$gas = xyes
1091 tm_file="${tm_file} pa/gas.h"
1093 install_headers_dir=install-headers-cpio
1097 hppa1.0-*-hpux8.0[0-2]*)
1099 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1100 xm_file=pa/xm-pahpux.h
1101 xmake_file=pa/x-pa-hpux
1102 if test x$gas = xyes
1104 tm_file="${tm_file} pa/pa-gas.h"
1106 tm_file="pa/pa-oldas.h ${tm_file}"
1108 install_headers_dir=install-headers-cpio
1112 hppa1.1-*-hpux8.0[0-2]*)
1114 target_cpu_default="MASK_PA_11"
1115 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1116 xm_file=pa/xm-pahpux.h
1117 xmake_file=pa/x-pa-hpux
1118 if test x$gas = xyes
1120 tm_file="${tm_file} pa/pa-gas.h"
1122 tm_file="pa/pa-oldas.h ${tm_file}"
1124 install_headers_dir=install-headers-cpio
1128 target_cpu_default="MASK_PA_11"
1129 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1130 xm_file=pa/xm-pahpux.h
1131 xmake_file=pa/x-pa-hpux
1132 if test x$gas = xyes
1134 tm_file="${tm_file} pa/pa-gas.h"
1136 install_headers_dir=install-headers-cpio
1140 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1141 xm_file=pa/xm-pahpux.h
1142 xmake_file=pa/x-pa-hpux
1143 if test x$gas = xyes
1145 tm_file="${tm_file} pa/pa-gas.h"
1147 install_headers_dir=install-headers-cpio
1150 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
1151 target_cpu_default="MASK_PA_11"
1152 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1154 xm_file=pa/xm-pahpux.h
1155 xmake_file=pa/x-pa-hpux
1157 if test x$gas = xyes
1159 tm_file="${tm_file} pa/pa-gas.h"
1161 if test x$enable_threads = x; then
1162 enable_threads=$have_pthread_h
1164 case x${enable_threads} in
1166 tmake_file="${tmake_file} pa/t-dce-thr"
1169 install_headers_dir=install-headers-cpio
1173 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1175 xm_file=pa/xm-pahpux.h
1176 xmake_file=pa/x-pa-hpux
1178 if test x$gas = xyes
1180 tm_file="${tm_file} pa/pa-gas.h"
1182 if test x$enable_threads = x; then
1183 enable_threads=$have_pthread_h
1185 case x${enable_threads} in
1187 tmake_file="${tmake_file} pa/t-dce-thr"
1190 install_headers_dir=install-headers-cpio
1194 target_cpu_default="MASK_PA_11"
1195 xm_file=pa/xm-pa64hpux.h
1196 xmake_file=pa/x-pa-hpux
1198 tm_file="pa/pa64-start.h ${tm_file} pa/pa64-regs.h pa/long_double.h pa/elf.h pa/pa-hpux.h pa/pa-hpux11.h pa/pa-64.h"
1200 tmake_file=pa/t-pa64
1201 target_cpu_default="(MASK_PA_11|MASK_PA_20)"
1203 if [[ x$gas = xyes ]]
1205 tm_file="${tm_file} pa/pa-gas.h"
1207 # if [[ x$enable_threads = x ]]; then
1208 # enable_threads=$have_pthread_h
1210 # if [[ x$enable_threads = xyes ]]; then
1212 # tmake_file="${tmake_file} pa/t-dce-thr"
1214 install_headers_dir=install-headers-cpio
1217 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
1218 target_cpu_default="MASK_PA_11"
1219 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1221 xm_file=pa/xm-pahpux.h
1222 xmake_file=pa/x-pa-hpux
1224 if test x$gas = xyes
1226 tm_file="${tm_file} pa/pa-gas.h"
1228 # if test x$enable_threads = x; then
1229 # enable_threads=$have_pthread_h
1231 # if test x$enable_threads = xyes; then
1233 # tmake_file="${tmake_file} pa/t-dce-thr"
1235 install_headers_dir=install-headers-cpio
1239 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1241 xm_file=pa/xm-pahpux.h
1242 xmake_file=pa/x-pa-hpux
1243 if test x$gas = xyes
1245 tm_file="${tm_file} pa/pa-gas.h"
1247 # if test x$enable_threads = x; then
1248 # enable_threads=$have_pthread_h
1250 # if test x$enable_threads = xyes; then
1252 # tmake_file="${tmake_file} pa/t-dce-thr"
1254 install_headers_dir=install-headers-cpio
1257 hppa1.1-*-hpux* | hppa2*-*-hpux*)
1258 target_cpu_default="MASK_PA_11"
1259 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1260 xm_file=pa/xm-pahpux.h
1261 xmake_file=pa/x-pa-hpux
1262 if test x$gas = xyes
1264 tm_file="${tm_file} pa/pa-gas.h"
1266 install_headers_dir=install-headers-cpio
1270 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1271 xm_file=pa/xm-pahpux.h
1272 xmake_file=pa/x-pa-hpux
1273 if test x$gas = xyes
1275 tm_file="${tm_file} pa/pa-gas.h"
1277 install_headers_dir=install-headers-cpio
1280 hppa1.1-*-hiux* | hppa2*-*-hiux*)
1281 target_cpu_default="MASK_PA_11"
1282 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1283 xm_file=pa/xm-pahpux.h
1284 xmake_file=pa/x-pa-hpux
1285 if test x$gas = xyes
1287 tm_file="${tm_file} pa/pa-gas.h"
1289 install_headers_dir=install-headers-cpio
1293 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1294 xm_file=pa/xm-pahpux.h
1295 xmake_file=pa/x-pa-hpux
1296 if test x$gas = xyes
1298 tm_file="${tm_file} pa/pa-gas.h"
1300 install_headers_dir=install-headers-cpio
1304 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
1305 target_cpu_default="MASK_PA_11"
1309 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
1310 xm_file=pa/xm-pampeix.h
1311 xmake_file=pa/x-pa-mpeix
1312 echo "You must use gas. Assuming it is already installed."
1313 install_headers_dir=install-headers-tar
1316 i370-*-opened*) # IBM 360/370/390 Architecture
1317 xm_file=i370/xm-oe.h
1319 xmake_file=i370/x-oe
1320 tmake_file=i370/t-oe
1323 xm_file=i370/xm-mvs.h
1325 tmake_file=i370/t-mvs
1328 xm_file="xm-linux.h i370/xm-linux.h"
1330 tm_file="i370/linux.h ${tm_file}"
1331 tmake_file="t-linux i370/t-linux"
1332 # broken_install=yes
1333 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1334 # extra_parts="crtbegin.o crtend.o"
1338 if test x$enable_threads = xyes; then
1345 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h"
1346 tm_file=i386/i386elf.h
1347 tmake_file=i386/t-i386elf
1351 i[34567]86-ibm-aix*) # IBM PS/2 running AIX
1353 if test x$gas = xyes
1355 tm_file=i386/aix386.h
1356 extra_parts="crtbegin.o crtend.o"
1357 tmake_file=i386/t-crtstuff
1359 tm_file=i386/aix386ng.h
1362 xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
1364 xmake_file=i386/x-aix
1367 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
1369 xm_file="xm-alloca.h ${xm_file}"
1370 xm_defines="USG POSIX SMALL_ARG_MAX"
1371 xmake_file=i386/x-ncr3000
1372 if test x$stabs = xyes -a x$gas = xyes
1374 tm_file=i386/sysv4gdb.h
1376 tm_file=i386/sysv4.h
1378 extra_parts="crtbegin.o crtend.o"
1379 tmake_file=i386/t-crtpic
1385 xm_file=i386/xm-next.h
1386 tmake_file=i386/t-next
1387 xmake_file=i386/x-next
1388 extra_objs=nextstep.o
1389 extra_parts="crtbegin.o crtend.o"
1390 if test x$enable_threads = xyes; then
1395 i[34567]86-sequent-bsd*) # 80386 from Sequent
1398 if test x$gas = xyes
1400 tm_file=i386/seq-gas.h
1402 tm_file=i386/sequent.h
1406 i[34567]86-sequent-ptx1*)
1408 xm_defines="USG SVR3"
1409 xmake_file=i386/x-sysv3
1410 tm_file=i386/seq-sysv3.h
1411 tmake_file=i386/t-crtstuff
1412 extra_parts="crtbegin.o crtend.o"
1413 install_headers_dir=install-headers-cpio
1416 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1418 xm_defines="USG SVR3"
1419 xmake_file=i386/x-sysv3
1420 tm_file=i386/seq2-sysv3.h
1421 tmake_file=i386/t-crtstuff
1422 extra_parts="crtbegin.o crtend.o"
1423 install_headers_dir=install-headers-cpio
1426 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1428 xm_file="xm-alloca.h ${xm_file}"
1429 xm_defines="USG POSIX SMALL_ARG_MAX"
1431 tm_file=i386/ptx4-i.h
1433 extra_parts="crtbegin.o crtend.o"
1434 install_headers_dir=install-headers-cpio
1436 i386-sun-sunos*) # Sun i386 roadrunner
1442 i[34567]86-wrs-vxworks*)
1444 tm_file=i386/vxi386.h
1445 tmake_file=i386/t-i386bare
1446 thread_file='vxworks'
1451 tm_file=i386/i386-aout.h
1452 tmake_file=i386/t-i386bare
1455 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1457 xm_file=i386/xm-beos.h
1458 tmake_file='i386/t-beos i386/t-crtpic'
1459 tm_file=i386/beos-elf.h
1460 xmake_file=i386/x-beos
1461 extra_parts='crtbegin.o crtend.o'
1464 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1466 tm_file=i386/bsd386.h
1467 # tmake_file=t-libc-ok
1472 tm_file=i386/386bsd.h
1473 # tmake_file=t-libc-ok
1474 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1478 i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
1480 tm_file="i386/freebsd.h i386/perform.h"
1481 tmake_file=t-freebsd
1484 i[34567]86-*-freebsd*)
1486 tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd-elf.h i386/perform.h"
1487 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1488 tmake_file=t-freebsd
1492 case x${enable_threads} in
1493 xyes | xpthreads | xposix)
1495 tmake_file="${tmake_file} t-freebsd-thread"
1500 i[34567]86-*-netbsd*)
1502 tm_file=i386/netbsd.h
1507 i[34567]86-*-openbsd*)
1509 # we need collect2 until our bug is fixed...
1515 tm_file=i386/i386-coff.h
1516 tmake_file=i386/t-i386bare
1519 i[34567]86-*-isc*) # 80386 running ISC system
1521 xm_file="${xm_file} i386/xm-isc.h"
1522 xm_defines="USG SVR3"
1525 i[34567]86-*-isc[34]*)
1527 xmake_file=i386/x-isc3
1530 xmake_file=i386/x-isc
1533 if test x$gas = xyes -a x$stabs = xyes
1535 tm_file=i386/iscdbx.h
1536 tmake_file=i386/t-svr3dbx
1537 extra_parts="svr3.ifile svr3z.ifile"
1539 tm_file=i386/isccoff.h
1540 tmake_file=i386/t-crtstuff
1541 extra_parts="crtbegin.o crtend.o"
1543 tmake_file="$tmake_file i386/t-i386bare"
1544 install_headers_dir=install-headers-cpio
1547 i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
1548 changequote([,])dnl # with a.out format using
1550 xmake_file=x-linux-aout
1551 tmake_file="t-linux-aout i386/t-crtstuff"
1552 tm_file=i386/linux-oldld.h
1557 i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1558 changequote([,])dnl # with a.out format
1559 xmake_file=x-linux-aout
1560 tmake_file="t-linux-aout i386/t-crtstuff"
1561 tm_file=i386/linux-aout.h
1566 i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1567 changequote([,])dnl # with ELF format using the
1568 # GNU/Linux C library 5
1570 tm_file=i386/linux.h
1571 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1572 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1575 if test x$enable_threads = xyes; then
1576 thread_file='single'
1580 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1581 changequote([,])dnl # with ELF format using glibc 2
1582 # aka GNU/Linux C library 6
1584 tm_file=i386/linux.h
1585 tmake_file="t-linux i386/t-crtstuff"
1586 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1589 if test x$enable_threads = xyes; then
1599 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1601 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1605 i[34567]86-pc-msdosdjgpp*)
1607 xm_file=i386/xm-djgpp.h
1608 tm_file=i386/djgpp.h
1609 tmake_file=i386/t-djgpp
1610 xmake_file=i386/x-djgpp
1615 case $host in *pc-msdosdjgpp*)
1621 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1624 tmake_file=t-libc-ok
1629 i[34567]86-*-lynxos*)
1631 if test x$gas = xyes
1635 tm_file=i386/lynx-ng.h
1637 xm_file=i386/xm-lynx.h
1638 tmake_file=i386/t-i386bare
1645 # tmake_file=t-libc-ok
1649 i[34567]86-*-osfrose*) # 386 using OSF/rose
1651 if test x$elf = xyes
1653 tm_file=i386/osfelf.h
1656 tm_file=i386/osfrose.h
1659 xm_file="i386/xm-osf.h ${xm_file}"
1660 xmake_file=i386/x-osfrose
1661 tmake_file=i386/t-osf
1662 extra_objs=halfpic.o
1665 i[34567]86-go32-rtems*)
1668 xm_file=i386/xm-go32.h
1669 tm_file=i386/go32-rtems.h
1670 tmake_file="i386/t-go32 t-rtems"
1673 i[34567]86-*-rtemscoff*)
1676 tm_file=i386/rtems.h
1677 tmake_file="i386/t-i386bare t-rtems"
1680 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1683 tm_file=i386/rtemself.h
1684 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1685 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1688 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1690 xm_file="xm-alloca.h ${xm_file} i386/xm-sco5.h"
1691 xm_defines="USG SVR3"
1692 xmake_file=i386/x-sco5
1693 install_headers_dir=install-headers-cpio
1695 if test x$gas = xyes
1697 tm_file="i386/sco5gas.h ${tm_file}"
1698 tmake_file=i386/t-sco5gas
1700 tmake_file=i386/t-sco5
1702 tmake_file="$tmake_file i386/t-i386bare"
1703 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1706 i[34567]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
1708 xm_file="${xm_file} i386/xm-sco.h"
1709 xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX"
1710 xmake_file=i386/x-sco4
1711 install_headers_dir=install-headers-cpio
1712 if test x$stabs = xyes
1714 tm_file=i386/sco4dbx.h
1715 tmake_file=i386/t-svr3dbx
1716 extra_parts="svr3.ifile svr3z.rfile"
1719 tmake_file=i386/t-crtstuff
1720 extra_parts="crtbegin.o crtend.o"
1722 tmake_file="$tmake_file i386/t-i386bare"
1723 # The default EAFS filesystem supports long file names.
1724 # Truncating the target makes $host != $target which
1725 # makes gcc think it is doing a cross-compile.
1726 # truncate_target=yes
1729 i[34567]86-*-sco*) # 80386 running SCO system
1731 xm_file=i386/xm-sco.h
1732 xmake_file=i386/x-sco
1733 install_headers_dir=install-headers-cpio
1734 if test x$stabs = xyes
1736 tm_file=i386/scodbx.h
1737 tmake_file=i386/t-svr3dbx
1738 extra_parts="svr3.ifile svr3z.rfile"
1741 extra_parts="crtbegin.o crtend.o"
1742 tmake_file=i386/t-crtstuff
1744 tmake_file="$tmake_file i386/t-i386bare"
1748 i[34567]86-*-solaris2*)
1750 xm_file="xm-alloca.h ${xm_file}"
1751 xm_defines="USG POSIX SMALL_ARG_MAX"
1753 if test x$gas = xyes; then
1754 # Only needed if gas does not support -s
1755 tm_file="i386/sol2gas.h ${tm_file}"
1757 tmake_file="i386/t-i386bare i386/t-sol2"
1758 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1760 if test x${enable_threads} = x; then
1761 enable_threads=$have_pthread_h
1762 if test x${enable_threads} = x; then
1763 enable_threads=$have_thread_h
1766 if test x${enable_threads} = xyes; then
1767 if test x${have_pthread_h} = xyes; then
1770 thread_file='solaris'
1775 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1777 xm_file="xm-alloca.h ${xm_file}"
1778 xm_defines="USG POSIX"
1779 tm_file=i386/sysv5.h
1780 if test x$stabs = xyes
1782 tm_file="${tm_file} dbx.h"
1784 tmake_file="i386/t-i386bare i386/t-crtpic"
1786 extra_parts="crtbegin.o crtend.o"
1787 if test x$enable_threads = xyes; then
1792 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1794 xm_file="xm-alloca.h ${xm_file}"
1795 xm_defines="USG POSIX SMALL_ARG_MAX"
1796 tm_file=i386/sysv4.h
1797 if test x$stabs = xyes
1799 tm_file="${tm_file} dbx.h"
1801 tmake_file="i386/t-i386bare i386/t-crtpic"
1803 extra_parts="crtbegin.o crtend.o"
1806 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1808 xm_file="xm-alloca.h ${xm_file}"
1809 xm_defines="USG POSIX"
1811 tmake_file="i386/t-i386bare i386/t-crtpic i386/t-udk"
1813 extra_parts="crtbegin.o crtend.o"
1814 install_headers_dir=install-headers-cpio
1817 i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
1820 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
1821 xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
1822 if test x$stabs = xyes
1824 tm_file=i386/osf1elfgdb.h
1826 tm_file=i386/osf1elf.h
1828 tmake_file=i386/t-osf1elf
1829 xmake_file=i386/x-osf1elf
1830 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1833 i[34567]86-*-sysv*) # Intel 80386's running system V
1835 xm_defines="USG SVR3"
1836 xmake_file=i386/x-sysv3
1837 if test x$gas = xyes
1839 if test x$stabs = xyes
1841 tm_file=i386/svr3dbx.h
1842 tmake_file=i386/t-svr3dbx
1843 extra_parts="svr3.ifile svr3z.rfile"
1845 tm_file=i386/svr3gas.h
1846 extra_parts="crtbegin.o crtend.o"
1847 tmake_file=i386/t-crtstuff
1850 tm_file=i386/sysv3.h
1851 extra_parts="crtbegin.o crtend.o"
1852 tmake_file=i386/t-crtstuff
1854 tmake_file="$tmake_file i386/t-crtpic"
1856 i386-*-vsta) # Intel 80386's running VSTa kernel
1857 xm_file="${xm_file} i386/xm-vsta.h"
1859 tmake_file=i386/t-vsta
1860 xmake_file=i386/x-vsta
1865 xm_file="${xm_file} i386/xm-cygwin.h"
1866 tmake_file=i386/t-cygwin
1867 tm_file=i386/win32.h
1868 xmake_file=i386/x-cygwin
1870 if test x$enable_threads = xyes; then
1876 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1878 xm_file="${xm_file} i386/xm-cygwin.h"
1879 tmake_file=i386/t-cygwin
1880 tm_file=i386/cygwin.h
1881 xmake_file=i386/x-cygwin
1883 if test x$enable_threads = xyes; then
1889 i[34567]86-*-mingw32*)
1891 tm_file=i386/mingw32.h
1892 xm_file="${xm_file} i386/xm-mingw32.h"
1893 tmake_file="i386/t-cygwin i386/t-mingw32"
1895 xmake_file=i386/x-cygwin
1896 if test x$enable_threads = xyes; then
1903 *minwg32crt* | *mingw32*)
1904 tm_file="${tm_file} i386/crtdll.h"
1912 xm_file="${xm_file} i386/xm-uwin.h"
1913 xm_defines="USG NO_STAB_H"
1914 tmake_file="i386/t-cygwin i386/t-uwin"
1916 xmake_file=i386/x-cygwin
1917 if test x$enable_threads = xyes; then
1923 i[34567]86-*-interix*)
1925 tm_file="i386/i386-interix.h interix.h"
1926 xm_file="i386/xm-i386-interix.h xm-interix.h"
1928 tmake_file="i386/t-interix"
1929 extra_objs=interix.o
1930 xmake_file=x-interix
1931 if test x$enable_threads = xyes ; then
1934 if test x$stabs = xyes ; then
1935 tm_file="${tm_file} dbxcoff.h"
1939 i[34567]86-*-winnt3*)
1941 tm_file=i386/win-nt.h
1942 out_file=i386/i386.c
1943 xm_file="xm-winnt.h ${xm_file}"
1944 xmake_file=winnt/x-winnt
1945 tmake_file=i386/t-winnt
1946 extra_host_objs="winnt.o oldnames.o"
1947 extra_gcc_objs="spawnv.o oldnames.o"
1948 if test x$gnu_ld != xyes
1950 extra_programs=ld.exe
1952 if test x$enable_threads = xyes; then
1957 i[34567]86-dg-dgux*)
1959 xm_file="xm-alloca.h ${xm_file}"
1960 xm_defines="USG POSIX"
1961 out_file=i386/dgux.c
1963 tmake_file=i386/t-dgux
1964 xmake_file=i386/x-dgux
1965 install_headers_dir=install-headers-cpio
1967 i860-alliant-*) # Alliant FX/2800
1968 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1969 xm_file="${xm_file}"
1970 xmake_file=i860/x-fx2800
1971 tmake_file=i860/t-fx2800
1972 extra_parts="crtbegin.o crtend.o"
1975 tm_file="${tm_file} i860/bsd.h"
1976 if test x$gas = xyes
1978 tm_file="${tm_file} i860/bsd-gas.h"
1983 tm_file="${tm_file} i860/mach.h"
1984 tmake_file=t-libc-ok
1986 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1987 tm_file="${tm_file} svr3.h i860/paragon.h"
1988 xm_defines="USG SVR3"
1992 tm_file="${tm_file} svr3.h i860/sysv3.h"
1993 xm_defines="USG SVR3"
1994 xmake_file=i860/x-sysv3
1995 extra_parts="crtbegin.o crtend.o"
1998 tm_file="${tm_file} svr4.h i860/sysv4.h"
1999 xm_defines="USG SVR3"
2000 xmake_file=i860/x-sysv4
2002 extra_parts="crtbegin.o crtend.o"
2004 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
2005 tm_file="${tm_file} i960/vx960.h"
2006 tmake_file=i960/t-vxworks960
2008 thread_file='vxworks'
2010 i960-wrs-vxworks5* | i960-wrs-vxworks)
2011 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
2012 tmake_file=i960/t-vxworks960
2014 thread_file='vxworks'
2017 tm_file="${tm_file} i960/vx960.h"
2018 tmake_file=i960/t-vxworks960
2020 thread_file='vxworks'
2023 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
2024 tmake_file=i960/t-960bare
2028 tmake_file="i960/t-960bare t-rtems"
2029 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
2032 i960-*-*) # Default i960 environment.
2037 tmake_file="ia64/t-ia64"
2038 target_cpu_default="0"
2039 if test x$gas = xyes
2041 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
2043 if test x$gnu_ld = xyes
2045 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
2050 tm_file=ia64/linux.h
2051 tmake_file="t-linux ia64/t-ia64"
2052 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
2053 if test x$enable_threads = xyes; then
2059 extra_parts="crtinit.o crtfini.o"
2061 # m68hc11 and m68hc12 share the same machine description.
2062 m68hc11-*-*|m6811-*-*)
2063 tm_file="m68hc11/m68hc11.h"
2064 xm_file="m68hc11/xm-m68hc11.h"
2065 tm_p_file="m68hc11/m68hc11-protos.h"
2066 md_file="m68hc11/m68hc11.md"
2067 out_file="m68hc11/m68hc11.c"
2068 tmake_file="m68hc11/t-m68hc11-gas"
2070 m68hc12-*-*|m6812-*-*)
2071 tm_file="m68hc11/m68hc12.h"
2072 tm_p_file="m68hc11/m68hc11-protos.h"
2073 xm_file="m68hc11/xm-m68hc11.h"
2074 md_file="m68hc11/m68hc11.md"
2075 out_file="m68hc11/m68hc11.c"
2076 tmake_file="m68hc11/t-m68hc11-gas"
2078 m68000-convergent-sysv*)
2080 xm_file="m68k/xm-3b1.h ${xm_file}"
2083 extra_headers=math-68881.h
2085 m68000-hp-bsd*) # HP 9000/200 running BSD
2086 tm_file=m68k/hp2bsd.h
2087 xmake_file=m68k/x-hp2bsd
2089 extra_headers=math-68881.h
2091 m68000-hp-hpux*) # HP 9000 series 300
2092 xm_file="xm-alloca.h ${xm_file}"
2094 if test x$gas = xyes
2096 xmake_file=m68k/x-hp320g
2097 tm_file=m68k/hp310g.h
2099 xmake_file=m68k/x-hp320
2100 tm_file=m68k/hp310.h
2102 install_headers_dir=install-headers-cpio
2104 extra_headers=math-68881.h
2109 extra_headers=math-68881.h
2112 tm_file=m68k/sun2o4.h
2114 extra_headers=math-68881.h
2117 xm_file="m68k/xm-3b1.h ${xm_file}"
2119 if test x$gas = xyes
2126 extra_headers=math-68881.h
2128 m68k-apple-aux*) # Apple Macintosh running A/UX
2129 xm_defines="USG AUX"
2130 tmake_file=m68k/t-aux
2131 install_headers_dir=install-headers-cpio
2132 extra_headers=math-68881.h
2133 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
2135 if test "$gnu_ld" = yes
2137 tm_file="${tm_file} m68k/auxgld.h"
2139 tm_file="${tm_file} m68k/auxld.h"
2141 if test "$gas" = yes
2143 tm_file="${tm_file} m68k/auxgas.h"
2145 tm_file="${tm_file} m68k/auxas.h"
2147 tm_file="${tm_file} m68k/a-ux.h"
2151 tm_file=m68k/apollo68.h
2152 xmake_file=m68k/x-apollo68
2154 extra_headers=math-68881.h
2157 m68k-altos-sysv*) # Altos 3068
2158 if test x$gas = xyes
2160 tm_file=m68k/altos3068.h
2163 echo "The Altos is supported only with the GNU assembler" 1>&2
2166 extra_headers=math-68881.h
2168 m68k-bull-sysv*) # Bull DPX/2
2169 if test x$gas = xyes
2171 if test x$stabs = xyes
2173 tm_file=m68k/dpx2cdbx.h
2175 tm_file=m68k/dpx2g.h
2180 xm_file="xm-alloca.h ${xm_file}"
2182 xmake_file=m68k/x-dpx2
2184 extra_headers=math-68881.h
2186 m68k-atari-sysv4*) # Atari variant of V.4.
2187 tm_file=m68k/atari.h
2188 xm_file="xm-alloca.h ${xm_file}"
2189 xm_defines="USG FULL_PROTOTYPES"
2191 extra_parts="crtbegin.o crtend.o"
2192 extra_headers=math-68881.h
2195 m68k-motorola-sysv*)
2196 tm_file=m68k/mot3300.h
2197 xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
2198 if test x$gas = xyes
2200 xmake_file=m68k/x-mot3300-gas
2201 if test x$gnu_ld = xyes
2203 tmake_file=m68k/t-mot3300-gald
2205 tmake_file=m68k/t-mot3300-gas
2209 xmake_file=m68k/x-mot3300
2210 if test x$gnu_ld = xyes
2212 tmake_file=m68k/t-mot3300-gld
2214 tmake_file=m68k/t-mot3300
2218 gdb_needs_out_file_path=yes
2219 extra_parts="crt0.o mcrt0.o"
2220 extra_headers=math-68881.h
2223 m68k-ncr-sysv*) # NCR Tower 32 SVR3
2224 tm_file=m68k/tower-as.h
2225 xm_defines="USG SVR3"
2226 xmake_file=m68k/x-tower
2227 extra_parts="crtbegin.o crtend.o"
2228 extra_headers=math-68881.h
2231 tm_file=m68k/plexus.h
2232 xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
2235 extra_headers=math-68881.h
2239 xm_file="xm-alloca.h ${xm_file}"
2241 extra_headers=math-68881.h
2244 xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
2245 xm_defines="USG unos"
2246 xmake_file=m68k/x-crds
2249 extra_headers=math-68881.h
2251 m68k-cbm-sysv4*) # Commodore variant of V.4.
2253 xm_file="xm-alloca.h ${xm_file}"
2254 xm_defines="USG FULL_PROTOTYPES"
2255 xmake_file=m68k/x-amix
2257 extra_parts="crtbegin.o crtend.o"
2258 extra_headers=math-68881.h
2262 tm_file=m68k/ccur-GAS.h
2263 xmake_file=m68k/x-ccur
2264 extra_headers=math-68881.h
2268 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
2269 tm_file=m68k/hp3bsd44.h
2270 xmake_file=m68k/x-hp3bsd44
2272 extra_headers=math-68881.h
2275 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
2276 tm_file=m68k/hp3bsd.h
2278 extra_headers=math-68881.h
2282 if test x$with_fp = xno
2284 tm_file=m68k/isi-nfp.h
2290 extra_headers=math-68881.h
2292 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
2293 xm_file="xm-alloca.h ${xm_file}"
2295 if test x$gas = xyes
2297 xmake_file=m68k/x-hp320g
2298 tm_file=m68k/hp320g.h
2300 xmake_file=m68k/x-hp320
2301 tm_file=m68k/hpux7.h
2303 install_headers_dir=install-headers-cpio
2305 extra_headers=math-68881.h
2308 m68k-hp-hpux*) # HP 9000 series 300
2309 xm_file="xm-alloca.h ${xm_file}"
2311 if test x$gas = xyes
2313 xmake_file=m68k/x-hp320g
2314 tm_file=m68k/hp320g.h
2316 xmake_file=m68k/x-hp320
2317 tm_file=m68k/hp320.h
2319 install_headers_dir=install-headers-cpio
2321 extra_headers=math-68881.h
2325 tm_file=m68k/sun3mach.h
2327 extra_headers=math-68881.h
2331 if test x$gas = xyes
2333 tm_file=m68k/news3gas.h
2335 tm_file=m68k/news3.h
2338 extra_headers=math-68881.h
2341 m68k-sony-bsd* | m68k-sony-newsos*)
2342 if test x$gas = xyes
2344 tm_file=m68k/newsgas.h
2349 extra_headers=math-68881.h
2352 m68k-next-nextstep2*)
2353 tm_file=m68k/next21.h
2354 xm_file="m68k/xm-next.h ${xm_file}"
2355 tmake_file=m68k/t-next
2356 xmake_file=m68k/x-next
2357 extra_objs=nextstep.o
2358 extra_headers=math-68881.h
2363 m68k-next-nextstep[34]*)
2366 xm_file="m68k/xm-next.h ${xm_file}"
2367 tmake_file=m68k/t-next
2368 xmake_file=m68k/x-next
2369 extra_objs=nextstep.o
2370 extra_parts="crtbegin.o crtend.o"
2371 extra_headers=math-68881.h
2373 if test x$enable_threads = xyes; then
2378 if test x$with_fp = xno
2380 tm_file=m68k/sun3n3.h
2382 tm_file=m68k/sun3o3.h
2386 extra_headers=math-68881.h
2388 m68k-sun-sunos*) # For SunOS 4 (the default).
2389 if test x$with_fp = xno
2391 tm_file=m68k/sun3n.h
2397 extra_headers=math-68881.h
2400 tm_file=m68k/vxm68k.h
2401 tmake_file=m68k/t-vxworks68
2402 extra_headers=math-68881.h
2403 thread_file='vxworks'
2407 tmake_file=m68k/t-m68kbare
2408 tm_file="m68k/m68k-aout.h libgloss.h"
2409 extra_headers=math-68881.h
2413 tmake_file=m68k/t-m68kbare
2414 tm_file="m68k/m68k-coff.h dbx.h libgloss.h"
2415 extra_headers=math-68881.h
2418 m68020-*-elf* | m68k-*-elf*)
2419 tm_file="m68k/m68020-elf.h"
2420 xm_file=m68k/xm-m68kv.h
2421 tmake_file=m68k/t-m68kelf
2422 header_files=math-68881.h
2425 if test x$gas = xyes
2429 tm_file=m68k/lynx-ng.h
2431 xm_file=m68k/xm-lynx.h
2433 tmake_file=m68k/t-lynx
2434 extra_headers=math-68881.h
2438 tm_file=m68k/netbsd.h
2445 # we need collect2 until our bug is fixed...
2448 m68k-*-sysv3*) # Motorola m68k's running system V.3
2449 xm_file="xm-alloca.h ${xm_file}"
2451 xmake_file=m68k/x-m68kv
2452 extra_parts="crtbegin.o crtend.o"
2453 extra_headers=math-68881.h
2456 m68k-*-sysv4*) # Motorola m68k's running system V.4
2457 tm_file=m68k/m68kv4.h
2458 xm_file="xm-alloca.h ${xm_file}"
2461 extra_parts="crtbegin.o crtend.o"
2462 extra_headers=math-68881.h
2465 m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
2468 tm_file=m68k/linux-aout.h
2469 tmake_file="t-linux-aout m68k/t-linux-aout"
2470 extra_headers=math-68881.h
2474 m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
2475 # with ELF format using the
2476 # GNU/Linux C library 5
2478 tm_file=m68k/linux.h
2479 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
2480 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2481 extra_headers=math-68881.h
2485 m68k-*-linux*) # Motorola m68k's running GNU/Linux
2486 # with ELF format using glibc 2
2487 # aka the GNU/Linux C library 6.
2489 tm_file=m68k/linux.h
2490 tmake_file="t-linux m68k/t-linux"
2491 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2492 extra_headers=math-68881.h
2495 if test x$enable_threads = xyes; then
2500 tmake_file=m68k/t-m68kbare
2501 tm_file=m68k/m68k-psos.h
2502 extra_headers=math-68881.h
2506 tmake_file="m68k/t-m68kbare t-rtems"
2507 tm_file=m68k/rtems.h
2508 extra_headers=math-68881.h
2511 m68k-*-rtemself*|m68k-*-rtems*)
2512 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2513 tm_file=m68k/rtemself.h
2514 extra_headers=math-68881.h
2520 tm_file=m88k/dguxbcs.h
2521 tmake_file=m88k/t-dguxbcs
2525 tmake_file=m88k/t-dgux
2528 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2529 xmake_file=m88k/x-dgux
2530 if test x$gas = xyes
2532 tmake_file=m88k/t-dgux-gas
2535 m88k-dolphin-sysv3*)
2536 tm_file=m88k/dolph.h
2537 extra_parts="crtbegin.o crtend.o"
2538 xm_file="m88k/xm-sysv3.h ${xm_file}"
2539 xmake_file=m88k/x-dolph
2540 if test x$gas = xyes
2542 tmake_file=m88k/t-m88k-gas
2545 m88k-tektronix-sysv3)
2546 tm_file=m88k/tekXD88.h
2547 extra_parts="crtbegin.o crtend.o"
2548 xm_file="m88k/xm-sysv3.h ${xm_file}"
2549 xmake_file=m88k/x-tekXD88
2550 if test x$gas = xyes
2552 tmake_file=m88k/t-m88k-gas
2556 tm_file=m88k/m88k-aout.h
2559 tm_file=m88k/m88k-coff.h
2560 tmake_file=m88k/t-bug
2564 extra_parts="crtbegin.o crtend.o"
2565 if test x$gas = xyes
2567 tmake_file=m88k/t-luna-gas
2569 tmake_file=m88k/t-luna
2573 tmake_file="${tmake_file} m88k/t-luna-gas"
2574 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
2575 xm_file="xm-openbsd.h m88k/xm-m88k.h ${xm_file}"
2578 tm_file=m88k/sysv3.h
2579 extra_parts="crtbegin.o crtend.o"
2580 xm_file="m88k/xm-sysv3.h ${xm_file}"
2581 xmake_file=m88k/x-sysv3
2582 if test x$gas = xyes
2584 tmake_file=m88k/t-m88k-gas
2588 tm_file=m88k/sysv4.h
2589 extra_parts="crtbegin.o crtend.o"
2590 xmake_file=m88k/x-sysv4
2591 tmake_file=m88k/t-sysv4
2594 tm_file=mcore/mcore-elf.h
2595 tmake_file=mcore/t-mcore
2598 tm_file=mcore/mcore-pe.h
2599 tmake_file=mcore/t-mcore-pe
2601 mips-sgi-irix6*) # SGI System V.4., IRIX 6
2602 if test "x$gnu_ld" = xyes
2604 tm_file="mips/iris6.h mips/iris6gld.h"
2606 tm_file=mips/iris6.h
2608 tmake_file=mips/t-iris6
2609 xm_file=mips/xm-iris6.h
2610 xmake_file=mips/x-iris6
2611 # if test x$enable_threads = xyes; then
2612 # thread_file='irix'
2616 tm_file="mips/elf.h mips/vxworks.h"
2617 tmake_file=mips/t-ecoff
2620 extra_parts="crtbegin.o crtend.o"
2621 thread_file='vxworks'
2623 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2624 tm_file="mips/iris6.h mips/cross64.h"
2626 xm_file="mips/xm-iris5.h"
2627 xmake_file=mips/x-iris
2628 tmake_file=mips/t-cross64
2629 # See comment in mips/iris[56].h files.
2631 # if test x$enable_threads = xyes; then
2632 # thread_file='irix'
2636 if test x$gas = xyes
2638 if test x$stabs = xyes
2640 tm_file=mips/iris5gdb.h
2642 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2645 tm_file=mips/sni-svr4.h
2648 xmake_file=mips/x-sni-svr4
2649 tmake_file=mips/t-mips-gas
2650 if test x$gnu_ld != xyes
2655 mips-sgi-irix5*) # SGI System V.4., IRIX 5
2656 if test x$gas = xyes
2658 tm_file="mips/iris5.h mips/iris5gas.h"
2659 if test x$stabs = xyes
2661 tm_file="${tm_file} dbx.h"
2664 tm_file=mips/iris5.h
2667 xm_file="mips/xm-iris5.h"
2668 xmake_file=mips/x-iris
2669 # mips-tfile doesn't work yet
2670 tmake_file=mips/t-mips-gas
2671 # See comment in mips/iris5.h file.
2673 # if test x$enable_threads = xyes; then
2674 # thread_file='irix'
2677 mips-sgi-irix4loser*) # Mostly like a MIPS.
2678 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2679 if test x$stabs = xyes; then
2680 tm_file="${tm_file} dbx.h"
2683 xmake_file=mips/x-iris
2684 if test x$gas = xyes
2686 tmake_file=mips/t-mips-gas
2688 extra_passes="mips-tfile mips-tdump"
2690 if test x$gnu_ld != xyes
2694 # if test x$enable_threads = xyes; then
2695 # thread_file='irix'
2698 mips-sgi-irix4*) # Mostly like a MIPS.
2699 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2700 if test x$stabs = xyes; then
2701 tm_file="${tm_file} dbx.h"
2704 xmake_file=mips/x-iris
2705 if test x$gas = xyes
2707 tmake_file=mips/t-mips-gas
2709 extra_passes="mips-tfile mips-tdump"
2711 if test x$gnu_ld != xyes
2715 # if test x$enable_threads = xyes; then
2716 # thread_file='irix'
2719 mips-sgi-*) # Mostly like a MIPS.
2720 tm_file="mips/iris3.h ${tm_file}"
2721 if test x$stabs = xyes; then
2722 tm_file="${tm_file} dbx.h"
2725 xmake_file=mips/x-iris3
2726 if test x$gas = xyes
2728 tmake_file=mips/t-mips-gas
2730 extra_passes="mips-tfile mips-tdump"
2732 if test x$gnu_ld != xyes
2737 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2738 tm_file="mips/osfrose.h ${tm_file}"
2739 xmake_file=mips/x-osfrose
2740 tmake_file=mips/t-osfrose
2741 extra_objs=halfpic.o
2744 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2745 tm_file=mips/dec-osf1.h
2746 if test x$stabs = xyes; then
2747 tm_file="${tm_file} dbx.h"
2749 xmake_file=mips/x-dec-osf1
2750 if test x$gas = xyes
2752 tmake_file=mips/t-mips-gas
2754 tmake_file=mips/t-ultrix
2755 extra_passes="mips-tfile mips-tdump"
2757 if test x$gnu_ld != xyes
2762 mips-dec-bsd*) # Decstation running 4.4 BSD
2763 tm_file=mips/dec-bsd.h
2764 if test x$gas = xyes
2766 tmake_file=mips/t-mips-gas
2768 tmake_file=mips/t-ultrix
2769 extra_passes="mips-tfile mips-tdump"
2771 if test x$gnu_ld != xyes
2776 mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2777 tm_file=mips/netbsd.h
2778 # On NetBSD, the headers are already okay, except for math.h.
2781 mips*-*-linux*) # Linux MIPS, either endian.
2784 mips*el-*) tm_file="mips/elfl.h mips/linux.h" ;;
2785 *) tm_file="mips/elf.h mips/linux.h" ;;
2788 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2791 if test x$enable_threads = xyes; then
2795 mips*el-*-openbsd*) # mips little endian
2796 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2798 mips*-*-openbsd*) # mips big endian
2799 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2800 tm_file="mips/openbsd-be.h ${tm_file}"
2802 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2803 tm_file="mips/news4.h ${tm_file}"
2804 if test x$stabs = xyes; then
2805 tm_file="${tm_file} dbx.h"
2807 if test x$gas = xyes
2809 tmake_file=mips/t-mips-gas
2811 extra_passes="mips-tfile mips-tdump"
2813 if test x$gnu_ld != xyes
2817 xmake_file=mips/x-sony
2819 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2820 # That is based on svr4.
2821 # t-svr4 is not right because this system doesn't use ELF.
2822 tm_file="mips/news5.h ${tm_file}"
2823 if test x$stabs = xyes; then
2824 tm_file="${tm_file} dbx.h"
2827 if test x$gas = xyes
2829 tmake_file=mips/t-mips-gas
2831 extra_passes="mips-tfile mips-tdump"
2833 if test x$gnu_ld != xyes
2838 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2839 tm_file="mips/svr4-5.h mips/svr4-t.h"
2840 if test x$stabs = xyes; then
2841 tm_file="${tm_file} dbx.h"
2844 xmake_file=mips/x-sysv
2845 if test x$gas = xyes
2847 tmake_file=mips/t-mips-gas
2848 extra_parts="crtbegin.o crtend.o"
2850 tmake_file=mips/t-mips
2851 extra_passes="mips-tfile mips-tdump"
2853 if test x$gnu_ld != xyes
2858 mips-*-ultrix* | mips-dec-mach3) # Decstation.
2859 tm_file="mips/ultrix.h ${tm_file}"
2860 if test x$stabs = xyes; then
2861 tm_file="${tm_file} dbx.h"
2863 xmake_file=mips/x-ultrix
2864 if test x$gas = xyes
2866 tmake_file=mips/t-mips-gas
2868 tmake_file=mips/t-ultrix
2869 extra_passes="mips-tfile mips-tdump"
2871 if test x$gnu_ld != xyes
2877 mips-*-riscos[56789]bsd*)
2879 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
2880 if test x$stabs = xyes; then
2881 tm_file="${tm_file} dbx.h"
2883 if test x$gas = xyes
2885 tmake_file=mips/t-bsd-gas
2887 tmake_file=mips/t-bsd
2888 extra_passes="mips-tfile mips-tdump"
2890 if test x$gnu_ld != xyes
2896 mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2898 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2899 if test x$stabs = xyes; then
2900 tm_file="${tm_file} dbx.h"
2902 if test x$gas = xyes
2904 tmake_file=mips/t-bsd-gas
2906 tmake_file=mips/t-bsd
2907 extra_passes="mips-tfile mips-tdump"
2909 if test x$gnu_ld != xyes
2915 mips-*-riscos[56789]sysv4*)
2917 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2918 if test x$stabs = xyes; then
2919 tm_file="${tm_file} dbx.h"
2921 xmake_file=mips/x-sysv
2922 if test x$gas = xyes
2924 tmake_file=mips/t-svr4-gas
2926 tmake_file=mips/t-svr4
2927 extra_passes="mips-tfile mips-tdump"
2929 if test x$gnu_ld != xyes
2935 mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2937 tm_file="mips/svr4-4.h ${tm_file}"
2938 if test x$stabs = xyes; then
2939 tm_file="${tm_file} dbx.h"
2942 xmake_file=mips/x-sysv
2943 if test x$gas = xyes
2945 tmake_file=mips/t-svr4-gas
2947 tmake_file=mips/t-svr4
2948 extra_passes="mips-tfile mips-tdump"
2950 if test x$gnu_ld != xyes
2956 mips-*-riscos[56789]sysv*)
2958 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
2959 if test x$stabs = xyes; then
2960 tm_file="${tm_file} dbx.h"
2963 xmake_file=mips/x-sysv
2964 if test x$gas = xyes
2966 tmake_file=mips/t-svr3-gas
2968 tmake_file=mips/t-svr3
2969 extra_passes="mips-tfile mips-tdump"
2971 if test x$gnu_ld != xyes
2976 mips-*-sysv* | mips-*-riscos*sysv*)
2977 tm_file="mips/svr3-4.h ${tm_file}"
2978 if test x$stabs = xyes; then
2979 tm_file="${tm_file} dbx.h"
2982 xmake_file=mips/x-sysv
2983 if test x$gas = xyes
2985 tmake_file=mips/t-svr3-gas
2987 tmake_file=mips/t-svr3
2988 extra_passes="mips-tfile mips-tdump"
2990 if test x$gnu_ld != xyes
2996 mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
2998 tm_file=mips/mips-5.h
2999 if test x$stabs = xyes; then
3000 tm_file="${tm_file} dbx.h"
3002 if test x$gas = xyes
3004 tmake_file=mips/t-mips-gas
3006 extra_passes="mips-tfile mips-tdump"
3008 if test x$gnu_ld != xyes
3016 tm_file=mips/ecoffl.h
3017 if test x$stabs = xyes; then
3018 tm_file="${tm_file} dbx.h"
3020 tmake_file=mips/t-ecoff
3023 tm_file="gofast.h mips/ecoff.h"
3024 if test x$stabs = xyes; then
3025 tm_file="${tm_file} dbx.h"
3027 tmake_file=mips/t-ecoff
3030 tm_file="mips/elfl.h"
3031 tmake_file=mips/t-elf
3034 tm_file="mips/elf.h"
3035 tmake_file=mips/t-elf
3038 tm_file="mips/elfl64.h"
3039 tmake_file=mips/t-elf
3041 mips64orionel-*-elf*)
3042 tm_file="mips/elforion.h mips/elfl64.h"
3043 tmake_file=mips/t-elf
3046 tm_file="mips/elf64.h"
3047 tmake_file=mips/t-elf
3050 tm_file="mips/elforion.h mips/elf64.h"
3051 tmake_file=mips/t-elf
3053 mips64orion-*-rtems*)
3054 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
3055 tmake_file="mips/t-elf t-rtems"
3058 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
3059 tmake_file=mips/t-r3900
3062 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
3063 tmake_file=mips/t-r3900
3065 mips-*-*) # Default MIPS RISC-OS 4.0.
3066 if test x$stabs = xyes; then
3067 tm_file="${tm_file} dbx.h"
3069 if test x$gas = xyes
3071 tmake_file=mips/t-mips-gas
3073 extra_passes="mips-tfile mips-tdump"
3075 if test x$gnu_ld != xyes
3083 tm_file="mn10200/mn10200.h"
3084 if test x$stabs = xyes
3086 tm_file="${tm_file} dbx.h"
3092 tm_file="mn10300/mn10300.h"
3093 if test x$stabs = xyes
3095 tm_file="${tm_file} dbx.h"
3100 tm_file=ns32k/encore.h
3104 tm_file=ns32k/sequent.h
3108 tm_file=ns32k/tek6100.h
3112 tm_file=ns32k/tek6200.h
3115 # This has not been updated to GCC 2.
3118 # xmake_file=ns32k/x-genix
3119 # tm_file=ns32k/genix.h
3123 tm_file=ns32k/merlin.h
3127 tm_file=ns32k/pc532-mach.h
3131 tm_file=ns32k/pc532-min.h
3132 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
3137 tm_file=ns32k/netbsd.h
3138 xm_file="ns32k/xm-netbsd.h ${xm_file}"
3139 # On NetBSD, the headers are already okay, except for math.h.
3144 tm_file="${tm_file} pdp11/2bsd.h"
3153 # This has not been updated to GCC 2.
3156 # xmake_file=pyr/x-pyr
3161 tm_file="svr4.h pj/linux.h ${tm_file}"
3166 tm_file="svr4.h pj/pjl.h ${tm_file}"
3173 xmake_file=romp/x-mach
3180 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
3184 tm_file=rs6000/beos.h
3185 xm_file=rs6000/xm-beos.h
3186 tmake_file=rs6000/t-beos
3187 xmake_file=rs6000/x-beos
3190 tm_file=rs6000/sysv4.h
3191 xm_file="rs6000/xm-sysv4.h"
3192 xm_defines="USG POSIX"
3193 extra_headers=ppc-asm.h
3194 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3195 xmake_file=rs6000/x-sysv4
3198 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
3199 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3200 extra_headers=ppc-asm.h
3203 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
3204 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3205 extra_headers=ppc-asm.h
3208 tm_file="rs6000/sysv4.h"
3209 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3210 extra_headers=ppc-asm.h
3213 tm_file="rs6000/sysv4.h rs6000/eabi.h"
3214 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3215 extra_headers=ppc-asm.h
3218 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h"
3219 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
3220 extra_headers=ppc-asm.h
3222 powerpc-*-linux*libc1)
3223 tm_file="rs6000/sysv4.h rs6000/linux.h"
3224 xm_file=rs6000/xm-sysv4.h
3225 out_file=rs6000/rs6000.c
3226 tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
3228 extra_headers=ppc-asm.h
3229 if test x$enable_threads = xyes; then
3234 tm_file="rs6000/sysv4.h rs6000/linux.h"
3235 xm_file="rs6000/xm-sysv4.h"
3236 xm_defines="USG ${xm_defines}"
3237 out_file=rs6000/rs6000.c
3238 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
3240 extra_headers=ppc-asm.h
3241 if test x$enable_threads = xyes; then
3245 powerpc-wrs-vxworks*)
3247 xm_file="rs6000/xm-sysv4.h"
3248 xm_defines="USG POSIX"
3249 tm_file="rs6000/sysv4.h rs6000/vxppc.h"
3250 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3251 extra_headers=ppc-asm.h
3252 thread_file='vxworks'
3254 powerpcle-wrs-vxworks*)
3256 xm_file="rs6000/xm-sysv4.h"
3257 xm_defines="USG POSIX"
3258 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
3259 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3260 extra_headers=ppc-asm.h
3261 thread_file='vxworks'
3264 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3265 xm_file="rs6000/xm-sysv4.h"
3266 xm_defines="USG POSIX"
3267 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3268 xmake_file=rs6000/x-sysv4
3269 extra_headers=ppc-asm.h
3272 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3273 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3274 extra_headers=ppc-asm.h
3276 powerpcle-*-eabisim*)
3277 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
3278 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3279 extra_headers=ppc-asm.h
3282 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
3283 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3284 extra_headers=ppc-asm.h
3286 powerpcle-*-solaris2*)
3287 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
3288 xm_file="rs6000/xm-sysv4.h"
3289 xm_defines="USG POSIX"
3290 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3291 xmake_file=rs6000/x-sysv4
3292 extra_headers=ppc-asm.h
3295 rs6000-ibm-aix3.[01]*)
3297 tm_file=rs6000/aix31.h
3298 xmake_file=rs6000/x-aix31
3303 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
3305 tm_file=rs6000/aix3newas.h
3306 if test x$host != x$target
3308 tmake_file=rs6000/t-xnewas
3310 tmake_file=rs6000/t-newas
3316 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
3318 tm_file=rs6000/aix41.h
3319 if test x$host != x$target
3321 tmake_file=rs6000/t-xnewas
3323 tmake_file=rs6000/t-newas
3325 if test "$gnu_ld" = yes
3327 xmake_file=rs6000/x-aix41-gld
3329 tmake_file='rs6000/t-newas rs6000/t-aix41'
3331 xmake_file=rs6000/x-aix41
3336 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
3338 tm_file=rs6000/aix43.h
3339 tmake_file=rs6000/t-aix43
3340 xmake_file=rs6000/x-aix41
3346 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
3348 tm_file=rs6000/aix43.h
3349 tmake_file=rs6000/t-aix43
3350 xmake_file=rs6000/x-aix41
3364 tm_file=rs6000/mach.h
3365 xm_file="${xm_file} rs6000/xm-mach.h"
3366 xmake_file=rs6000/x-mach
3370 tm_file=rs6000/lynx.h
3371 xm_file=rs6000/xm-lynx.h
3372 tmake_file=rs6000/t-rs6000
3373 xmake_file=rs6000/x-lynx
3377 tmake_file="sh/t-sh sh/t-elf"
3378 tm_file="sh/sh.h sh/elf.h"
3382 tmake_file="sh/t-sh sh/t-elf t-rtems"
3383 tm_file="sh/sh.h sh/elf.h sh/rtemself.h"
3387 tmake_file="sh/t-sh t-rtems"
3388 tm_file="sh/sh.h sh/rtems.h"
3392 tm_file="sh/sh.h sh/elf.h sh/linux.h"
3393 tmake_file="sh/t-sh sh/t-elf sh/t-linux"
3396 if test x$enable_threads = xyes; then
3406 xm_file="xm-alloca.h ${xm_file}"
3409 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
3410 tm_file=sparc/vxsparc.h
3411 tmake_file=sparc/t-vxsparc
3413 thread_file='vxworks'
3416 tmake_file=sparc/t-sparcbare
3417 tm_file="sparc/aout.h libgloss.h"
3420 tm_file=sparc/netbsd.h
3425 # we need collect2 until our bug is fixed...
3433 tmake_file=sparc/t-elf
3434 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3438 sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
3439 xm_file="${xm_file} sparc/xm-linux.h"
3440 tm_file=sparc/linux-aout.h
3444 sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
3445 xm_file="${xm_file} sparc/xm-linux.h"
3447 tm_file=sparc/linux.h
3448 tmake_file="t-linux t-linux-gnulibc1"
3449 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3453 sparc-*-linux*) # Sparc's running GNU/Linux, libc6
3454 xm_file="${xm_file} sparc/xm-linux.h"
3456 tm_file=sparc/linux.h
3457 tmake_file="t-linux"
3458 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3460 if test x$enable_threads = xyes; then
3466 if test x$gas = xyes
3468 tm_file=sparc/lynx.h
3470 tm_file=sparc/lynx-ng.h
3472 xm_file=sparc/xm-lynx.h
3473 tmake_file=sparc/t-sunos41
3477 tmake_file="sparc/t-sparcbare t-rtems"
3478 tm_file=sparc/rtems.h
3480 sparc-*-rtems*|sparc-*-rtemself*)
3481 tm_file="sparc/rtemself.h"
3482 tmake_file="sparc/t-elf t-rtems"
3483 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3487 sparcv9-*-solaris2*)
3488 if test x$gnu_ld = xyes
3490 tm_file=sparc/sol2-64.h
3492 tm_file=sparc/sol2-sld-64.h
3494 xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
3495 xm_defines="USG POSIX"
3496 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3497 xmake_file=sparc/x-sysv4
3498 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3500 if test x${enable_threads} = x ; then
3501 enable_threads=$have_pthread_h
3502 if test x${enable_threads} = x ; then
3503 enable_threads=$have_thread_h
3506 if test x${enable_threads} = xyes ; then
3507 if test x${have_pthread_h} = xyes ; then
3510 thread_file='solaris'
3514 sparc-hal-solaris2*)
3515 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3516 xm_defines="USG POSIX"
3517 tm_file="sparc/sol2.h sparc/hal.h"
3518 tmake_file="sparc/t-halos sparc/t-sol2"
3519 xmake_file=sparc/x-sysv4
3520 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3531 thread_file='solaris'
3534 if test x$gnu_ld = xyes
3536 tm_file=sparc/sol2.h
3538 tm_file=sparc/sol2-sld.h
3540 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3541 xm_defines="USG POSIX"
3542 tmake_file=sparc/t-sol2
3543 xmake_file=sparc/x-sysv4
3544 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3547 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3550 if test x$gnu_ld = xyes
3552 tm_file=sparc/sol2-64.h
3554 tm_file=sparc/sol2-sld-64.h
3556 tmake_file="$tmake_file sparc/t-sol2-64"
3569 if test x${enable_threads} = x; then
3570 enable_threads=$have_pthread_h
3571 if test x${enable_threads} = x; then
3572 enable_threads=$have_thread_h
3575 if test x${enable_threads} = xyes; then
3576 if test x${have_pthread_h} = xyes; then
3579 thread_file='solaris'
3584 tm_file=sparc/sunos4.h
3585 tmake_file=sparc/t-sunos40
3589 tm_file=sparc/sunos4.h
3590 tmake_file=sparc/t-sunos41
3592 if test x$gas = xyes; then
3593 tm_file="${tm_file} sparc/sun4gas.h"
3597 tm_file=sparc/sun4o3.h
3601 tm_file=sparc/sysv4.h
3602 xm_file="sparc/xm-sysv4.h"
3603 xm_defines="USG POSIX"
3605 xmake_file=sparc/x-sysv4
3606 extra_parts="crtbegin.o crtend.o"
3609 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3610 xm_defines="USG POSIX"
3611 tm_file=sparc/vxsim.h
3612 tmake_file=sparc/t-vxsparc
3613 xmake_file=sparc/x-sysv4
3616 tm_file="sparc/splet.h libgloss.h"
3617 tmake_file=sparc/t-splet
3620 tm_file="sparc/litecoff.h libgloss.h"
3621 tmake_file=sparc/t-sparclite
3624 tm_file="sparc/lite.h aoutos.h libgloss.h"
3625 tmake_file=sparc/t-sparclite
3628 tm_file="sparc/liteelf.h"
3629 tmake_file=sparc/t-sparclite
3630 extra_parts="crtbegin.o crtend.o"
3633 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3634 tmake_file=sparc/t-sp86x
3637 tm_file="sparc/sp86x-elf.h"
3638 tmake_file=sparc/t-sp86x
3639 extra_parts="crtbegin.o crtend.o"
3642 tmake_file=sparc/t-sp64
3643 tm_file=sparc/sp64-aout.h
3646 tmake_file=sparc/t-sp64
3647 tm_file=sparc/sp64-elf.h
3648 extra_parts="crtbegin.o crtend.o"
3650 sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
3651 tmake_file="t-linux sparc/t-linux64"
3652 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3653 tm_file=sparc/linux64.h
3655 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3657 if test x$enable_threads = xyes; then
3662 # This hasn't been upgraded to GCC 2.
3663 # tahoe-harris-*) # Harris tahoe, using COFF.
3664 # tm_file=tahoe/harris.h
3666 # tahoe-*-bsd*) # tahoe running BSD
3671 *** The Thumb targets have been depreciated. The equivalent
3672 *** ARM based toolchain can now generated Thumb instructions
3673 *** when the -mthumb switch is given to the compiler.])
3675 # This hasn't been upgraded to GCC 2.
3682 tm_file="v850/rtems.h"
3683 xm_file="v850/xm-v850.h"
3684 tmake_file="v850/t-v850 t-rtems"
3685 if test x$stabs = xyes
3687 tm_file="${tm_file} dbx.h"
3692 target_cpu_default="TARGET_CPU_generic"
3694 tm_file="v850/v850.h"
3695 xm_file="v850/xm-v850.h"
3696 tmake_file=v850/t-v850
3697 if test x$stabs = xyes
3699 tm_file="${tm_file} dbx.h"
3703 vax-*-bsd*) # vaxen running BSD
3707 vax-*-sysv*) # vaxen running system V
3708 tm_file="${tm_file} vax/vaxv.h"
3713 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3719 tmake_file="${tmake_file} vax/t-openbsd"
3720 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
3721 xm_file="xm-openbsd.h vax/xm-vax.h"
3725 vax-*-ultrix*) # vaxen running ultrix
3726 tm_file="${tm_file} vax/ultrix.h"
3729 vax-*-vms*) # vaxen running VMS
3730 xm_file=vax/xm-vms.h
3734 vax-*-*) # vax default entry
3738 xm_file="${xm_file} xm-svr3"
3742 echo "Configuration $machine not supported" 1>&2
3749 ;; # Existing GNU/Linux systems do not use the GNU setup.
3751 # On the GNU system, the setup is just about the same on
3752 # each different CPU. The specific machines that GNU
3753 # supports are matched above and just set $cpu_type.
3754 xm_file="xm-gnu.h ${xm_file}"
3755 tm_file=${cpu_type}/gnu.h
3756 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
3757 # GNU always uses ELF.
3759 # GNU tools are the only tools.
3762 xmake_file=x-linux # These details are the same as Linux.
3763 tmake_file=t-gnu # These are not.
3766 xmake_try_sysv=x-sysv
3767 install_headers_dir=install-headers-cpio
3770 install_headers_dir=install-headers-cpio
3774 # Distinguish i[34567]86
3775 # Also, do not run mips-tfile on MIPS if using gas.
3776 # Process --with-cpu= for PowerPC/rs6000
3777 target_cpu_default2=
3780 target_cpu_default2=1
3783 case $target_alias in
3785 target_cpu_default2=4
3788 target_cpu_default2=2
3792 i686-*-* | i786-*-*)
3793 target_cpu_default2=3
3800 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3803 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3806 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3809 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3812 target_cpu_default2="MASK_CPU_EV5"
3816 if test x$gas = xyes
3818 if test "$target_cpu_default2" = ""
3820 target_cpu_default2="MASK_GAS"
3822 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3827 case "x$with_cpu" in
3830 target_cpu_default2="TARGET_CPU_generic"
3833 # Distinguish cores, and major variants
3834 # arm7m doesn't exist, but D & I don't affect code
3836 xarm[23678] | xarm250 | xarm[67][01]0 \
3837 | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
3838 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3839 | xstrongarm | xstrongarm110 | xstrongarm1100)
3841 target_cpu_default2="TARGET_CPU_$with_cpu"
3845 echo "--with-cpu must be passed a value" 1>&2
3850 if test x$pass2done = xyes
3852 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3859 mips*-*-ecoff* | mips*-*-elf*)
3860 if test x$gas = xyes
3862 if test x$gnu_ld = xyes
3864 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3866 target_cpu_default2="MASK_GAS"
3871 if test x$gas = xyes
3873 target_cpu_default2="MASK_GAS"
3876 powerpc*-*-* | rs6000-*-*)
3877 case "x$with_cpu" in
3881 xcommon | xpower | xpower2 | xpowerpc | xrios \
3882 | xrios1 | xrios2 | xrsc | xrsc1 \
3883 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3884 | xec603e | x740 | x750 | x401 \
3885 | x403 | x505 | x801 | x821 | x823 | x860)
3886 target_cpu_default2="\"$with_cpu\""
3890 echo "--with-cpu must be passed a value" 1>&2
3895 if test x$pass2done = xyes
3897 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3904 case ".$with_cpu" in
3906 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3908 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3909 target_cpu_default2="TARGET_CPU_$with_cpu"
3912 if test x$pass2done = xyes
3914 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3922 if test "$target_cpu_default2" != ""
3924 if test "$target_cpu_default" != ""
3926 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3928 target_cpu_default=$target_cpu_default2
3932 # No need for collect2 if we have the GNU linker.
3933 # Actually, there is now; GNU ld doesn't handle the EH info or
3934 # collecting for shared libraries.
3941 # Save data on machine being used to compile GCC in build_xm_file.
3942 # Save data on host machine in vars host_xm_file and host_xmake_file.
3943 if test x$pass1done = x
3945 if test x"$xm_file" = x
3946 then build_xm_file=$cpu_type/xm-$cpu_type.h
3947 else build_xm_file=$xm_file
3949 build_xm_defines=$xm_defines
3950 build_install_headers_dir=$install_headers_dir
3951 build_exeext=$exeext
3954 if test x$pass2done = x
3956 if test x"$xm_file" = x
3957 then host_xm_file=$cpu_type/xm-$cpu_type.h
3958 else host_xm_file=$xm_file
3960 host_xm_defines=$xm_defines
3961 if test x"$xmake_file" = x
3962 then xmake_file=$cpu_type/x-$cpu_type
3964 host_xmake_file="$xmake_file"
3965 host_truncate_target=$truncate_target
3966 host_extra_gcc_objs=$extra_gcc_objs
3967 host_extra_objs=$extra_host_objs
3974 extra_objs="${host_extra_objs} ${extra_objs}"
3976 # Default the target-machine variables that were not explicitly set.
3977 if test x"$tm_file" = x
3978 then tm_file=$cpu_type/$cpu_type.h; fi
3980 if test x$extra_headers = x
3981 then extra_headers=; fi
3983 if test x"$xm_file" = x
3984 then xm_file=$cpu_type/xm-$cpu_type.h; fi
3986 if test x$md_file = x
3987 then md_file=$cpu_type/$cpu_type.md; fi
3989 if test x$out_file = x
3990 then out_file=$cpu_type/$cpu_type.c; fi
3992 if test x"$tmake_file" = x
3993 then tmake_file=$cpu_type/t-$cpu_type
3996 if test x"$dwarf2" = xyes
3997 then tm_file="$tm_file tm-dwarf2.h"
4000 if test x$float_format = x
4001 then float_format=i64
4004 if test $float_format = none
4005 then float_h_file=Makefile.in
4006 else float_h_file=float-$float_format.h
4009 # Handle cpp installation.
4010 if test x$enable_cpp != xno
4012 tmake_file="$tmake_file t-install-cpp"
4015 # Say what files are being used for the output code and MD file.
4016 echo "Using \`$srcdir/config/$out_file' to output insns."
4017 echo "Using \`$srcdir/config/$md_file' as machine description file."
4020 for f in $tm_file; do
4023 if test $count = ax; then
4024 echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
4026 echo "Using the following target machine macro files:"
4027 for f in $tm_file; do
4028 echo " $srcdir/config/$f"
4033 for f in $host_xm_file; do
4036 if test $count = ax; then
4037 echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
4039 echo "Using the following host machine macro files:"
4040 for f in $host_xm_file; do
4041 echo " $srcdir/config/$f"
4045 if test "$host_xm_file" != "$build_xm_file"; then
4047 for f in $build_xm_file; do
4050 if test $count = ax; then
4051 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
4053 echo "Using the following build machine macro files:"
4054 for f in $build_xm_file; do
4055 echo " $srcdir/config/$f"
4060 if test x$thread_file = x; then
4061 if test x$target_thread_file != x; then
4062 thread_file=$target_thread_file
4064 thread_file='single'
4068 # Set up the header files.
4069 # $links is the list of header files to create.
4070 # $vars is the list of shell variables with file names to include.
4071 # auto-host.h is the file containing items generated by autoconf and is
4072 # the first file included by config.h.
4074 host_xm_file="auto-host.h gansidecl.h ${host_xm_file} hwint.h"
4076 # If host=build, it is correct to have hconfig include auto-host.h
4077 # as well. If host!=build, we are in error and need to do more
4078 # work to find out the build config parameters.
4079 if test x$host = x$build
4081 build_xm_file="auto-host.h gansidecl.h ${build_xm_file} hwint.h"
4083 # We create a subdir, then run autoconf in the subdir.
4084 # To prevent recursion we set host and build for the new
4085 # invocation of configure to the build for this invocation
4092 /*) realsrcdir=${srcdir};;
4093 *) realsrcdir=../${srcdir};;
4095 CC=${CC_FOR_BUILD} ${realsrcdir}/configure \
4096 --target=$target --host=$build --build=$build
4098 # We just finished tests for the build machine, so rename
4099 # the file auto-build.h in the gcc directory.
4100 mv auto-host.h ../auto-build.h
4103 build_xm_file="auto-build.h gansidecl.h ${build_xm_file} hwint.h"
4106 xm_file="gansidecl.h ${xm_file}"
4107 tm_file="gansidecl.h ${tm_file}"
4109 vars="host_xm_file tm_file tm_p_file xm_file build_xm_file"
4110 links="config.h tm.h tm_p.h tconfig.h hconfig.h"
4111 defines="host_xm_defines null_defines null_defines xm_defines build_xm_defines"
4114 if test -f config.status; then mv -f config.status config.bak; fi
4117 while test -n "$vars"
4119 set $vars; var=$1; shift; vars=$*
4120 set $links; link=$1; shift; links=$*
4121 set $defines; define=$1; shift; defines=$*
4124 # Make sure the file is created, even if it is empty.
4127 # Define TARGET_CPU_DEFAULT if the system wants one.
4128 # This substitutes for lots of *.h files.
4129 if test "$target_cpu_default" != "" -a $link = tm.h
4131 echo "#define TARGET_CPU_DEFAULT ($target_cpu_default)" >>$link
4134 for file in `eval echo '$'$var`; do
4136 auto-host.h | auto-build.h )
4139 echo '#ifdef IN_GCC' >>$link
4142 echo "#include \"$file\"" >>$link
4144 auto-host.h | auto-build.h )
4147 echo '#endif' >>$link
4152 for def in `eval echo '$'$define`; do
4153 echo "#ifndef $def" >>$link
4154 echo "#define $def" >>$link
4155 echo "#endif" >>$link
4159 # Truncate the target if necessary
4160 if test x$host_truncate_target != x; then
4161 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4164 # Get the version trigger filename from the toplevel
4165 if test "${with_gcc_version_trigger+set}" = set; then
4166 gcc_version_trigger=$with_gcc_version_trigger
4168 gcc_version_trigger=${srcdir}/version.c
4171 gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
4174 # Internationalization
4176 VERSION="$gcc_version"
4177 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",
4178 [Define to the name of the distribution.])
4179 AC_DEFINE_UNQUOTED(VERSION, "$VERSION",
4180 [Define to the version of the distribution.])
4186 # Enable NLS support by default
4188 [ --enable-nls use Native Language Support (default)],
4191 # if cross compiling, disable NLS support.
4192 # It's not worth the trouble, at least for now.
4194 if test "${build}" != "${host}" && test "x$enable_nls" = "xyes"; then
4195 AC_MSG_WARN(Disabling NLS support for canadian cross compiler.)
4200 XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
4202 # Windows32 Registry support for specifying GCC installation paths.
4203 AC_ARG_ENABLE(win32-registry,
4204 [ --disable-win32-registry
4205 Disable lookup of installation paths in the
4206 Registry on Windows hosts.
4207 --enable-win32-registry Enable registry lookup (default).
4208 --enable-win32-registry=KEY
4209 Use KEY instead of GCC version as the last portion
4210 of the registry key.],,)
4212 AC_MSG_CHECKING(whether windows registry support is requested)
4213 if test x$enable_win32_registry != xno; then
4214 AC_DEFINE(ENABLE_WIN32_REGISTRY, 1,
4215 [Define to 1 if installation paths should be looked up in Windows32
4216 Registry. Ignored on non windows32 hosts.])
4222 # Check if user specified a different registry key.
4223 case x${enable_win32_registry} in
4226 gcc_cv_win32_registry_key="$VERSION"
4229 # no registry lookup.
4230 gcc_cv_win32_registry_key=''
4233 # user-specified key.
4234 gcc_cv_win32_registry_key="$enable_win32_registry"
4238 if test x$enable_win32_registry != xno; then
4239 AC_MSG_CHECKING(registry key on windows hosts)
4240 AC_DEFINE_UNQUOTED(WIN32_REGISTRY_KEY, "$gcc_cv_win32_registry_key",
4241 [Define to be the last portion of registry key on windows hosts.])
4242 AC_MSG_RESULT($gcc_cv_win32_registry_key)
4245 # Get an absolute path to the GCC top-level source directory
4251 # Conditionalize the makefile for this host machine.
4252 # Make-host contains the concatenation of all host makefile fragments
4253 # [there can be more than one]. This file is built by configure.frag.
4254 host_overrides=Make-host
4255 dep_host_xmake_file=
4256 for f in .. ${host_xmake_file}
4258 if test -f ${srcdir}/config/$f
4260 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
4264 # Conditionalize the makefile for this target machine.
4265 # Make-target contains the concatenation of all host makefile fragments
4266 # [there can be more than one]. This file is built by configure.frag.
4267 target_overrides=Make-target
4269 for f in .. ${tmake_file}
4271 if test -f ${srcdir}/config/$f
4273 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
4277 # If the host doesn't support symlinks, modify CC in
4278 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
4279 # Otherwise, we can use "CC=$(CC)".
4281 if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
4283 cc_set_by_configure="\$(CC)"
4284 quoted_cc_set_by_configure="\$(CC)"
4285 stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
4288 if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
4290 symbolic_link="cp -p"
4294 cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
4295 quoted_cc_set_by_configure="\\\`case '\\\$(CC)' in stage*) echo '\\\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\\\$(CC)';; esac\\\`"
4296 stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
4300 out_object_file=`basename $out_file .c`.o
4303 for f in $tm_file; do
4306 tm_file_list="${tm_file_list} $f" ;;
4307 *) tm_file_list="${tm_file_list} \$(srcdir)/config/$f" ;;
4312 for f in $host_xm_file; do
4314 auto-host.h | gansidecl.h | hwint.h )
4315 host_xm_file_list="${host_xm_file_list} $f" ;;
4316 *) host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f" ;;
4321 for f in $build_xm_file; do
4323 auto-build.h | auto-host.h | gansidecl.h | hwint.h )
4324 build_xm_file_list="${build_xm_file_list} $f" ;;
4325 *) build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f" ;;
4329 # Define macro CROSS_COMPILE in compilation
4330 # if this is a cross-compiler.
4331 # Also use all.cross instead of all.internal
4332 # and add cross-make to Makefile.
4333 cross_overrides="/dev/null"
4334 if test x$host != x$target
4336 cross_defines="CROSS=-DCROSS_COMPILE"
4337 cross_overrides="${topdir}/cross-make"
4340 # If this is a cross-compiler that does not
4341 # have its own set of headers then define
4344 # If this is using newlib, then define inhibit_libc in
4345 # LIBGCC2_CFLAGS. This will cause __eprintf to be left out of
4346 # libgcc.a, but that's OK because newlib should have its own version of
4349 if [test x$host != x$target] && [test x$with_headers = x]; then
4350 inhibit_libc=-Dinhibit_libc
4352 if [test x$with_newlib = xyes]; then
4353 inhibit_libc=-Dinhibit_libc
4356 AC_SUBST(inhibit_libc)
4358 # When building gcc with a cross-compiler, we need to fix a few things.
4359 # This must come after cross-make as we want all.build to override
4361 build_overrides="/dev/null"
4362 if test x$build != x$host
4364 build_overrides="${topdir}/build-make"
4367 # Expand extra_headers to include complete path.
4368 # This substitutes for lots of t-* files.
4370 if test "x$extra_headers" = x
4373 # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
4374 for file in $extra_headers;
4376 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
4380 if test x$use_collect2 = xno; then
4384 # Add a definition of USE_COLLECT2 if system wants one.
4385 # Also tell toplev.c what to do.
4386 # This substitutes for lots of t-* files.
4387 if test x$use_collect2 = x
4392 will_use_collect2="collect2"
4393 maybe_use_collect2="-DUSE_COLLECT2"
4397 # Set MD_DEPS if the real md file is in md.pre-cpp.
4398 # Set MD_CPP to the cpp to pass the md file through. Md files use ';'
4399 # for line oriented comments, so we must always use a GNU cpp. If
4400 # building gcc with a cross compiler, use the cross compiler just
4401 # built. Otherwise, we can use the cpp just built.
4403 if test "x$md_cppflags" = x
4405 md_file_sub=$srcdir/config/$md_file
4410 # If we have gas in the build tree, make a link to it.
4411 if test -f ../gas/Makefile; then
4412 rm -f as; $symbolic_link ../gas/as-new$host_exeext as$host_exeext 2>/dev/null
4415 # If we have nm in the build tree, make a link to it.
4416 if test -f ../binutils/Makefile; then
4417 rm -f nm; $symbolic_link ../binutils/nm-new$host_exeext nm$host_exeext 2>/dev/null
4420 # If we have ld in the build tree, make a link to it.
4421 if test -f ../ld/Makefile; then
4422 # if test x$use_collect2 = x; then
4423 # rm -f ld; $symbolic_link ../ld/ld-new$host_exeext ld$host_exeext 2>/dev/null
4425 rm -f collect-ld; $symbolic_link ../ld/ld-new$host_exeext collect-ld$host_exeext 2>/dev/null
4429 # Figure out what assembler we will be using.
4430 AC_MSG_CHECKING(what assembler to use)
4432 gcc_cv_gas_major_version=
4433 gcc_cv_gas_minor_version=
4434 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
4435 if test -x "$DEFAULT_ASSEMBLER"; then
4436 gcc_cv_as="$DEFAULT_ASSEMBLER"
4437 elif test -x "$AS"; then
4439 elif test -x as$host_exeext; then
4440 # Build using assembler in the current directory.
4441 gcc_cv_as=./as$host_exeext
4442 elif test -f $gcc_cv_as_gas_srcdir/configure.in -a -f ../gas/Makefile; then
4443 # Single tree build which includes gas.
4444 for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
4447 gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f`
4449 if test x$gcc_cv_gas_version != x; then
4454 gcc_cv_gas_major_version=`expr "$gcc_cv_gas_version" : "VERSION=\([0-9]*\)"`
4455 gcc_cv_gas_minor_version=`expr "$gcc_cv_gas_version" : "VERSION=[0-9]*\.\([0-9]*\)"`
4459 if test "x$gcc_cv_as" = x -a x$host = x$target; then
4461 # Search the same directories that the installed compiler will
4462 # search. Else we may find the wrong assembler and lose. If we
4463 # do not find a suitable assembler binary, then try the user's
4466 # Also note we have to check MD_EXEC_PREFIX before checking the
4467 # user's path. Unfortunately, there is no good way to get at the
4468 # value of MD_EXEC_PREFIX here. So we do a brute force search
4469 # through all the known MD_EXEC_PREFIX values. Ugh. This needs
4470 # to be fixed as part of the make/configure rewrite too.
4472 if test "x$exec_prefix" = xNONE; then
4473 if test "x$prefix" = xNONE; then
4474 test_prefix=/usr/local
4479 test_prefix=$exec_prefix
4482 # If the loop below does not find an assembler, then use whatever
4483 # one we can find in the users's path.
4487 test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \
4488 $test_prefix/lib/gcc-lib/$target \
4489 /usr/lib/gcc/$target/$gcc_version \
4490 /usr/lib/gcc/$target \
4491 $test_prefix/$target/bin/$target/$gcc_version \
4492 $test_prefix/$target/bin \
4497 /bsd43/usr/lib/cmplrs/cc \
4498 /usr/cross64/usr/bin \
4499 /usr/lib/cmplrs/cc \
4500 /sysv/usr/lib/cmplrs/cc \
4501 /svr4/usr/lib/cmplrs/cc \
4504 for dir in $test_dirs; do
4505 if test -f $dir/as$host_exeext; then
4506 gcc_cv_as=$dir/as$host_exeext
4511 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4512 AC_MSG_RESULT("newly built gas")
4514 AC_MSG_RESULT($gcc_cv_as)
4517 # Figure out what nm we will be using.
4518 AC_MSG_CHECKING(what nm to use)
4519 if test -x nm$host_exeext; then
4520 gcc_cv_nm=./nm$host_exeext
4521 elif test x$host = x$target; then
4523 gcc_cv_nm=nm$host_exeext
4525 AC_MSG_RESULT($gcc_cv_nm)
4527 # Figure out what assembler alignment features are present.
4528 AC_MSG_CHECKING(assembler alignment features)
4529 gcc_cv_as_alignment_features=
4530 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4531 # Gas version 2.6 and later support for .balign and .p2align.
4532 # bytes to skip when using .p2align.
4533 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
4534 gcc_cv_as_alignment_features=".balign and .p2align"
4535 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4537 # Gas version 2.8 and later support specifying the maximum
4538 # bytes to skip when using .p2align.
4539 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
4540 gcc_cv_as_alignment_features=".p2align including maximum skip"
4541 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4543 elif test x$gcc_cv_as != x; then
4544 # Check if we have .balign and .p2align
4545 echo ".balign 4" > conftest.s
4546 echo ".p2align 2" >> conftest.s
4547 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4548 gcc_cv_as_alignment_features=".balign and .p2align"
4549 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4551 rm -f conftest.s conftest.o
4552 # Check if specifying the maximum bytes to skip when
4553 # using .p2align is supported.
4554 echo ".p2align 4,,7" > conftest.s
4555 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4556 gcc_cv_as_alignment_features=".p2align including maximum skip"
4557 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4559 rm -f conftest.s conftest.o
4561 AC_MSG_RESULT($gcc_cv_as_alignment_features)
4563 AC_MSG_CHECKING(assembler subsection support)
4564 gcc_cv_as_subsections=
4565 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4566 if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 9 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then
4567 gcc_cv_as_subsections="working .subsection -1"
4569 elif test x$gcc_cv_as != x; then
4570 # Check if we have .subsection
4571 echo ".subsection 1" > conftest.s
4572 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4573 gcc_cv_as_subsections=".subsection"
4574 if test x$gcc_cv_nm != x; then
4575 cat > conftest.s <<EOF
4576 conftest_label1: .word 0
4578 conftest_label2: .word 0
4581 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4582 $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1
4583 $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2
4584 if cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then
4587 gcc_cv_as_subsections="working .subsection -1"
4592 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4594 if test x"$gcc_cv_as_subsections" = x"working .subsection -1"; then
4595 AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING, 1,
4596 [Define if your assembler supports .subsection and .subsection -1 starts
4597 emitting at the beginning of your section.])
4599 AC_MSG_RESULT($gcc_cv_as_subsections)
4601 AC_MSG_CHECKING(assembler weak support)
4603 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4604 if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 2 -o "$gcc_cv_gas_major_version" -gt 2; then
4605 gcc_cv_as_weak="yes"
4607 elif test x$gcc_cv_as != x; then
4608 # Check if we have .weak
4609 echo " .weak foobar" > conftest.s
4610 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4611 gcc_cv_as_weak="yes"
4613 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4615 if test x"$gcc_cv_as_weak" = xyes; then
4616 AC_DEFINE(HAVE_GAS_WEAK, 1, [Define if your assembler supports .weak.])
4618 AC_MSG_RESULT($gcc_cv_as_weak)
4620 AC_MSG_CHECKING(assembler hidden support)
4622 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4623 if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 10 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then
4624 gcc_cv_as_hidden="yes"
4626 elif test x$gcc_cv_as != x; then
4627 # Check if we have .hidden
4628 echo " .hidden foobar" > conftest.s
4629 echo "foobar:" >> conftest.s
4630 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4631 gcc_cv_as_hidden="yes"
4633 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4635 if test x"$gcc_cv_as_hidden" = xyes; then
4636 AC_DEFINE(HAVE_GAS_HIDDEN, 1,
4637 [Define if your assembler supports .hidden.])
4639 AC_MSG_RESULT($gcc_cv_as_hidden)
4643 AC_CACHE_CHECK([assembler .register pseudo-op support],
4644 gcc_cv_as_register_pseudo_op, [
4645 gcc_cv_as_register_pseudo_op=unknown
4646 if test x$gcc_cv_as != x; then
4647 # Check if we have .register
4648 echo ".register %g2, #scratch" > conftest.s
4649 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4650 gcc_cv_as_register_pseudo_op=yes
4652 gcc_cv_as_register_pseudo_op=no
4654 rm -f conftest.s conftest.o
4657 if test "x$gcc_cv_as_register_pseudo_op" = xyes; then
4658 AC_DEFINE(HAVE_AS_REGISTER_PSEUDO_OP, 1,
4659 [Define if your assembler supports .register.])
4662 AC_CACHE_CHECK([assembler supports -relax],
4663 gcc_cv_as_relax_opt, [
4664 gcc_cv_as_relax_opt=unknown
4665 if test x$gcc_cv_as != x; then
4666 # Check if gas supports -relax
4667 echo ".text" > conftest.s
4668 if $gcc_cv_as -relax -o conftest.o conftest.s > /dev/null 2>&1; then
4669 gcc_cv_as_relax_opt=yes
4671 gcc_cv_as_relax_opt=no
4673 rm -f conftest.s conftest.o
4676 if test "x$gcc_cv_as_relax_opt" = xyes; then
4677 AC_DEFINE(HAVE_AS_RELAX_OPTION, 1,
4678 [Define if your assembler supports -relax option.])
4683 AC_CACHE_CHECK([for 64 bit support in assembler ($gcc_cv_as)],
4684 gcc_cv_as_flags64, [
4685 if test -n "$gcc_cv_as"; then
4686 echo ".xword foo" > conftest.s
4687 gcc_cv_as_flags64=no
4688 for flag in "-xarch=v9" "-64 -Av9"; do
4689 if $gcc_cv_as $flag -o conftest.o conftest.s \
4690 > /dev/null 2>&1; then
4691 gcc_cv_as_flags64=$flag
4695 rm -f conftest.s conftest.o
4697 if test "$gas" = yes; then
4698 gcc_cv_as_flags64="-64 -Av9"
4700 gcc_cv_as_flags64="-xarch=v9"
4704 if test "x$gcc_cv_as_flags64" = xno; then
4706 tmake_file=`echo " $tmake_file " | sed -e 's, sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4707 dep_tmake_file=`echo " $dep_tmake_file " | sed -e 's, [^ ]*/config/sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4710 AC_DEFINE_UNQUOTED(AS_SPARC64_FLAG, "$gcc_cv_as_flags64",
4711 [Define if the assembler supports 64bit sparc.])
4714 *) gcc_cv_as_flags64=${gcc_cv_as_flags64-no}
4718 if test "x$gcc_cv_as_flags64" != xno; then
4719 AC_CACHE_CHECK([for assembler offsetable %lo() support],
4720 gcc_cv_as_offsetable_lo10, [
4721 gcc_cv_as_offsetable_lo10=unknown
4722 if test "x$gcc_cv_as" != x; then
4723 # Check if assembler has offsetable %lo()
4724 echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
4725 echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
4726 if $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s \
4728 $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s \
4729 > /dev/null 2>&1; then
4730 if cmp conftest.o conftest1.o > /dev/null 2>&1; then
4731 gcc_cv_as_offsetable_lo10=no
4733 gcc_cv_as_offsetable_lo10=yes
4736 gcc_cv_as_offsetable_lo10=no
4738 rm -f conftest.s conftest.o conftest1.s conftest1.o
4741 if test "x$gcc_cv_as_offsetable_lo10" = xyes; then
4742 AC_DEFINE(HAVE_AS_OFFSETABLE_LO10, 1,
4743 [Define if your assembler supports offsetable %lo().])
4751 AC_MSG_CHECKING(assembler instructions)
4752 gcc_cv_as_instructions=
4753 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4754 if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 9 -o "$gcc_cv_gas_major_version" -gt 2; then
4755 gcc_cv_as_instructions="filds fists"
4757 elif test x$gcc_cv_as != x; then
4758 set "filds fists" "filds mem; fists mem"
4761 echo "$2" > conftest.s
4762 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4763 gcc_cv_as_instructions=${gcc_cv_as_instructions}$1" "
4767 rm -f conftest.s conftest.o
4769 if test x"$gcc_cv_as_instructions" != x; then
4770 AC_DEFINE_UNQUOTED(HAVE_GAS_`echo "$gcc_cv_as_instructions" | tr '[a-z ]' '[A-Z_]'`)
4772 AC_MSG_RESULT($gcc_cv_as_instructions)
4776 # Figure out what language subdirectories are present.
4777 # Look if the user specified --enable-languages="..."; if not, use
4778 # the environment variable $LANGUAGES if defined. $LANGUAGES might
4780 if test x"${enable_languages+set}" != xset; then
4781 if test x"${LANGUAGES+set}" = xset; then
4782 enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
4784 enable_languages=all
4787 if test x"${enable_languages}" = x; then
4788 AC_MSG_ERROR([--enable-languages needs at least one argument])
4792 for lang in ${srcdir}/*/config-lang.in ..
4796 # The odd quoting in the next line works around
4797 # an apparent bug in bash 1.12 on linux.
4799 ${srcdir}/[*]/config-lang.in) ;;
4801 lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
4802 if test "x$lang_alias" = x
4804 echo "$lang doesn't set \$language." 1>&2
4807 if test x"${enable_languages}" = xall; then
4810 case "${enable_languages}" in
4811 ${lang_alias} | "${lang_alias},"* | *",${lang_alias},"* | *",${lang_alias}" )
4819 if test x"${add_this_lang}" = xyes; then
4821 ${srcdir}/ada/config-lang.in)
4822 if test x$gnat = xyes ; then
4823 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4827 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4836 # Make gthr-default.h if we have a thread file.
4838 if test $thread_file != single; then
4839 rm -f gthr-default.h
4840 echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h
4841 gthread_flags=-DHAVE_GTHR_DEFAULT
4843 AC_SUBST(gthread_flags)
4845 # Find out what GC implementation we want, or may, use.
4847 [ --with-gc={simple,page} Choose the garbage collection mechanism to use
4848 with the compiler.],
4854 AC_MSG_ERROR([$withval is an invalid option to --with-gc])
4857 [if test $ac_cv_func_mmap_anywhere = yes \
4858 || test $ac_cv_func_valloc = yes; then
4864 echo "Using $GGC for garbage collection."
4866 # Use the system's zlib library.
4867 zlibdir=-L../../zlib
4868 zlibinc="-I\$(srcdir)/../../zlib"
4869 AC_ARG_WITH(system-zlib,
4870 [ --with-system-zlib use installed libz],
4877 # Build a new-abi (c++) system
4878 AC_ARG_ENABLE(new-gxx-abi,
4879 [ --enable-new-gxx-abi
4880 select the new abi for g++. You must select an ABI
4881 at configuration time, so that the correct runtime
4882 support is built. You cannot mix ABIs.],
4883 [AC_DEFINE(ENABLE_NEW_GXX_ABI, 1,
4884 [Define if you want to always select the new-abi for g++.])
4885 GXX_ABI_FLAG='-fnew-abi'
4886 echo "Building a new-abi g++ compiler."
4888 AC_SUBST(GXX_ABI_FLAG)
4890 # Build a new-libstdc++ system (ie libstdc++-v3)
4891 AC_MSG_CHECKING([for libstdc++ to install])
4892 AC_ARG_ENABLE(libstdcxx-v3,
4893 [ --enable-libstdcxx-v3
4894 enable libstdc++-v3 for building and installation],
4895 [enable_libstdcxx_v3="$enableval"], [enable_libstdcxx_v3=no])
4897 if test x$enable_libstdcxx_v3 = xyes; then
4904 AC_DEFINE_UNQUOTED(ENABLE_STD_NAMESPACE, $ac_esn,
4905 [Define to 1 if you want to enable namespaces (-fhonor-std) by default.])
4907 dnl Very limited version of automake's enable-maintainer-mode
4909 AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
4910 dnl maintainer-mode is disabled by default
4911 AC_ARG_ENABLE(maintainer-mode,
4912 [ --enable-maintainer-mode enable make rules and dependencies not useful
4913 (and sometimes confusing) to the casual installer],
4914 maintainer_mode=$enableval,
4917 AC_MSG_RESULT($maintainer_mode)
4919 if test "$maintainer_mode" = "yes"; then
4926 # Make empty files to contain the specs and options for each language.
4927 # Then add #include lines to for a compiler that has specs and/or options.
4932 rm -f specs.h options.h gencheck.h
4933 touch specs.h options.h gencheck.h
4934 for subdir in . $subdirs
4936 if test -f $srcdir/$subdir/lang-specs.h; then
4937 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
4938 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
4940 if test -f $srcdir/$subdir/lang-options.h; then
4941 echo "#include \"$subdir/lang-options.h\"" >>options.h
4942 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
4944 if test -f $srcdir/$subdir/$subdir-tree.def; then
4945 echo "#include \"$subdir/$subdir-tree.def\"" >>gencheck.h
4946 lang_tree_files="$lang_tree_files $srcdir/$subdir/$subdir-tree.def"
4950 # These (without "all_") are set in each config-lang.in.
4951 # `language' must be a single word so is spelled singularly.
4957 all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile gccbug mklibgcc'
4958 # List of language makefile fragments.
4963 # Add the language fragments.
4964 # Languages are added via two mechanisms. Some information must be
4965 # recorded in makefile variables, these are defined in config-lang.in.
4966 # We accumulate them and plug them into the main Makefile.
4967 # The other mechanism is a set of hooks for each of the main targets
4968 # like `clean', `install', etc.
4970 language_fragments="Make-lang"
4971 language_hooks="Make-hooks"
4974 for s in .. $subdirs
4986 . ${srcdir}/$s/config-lang.in
4987 if test "x$language" = x
4989 echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
4992 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in ${srcdir}/$s/Makefile.in"
4993 all_languages="$all_languages $language"
4994 if test "x$boot_language" = xyes
4996 all_boot_languages="$all_boot_languages $language"
4998 all_compilers="$all_compilers $compilers"
4999 all_stagestuff="$all_stagestuff $stagestuff"
5000 all_diff_excludes="$all_diff_excludes $diff_excludes"
5001 all_headers="$all_headers $headers"
5002 all_outputs="$all_outputs $outputs"
5003 if test x$outputs = x
5005 oldstyle_subdirs="$oldstyle_subdirs $s"
5007 all_lib2funcs="$all_lib2funcs $lib2funcs"
5011 # Since we can't use `::' targets, we link each language in
5012 # with a set of hooks, reached indirectly via lang.${target}.
5016 target_list="all.build all.cross start.encap rest.encap \
5018 install-normal install-common install-info install-man \
5020 mostlyclean clean distclean extraclean maintainer-clean \
5021 stage1 stage2 stage3 stage4"
5022 for t in $target_list
5025 for lang in .. $all_languages
5027 if test $lang != ".."; then
5031 echo "lang.$t: $x" >> Make-hooks
5034 # If we're not building in srcdir, create .gdbinit.
5036 if test ! -f Makefile.in; then
5037 echo "dir ." > .gdbinit
5038 echo "dir ${srcdir}" >> .gdbinit
5039 if test x$gdb_needs_out_file_path = xyes
5041 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
5043 if test "x$subdirs" != x; then
5046 echo "dir ${srcdir}/$s" >> .gdbinit
5049 echo "source ${srcdir}/.gdbinit" >> .gdbinit
5052 # Define variables host_canonical and build_canonical
5053 # because some Cygnus local changes in the Makefile depend on them.
5054 build_canonical=${build}
5055 host_canonical=${host}
5057 if test "${host}" != "${target}" ; then
5058 target_subdir=${target}/
5060 AC_SUBST(build_canonical)
5061 AC_SUBST(host_canonical)
5062 AC_SUBST(target_subdir)
5064 # If $(exec_prefix) exists and is not the same as $(prefix), then compute an
5065 # absolute path for gcc_tooldir based on inserting the number of up-directory
5066 # movements required to get from $(exec_prefix) to $(prefix) into the basic
5067 # $(libsubdir)/@(unlibsubdir) based path.
5068 # Don't set gcc_tooldir to tooldir since that's only passed in by the toplevel
5069 # make and thus we'd get different behavior depending on where we built the
5071 if test x$exec_prefix = xNONE -o x$exec_prefix = x$prefix; then
5072 gcc_tooldir='$(libsubdir)/$(unlibsubdir)/../$(target_alias)'
5074 changequote(<<, >>)dnl
5075 # An explanation of the sed strings:
5076 # -e 's|^\$(prefix)||' matches and eliminates 'prefix' from 'exec_prefix'
5077 # -e 's|/$||' match a trailing forward slash and eliminates it
5078 # -e 's|^[^/]|/|' forces the string to start with a forward slash (*)
5079 # -e 's|/[^/]*|../|g' replaces each occurance of /<directory> with ../
5081 # (*) Note this pattern overwrites the first character of the string
5082 # with a forward slash if one is not already present. This is not a
5083 # problem because the exact names of the sub-directories concerned is
5084 # unimportant, just the number of them matters.
5086 # The practical upshot of these patterns is like this:
5088 # prefix exec_prefix result
5089 # ------ ----------- ------
5091 # /foo/ /foo/bar ../
5092 # /foo /foo/bar/ ../
5093 # /foo/ /foo/bar/ ../
5094 # /foo /foo/bar/ugg ../../
5097 gcc_tooldir="\$(libsubdir)/\$(unlibsubdir)/\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/\$(dollar)||' -e 's|^[^/]|/|' -e 's|/[^/]*|../|g'\`\$(target_alias)"
5098 changequote([, ])dnl
5100 AC_SUBST(gcc_tooldir)
5103 # Nothing to do for FLOAT_H, float_format already handled.
5107 # Process the language and host/target makefile fragments.
5108 ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
5110 # Substitute configuration variables
5112 AC_SUBST(all_boot_languages)
5113 AC_SUBST(all_compilers)
5114 AC_SUBST(all_diff_excludes)
5115 AC_SUBST(all_headers)
5116 AC_SUBST(all_lang_makefiles)
5117 AC_SUBST(all_languages)
5118 AC_SUBST(all_lib2funcs)
5119 AC_SUBST(all_stagestuff)
5120 AC_SUBST(build_exeext)
5121 AC_SUBST(build_install_headers_dir)
5122 AC_SUBST(build_xm_file_list)
5123 AC_SUBST(cc_set_by_configure)
5124 AC_SUBST(quoted_cc_set_by_configure)
5125 AC_SUBST(cpp_install_dir)
5126 AC_SUBST(dep_host_xmake_file)
5127 AC_SUBST(dep_tmake_file)
5128 AC_SUBST(extra_c_flags)
5129 AC_SUBST(extra_c_objs)
5130 AC_SUBST(extra_cpp_objs)
5131 AC_SUBST(extra_cxx_objs)
5132 AC_SUBST(extra_headers_list)
5133 AC_SUBST(extra_objs)
5134 AC_SUBST(extra_parts)
5135 AC_SUBST(extra_passes)
5136 AC_SUBST(extra_programs)
5137 AC_SUBST(float_h_file)
5138 AC_SUBST(gcc_gxx_include_dir)
5139 AC_SUBST(gcc_version)
5140 AC_SUBST(gcc_version_trigger)
5141 AC_SUBST(host_exeext)
5142 AC_SUBST(host_extra_gcc_objs)
5143 AC_SUBST(host_xm_file_list)
5145 AC_SUBST(lang_options_files)
5146 AC_SUBST(lang_specs_files)
5147 AC_SUBST(lang_tree_files)
5148 AC_SUBST(local_prefix)
5149 AC_SUBST(maybe_use_collect2)
5151 AC_SUBST(objc_boehm_gc)
5153 AC_SUBST(out_object_file)
5154 AC_SUBST(stage_prefix_set_by_configure)
5155 AC_SUBST(symbolic_link)
5156 AC_SUBST(thread_file)
5157 AC_SUBST(tm_file_list)
5158 AC_SUBST(will_use_collect2)
5161 AC_SUBST_FILE(target_overrides)
5162 AC_SUBST_FILE(host_overrides)
5163 AC_SUBST(cross_defines)
5164 AC_SUBST_FILE(cross_overrides)
5165 AC_SUBST_FILE(build_overrides)
5166 AC_SUBST_FILE(language_fragments)
5167 AC_SUBST_FILE(language_hooks)
5169 # Echo that links are built
5170 if test x$host = x$target
5178 if test x$host != x$build
5180 str3=" on a $build system"
5183 if test "x$str2" != x || test "x$str3" != x
5188 echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
5190 if test "x$str2" != x || test "x$str3" != x
5192 echo " ${str2}${str3}." 1>&2
5195 # Truncate the target if necessary
5196 if test x$host_truncate_target != x; then
5197 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
5200 # Configure the subdirectories
5201 # AC_CONFIG_SUBDIRS($subdirs)
5203 # Create the Makefile
5204 # and configure language subdirectories
5205 AC_OUTPUT($all_outputs,
5207 . $srcdir/configure.lang
5208 case x$CONFIG_HEADERS in
5209 xauto-host.h:config.in)
5212 # If the host supports symlinks, point stage[1234] at ../stage[1234] so
5213 # bootstrapping and the installation procedure can still use
5214 # CC="stage1/xgcc -Bstage1/". If the host doesn't support symlinks,
5215 # FLAGS_TO_PASS has been modified to solve the problem there.
5216 # This is virtually a duplicate of what happens in configure.lang; we do
5217 # an extra check to make sure this only happens if ln -s can be used.
5218 if test "$symbolic_link" = "ln -s"; then
5219 for d in .. ${subdirs} ; do
5220 if test $d != ..; then
5223 for t in stage1 stage2 stage3 stage4 include
5226 $symbolic_link ../$t $t 2>/dev/null
5232 # Avoid having to add intl to our include paths.
5233 if test -f intl/libintl.h; then
5234 echo creating libintl.h
5235 echo '#include "intl/libintl.h"' >libintl.h
5242 target_alias='${target_alias}'
5244 subdirs='${subdirs}'
5245 oldstyle_subdirs='${oldstyle_subdirs}'
5246 symbolic_link='${symbolic_link}'
5247 program_transform_set='${program_transform_set}'
5248 program_transform_name='${program_transform_name}'
5249 dep_host_xmake_file='${dep_host_xmake_file}'
5250 host_xmake_file='${host_xmake_file}'
5251 dep_tmake_file='${dep_tmake_file}'
5252 tmake_file='${tmake_file}'
5253 thread_file='${thread_file}'
5254 gcc_version='${gcc_version}'
5255 gcc_version_trigger='${gcc_version_trigger}'
5256 local_prefix='${local_prefix}'
5257 build_install_headers_dir='${build_install_headers_dir}'
5258 build_exeext='${build_exeext}'
5259 host_exeext='${host_exeext}'
5260 out_file='${out_file}'
5261 gdb_needs_out_file_path='${gdb_needs_out_file_path}'
5262 SET_MAKE='${SET_MAKE}'
5263 target_list='${target_list}'
5264 target_overrides='${target_overrides}'
5265 host_overrides='${host_overrides}'
5266 cross_defines='${cross_defines}'
5267 cross_overrides='${cross_overrides}'
5268 build_overrides='${build_overrides}'
5269 cpp_install_dir='${cpp_install_dir}'