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. Defaults to on.
258 maybe_cpplib=libcpp.a
259 AC_ARG_ENABLE(c-cpplib,
260 [ --enable-c-cpplib link cpplib directly into C and C++ compilers
261 (HIGHLY EXPERIMENTAL).],
262 [if test x$enable_c_cpplib != xyes; then
266 if test x$maybe_cpplib != x ; then
267 AC_DEFINE(USE_CPPLIB, 1,
268 [Define if you want the preprocessor merged into the C and C++ compilers.])
270 AC_SUBST(maybe_cpplib)
272 # Enable Multibyte Characters for C/C++
273 AC_ARG_ENABLE(c-mbchar,
274 [ --enable-c-mbchar Enable multibyte characters for C and C++.],
275 if test x$enable_c_mbchar != xno; then
276 AC_DEFINE(MULTIBYTE_CHARS, 1,
277 [Define if you want the C and C++ compilers to support multibyte
278 character sets for source code.])
282 # Pass with no value to take the default
283 # Pass with a value to specify a thread package
284 AC_ARG_ENABLE(threads,
285 [ --enable-threads enable thread usage for target GCC.
286 --enable-threads=LIB use LIB thread package for target GCC.],,
289 enable_threads_flag=$enable_threads
290 # Check if a valid thread package
291 case x${enable_threads_flag} in
294 target_thread_file='single'
298 target_thread_file=''
300 xdecosf1 | xirix | xmach | xos2 | xposix | xpthreads | xsingle | \
301 xsolaris | xwin32 | xdce | xvxworks | xaix)
302 target_thread_file=$enable_threads_flag
305 echo "$enable_threads is an unknown thread package" 1>&2
310 AC_ARG_ENABLE(objc-gc,
311 [ --enable-objc-gc enable the use of Boehm's garbage collector with
312 the GNU Objective-C runtime.],
313 if test x$enable_objc_gc = xno; then
321 [ --with-dwarf2 force the default debug format to be DWARF2.],
322 dwarf2="$with_dwarf2",
325 AC_ARG_ENABLE(shared,
326 [ --disable-shared don't provide a shared libgcc.],
327 [], [enable_shared=yes])
328 AC_SUBST(enable_shared)
330 # Determine the host, build, and target systems
333 # Find the native compiler
336 # autoconf is lame and doesn't give us any substitution variable for this.
337 if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = no"; then
338 NO_MINUS_C_MINUS_O=yes
340 OUTPUT_OPTION='-o $@'
342 AC_SUBST(NO_MINUS_C_MINUS_O)
343 AC_SUBST(OUTPUT_OPTION)
347 AC_CACHE_CHECK(whether ${CC-cc} accepts -Wno-long-long,
348 ac_cv_prog_cc_no_long_long,
349 [save_CFLAGS="$CFLAGS"
350 CFLAGS="-Wno-long-long"
351 AC_TRY_COMPILE(,,ac_cv_prog_cc_no_long_long=yes,
352 ac_cv_prog_cc_no_long_long=no)
353 CFLAGS="$save_CFLAGS"])
355 if test $ac_cv_prog_cc_no_long_long = yes; then
356 strict1_warn="-pedantic -Wno-long-long"
358 AC_SUBST(strict1_warn)
360 # If the native compiler is GCC, we can enable warnings even in stage1.
361 # That's useful for people building cross-compilers, or just running a
364 if test "x$GCC" = "xyes"; then
365 warn_cflags='$(GCC_WARN_CFLAGS)'
367 AC_SUBST(warn_cflags)
369 # Stage specific cflags for build.
375 stage1_cflags="-Wa,-J"
381 AC_SUBST(stage1_cflags)
385 AC_MSG_CHECKING([whether a default assembler was specified])
386 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
387 if test x"$gas_flag" = x"no"; then
388 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER)])
390 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER - GNU as)])
396 AC_MSG_CHECKING([whether a default linker was specified])
397 if test x"${DEFAULT_LINKER+set}" = x"set"; then
398 if test x"$gnu_ld_flag" = x"no"; then
399 AC_MSG_RESULT([yes ($DEFAULT_LINKER)])
401 AC_MSG_RESULT([yes ($DEFAULT_LINKER - GNU ld)])
407 AC_MSG_CHECKING(for GNU C library)
408 AC_CACHE_VAL(gcc_cv_glibc,
410 [#include <features.h>],[
411 #if ! (defined __GLIBC__ || defined __GNU_LIBRARY__)
412 #error Not a GNU C library system
416 AC_MSG_RESULT($gcc_cv_glibc)
417 if test $gcc_cv_glibc = yes; then
418 AC_DEFINE(_GNU_SOURCE, 1, [Always define this when using the GNU C Library])
423 # Find some useful tools
437 AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h \
438 fcntl.h unistd.h stab.h sys/file.h sys/time.h \
439 sys/resource.h sys/param.h sys/times.h sys/stat.h \
440 direct.h malloc.h langinfo.h iconv.h)
442 # Check for thread headers.
443 AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
444 AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
446 # See if GNAT has been installed
447 AC_CHECK_PROG(gnat, gnatbind, yes, no)
449 # Do we have a single-tree copy of texinfo?
450 if test -f $srcdir/../texinfo/Makefile.in; then
451 MAKEINFO='$(objdir)/../texinfo/makeinfo/makeinfo'
452 gcc_cv_prog_makeinfo_modern=yes
453 AC_MSG_RESULT([Using makeinfo from the unified source tree.])
455 # See if makeinfo has been installed and is modern enough
456 # that we can use it.
457 gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
458 [GNU texinfo.* \([0-9][0-9.]*\)],
459 [3.1[2-9] | 3.[2-9][0-9] | 4.* | 1.6[89] | 1.7[0-9]])
462 if test $gcc_cv_prog_makeinfo_modern = no; then
464 *** Makeinfo is missing or too old.
465 *** Info documentation will not be built or installed.])
469 BUILD_INFO=info AC_SUBST(BUILD_INFO)
470 INSTALL_INFO=install-info AC_SUBST(INSTALL_INFO)
473 # See if the stage1 system preprocessor understands the ANSI C
474 # preprocessor stringification operator.
477 # Use <inttypes.h> only if it exists,
478 # doesn't clash with <sys/types.h>, and declares intmax_t.
479 AC_MSG_CHECKING(for inttypes.h)
480 AC_CACHE_VAL(gcc_cv_header_inttypes_h,
482 [#include <sys/types.h>
483 #include <inttypes.h>],
485 [gcc_cv_header_inttypes_h=yes],
486 gcc_cv_header_inttypes_h=no)])
487 AC_MSG_RESULT($gcc_cv_header_inttypes_h)
488 if test $gcc_cv_header_inttypes_h = yes; then
489 AC_DEFINE(HAVE_INTTYPES_H, 1,
490 [Define if you have a working <inttypes.h> header file.])
494 # Determine if enumerated bitfields are unsigned. ISO C says they can
495 # be either signed or unsigned.
497 AC_CACHE_CHECK(for unsigned enumerated bitfields, gcc_cv_enum_bf_unsigned,
498 [AC_TRY_RUN(#include <stdlib.h>
499 enum t { BLAH = 128 } ;
500 struct s_t { enum t member : 8; } s ;
504 if (s.member < 0) exit(1);
507 }, gcc_cv_enum_bf_unsigned=yes, gcc_cv_enum_bf_unsigned=no, gcc_cv_enum_bf_unsigned=yes)])
508 if test $gcc_cv_enum_bf_unsigned = yes; then
509 AC_DEFINE(ENUM_BITFIELDS_ARE_UNSIGNED, 1,
510 [Define if enumerated bitfields are treated as unsigned values.])
513 AC_CHECK_FUNCS(strtoul bsearch putenv popen bcopy bzero bcmp \
514 index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
515 sysconf isascii gettimeofday strsignal putc_unlocked fputc_unlocked \
516 fputs_unlocked getrusage valloc iconv nl_langinfo)
518 AC_CHECK_TYPE(ssize_t, int)
520 # Try to determine the array type of the second argument of getgroups
521 # for the target system (int or gid_t).
523 if test "${target}" = "${build}"; then
524 TARGET_GETGROUPS_T=$ac_cv_type_getgroups
527 # This condition may need some tweaking. It should include all
528 # targets where the array type of the second argument of getgroups
529 # is int and the type of gid_t is not equivalent to int.
530 *-*-sunos* | *-*-ultrix*)
531 TARGET_GETGROUPS_T=int
534 TARGET_GETGROUPS_T=gid_t
538 AC_SUBST(TARGET_GETGROUPS_T)
540 gcc_AC_FUNC_VFPRINTF_DOPRNT
541 gcc_AC_FUNC_PRINTF_PTR
545 # Under some versions of uwin, vfork is notoriously buggy and the test
546 # can hang configure; on other versions, vfork exists just as a stub.
547 # FIXME: This should be removed once vfork in uwin's runtime is fixed.
548 ac_cv_func_vfork_works=no
552 AC_FUNC_MMAP_ANYWHERE
555 # We will need to find libiberty.h and ansidecl.h
556 saved_CFLAGS="$CFLAGS"
557 CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
558 gcc_AC_CHECK_DECLS(bcopy bzero bcmp \
559 index rindex getenv atol sbrk abort atof getcwd getwd \
560 strsignal putc_unlocked fputs_unlocked strstr environ \
561 malloc realloc calloc free basename getopt, , ,[
562 #include "gansidecl.h"
563 #include "system.h"])
565 gcc_AC_CHECK_DECLS(getrlimit setrlimit getrusage, , ,[
566 #include "gansidecl.h"
568 #ifdef HAVE_SYS_RESOURCE_H
569 #include <sys/resource.h>
573 # Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
574 CFLAGS="$saved_CFLAGS"
576 # mkdir takes a single argument on some systems.
577 gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
587 build_install_headers_dir=install-headers-tar
592 host_truncate_target=
595 # Decode the host machine, then the target machine.
596 # For the host machine, we save the xm_file variable as host_xm_file;
597 # then we decode the target machine and forget everything else
598 # that came from the host machine.
599 for machine in $build $host $target; do
613 # Set this to force installation and use of collect2.
615 # Set this to override the default target model.
617 # Set this to control how the header file directory is installed.
618 install_headers_dir=install-headers-tar
619 # Set this to a non-empty list of args to pass to cpp if the target
620 # wants its .md file passed through cpp.
622 # Set this if directory names should be truncated to 14 characters.
624 # Set this if gdb needs a dir command with `dirname $out_file`
625 gdb_needs_out_file_path=
626 # Set this if the build machine requires executables to have a
629 # Set this to control which thread package will be used.
631 # Reinitialize these from the flag values every loop pass, since some
632 # configure entries modify them.
634 gnu_ld="$gnu_ld_flag"
635 enable_threads=$enable_threads_flag
637 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
638 # updated in each machine entry.
640 cpu_type=`echo $machine | sed 's/-.*$//'`
682 tm_file=${cpu_type}/${cpu_type}.h
683 xm_file=${cpu_type}/xm-${cpu_type}.h
684 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
686 tm_p_file=${cpu_type}/${cpu_type}-protos.h;
688 # On a.out targets, we need to use collect2.
695 # Common parts for linux and openbsd systems
698 xm_defines="HAVE_ATEXIT POSIX BSTRING"
701 tm_file=${cpu_type}/openbsd.h
702 tmake_file="t-libc-ok t-openbsd"
703 # avoid surprises, always provide an xm-openbsd file
704 xm_file=${cpu_type}/xm-openbsd.h
705 # don't depend on processor x-fragments as well
707 if test x$enable_threads = xyes; then
709 tmake_file="${tmake_file} t-openbsd-thread"
715 # Support site-specific machine types.
717 cpu_type=`echo $machine | sed -e 's/-.*//'`
718 rest=`echo $machine | sed -e "s/$cpu_type-//"`
719 xm_file=${cpu_type}/xm-$rest.h
720 tm_file=${cpu_type}/$rest.h
721 if test -f $srcdir/config/${cpu_type}/x-$rest; \
722 then xmake_file=${cpu_type}/x-$rest; \
725 if test -f $srcdir/config/${cpu_type}/t-$rest; \
726 then tmake_file=${cpu_type}/t-$rest; \
732 a29k-*-bsd* | a29k-*-sym1*)
733 tm_file="${tm_file} a29k/unix.h"
735 xmake_file=a29k/x-unix
738 a29k-*-udi | a29k-*-coff)
739 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
740 tmake_file=a29k/t-a29kbare
743 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
744 tmake_file=a29k/t-vx29k
745 extra_parts="crtbegin.o crtend.o"
746 thread_file='vxworks'
748 a29k-*-*) # Default a29k environment.
752 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
754 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
755 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
757 # GAS + IEEE_CONFORMANT
758 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
760 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
761 xmake_file="x-interix alpha/t-pe"
762 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
763 if test x$enable_threads = xyes ; then
766 if test x$stabs = xyes ; then
767 tm_file="${tm_file} dbxcoff.h"
769 #prefix='$$INTERIX_ROOT'/usr/contrib
770 #local_prefix='$$INTERIX_ROOT'/usr/contrib
772 alpha*-*-linux*ecoff*)
773 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
774 target_cpu_default="MASK_GAS"
775 tmake_file="alpha/t-alpha alpha/t-ieee"
780 alpha*-*-linux*libc1*)
781 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
782 target_cpu_default="MASK_GAS"
783 tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
784 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
787 if test x$enable_threads = xyes; then
792 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
793 target_cpu_default="MASK_GAS"
794 tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
795 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
798 if test x$enable_threads = xyes; then
803 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
804 target_cpu_default="MASK_GAS"
805 tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
806 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
812 # default x-alpha is only appropriate for dec-osf.
813 target_cpu_default="MASK_GAS"
814 tmake_file="alpha/t-alpha alpha/t-ieee"
818 if test x$stabs = xyes
820 tm_file="${tm_file} dbx.h"
822 if test x$gas != xyes
824 extra_passes="mips-tfile mips-tdump"
827 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-osf"
828 xmake_file=alpha/x-osf
831 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
836 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
839 tm_file="${tm_file} alpha/osf.h"
840 tmake_file="$tmake_file alpha/t-osf4"
841 # Some versions of OSF4 (specifically X4.0-9 296.7) have
842 # a broken tar, so we use cpio instead.
843 install_headers_dir=install-headers-cpio
846 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
847 tmake_file="$tmake_file alpha/t-osf4"
852 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
854 target_cpu_default=MASK_SUPPORT_ARCH
859 tm_file="${tm_file} dbx.h alpha/vxworks.h"
860 tmake_file="alpha/t-alpha alpha/t-ieee"
863 extra_passes="mips-tfile mips-tdump"
866 thread_file='vxworks'
869 tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h"
870 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
871 tmake_file="t-libc-ok alpha/t-alpha alpha/t-ieee"
872 xmake_file=winnt/x-winnt
873 extra_host_objs=oldnames.o
874 extra_gcc_objs="spawnv.o oldnames.o"
875 if test x$gnu_ld != xyes
877 extra_programs=ld.exe
879 if test x$enable_threads = xyes; then
885 xm_file="${xm_file} alpha/xm-vms.h"
886 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
889 extra_parts="crtinit.o crtfini.o"
891 arm-*-coff* | armel-*-coff*)
893 tmake_file=arm/t-arm-coff
897 tmake_file=arm/t-arm-coff
898 thread_file='vxworks'
901 arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
903 tm_file=arm/riscix1-1.h
906 arm-*-riscix*) # Acorn RISC machine
909 tm_file=arm/rix-gas.h
913 xmake_file=arm/x-riscix
914 tmake_file=arm/t-riscix
917 arm-semi-aout | armel-semi-aout)
919 tmake_file=arm/t-semi
921 arm-semi-aof | armel-semi-aof)
922 tm_file=arm/semiaof.h
923 tmake_file=arm/t-semiaof
927 tmake_file="t-netbsd arm/t-netbsd"
930 arm*-*-linux*aout*) # ARM GNU/Linux with a.out
933 tm_file=arm/linux-aout.h
934 tmake_file=arm/t-linux
937 arm*-*-linux*oldld*) # ARM GNU/Linux with old ELF linker
938 xm_file=arm/xm-linux.h
940 tm_file="arm/linux-oldld.h arm/linux-elf.h"
943 tm_file="arm/linux-elf26.h $tm_file"
946 tmake_file="t-linux arm/t-linux"
947 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
949 case x${enable_threads} in
950 x | xyes | xpthreads | xposix)
955 arm*-*-linux*) # ARM GNU/Linux with ELF
956 xm_file=arm/xm-linux.h
958 tm_file="arm/linux-elf.h"
961 tm_file="arm/linux-elf26.h $tm_file"
964 tmake_file="t-linux arm/t-linux"
965 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
967 case x${enable_threads} in
968 x | xyes | xpthreads | xposix)
973 arm*-*-uclinux*) # ARM ucLinux
974 tm_file=arm/uclinux-elf.h
975 tmake_file=arm/t-arm-elf
979 tmake_file=arm/t-arm-aout
982 tm_file=arm/ecos-elf.h
983 tmake_file=arm/t-arm-elf
986 tm_file=arm/unknown-elf.h
987 tmake_file=arm/t-arm-elf
990 tm_file=arm/conix-elf.h
991 tmake_file=arm/t-arm-elf
994 tm_file=arm/unknown-elf-oabi.h
995 tmake_file=arm/t-arm-elf
1004 c1-convex-*) # Convex C1
1005 target_cpu_default=1
1008 c2-convex-*) # Convex C2
1009 target_cpu_default=2
1013 target_cpu_default=4
1017 target_cpu_default=8
1021 target_cpu_default=16
1027 tmake_file=c4x/t-c4x
1029 clipper-intergraph-clix*)
1030 tm_file="${tm_file} svr3.h clipper/clix.h"
1031 xm_file=clipper/xm-clix.h
1032 xmake_file=clipper/x-clix
1033 extra_headers=va-clipper.h
1034 extra_parts="crtbegin.o crtend.o"
1035 install_headers_dir=install-headers-cpio
1046 tm_file="fr30/fr30.h"
1047 tmake_file=fr30/t-fr30
1048 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1054 target_cpu_default="(MASK_PA_11 | MASK_GAS | MASK_JUMP_IN_DELAY)"
1055 tm_file="${tm_file} pa/elf.h linux.h pa/pa-linux.h"
1056 tmake_file="t-linux pa/t-linux"
1057 extra_parts="crtbegin.o crtend.o"
1060 if test x$enable_threads = xyes; then
1065 target_cpu_default="MASK_PA_11"
1066 tmake_file=pa/t-openbsd
1069 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1070 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
1071 xm_file=pa/xm-papro.h
1075 target_cpu_default="MASK_PA_11"
1076 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1080 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1081 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
1082 xm_file=pa/xm-papro.h
1086 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1090 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1091 target_cpu_default="MASK_PA_11"
1095 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1099 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.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/gas.h"
1106 install_headers_dir=install-headers-cpio
1110 hppa1.0-*-hpux8.0[0-2]*)
1112 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1113 xm_file=pa/xm-pahpux.h
1114 xmake_file=pa/x-pa-hpux
1115 if test x$gas = xyes
1117 tm_file="${tm_file} pa/pa-gas.h"
1119 tm_file="pa/pa-oldas.h ${tm_file}"
1121 install_headers_dir=install-headers-cpio
1125 hppa1.1-*-hpux8.0[0-2]*)
1127 target_cpu_default="MASK_PA_11"
1128 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1129 xm_file=pa/xm-pahpux.h
1130 xmake_file=pa/x-pa-hpux
1131 if test x$gas = xyes
1133 tm_file="${tm_file} pa/pa-gas.h"
1135 tm_file="pa/pa-oldas.h ${tm_file}"
1137 install_headers_dir=install-headers-cpio
1141 target_cpu_default="MASK_PA_11"
1142 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1143 xm_file=pa/xm-pahpux.h
1144 xmake_file=pa/x-pa-hpux
1145 if test x$gas = xyes
1147 tm_file="${tm_file} pa/pa-gas.h"
1149 install_headers_dir=install-headers-cpio
1153 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1154 xm_file=pa/xm-pahpux.h
1155 xmake_file=pa/x-pa-hpux
1156 if test x$gas = xyes
1158 tm_file="${tm_file} pa/pa-gas.h"
1160 install_headers_dir=install-headers-cpio
1163 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
1164 target_cpu_default="MASK_PA_11"
1165 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1167 xm_file=pa/xm-pahpux.h
1168 xmake_file=pa/x-pa-hpux
1170 if test x$gas = xyes
1172 tm_file="${tm_file} pa/pa-gas.h"
1174 if test x$enable_threads = x; then
1175 enable_threads=$have_pthread_h
1177 case x${enable_threads} in
1179 tmake_file="${tmake_file} pa/t-dce-thr"
1182 install_headers_dir=install-headers-cpio
1186 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1188 xm_file=pa/xm-pahpux.h
1189 xmake_file=pa/x-pa-hpux
1191 if test x$gas = xyes
1193 tm_file="${tm_file} pa/pa-gas.h"
1195 if test x$enable_threads = x; then
1196 enable_threads=$have_pthread_h
1198 case x${enable_threads} in
1200 tmake_file="${tmake_file} pa/t-dce-thr"
1203 install_headers_dir=install-headers-cpio
1207 target_cpu_default="MASK_PA_11"
1208 xm_file=pa/xm-pa64hpux.h
1209 xmake_file=pa/x-pa-hpux
1211 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"
1213 tmake_file=pa/t-pa64
1214 target_cpu_default="(MASK_PA_11|MASK_PA_20)"
1216 if [[ x$gas = xyes ]]
1218 tm_file="${tm_file} pa/pa-gas.h"
1220 # if [[ x$enable_threads = x ]]; then
1221 # enable_threads=$have_pthread_h
1223 # if [[ x$enable_threads = xyes ]]; then
1225 # tmake_file="${tmake_file} pa/t-dce-thr"
1227 install_headers_dir=install-headers-cpio
1230 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
1231 target_cpu_default="MASK_PA_11"
1232 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1234 xm_file=pa/xm-pahpux.h
1235 xmake_file=pa/x-pa-hpux
1237 if test x$gas = xyes
1239 tm_file="${tm_file} pa/pa-gas.h"
1241 # if test x$enable_threads = x; then
1242 # enable_threads=$have_pthread_h
1244 # if test x$enable_threads = xyes; then
1246 # tmake_file="${tmake_file} pa/t-dce-thr"
1248 install_headers_dir=install-headers-cpio
1252 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1254 xm_file=pa/xm-pahpux.h
1255 xmake_file=pa/x-pa-hpux
1256 if test x$gas = xyes
1258 tm_file="${tm_file} pa/pa-gas.h"
1260 # if test x$enable_threads = x; then
1261 # enable_threads=$have_pthread_h
1263 # if test x$enable_threads = xyes; then
1265 # tmake_file="${tmake_file} pa/t-dce-thr"
1267 install_headers_dir=install-headers-cpio
1270 hppa1.1-*-hpux* | hppa2*-*-hpux*)
1271 target_cpu_default="MASK_PA_11"
1272 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1273 xm_file=pa/xm-pahpux.h
1274 xmake_file=pa/x-pa-hpux
1275 if test x$gas = xyes
1277 tm_file="${tm_file} pa/pa-gas.h"
1279 install_headers_dir=install-headers-cpio
1283 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1284 xm_file=pa/xm-pahpux.h
1285 xmake_file=pa/x-pa-hpux
1286 if test x$gas = xyes
1288 tm_file="${tm_file} pa/pa-gas.h"
1290 install_headers_dir=install-headers-cpio
1293 hppa1.1-*-hiux* | hppa2*-*-hiux*)
1294 target_cpu_default="MASK_PA_11"
1295 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1296 xm_file=pa/xm-pahpux.h
1297 xmake_file=pa/x-pa-hpux
1298 if test x$gas = xyes
1300 tm_file="${tm_file} pa/pa-gas.h"
1302 install_headers_dir=install-headers-cpio
1306 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1307 xm_file=pa/xm-pahpux.h
1308 xmake_file=pa/x-pa-hpux
1309 if test x$gas = xyes
1311 tm_file="${tm_file} pa/pa-gas.h"
1313 install_headers_dir=install-headers-cpio
1317 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
1318 target_cpu_default="MASK_PA_11"
1322 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
1323 xm_file=pa/xm-pampeix.h
1324 xmake_file=pa/x-pa-mpeix
1325 echo "You must use gas. Assuming it is already installed."
1326 install_headers_dir=install-headers-tar
1329 i370-*-opened*) # IBM 360/370/390 Architecture
1330 xm_file=i370/xm-oe.h
1332 xmake_file=i370/x-oe
1333 tmake_file=i370/t-oe
1336 xm_file=i370/xm-mvs.h
1338 tmake_file=i370/t-mvs
1341 xm_file="xm-linux.h i370/xm-linux.h"
1343 tm_file="i370/linux.h ${tm_file}"
1344 tmake_file="t-linux i370/t-linux"
1345 # broken_install=yes
1346 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1347 # extra_parts="crtbegin.o crtend.o"
1351 if test x$enable_threads = xyes; then
1358 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h"
1359 tm_file=i386/i386elf.h
1360 tmake_file=i386/t-i386elf
1364 i[34567]86-ibm-aix*) # IBM PS/2 running AIX
1366 if test x$gas = xyes
1368 tm_file=i386/aix386.h
1369 extra_parts="crtbegin.o crtend.o"
1370 tmake_file=i386/t-crtstuff
1372 tm_file=i386/aix386ng.h
1375 xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
1377 xmake_file=i386/x-aix
1380 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
1382 xm_file="xm-alloca.h ${xm_file}"
1383 xm_defines="USG POSIX SMALL_ARG_MAX"
1384 xmake_file=i386/x-ncr3000
1385 if test x$stabs = xyes -a x$gas = xyes
1387 tm_file=i386/sysv4gdb.h
1389 tm_file=i386/sysv4.h
1391 extra_parts="crtbegin.o crtend.o"
1392 tmake_file=i386/t-crtpic
1398 xm_file=i386/xm-next.h
1399 tmake_file=i386/t-next
1400 xmake_file=i386/x-next
1401 extra_objs=nextstep.o
1402 extra_parts="crtbegin.o crtend.o"
1403 if test x$enable_threads = xyes; then
1408 i[34567]86-*-netware) # Intel 80386's running netware
1410 tm_file=i386/netware.h
1411 tmake_file=i386/t-netware
1414 i[34567]86-sequent-bsd*) # 80386 from Sequent
1417 if test x$gas = xyes
1419 tm_file=i386/seq-gas.h
1421 tm_file=i386/sequent.h
1425 i[34567]86-sequent-ptx1*)
1427 xm_defines="USG SVR3"
1428 xmake_file=i386/x-sysv3
1429 tm_file=i386/seq-sysv3.h
1430 tmake_file=i386/t-crtstuff
1431 extra_parts="crtbegin.o crtend.o"
1432 install_headers_dir=install-headers-cpio
1435 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1437 xm_defines="USG SVR3"
1438 xmake_file=i386/x-sysv3
1439 tm_file=i386/seq2-sysv3.h
1440 tmake_file=i386/t-crtstuff
1441 extra_parts="crtbegin.o crtend.o"
1442 install_headers_dir=install-headers-cpio
1445 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1447 xm_file="xm-alloca.h ${xm_file}"
1448 xm_defines="USG POSIX SMALL_ARG_MAX"
1450 tm_file=i386/ptx4-i.h
1452 extra_parts="crtbegin.o crtend.o"
1453 install_headers_dir=install-headers-cpio
1455 i386-sun-sunos*) # Sun i386 roadrunner
1461 i[34567]86-wrs-vxworks*)
1463 tm_file=i386/vxi386.h
1464 tmake_file=i386/t-i386bare
1465 thread_file='vxworks'
1470 tm_file=i386/i386-aout.h
1471 tmake_file=i386/t-i386bare
1474 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1476 xm_file=i386/xm-beos.h
1477 tmake_file='i386/t-beos i386/t-crtpic'
1478 tm_file=i386/beos-elf.h
1479 xmake_file=i386/x-beos
1480 extra_parts='crtbegin.o crtend.o'
1483 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1485 tm_file=i386/bsd386.h
1486 # tmake_file=t-libc-ok
1491 tm_file=i386/386bsd.h
1492 # tmake_file=t-libc-ok
1493 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1497 i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
1499 tm_file="i386/freebsd-aout.h i386/perform.h"
1500 tmake_file=t-freebsd
1503 i[34567]86-*-freebsd*)
1505 tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd.h i386/perform.h"
1506 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1507 tmake_file=t-freebsd
1511 case x${enable_threads} in
1512 xyes | xpthreads | xposix)
1514 tmake_file="${tmake_file} t-freebsd-thread"
1519 i[34567]86-*-netbsd*)
1521 tm_file=i386/netbsd.h
1526 i[34567]86-*-openbsd*)
1528 # we need collect2 until our bug is fixed...
1534 tm_file=i386/i386-coff.h
1535 tmake_file=i386/t-i386bare
1538 i[34567]86-*-isc*) # 80386 running ISC system
1540 xm_file="${xm_file} i386/xm-isc.h"
1541 xm_defines="USG SVR3"
1544 i[34567]86-*-isc[34]*)
1546 xmake_file=i386/x-isc3
1549 xmake_file=i386/x-isc
1552 if test x$gas = xyes -a x$stabs = xyes
1554 tm_file=i386/iscdbx.h
1555 tmake_file=i386/t-svr3dbx
1556 extra_parts="svr3.ifile svr3z.ifile"
1558 tm_file=i386/isccoff.h
1559 tmake_file=i386/t-crtstuff
1560 extra_parts="crtbegin.o crtend.o"
1562 tmake_file="$tmake_file i386/t-i386bare"
1563 install_headers_dir=install-headers-cpio
1566 i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
1567 changequote([,])dnl # with a.out format using
1569 xmake_file=x-linux-aout
1570 tmake_file="t-linux-aout i386/t-crtstuff"
1571 tm_file=i386/linux-oldld.h
1576 i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1577 changequote([,])dnl # with a.out format
1578 xmake_file=x-linux-aout
1579 tmake_file="t-linux-aout i386/t-crtstuff"
1580 tm_file=i386/linux-aout.h
1585 i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1586 changequote([,])dnl # with ELF format using the
1587 # GNU/Linux C library 5
1589 tm_file=i386/linux.h
1590 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1591 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1594 if test x$enable_threads = xyes; then
1595 thread_file='single'
1599 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1600 changequote([,])dnl # with ELF format using glibc 2
1601 # aka GNU/Linux C library 6
1603 tm_file=i386/linux.h
1604 tmake_file="t-linux i386/t-crtstuff"
1605 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1608 if test x$enable_threads = xyes; then
1618 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1620 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1624 i[34567]86-pc-msdosdjgpp*)
1626 xm_file=i386/xm-djgpp.h
1627 tm_file=i386/djgpp.h
1628 tmake_file=i386/t-djgpp
1629 xmake_file=i386/x-djgpp
1634 case $host in *pc-msdosdjgpp*)
1640 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1643 tmake_file=t-libc-ok
1648 i[34567]86-*-lynxos*)
1650 if test x$gas = xyes
1654 tm_file=i386/lynx-ng.h
1656 xm_file=i386/xm-lynx.h
1657 tmake_file=i386/t-i386bare
1664 # tmake_file=t-libc-ok
1668 i[34567]86-*-osfrose*) # 386 using OSF/rose
1670 if test x$elf = xyes
1672 tm_file=i386/osfelf.h
1675 tm_file=i386/osfrose.h
1678 xm_file="i386/xm-osf.h ${xm_file}"
1679 xmake_file=i386/x-osfrose
1680 tmake_file=i386/t-osf
1681 extra_objs=halfpic.o
1684 i[34567]86-go32-rtems*)
1687 xm_file=i386/xm-go32.h
1688 tm_file=i386/go32-rtems.h
1689 tmake_file="i386/t-go32 t-rtems"
1692 i[34567]86-*-rtemscoff*)
1695 tm_file=i386/rtems.h
1696 tmake_file="i386/t-i386bare t-rtems"
1699 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1702 tm_file=i386/rtemself.h
1703 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1704 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1707 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1709 xm_file="xm-alloca.h ${xm_file} i386/xm-sco5.h"
1710 xm_defines="USG SVR3"
1711 xmake_file=i386/x-sco5
1712 install_headers_dir=install-headers-cpio
1714 if test x$gas = xyes
1716 tm_file="i386/sco5gas.h ${tm_file}"
1717 tmake_file=i386/t-sco5gas
1719 tmake_file=i386/t-sco5
1721 tmake_file="$tmake_file i386/t-i386bare"
1722 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1725 i[34567]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
1727 xm_file="${xm_file} i386/xm-sco.h"
1728 xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX"
1729 xmake_file=i386/x-sco4
1730 install_headers_dir=install-headers-cpio
1731 if test x$stabs = xyes
1733 tm_file=i386/sco4dbx.h
1734 tmake_file=i386/t-svr3dbx
1735 extra_parts="svr3.ifile svr3z.rfile"
1738 tmake_file=i386/t-crtstuff
1739 extra_parts="crtbegin.o crtend.o"
1741 tmake_file="$tmake_file i386/t-i386bare"
1742 # The default EAFS filesystem supports long file names.
1743 # Truncating the target makes $host != $target which
1744 # makes gcc think it is doing a cross-compile.
1745 # truncate_target=yes
1748 i[34567]86-*-sco*) # 80386 running SCO system
1750 xm_file=i386/xm-sco.h
1751 xmake_file=i386/x-sco
1752 install_headers_dir=install-headers-cpio
1753 if test x$stabs = xyes
1755 tm_file=i386/scodbx.h
1756 tmake_file=i386/t-svr3dbx
1757 extra_parts="svr3.ifile svr3z.rfile"
1760 extra_parts="crtbegin.o crtend.o"
1761 tmake_file=i386/t-crtstuff
1763 tmake_file="$tmake_file i386/t-i386bare"
1767 i[34567]86-*-solaris2*)
1769 xm_file="xm-alloca.h ${xm_file}"
1770 xm_defines="USG POSIX SMALL_ARG_MAX"
1772 if test x$gas = xyes; then
1773 # Only needed if gas does not support -s
1774 tm_file="i386/sol2gas.h ${tm_file}"
1776 tmake_file="i386/t-i386bare i386/t-sol2"
1777 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1779 if test x${enable_threads} = x; then
1780 enable_threads=$have_pthread_h
1781 if test x${enable_threads} = x; then
1782 enable_threads=$have_thread_h
1785 if test x${enable_threads} = xyes; then
1786 if test x${have_pthread_h} = xyes; then
1789 thread_file='solaris'
1794 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1796 xm_file="xm-alloca.h ${xm_file}"
1797 xm_defines="USG POSIX"
1798 tm_file=i386/sysv5.h
1799 if test x$stabs = xyes
1801 tm_file="${tm_file} dbx.h"
1803 tmake_file="i386/t-i386bare i386/t-crtpic"
1805 extra_parts="crtbegin.o crtend.o"
1806 if test x$enable_threads = xyes; then
1811 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1813 xm_file="xm-alloca.h ${xm_file}"
1814 xm_defines="USG POSIX SMALL_ARG_MAX"
1815 tm_file=i386/sysv4.h
1816 if test x$stabs = xyes
1818 tm_file="${tm_file} dbx.h"
1820 tmake_file="i386/t-i386bare i386/t-crtpic"
1822 extra_parts="crtbegin.o crtend.o"
1825 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1827 xm_file="xm-alloca.h ${xm_file}"
1828 xm_defines="USG POSIX"
1830 tmake_file="i386/t-i386bare i386/t-crtpic i386/t-udk"
1832 extra_parts="crtbegin.o crtend.o"
1833 install_headers_dir=install-headers-cpio
1836 i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
1839 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
1840 xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
1841 if test x$stabs = xyes
1843 tm_file=i386/osf1elfgdb.h
1845 tm_file=i386/osf1elf.h
1847 tmake_file=i386/t-osf1elf
1848 xmake_file=i386/x-osf1elf
1849 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1852 i[34567]86-*-sysv*) # Intel 80386's running system V
1854 xm_defines="USG SVR3"
1855 xmake_file=i386/x-sysv3
1856 if test x$gas = xyes
1858 if test x$stabs = xyes
1860 tm_file=i386/svr3dbx.h
1861 tmake_file=i386/t-svr3dbx
1862 extra_parts="svr3.ifile svr3z.rfile"
1864 tm_file=i386/svr3gas.h
1865 extra_parts="crtbegin.o crtend.o"
1866 tmake_file=i386/t-crtstuff
1869 tm_file=i386/sysv3.h
1870 extra_parts="crtbegin.o crtend.o"
1871 tmake_file=i386/t-crtstuff
1873 tmake_file="$tmake_file i386/t-crtpic"
1875 i386-*-vsta) # Intel 80386's running VSTa kernel
1876 xm_file="${xm_file} i386/xm-vsta.h"
1878 tmake_file=i386/t-vsta
1879 xmake_file=i386/x-vsta
1884 xm_file="${xm_file} i386/xm-cygwin.h"
1885 tmake_file=i386/t-cygwin
1886 tm_file=i386/win32.h
1887 xmake_file=i386/x-cygwin
1889 if test x$enable_threads = xyes; then
1895 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1897 xm_file="${xm_file} i386/xm-cygwin.h"
1898 tmake_file=i386/t-cygwin
1899 tm_file=i386/cygwin.h
1900 xmake_file=i386/x-cygwin
1902 if test x$enable_threads = xyes; then
1908 i[34567]86-*-mingw32*)
1910 tm_file=i386/mingw32.h
1911 xm_file="${xm_file} i386/xm-mingw32.h"
1912 tmake_file="i386/t-cygwin i386/t-mingw32"
1914 xmake_file=i386/x-cygwin
1915 if test x$enable_threads = xyes; then
1922 *minwg32crt* | *mingw32*)
1923 tm_file="${tm_file} i386/crtdll.h"
1931 xm_file="${xm_file} i386/xm-uwin.h"
1932 xm_defines="USG NO_STAB_H"
1933 tmake_file="i386/t-cygwin i386/t-uwin"
1935 xmake_file=i386/x-cygwin
1936 if test x$enable_threads = xyes; then
1942 i[34567]86-*-interix*)
1944 tm_file="i386/i386-interix.h interix.h"
1945 xm_file="i386/xm-i386-interix.h xm-interix.h"
1947 tmake_file="i386/t-interix"
1948 extra_objs=interix.o
1949 xmake_file=x-interix
1950 if test x$enable_threads = xyes ; then
1953 if test x$stabs = xyes ; then
1954 tm_file="${tm_file} dbxcoff.h"
1958 i[34567]86-*-winnt3*)
1960 tm_file=i386/win-nt.h
1961 out_file=i386/i386.c
1962 xm_file="xm-winnt.h ${xm_file}"
1963 xmake_file=winnt/x-winnt
1964 tmake_file=i386/t-winnt
1965 extra_host_objs="winnt.o oldnames.o"
1966 extra_gcc_objs="spawnv.o oldnames.o"
1967 if test x$gnu_ld != xyes
1969 extra_programs=ld.exe
1971 if test x$enable_threads = xyes; then
1976 i[34567]86-dg-dgux*)
1978 xm_file="xm-alloca.h ${xm_file}"
1979 xm_defines="USG POSIX"
1980 out_file=i386/dgux.c
1982 tmake_file=i386/t-dgux
1983 xmake_file=i386/x-dgux
1984 install_headers_dir=install-headers-cpio
1986 i860-alliant-*) # Alliant FX/2800
1987 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1988 xm_file="${xm_file}"
1989 xmake_file=i860/x-fx2800
1990 tmake_file=i860/t-fx2800
1991 extra_parts="crtbegin.o crtend.o"
1994 tm_file="${tm_file} i860/bsd.h"
1995 if test x$gas = xyes
1997 tm_file="${tm_file} i860/bsd-gas.h"
2002 tm_file="${tm_file} i860/mach.h"
2003 tmake_file=t-libc-ok
2005 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
2006 tm_file="${tm_file} svr3.h i860/paragon.h"
2007 xm_defines="USG SVR3"
2011 tm_file="${tm_file} svr3.h i860/sysv3.h"
2012 xm_defines="USG SVR3"
2013 xmake_file=i860/x-sysv3
2014 extra_parts="crtbegin.o crtend.o"
2017 tm_file="${tm_file} svr4.h i860/sysv4.h"
2018 xm_defines="USG SVR3"
2019 xmake_file=i860/x-sysv4
2021 extra_parts="crtbegin.o crtend.o"
2023 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
2024 tm_file="${tm_file} i960/vx960.h"
2025 tmake_file=i960/t-vxworks960
2027 thread_file='vxworks'
2029 i960-wrs-vxworks5* | i960-wrs-vxworks)
2030 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
2031 tmake_file=i960/t-vxworks960
2033 thread_file='vxworks'
2036 tm_file="${tm_file} i960/vx960.h"
2037 tmake_file=i960/t-vxworks960
2039 thread_file='vxworks'
2042 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
2043 tmake_file=i960/t-960bare
2047 tmake_file="i960/t-960bare t-rtems"
2048 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
2051 i960-*-*) # Default i960 environment.
2056 tmake_file="ia64/t-ia64"
2057 target_cpu_default="0"
2058 if test x$gas = xyes
2060 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
2062 if test x$gnu_ld = xyes
2064 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
2069 tm_file=ia64/linux.h
2070 tmake_file="t-linux ia64/t-ia64 ia64/t-glibc"
2071 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
2072 if test x$enable_threads = xyes; then
2078 extra_parts="crtinit.o crtfini.o"
2080 # m68hc11 and m68hc12 share the same machine description.
2081 m68hc11-*-*|m6811-*-*)
2082 tm_file="m68hc11/m68hc11.h"
2083 xm_file="m68hc11/xm-m68hc11.h"
2084 tm_p_file="m68hc11/m68hc11-protos.h"
2085 md_file="m68hc11/m68hc11.md"
2086 out_file="m68hc11/m68hc11.c"
2087 tmake_file="m68hc11/t-m68hc11-gas"
2089 m68hc12-*-*|m6812-*-*)
2090 tm_file="m68hc11/m68hc12.h"
2091 tm_p_file="m68hc11/m68hc11-protos.h"
2092 xm_file="m68hc11/xm-m68hc11.h"
2093 md_file="m68hc11/m68hc11.md"
2094 out_file="m68hc11/m68hc11.c"
2095 tmake_file="m68hc11/t-m68hc11-gas"
2097 m68000-convergent-sysv*)
2099 xm_file="m68k/xm-3b1.h ${xm_file}"
2102 extra_headers=math-68881.h
2104 m68000-hp-bsd*) # HP 9000/200 running BSD
2105 tm_file=m68k/hp2bsd.h
2106 xmake_file=m68k/x-hp2bsd
2108 extra_headers=math-68881.h
2110 m68000-hp-hpux*) # HP 9000 series 300
2111 xm_file="xm-alloca.h ${xm_file}"
2113 if test x$gas = xyes
2115 xmake_file=m68k/x-hp320g
2116 tm_file=m68k/hp310g.h
2118 xmake_file=m68k/x-hp320
2119 tm_file=m68k/hp310.h
2121 install_headers_dir=install-headers-cpio
2123 extra_headers=math-68881.h
2128 extra_headers=math-68881.h
2131 tm_file=m68k/sun2o4.h
2133 extra_headers=math-68881.h
2136 xm_file="m68k/xm-3b1.h ${xm_file}"
2138 if test x$gas = xyes
2145 extra_headers=math-68881.h
2147 m68k-apple-aux*) # Apple Macintosh running A/UX
2148 xm_defines="USG AUX"
2149 tmake_file=m68k/t-aux
2150 install_headers_dir=install-headers-cpio
2151 extra_headers=math-68881.h
2152 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
2154 if test "$gnu_ld" = yes
2156 tm_file="${tm_file} m68k/auxgld.h"
2158 tm_file="${tm_file} m68k/auxld.h"
2160 if test "$gas" = yes
2162 tm_file="${tm_file} m68k/auxgas.h"
2164 tm_file="${tm_file} m68k/auxas.h"
2166 tm_file="${tm_file} m68k/a-ux.h"
2170 tm_file=m68k/apollo68.h
2171 xmake_file=m68k/x-apollo68
2173 extra_headers=math-68881.h
2176 m68k-altos-sysv*) # Altos 3068
2177 if test x$gas = xyes
2179 tm_file=m68k/altos3068.h
2182 echo "The Altos is supported only with the GNU assembler" 1>&2
2185 extra_headers=math-68881.h
2187 m68k-bull-sysv*) # Bull DPX/2
2188 if test x$gas = xyes
2190 if test x$stabs = xyes
2192 tm_file=m68k/dpx2cdbx.h
2194 tm_file=m68k/dpx2g.h
2199 xm_file="xm-alloca.h ${xm_file}"
2201 xmake_file=m68k/x-dpx2
2203 extra_headers=math-68881.h
2205 m68k-atari-sysv4*) # Atari variant of V.4.
2206 tm_file=m68k/atari.h
2207 xm_file="xm-alloca.h ${xm_file}"
2208 xm_defines="USG FULL_PROTOTYPES"
2210 extra_parts="crtbegin.o crtend.o"
2211 extra_headers=math-68881.h
2214 m68k-motorola-sysv*)
2215 tm_file=m68k/mot3300.h
2216 xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
2217 if test x$gas = xyes
2219 xmake_file=m68k/x-mot3300-gas
2220 if test x$gnu_ld = xyes
2222 tmake_file=m68k/t-mot3300-gald
2224 tmake_file=m68k/t-mot3300-gas
2228 xmake_file=m68k/x-mot3300
2229 if test x$gnu_ld = xyes
2231 tmake_file=m68k/t-mot3300-gld
2233 tmake_file=m68k/t-mot3300
2237 gdb_needs_out_file_path=yes
2238 extra_parts="crt0.o mcrt0.o"
2239 extra_headers=math-68881.h
2242 m68k-ncr-sysv*) # NCR Tower 32 SVR3
2243 tm_file=m68k/tower-as.h
2244 xm_defines="USG SVR3"
2245 xmake_file=m68k/x-tower
2246 extra_parts="crtbegin.o crtend.o"
2247 extra_headers=math-68881.h
2250 tm_file=m68k/plexus.h
2251 xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
2254 extra_headers=math-68881.h
2258 xm_file="xm-alloca.h ${xm_file}"
2260 extra_headers=math-68881.h
2263 xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
2264 xm_defines="USG unos"
2265 xmake_file=m68k/x-crds
2268 extra_headers=math-68881.h
2270 m68k-cbm-sysv4*) # Commodore variant of V.4.
2272 xm_file="xm-alloca.h ${xm_file}"
2273 xm_defines="USG FULL_PROTOTYPES"
2274 xmake_file=m68k/x-amix
2276 extra_parts="crtbegin.o crtend.o"
2277 extra_headers=math-68881.h
2281 tm_file=m68k/ccur-GAS.h
2282 xmake_file=m68k/x-ccur
2283 extra_headers=math-68881.h
2287 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
2288 tm_file=m68k/hp3bsd44.h
2289 xmake_file=m68k/x-hp3bsd44
2291 extra_headers=math-68881.h
2294 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
2295 tm_file=m68k/hp3bsd.h
2297 extra_headers=math-68881.h
2301 if test x$with_fp = xno
2303 tm_file=m68k/isi-nfp.h
2309 extra_headers=math-68881.h
2311 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
2312 xm_file="xm-alloca.h ${xm_file}"
2314 if test x$gas = xyes
2316 xmake_file=m68k/x-hp320g
2317 tm_file=m68k/hp320g.h
2319 xmake_file=m68k/x-hp320
2320 tm_file=m68k/hpux7.h
2322 install_headers_dir=install-headers-cpio
2324 extra_headers=math-68881.h
2327 m68k-hp-hpux*) # HP 9000 series 300
2328 xm_file="xm-alloca.h ${xm_file}"
2330 if test x$gas = xyes
2332 xmake_file=m68k/x-hp320g
2333 tm_file=m68k/hp320g.h
2335 xmake_file=m68k/x-hp320
2336 tm_file=m68k/hp320.h
2338 install_headers_dir=install-headers-cpio
2340 extra_headers=math-68881.h
2344 tm_file=m68k/sun3mach.h
2346 extra_headers=math-68881.h
2350 if test x$gas = xyes
2352 tm_file=m68k/news3gas.h
2354 tm_file=m68k/news3.h
2357 extra_headers=math-68881.h
2360 m68k-sony-bsd* | m68k-sony-newsos*)
2361 if test x$gas = xyes
2363 tm_file=m68k/newsgas.h
2368 extra_headers=math-68881.h
2371 m68k-next-nextstep2*)
2372 tm_file=m68k/next21.h
2373 xm_file="m68k/xm-next.h ${xm_file}"
2374 tmake_file=m68k/t-next
2375 xmake_file=m68k/x-next
2376 extra_objs=nextstep.o
2377 extra_headers=math-68881.h
2382 m68k-next-nextstep[34]*)
2385 xm_file="m68k/xm-next.h ${xm_file}"
2386 tmake_file=m68k/t-next
2387 xmake_file=m68k/x-next
2388 extra_objs=nextstep.o
2389 extra_parts="crtbegin.o crtend.o"
2390 extra_headers=math-68881.h
2392 if test x$enable_threads = xyes; then
2397 if test x$with_fp = xno
2399 tm_file=m68k/sun3n3.h
2401 tm_file=m68k/sun3o3.h
2405 extra_headers=math-68881.h
2407 m68k-sun-sunos*) # For SunOS 4 (the default).
2408 if test x$with_fp = xno
2410 tm_file=m68k/sun3n.h
2416 extra_headers=math-68881.h
2419 tm_file=m68k/vxm68k.h
2420 tmake_file=m68k/t-vxworks68
2421 extra_headers=math-68881.h
2422 thread_file='vxworks'
2426 tmake_file=m68k/t-m68kbare
2427 tm_file="m68k/m68k-aout.h libgloss.h"
2428 extra_headers=math-68881.h
2432 tmake_file=m68k/t-m68kbare
2433 tm_file="m68k/m68k-coff.h dbx.h"
2434 extra_headers=math-68881.h
2437 m68020-*-elf* | m68k-*-elf*)
2438 tm_file="m68k/m68020-elf.h"
2439 xm_file=m68k/xm-m68kv.h
2440 tmake_file=m68k/t-m68kelf
2441 header_files=math-68881.h
2444 if test x$gas = xyes
2448 tm_file=m68k/lynx-ng.h
2450 xm_file=m68k/xm-lynx.h
2452 tmake_file=m68k/t-lynx
2453 extra_headers=math-68881.h
2457 tm_file=m68k/netbsd.h
2464 # we need collect2 until our bug is fixed...
2467 m68k-*-sysv3*) # Motorola m68k's running system V.3
2468 xm_file="xm-alloca.h ${xm_file}"
2470 xmake_file=m68k/x-m68kv
2471 extra_parts="crtbegin.o crtend.o"
2472 extra_headers=math-68881.h
2475 m68k-*-sysv4*) # Motorola m68k's running system V.4
2476 tm_file=m68k/m68kv4.h
2477 xm_file="xm-alloca.h ${xm_file}"
2480 extra_parts="crtbegin.o crtend.o"
2481 extra_headers=math-68881.h
2484 m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
2487 tm_file=m68k/linux-aout.h
2488 tmake_file="t-linux-aout m68k/t-linux-aout"
2489 extra_headers=math-68881.h
2493 m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
2494 # with ELF format using the
2495 # GNU/Linux C library 5
2497 tm_file=m68k/linux.h
2498 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
2499 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2500 extra_headers=math-68881.h
2504 m68k-*-linux*) # Motorola m68k's running GNU/Linux
2505 # with ELF format using glibc 2
2506 # aka the GNU/Linux C library 6.
2508 tm_file=m68k/linux.h
2509 tmake_file="t-linux m68k/t-linux"
2510 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2511 extra_headers=math-68881.h
2514 if test x$enable_threads = xyes; then
2519 tmake_file=m68k/t-m68kbare
2520 tm_file=m68k/m68k-psos.h
2521 extra_headers=math-68881.h
2525 tmake_file="m68k/t-m68kbare t-rtems"
2526 tm_file=m68k/rtems.h
2527 extra_headers=math-68881.h
2530 m68k-*-rtemself*|m68k-*-rtems*)
2531 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2532 tm_file=m68k/rtemself.h
2533 extra_headers=math-68881.h
2539 tm_file=m88k/dguxbcs.h
2540 tmake_file=m88k/t-dguxbcs
2544 tmake_file=m88k/t-dgux
2547 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2548 xmake_file=m88k/x-dgux
2549 if test x$gas = xyes
2551 tmake_file=m88k/t-dgux-gas
2554 m88k-dolphin-sysv3*)
2555 tm_file=m88k/dolph.h
2556 extra_parts="crtbegin.o crtend.o"
2557 xm_file="m88k/xm-sysv3.h ${xm_file}"
2558 xmake_file=m88k/x-dolph
2559 if test x$gas = xyes
2561 tmake_file=m88k/t-m88k-gas
2564 m88k-tektronix-sysv3)
2565 tm_file=m88k/tekXD88.h
2566 extra_parts="crtbegin.o crtend.o"
2567 xm_file="m88k/xm-sysv3.h ${xm_file}"
2568 xmake_file=m88k/x-tekXD88
2569 if test x$gas = xyes
2571 tmake_file=m88k/t-m88k-gas
2575 tm_file=m88k/m88k-aout.h
2578 tm_file=m88k/m88k-coff.h
2579 tmake_file=m88k/t-bug
2583 extra_parts="crtbegin.o crtend.o"
2584 if test x$gas = xyes
2586 tmake_file=m88k/t-luna-gas
2588 tmake_file=m88k/t-luna
2592 tmake_file="${tmake_file} m88k/t-luna-gas"
2593 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
2594 xm_file="xm-openbsd.h m88k/xm-m88k.h ${xm_file}"
2597 tm_file=m88k/sysv3.h
2598 extra_parts="crtbegin.o crtend.o"
2599 xm_file="m88k/xm-sysv3.h ${xm_file}"
2600 xmake_file=m88k/x-sysv3
2601 if test x$gas = xyes
2603 tmake_file=m88k/t-m88k-gas
2607 tm_file=m88k/sysv4.h
2608 extra_parts="crtbegin.o crtend.o"
2609 xmake_file=m88k/x-sysv4
2610 tmake_file=m88k/t-sysv4
2613 tm_file=mcore/mcore-elf.h
2614 tmake_file=mcore/t-mcore
2617 tm_file=mcore/mcore-pe.h
2618 tmake_file=mcore/t-mcore-pe
2620 mips-sgi-irix6*) # SGI System V.4., IRIX 6
2621 if test "x$gnu_ld" = xyes
2623 tm_file="mips/iris6.h mips/iris6gld.h"
2625 tm_file=mips/iris6.h
2627 tmake_file=mips/t-iris6
2628 xm_file=mips/xm-iris6.h
2629 xmake_file=mips/x-iris6
2630 # if test x$enable_threads = xyes; then
2631 # thread_file='irix'
2635 tm_file="mips/elf.h mips/vxworks.h"
2636 tmake_file=mips/t-ecoff
2639 extra_parts="crtbegin.o crtend.o"
2640 thread_file='vxworks'
2642 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2643 tm_file="mips/iris6.h mips/cross64.h"
2645 xm_file="mips/xm-iris5.h"
2646 xmake_file=mips/x-iris
2647 tmake_file=mips/t-cross64
2648 # See comment in mips/iris[56].h files.
2650 # if test x$enable_threads = xyes; then
2651 # thread_file='irix'
2655 if test x$gas = xyes
2657 if test x$stabs = xyes
2659 tm_file=mips/iris5gdb.h
2661 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2664 tm_file=mips/sni-svr4.h
2667 xmake_file=mips/x-sni-svr4
2668 tmake_file=mips/t-mips-gas
2669 if test x$gnu_ld != xyes
2674 mips-sgi-irix5*) # SGI System V.4., IRIX 5
2675 if test x$gas = xyes
2677 tm_file="mips/iris5.h mips/iris5gas.h"
2678 if test x$stabs = xyes
2680 tm_file="${tm_file} dbx.h"
2683 tm_file=mips/iris5.h
2686 xm_file="mips/xm-iris5.h"
2687 xmake_file=mips/x-iris
2688 # mips-tfile doesn't work yet
2689 tmake_file=mips/t-mips-gas
2690 # See comment in mips/iris5.h file.
2692 # if test x$enable_threads = xyes; then
2693 # thread_file='irix'
2696 mips-sgi-irix4loser*) # Mostly like a MIPS.
2697 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2698 if test x$stabs = xyes; then
2699 tm_file="${tm_file} dbx.h"
2702 xmake_file=mips/x-iris
2703 if test x$gas = xyes
2705 tmake_file=mips/t-mips-gas
2707 extra_passes="mips-tfile mips-tdump"
2709 if test x$gnu_ld != xyes
2713 # if test x$enable_threads = xyes; then
2714 # thread_file='irix'
2717 mips-sgi-irix4*) # Mostly like a MIPS.
2718 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2719 if test x$stabs = xyes; then
2720 tm_file="${tm_file} dbx.h"
2723 xmake_file=mips/x-iris
2724 if test x$gas = xyes
2726 tmake_file=mips/t-mips-gas
2728 extra_passes="mips-tfile mips-tdump"
2730 if test x$gnu_ld != xyes
2734 # if test x$enable_threads = xyes; then
2735 # thread_file='irix'
2738 mips-sgi-*) # Mostly like a MIPS.
2739 tm_file="mips/iris3.h ${tm_file}"
2740 if test x$stabs = xyes; then
2741 tm_file="${tm_file} dbx.h"
2744 xmake_file=mips/x-iris3
2745 if test x$gas = xyes
2747 tmake_file=mips/t-mips-gas
2749 extra_passes="mips-tfile mips-tdump"
2751 if test x$gnu_ld != xyes
2756 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2757 tm_file="mips/osfrose.h ${tm_file}"
2758 xmake_file=mips/x-osfrose
2759 tmake_file=mips/t-osfrose
2760 extra_objs=halfpic.o
2763 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2764 tm_file=mips/dec-osf1.h
2765 if test x$stabs = xyes; then
2766 tm_file="${tm_file} dbx.h"
2768 xmake_file=mips/x-dec-osf1
2769 if test x$gas = xyes
2771 tmake_file=mips/t-mips-gas
2773 tmake_file=mips/t-ultrix
2774 extra_passes="mips-tfile mips-tdump"
2776 if test x$gnu_ld != xyes
2781 mips-dec-bsd*) # Decstation running 4.4 BSD
2782 tm_file=mips/dec-bsd.h
2783 if test x$gas = xyes
2785 tmake_file=mips/t-mips-gas
2787 tmake_file=mips/t-ultrix
2788 extra_passes="mips-tfile mips-tdump"
2790 if test x$gnu_ld != xyes
2795 mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2796 tm_file=mips/netbsd.h
2797 # On NetBSD, the headers are already okay, except for math.h.
2800 mips*-*-linux*) # Linux MIPS, either endian.
2803 mips*el-*) tm_file="mips/elfl.h mips/linux.h" ;;
2804 *) tm_file="mips/elf.h mips/linux.h" ;;
2807 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2810 if test x$enable_threads = xyes; then
2814 mips*el-*-openbsd*) # mips little endian
2815 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2817 mips*-*-openbsd*) # mips big endian
2818 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2819 tm_file="mips/openbsd-be.h ${tm_file}"
2821 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2822 tm_file="mips/news4.h ${tm_file}"
2823 if test x$stabs = xyes; then
2824 tm_file="${tm_file} dbx.h"
2826 if test x$gas = xyes
2828 tmake_file=mips/t-mips-gas
2830 extra_passes="mips-tfile mips-tdump"
2832 if test x$gnu_ld != xyes
2836 xmake_file=mips/x-sony
2838 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2839 # That is based on svr4.
2840 # t-svr4 is not right because this system doesn't use ELF.
2841 tm_file="mips/news5.h ${tm_file}"
2842 if test x$stabs = xyes; then
2843 tm_file="${tm_file} dbx.h"
2846 if test x$gas = xyes
2848 tmake_file=mips/t-mips-gas
2850 extra_passes="mips-tfile mips-tdump"
2852 if test x$gnu_ld != xyes
2857 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2858 tm_file="mips/svr4-5.h mips/svr4-t.h"
2859 if test x$stabs = xyes; then
2860 tm_file="${tm_file} dbx.h"
2863 xmake_file=mips/x-sysv
2864 if test x$gas = xyes
2866 tmake_file=mips/t-mips-gas
2867 extra_parts="crtbegin.o crtend.o"
2869 tmake_file=mips/t-mips
2870 extra_passes="mips-tfile mips-tdump"
2872 if test x$gnu_ld != xyes
2877 mips-*-ultrix* | mips-dec-mach3) # Decstation.
2878 tm_file="mips/ultrix.h ${tm_file}"
2879 if test x$stabs = xyes; then
2880 tm_file="${tm_file} dbx.h"
2882 xmake_file=mips/x-ultrix
2883 if test x$gas = xyes
2885 tmake_file=mips/t-mips-gas
2887 tmake_file=mips/t-ultrix
2888 extra_passes="mips-tfile mips-tdump"
2890 if test x$gnu_ld != xyes
2896 mips-*-riscos[56789]bsd*)
2898 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.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-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2917 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2918 if test x$stabs = xyes; then
2919 tm_file="${tm_file} dbx.h"
2921 if test x$gas = xyes
2923 tmake_file=mips/t-bsd-gas
2925 tmake_file=mips/t-bsd
2926 extra_passes="mips-tfile mips-tdump"
2928 if test x$gnu_ld != xyes
2934 mips-*-riscos[56789]sysv4*)
2936 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2937 if test x$stabs = xyes; then
2938 tm_file="${tm_file} dbx.h"
2940 xmake_file=mips/x-sysv
2941 if test x$gas = xyes
2943 tmake_file=mips/t-svr4-gas
2945 tmake_file=mips/t-svr4
2946 extra_passes="mips-tfile mips-tdump"
2948 if test x$gnu_ld != xyes
2954 mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2956 tm_file="mips/svr4-4.h ${tm_file}"
2957 if test x$stabs = xyes; then
2958 tm_file="${tm_file} dbx.h"
2961 xmake_file=mips/x-sysv
2962 if test x$gas = xyes
2964 tmake_file=mips/t-svr4-gas
2966 tmake_file=mips/t-svr4
2967 extra_passes="mips-tfile mips-tdump"
2969 if test x$gnu_ld != xyes
2975 mips-*-riscos[56789]sysv*)
2977 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
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
2995 mips-*-sysv* | mips-*-riscos*sysv*)
2996 tm_file="mips/svr3-4.h ${tm_file}"
2997 if test x$stabs = xyes; then
2998 tm_file="${tm_file} dbx.h"
3001 xmake_file=mips/x-sysv
3002 if test x$gas = xyes
3004 tmake_file=mips/t-svr3-gas
3006 tmake_file=mips/t-svr3
3007 extra_passes="mips-tfile mips-tdump"
3009 if test x$gnu_ld != xyes
3015 mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
3017 tm_file=mips/mips-5.h
3018 if test x$stabs = xyes; then
3019 tm_file="${tm_file} dbx.h"
3021 if test x$gas = xyes
3023 tmake_file=mips/t-mips-gas
3025 extra_passes="mips-tfile mips-tdump"
3027 if test x$gnu_ld != xyes
3035 tm_file=mips/ecoffl.h
3036 if test x$stabs = xyes; then
3037 tm_file="${tm_file} dbx.h"
3039 tmake_file=mips/t-ecoff
3042 tm_file="gofast.h mips/ecoff.h"
3043 if test x$stabs = xyes; then
3044 tm_file="${tm_file} dbx.h"
3046 tmake_file=mips/t-ecoff
3049 tm_file="mips/elfl.h"
3050 tmake_file=mips/t-elf
3053 tm_file="mips/elf.h"
3054 tmake_file=mips/t-elf
3057 tm_file="mips/elfl64.h"
3058 tmake_file=mips/t-elf
3060 mips64orionel-*-elf*)
3061 tm_file="mips/elforion.h mips/elfl64.h"
3062 tmake_file=mips/t-elf
3065 tm_file="mips/elf64.h"
3066 tmake_file=mips/t-elf
3069 tm_file="mips/elforion.h mips/elf64.h"
3070 tmake_file=mips/t-elf
3072 mips64orion-*-rtems*)
3073 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
3074 tmake_file="mips/t-elf t-rtems"
3077 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
3078 tmake_file=mips/t-r3900
3081 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
3082 tmake_file=mips/t-r3900
3084 mips-*-*) # Default MIPS RISC-OS 4.0.
3085 if test x$stabs = xyes; then
3086 tm_file="${tm_file} dbx.h"
3088 if test x$gas = xyes
3090 tmake_file=mips/t-mips-gas
3092 extra_passes="mips-tfile mips-tdump"
3094 if test x$gnu_ld != xyes
3102 tm_file="mn10200/mn10200.h"
3103 if test x$stabs = xyes
3105 tm_file="${tm_file} dbx.h"
3111 tm_file="mn10300/mn10300.h"
3112 if test x$stabs = xyes
3114 tm_file="${tm_file} dbx.h"
3119 tm_file=ns32k/encore.h
3123 tm_file=ns32k/sequent.h
3127 tm_file=ns32k/tek6100.h
3131 tm_file=ns32k/tek6200.h
3135 tm_file=ns32k/merlin.h
3139 tm_file=ns32k/pc532-mach.h
3143 tm_file=ns32k/pc532-min.h
3144 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
3149 tm_file=ns32k/netbsd.h
3150 xm_file="ns32k/xm-netbsd.h ${xm_file}"
3151 # On NetBSD, the headers are already okay, except for math.h.
3156 tm_file="${tm_file} pdp11/2bsd.h"
3166 tm_file="svr4.h pj/linux.h ${tm_file}"
3171 tm_file="svr4.h pj/pjl.h ${tm_file}"
3178 xmake_file=romp/x-mach
3185 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
3189 tm_file=rs6000/beos.h
3190 xm_file=rs6000/xm-beos.h
3191 tmake_file=rs6000/t-beos
3192 xmake_file=rs6000/x-beos
3195 tm_file=rs6000/sysv4.h
3196 xm_file="rs6000/xm-sysv4.h"
3197 xm_defines="USG POSIX"
3198 extra_headers=ppc-asm.h
3199 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3200 xmake_file=rs6000/x-sysv4
3203 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
3204 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3205 extra_headers=ppc-asm.h
3208 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
3209 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3210 extra_headers=ppc-asm.h
3213 tm_file="rs6000/sysv4.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"
3219 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3220 extra_headers=ppc-asm.h
3223 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h"
3224 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
3225 extra_headers=ppc-asm.h
3227 powerpc-*-linux*libc1)
3228 tm_file="rs6000/sysv4.h rs6000/linux.h"
3229 xm_file=rs6000/xm-sysv4.h
3230 out_file=rs6000/rs6000.c
3231 tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
3233 extra_headers=ppc-asm.h
3234 if test x$enable_threads = xyes; then
3239 tm_file="rs6000/sysv4.h rs6000/linux.h"
3240 xm_file="rs6000/xm-sysv4.h"
3241 xm_defines="USG ${xm_defines}"
3242 out_file=rs6000/rs6000.c
3243 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
3245 extra_headers=ppc-asm.h
3246 if test x$enable_threads = xyes; then
3250 powerpc-wrs-vxworks*)
3252 xm_file="rs6000/xm-sysv4.h"
3253 xm_defines="USG POSIX"
3254 tm_file="rs6000/sysv4.h rs6000/vxppc.h"
3255 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3256 extra_headers=ppc-asm.h
3257 thread_file='vxworks'
3259 powerpcle-wrs-vxworks*)
3261 xm_file="rs6000/xm-sysv4.h"
3262 xm_defines="USG POSIX"
3263 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
3264 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3265 extra_headers=ppc-asm.h
3266 thread_file='vxworks'
3269 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3270 xm_file="rs6000/xm-sysv4.h"
3271 xm_defines="USG POSIX"
3272 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3273 xmake_file=rs6000/x-sysv4
3274 extra_headers=ppc-asm.h
3277 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3278 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3279 extra_headers=ppc-asm.h
3281 powerpcle-*-eabisim*)
3282 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
3283 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3284 extra_headers=ppc-asm.h
3287 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
3288 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3289 extra_headers=ppc-asm.h
3291 powerpcle-*-solaris2*)
3292 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
3293 xm_file="rs6000/xm-sysv4.h"
3294 xm_defines="USG POSIX"
3295 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3296 xmake_file=rs6000/x-sysv4
3297 extra_headers=ppc-asm.h
3300 rs6000-ibm-aix3.[01]*)
3302 tm_file=rs6000/aix31.h
3303 xmake_file=rs6000/x-aix31
3308 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
3310 tm_file=rs6000/aix3newas.h
3311 if test x$host != x$target
3313 tmake_file=rs6000/t-xnewas
3315 tmake_file=rs6000/t-newas
3321 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
3323 tm_file=rs6000/aix41.h
3324 if test x$host != x$target
3326 tmake_file=rs6000/t-xnewas
3328 tmake_file=rs6000/t-newas
3330 if test "$gnu_ld" = yes
3332 xmake_file=rs6000/x-aix41-gld
3334 tmake_file='rs6000/t-newas'
3336 xmake_file=rs6000/x-aix41
3341 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
3343 tm_file=rs6000/aix43.h
3344 tmake_file=rs6000/t-aix43
3345 xmake_file=rs6000/x-aix41
3351 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
3353 tm_file=rs6000/aix43.h
3354 tmake_file=rs6000/t-aix43
3355 xmake_file=rs6000/x-aix41
3369 tm_file=rs6000/mach.h
3370 xm_file="${xm_file} rs6000/xm-mach.h"
3371 xmake_file=rs6000/x-mach
3375 tm_file=rs6000/lynx.h
3376 xm_file=rs6000/xm-lynx.h
3377 tmake_file=rs6000/t-rs6000
3378 xmake_file=rs6000/x-lynx
3382 tmake_file="sh/t-sh sh/t-elf"
3383 tm_file="sh/sh.h sh/elf.h"
3387 tmake_file="sh/t-sh sh/t-elf t-rtems"
3388 tm_file="sh/sh.h sh/elf.h sh/rtemself.h"
3392 tmake_file="sh/t-sh t-rtems"
3393 tm_file="sh/sh.h sh/rtems.h"
3397 tm_file="sh/sh.h sh/elf.h sh/linux.h"
3398 tmake_file="sh/t-sh sh/t-elf sh/t-linux"
3401 if test x$enable_threads = xyes; then
3411 xm_file="xm-alloca.h ${xm_file}"
3414 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
3415 tm_file=sparc/vxsparc.h
3416 tmake_file=sparc/t-vxsparc
3418 thread_file='vxworks'
3421 tmake_file=sparc/t-sparcbare
3422 tm_file="sparc/aout.h libgloss.h"
3425 tm_file=sparc/netbsd.h
3430 # we need collect2 until our bug is fixed...
3438 tmake_file=sparc/t-elf
3439 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3443 sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
3444 xm_file="${xm_file} sparc/xm-linux.h"
3445 tm_file=sparc/linux-aout.h
3449 sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
3450 xm_file="${xm_file} sparc/xm-linux.h"
3452 tm_file=sparc/linux.h
3453 tmake_file="t-linux t-linux-gnulibc1"
3454 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3458 sparc-*-linux*) # Sparc's running GNU/Linux, libc6
3459 xm_file="${xm_file} sparc/xm-linux.h"
3461 tm_file=sparc/linux.h
3462 tmake_file="t-linux"
3463 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3465 if test x$enable_threads = xyes; then
3471 if test x$gas = xyes
3473 tm_file=sparc/lynx.h
3475 tm_file=sparc/lynx-ng.h
3477 xm_file=sparc/xm-lynx.h
3478 tmake_file=sparc/t-sunos41
3482 tmake_file="sparc/t-sparcbare t-rtems"
3483 tm_file=sparc/rtems.h
3485 sparc-*-rtems*|sparc-*-rtemself*)
3486 tm_file="sparc/rtemself.h"
3487 tmake_file="sparc/t-elf t-rtems"
3488 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3492 sparcv9-*-solaris2*)
3493 if test x$gnu_ld = xyes
3495 tm_file=sparc/sol2-64.h
3497 tm_file=sparc/sol2-sld-64.h
3499 xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
3500 xm_defines="USG POSIX"
3501 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3502 if test x$gnu_ld = xyes; then
3503 tmake_file="$tmake_file sparc/t-slibgcc"
3505 tmake_file="$tmake_file sparc/t-slibgcc-sld"
3507 xmake_file=sparc/x-sysv4
3508 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3510 if test x${enable_threads} = x ; then
3511 enable_threads=$have_pthread_h
3512 if test x${enable_threads} = x ; then
3513 enable_threads=$have_thread_h
3516 if test x${enable_threads} = xyes ; then
3517 if test x${have_pthread_h} = xyes ; then
3520 thread_file='solaris'
3524 sparc-hal-solaris2*)
3525 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3526 xm_defines="USG POSIX"
3527 tm_file="sparc/sol2.h sparc/hal.h"
3528 tmake_file="sparc/t-halos sparc/t-sol2"
3529 if test x$gnu_ld = xyes; then
3530 tmake_file="$tmake_file sparc/t-slibgcc"
3532 tmake_file="$tmake_file sparc/t-slibgcc-sld"
3534 xmake_file=sparc/x-sysv4
3535 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3546 thread_file='solaris'
3549 if test x$gnu_ld = xyes
3551 tm_file=sparc/sol2.h
3553 tm_file=sparc/sol2-sld.h
3555 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3556 xm_defines="USG POSIX"
3557 tmake_file=sparc/t-sol2
3558 if test x$gnu_ld = xyes; then
3559 tmake_file="$tmake_file sparc/t-slibgcc"
3561 tmake_file="$tmake_file sparc/t-slibgcc-sld"
3563 xmake_file=sparc/x-sysv4
3564 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3565 # At the moment, 32-to-64 cross compilation doesn't work.
3568 # *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3569 #changequote([,])dnl
3571 # if test x$gnu_ld = xyes
3573 # tm_file=sparc/sol2-64.h
3575 # tm_file=sparc/sol2-sld-64.h
3577 # tmake_file="$tmake_file sparc/t-sol2-64"
3590 if test x${enable_threads} = x; then
3591 enable_threads=$have_pthread_h
3592 if test x${enable_threads} = x; then
3593 enable_threads=$have_thread_h
3596 if test x${enable_threads} = xyes; then
3597 if test x${have_pthread_h} = xyes; then
3600 thread_file='solaris'
3605 tm_file=sparc/sunos4.h
3606 tmake_file=sparc/t-sunos40
3610 tm_file=sparc/sunos4.h
3611 tmake_file=sparc/t-sunos41
3613 if test x$gas = xyes; then
3614 tm_file="${tm_file} sparc/sun4gas.h"
3618 tm_file=sparc/sun4o3.h
3622 tm_file=sparc/sysv4.h
3623 xm_file="sparc/xm-sysv4.h"
3624 xm_defines="USG POSIX"
3626 xmake_file=sparc/x-sysv4
3627 extra_parts="crtbegin.o crtend.o"
3630 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3631 xm_defines="USG POSIX"
3632 tm_file=sparc/vxsim.h
3633 tmake_file=sparc/t-vxsparc
3634 xmake_file=sparc/x-sysv4
3637 tm_file="sparc/splet.h libgloss.h"
3638 tmake_file=sparc/t-splet
3641 tm_file="sparc/litecoff.h libgloss.h"
3642 tmake_file=sparc/t-sparclite
3645 tm_file="sparc/lite.h aoutos.h libgloss.h"
3646 tmake_file=sparc/t-sparclite
3649 tm_file="sparc/liteelf.h"
3650 tmake_file=sparc/t-sparclite
3651 extra_parts="crtbegin.o crtend.o"
3654 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3655 tmake_file=sparc/t-sp86x
3658 tm_file="sparc/sp86x-elf.h"
3659 tmake_file=sparc/t-sp86x
3660 extra_parts="crtbegin.o crtend.o"
3663 tmake_file=sparc/t-sp64
3664 tm_file=sparc/sp64-aout.h
3667 tmake_file=sparc/t-sp64
3668 tm_file=sparc/sp64-elf.h
3669 extra_parts="crtbegin.o crtend.o"
3671 sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
3672 tmake_file="t-linux sparc/t-linux64"
3673 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3674 tm_file=sparc/linux64.h
3676 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3678 if test x$enable_threads = xyes; then
3685 *** The Thumb targets have been depreciated. The equivalent
3686 *** ARM based toolchain can now generated Thumb instructions
3687 *** when the -mthumb switch is given to the compiler.])
3691 tm_file="v850/rtems.h"
3692 xm_file="v850/xm-v850.h"
3693 tmake_file="v850/t-v850 t-rtems"
3694 if test x$stabs = xyes
3696 tm_file="${tm_file} dbx.h"
3701 target_cpu_default="TARGET_CPU_generic"
3703 tm_file="v850/v850.h"
3704 xm_file="v850/xm-v850.h"
3705 tmake_file=v850/t-v850
3706 if test x$stabs = xyes
3708 tm_file="${tm_file} dbx.h"
3712 vax-*-bsd*) # vaxen running BSD
3716 vax-*-sysv*) # vaxen running system V
3717 tm_file="${tm_file} vax/vaxv.h"
3722 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3728 tmake_file="${tmake_file} vax/t-openbsd"
3729 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
3730 xm_file="xm-openbsd.h vax/xm-vax.h"
3734 vax-*-ultrix*) # vaxen running ultrix
3735 tm_file="${tm_file} vax/ultrix.h"
3738 vax-*-vms*) # vaxen running VMS
3739 xm_file=vax/xm-vms.h
3743 vax-*-*) # vax default entry
3747 xm_file="${xm_file} xm-svr3"
3751 echo "Configuration $machine not supported" 1>&2
3758 ;; # Existing GNU/Linux systems do not use the GNU setup.
3760 # On the GNU system, the setup is just about the same on
3761 # each different CPU. The specific machines that GNU
3762 # supports are matched above and just set $cpu_type.
3763 xm_file="xm-gnu.h ${xm_file}"
3764 tm_file=${cpu_type}/gnu.h
3765 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
3766 # GNU always uses ELF.
3768 # GNU tools are the only tools.
3771 xmake_file=x-linux # These details are the same as Linux.
3772 tmake_file=t-gnu # These are not.
3775 xmake_try_sysv=x-sysv
3776 install_headers_dir=install-headers-cpio
3779 install_headers_dir=install-headers-cpio
3783 # Distinguish i[34567]86
3784 # Also, do not run mips-tfile on MIPS if using gas.
3785 # Process --with-cpu= for PowerPC/rs6000
3786 target_cpu_default2=
3789 target_cpu_default2=1
3792 case $target_alias in
3794 target_cpu_default2=4
3797 target_cpu_default2=2
3801 i686-*-* | i786-*-*)
3802 target_cpu_default2=3
3809 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3812 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3815 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3818 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3821 target_cpu_default2="MASK_CPU_EV5"
3825 if test x$gas = xyes
3827 if test "$target_cpu_default2" = ""
3829 target_cpu_default2="MASK_GAS"
3831 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3836 case "x$with_cpu" in
3839 target_cpu_default2="TARGET_CPU_generic"
3842 # Distinguish cores, and major variants
3843 # arm7m doesn't exist, but D & I don't affect code
3845 xarm[23678] | xarm250 | xarm[67][01]0 \
3846 | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
3847 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3848 | xstrongarm | xstrongarm110 | xstrongarm1100)
3850 target_cpu_default2="TARGET_CPU_$with_cpu"
3854 echo "--with-cpu must be passed a value" 1>&2
3859 if test x$pass2done = xyes
3861 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3868 mips*-*-ecoff* | mips*-*-elf*)
3869 if test x$gas = xyes
3871 if test x$gnu_ld = xyes
3873 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3875 target_cpu_default2="MASK_GAS"
3880 if test x$gas = xyes
3882 target_cpu_default2="MASK_GAS"
3885 powerpc*-*-* | rs6000-*-*)
3886 case "x$with_cpu" in
3890 xcommon | xpower | xpower2 | xpowerpc | xrios \
3891 | xrios1 | xrios2 | xrsc | xrsc1 \
3892 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3893 | xec603e | x740 | x750 | x401 \
3894 | x403 | x505 | x801 | x821 | x823 | x860)
3895 target_cpu_default2="\"$with_cpu\""
3899 echo "--with-cpu must be passed a value" 1>&2
3904 if test x$pass2done = xyes
3906 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3913 case ".$with_cpu" in
3915 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3917 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3918 target_cpu_default2="TARGET_CPU_$with_cpu"
3921 if test x$pass2done = xyes
3923 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3931 if test "$target_cpu_default2" != ""
3933 if test "$target_cpu_default" != ""
3935 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3937 target_cpu_default=$target_cpu_default2
3941 # No need for collect2 if we have the GNU linker.
3942 # Actually, there is now; GNU ld doesn't handle the EH info or
3943 # collecting for shared libraries.
3950 # Save data on machine being used to compile GCC in build_xm_file.
3951 # Save data on host machine in vars host_xm_file and host_xmake_file.
3952 if test x$pass1done = x
3954 if test x"$xm_file" = x
3955 then build_xm_file=$cpu_type/xm-$cpu_type.h
3956 else build_xm_file=$xm_file
3958 build_xm_defines=$xm_defines
3959 build_install_headers_dir=$install_headers_dir
3960 build_exeext=$exeext
3963 if test x$pass2done = x
3965 if test x"$xm_file" = x
3966 then host_xm_file=$cpu_type/xm-$cpu_type.h
3967 else host_xm_file=$xm_file
3969 host_xm_defines=$xm_defines
3970 if test x"$xmake_file" = x
3971 then xmake_file=$cpu_type/x-$cpu_type
3973 host_xmake_file="$xmake_file"
3974 host_truncate_target=$truncate_target
3975 host_extra_gcc_objs=$extra_gcc_objs
3976 host_extra_objs=$extra_host_objs
3983 extra_objs="${host_extra_objs} ${extra_objs}"
3985 # Default the target-machine variables that were not explicitly set.
3986 if test x"$tm_file" = x
3987 then tm_file=$cpu_type/$cpu_type.h; fi
3989 if test x$extra_headers = x
3990 then extra_headers=; fi
3992 if test x"$xm_file" = x
3993 then xm_file=$cpu_type/xm-$cpu_type.h; fi
3995 if test x$md_file = x
3996 then md_file=$cpu_type/$cpu_type.md; fi
3998 if test x$out_file = x
3999 then out_file=$cpu_type/$cpu_type.c; fi
4001 if test x"$tmake_file" = x
4002 then tmake_file=$cpu_type/t-$cpu_type
4005 if test x"$dwarf2" = xyes
4006 then tm_file="$tm_file tm-dwarf2.h"
4009 if test x$float_format = x
4010 then float_format=i64
4013 if test $float_format = none
4014 then float_h_file=Makefile.in
4015 else float_h_file=float-$float_format.h
4018 # Handle cpp installation.
4019 if test x$enable_cpp != xno
4021 tmake_file="$tmake_file t-install-cpp"
4024 # Say what files are being used for the output code and MD file.
4025 echo "Using \`$srcdir/config/$out_file' to output insns."
4026 echo "Using \`$srcdir/config/$md_file' as machine description file."
4029 for f in $tm_file; do
4032 if test $count = ax; then
4033 echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
4035 echo "Using the following target machine macro files:"
4036 for f in $tm_file; do
4037 echo " $srcdir/config/$f"
4042 for f in $host_xm_file; do
4045 if test $count = ax; then
4046 echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
4048 echo "Using the following host machine macro files:"
4049 for f in $host_xm_file; do
4050 echo " $srcdir/config/$f"
4054 if test "$host_xm_file" != "$build_xm_file"; then
4056 for f in $build_xm_file; do
4059 if test $count = ax; then
4060 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
4062 echo "Using the following build machine macro files:"
4063 for f in $build_xm_file; do
4064 echo " $srcdir/config/$f"
4069 if test x$thread_file = x; then
4070 if test x$target_thread_file != x; then
4071 thread_file=$target_thread_file
4073 thread_file='single'
4077 # Set up the header files.
4078 # $links is the list of header files to create.
4079 # $vars is the list of shell variables with file names to include.
4080 # auto-host.h is the file containing items generated by autoconf and is
4081 # the first file included by config.h.
4083 host_xm_file="auto-host.h gansidecl.h ${host_xm_file} hwint.h"
4085 # If host=build, it is correct to have hconfig include auto-host.h
4086 # as well. If host!=build, we are in error and need to do more
4087 # work to find out the build config parameters.
4088 if test x$host = x$build
4090 build_xm_file="auto-host.h gansidecl.h ${build_xm_file} hwint.h"
4092 # We create a subdir, then run autoconf in the subdir.
4093 # To prevent recursion we set host and build for the new
4094 # invocation of configure to the build for this invocation
4101 /*) realsrcdir=${srcdir};;
4102 *) realsrcdir=../${srcdir};;
4104 CC=${CC_FOR_BUILD} ${realsrcdir}/configure \
4105 --target=$target --host=$build --build=$build
4107 # We just finished tests for the build machine, so rename
4108 # the file auto-build.h in the gcc directory.
4109 mv auto-host.h ../auto-build.h
4112 build_xm_file="auto-build.h gansidecl.h ${build_xm_file} hwint.h"
4115 xm_file="gansidecl.h ${xm_file}"
4116 tm_file="gansidecl.h ${tm_file}"
4118 vars="host_xm_file tm_file tm_p_file xm_file build_xm_file"
4119 links="config.h tm.h tm_p.h tconfig.h hconfig.h"
4120 defines="host_xm_defines null_defines null_defines xm_defines build_xm_defines"
4123 if test -f config.status; then mv -f config.status config.bak; fi
4126 while test -n "$vars"
4128 set $vars; var=$1; shift; vars=$*
4129 set $links; link=$1; shift; links=$*
4130 set $defines; define=$1; shift; defines=$*
4133 # Make sure the file is created, even if it is empty.
4136 # Define TARGET_CPU_DEFAULT if the system wants one.
4137 # This substitutes for lots of *.h files.
4138 if test "$target_cpu_default" != "" -a $link = tm.h
4140 echo "#define TARGET_CPU_DEFAULT ($target_cpu_default)" >>$link
4143 for file in `eval echo '$'$var`; do
4145 auto-host.h | auto-build.h )
4148 echo '#ifdef IN_GCC' >>$link
4151 echo "#include \"$file\"" >>$link
4153 auto-host.h | auto-build.h )
4156 echo '#endif' >>$link
4161 for def in `eval echo '$'$define`; do
4162 echo "#ifndef $def" >>$link
4163 echo "#define $def" >>$link
4164 echo "#endif" >>$link
4168 # Truncate the target if necessary
4169 if test x$host_truncate_target != x; then
4170 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4173 # Get the version trigger filename from the toplevel
4174 if test "${with_gcc_version_trigger+set}" = set; then
4175 gcc_version_trigger=$with_gcc_version_trigger
4177 gcc_version_trigger=${srcdir}/version.c
4180 gcc_version_full=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^\"]*\)\".*/\1/'`
4181 gcc_version=`echo ${gcc_version_full} | sed -e 's/\([^ ]*\) .*/\1/'`
4184 # Internationalization
4186 VERSION="$gcc_version"
4187 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",
4188 [Define to the name of the distribution.])
4189 AC_DEFINE_UNQUOTED(VERSION, "$VERSION",
4190 [Define to the version of the distribution.])
4196 # Enable NLS support by default
4198 [ --enable-nls use Native Language Support (default)],
4201 # if cross compiling, disable NLS support.
4202 # It's not worth the trouble, at least for now.
4204 if test "${build}" != "${host}" && test "x$enable_nls" = "xyes"; then
4205 AC_MSG_WARN(Disabling NLS support for canadian cross compiler.)
4209 # if NLS is enabled, also enable check in po subdir
4210 if test $enable_nls = yes; then
4219 XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
4221 # Windows32 Registry support for specifying GCC installation paths.
4222 AC_ARG_ENABLE(win32-registry,
4223 [ --disable-win32-registry
4224 Disable lookup of installation paths in the
4225 Registry on Windows hosts.
4226 --enable-win32-registry Enable registry lookup (default).
4227 --enable-win32-registry=KEY
4228 Use KEY instead of GCC version as the last portion
4229 of the registry key.],,)
4231 AC_MSG_CHECKING(whether windows registry support is requested)
4232 if test x$enable_win32_registry != xno; then
4233 AC_DEFINE(ENABLE_WIN32_REGISTRY, 1,
4234 [Define to 1 if installation paths should be looked up in Windows32
4235 Registry. Ignored on non windows32 hosts.])
4241 # Check if user specified a different registry key.
4242 case x${enable_win32_registry} in
4245 gcc_cv_win32_registry_key="$VERSION"
4248 # no registry lookup.
4249 gcc_cv_win32_registry_key=''
4252 # user-specified key.
4253 gcc_cv_win32_registry_key="$enable_win32_registry"
4257 if test x$enable_win32_registry != xno; then
4258 AC_MSG_CHECKING(registry key on windows hosts)
4259 AC_DEFINE_UNQUOTED(WIN32_REGISTRY_KEY, "$gcc_cv_win32_registry_key",
4260 [Define to be the last portion of registry key on windows hosts.])
4261 AC_MSG_RESULT($gcc_cv_win32_registry_key)
4264 # Get an absolute path to the GCC top-level source directory
4270 # Conditionalize the makefile for this host machine.
4271 # Make-host contains the concatenation of all host makefile fragments
4272 # [there can be more than one]. This file is built by configure.frag.
4273 host_overrides=Make-host
4274 dep_host_xmake_file=
4275 for f in .. ${host_xmake_file}
4277 if test -f ${srcdir}/config/$f
4279 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
4283 # Conditionalize the makefile for this target machine.
4284 # Make-target contains the concatenation of all host makefile fragments
4285 # [there can be more than one]. This file is built by configure.frag.
4286 target_overrides=Make-target
4288 for f in .. ${tmake_file}
4290 if test -f ${srcdir}/config/$f
4292 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
4296 # If the host doesn't support symlinks, modify CC in
4297 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
4298 # Otherwise, we can use "CC=$(CC)".
4300 if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
4302 cc_set_by_configure="\$(CC)"
4303 quoted_cc_set_by_configure="\$(CC)"
4304 stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
4307 if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
4309 symbolic_link="cp -p"
4313 cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
4314 quoted_cc_set_by_configure="\\\`case '\\\$(CC)' in stage*) echo '\\\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\\\$(CC)';; esac\\\`"
4315 stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
4319 out_object_file=`basename $out_file .c`.o
4322 for f in $tm_file; do
4325 tm_file_list="${tm_file_list} $f" ;;
4326 *) tm_file_list="${tm_file_list} \$(srcdir)/config/$f" ;;
4331 for f in $host_xm_file; do
4333 auto-host.h | gansidecl.h | hwint.h )
4334 host_xm_file_list="${host_xm_file_list} $f" ;;
4335 *) host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f" ;;
4340 for f in $build_xm_file; do
4342 auto-build.h | auto-host.h | gansidecl.h | hwint.h )
4343 build_xm_file_list="${build_xm_file_list} $f" ;;
4344 *) build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f" ;;
4348 # Define macro CROSS_COMPILE in compilation
4349 # if this is a cross-compiler.
4350 # Also use all.cross instead of all.internal
4351 # and add cross-make to Makefile.
4352 cross_overrides="/dev/null"
4353 if test x$host != x$target
4355 cross_defines="CROSS=-DCROSS_COMPILE"
4356 cross_overrides="${topdir}/cross-make"
4359 # If this is a cross-compiler that does not
4360 # have its own set of headers then define
4363 # If this is using newlib, then define inhibit_libc in
4364 # LIBGCC2_CFLAGS. This will cause __eprintf to be left out of
4365 # libgcc.a, but that's OK because newlib should have its own version of
4368 if [test x$host != x$target] && [test x$with_headers = x]; then
4369 inhibit_libc=-Dinhibit_libc
4371 if [test x$with_newlib = xyes]; then
4372 inhibit_libc=-Dinhibit_libc
4375 AC_SUBST(inhibit_libc)
4377 # When building gcc with a cross-compiler, we need to fix a few things.
4378 # This must come after cross-make as we want all.build to override
4380 build_overrides="/dev/null"
4381 if test x$build != x$host
4383 build_overrides="${topdir}/build-make"
4386 # Expand extra_headers to include complete path.
4387 # This substitutes for lots of t-* files.
4389 if test "x$extra_headers" = x
4392 # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
4393 for file in $extra_headers;
4395 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
4399 if test x$use_collect2 = xno; then
4403 # Add a definition of USE_COLLECT2 if system wants one.
4404 # Also tell toplev.c what to do.
4405 # This substitutes for lots of t-* files.
4406 if test x$use_collect2 = x
4411 will_use_collect2="collect2"
4412 maybe_use_collect2="-DUSE_COLLECT2"
4416 # Set MD_DEPS if the real md file is in md.pre-cpp.
4417 # Set MD_CPP to the cpp to pass the md file through. Md files use ';'
4418 # for line oriented comments, so we must always use a GNU cpp. If
4419 # building gcc with a cross compiler, use the cross compiler just
4420 # built. Otherwise, we can use the cpp just built.
4422 if test "x$md_cppflags" = x
4424 md_file_sub=$srcdir/config/$md_file
4429 # If we have gas in the build tree, make a link to it.
4430 if test -f ../gas/Makefile; then
4431 rm -f as; $symbolic_link ../gas/as-new$host_exeext as$host_exeext 2>/dev/null
4434 # If we have nm in the build tree, make a link to it.
4435 if test -f ../binutils/Makefile; then
4436 rm -f nm; $symbolic_link ../binutils/nm-new$host_exeext nm$host_exeext 2>/dev/null
4439 # If we have ld in the build tree, make a link to it.
4440 if test -f ../ld/Makefile; then
4441 # if test x$use_collect2 = x; then
4442 # rm -f ld; $symbolic_link ../ld/ld-new$host_exeext ld$host_exeext 2>/dev/null
4444 rm -f collect-ld; $symbolic_link ../ld/ld-new$host_exeext collect-ld$host_exeext 2>/dev/null
4448 # Figure out what assembler we will be using.
4449 AC_MSG_CHECKING(what assembler to use)
4451 gcc_cv_gas_major_version=
4452 gcc_cv_gas_minor_version=
4453 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
4454 if test -x "$DEFAULT_ASSEMBLER"; then
4455 gcc_cv_as="$DEFAULT_ASSEMBLER"
4456 elif test -x "$AS"; then
4458 elif test -x as$host_exeext; then
4459 # Build using assembler in the current directory.
4460 gcc_cv_as=./as$host_exeext
4461 elif test -f $gcc_cv_as_gas_srcdir/configure.in -a -f ../gas/Makefile; then
4462 # Single tree build which includes gas.
4463 for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
4466 gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f`
4468 if test x$gcc_cv_gas_version != x; then
4473 gcc_cv_gas_major_version=`expr "$gcc_cv_gas_version" : "VERSION=\([0-9]*\)"`
4474 gcc_cv_gas_minor_version=`expr "$gcc_cv_gas_version" : "VERSION=[0-9]*\.\([0-9]*\)"`
4478 if test "x$gcc_cv_as" = x -a x$host = x$target; then
4480 # Search the same directories that the installed compiler will
4481 # search. Else we may find the wrong assembler and lose. If we
4482 # do not find a suitable assembler binary, then try the user's
4485 # Also note we have to check MD_EXEC_PREFIX before checking the
4486 # user's path. Unfortunately, there is no good way to get at the
4487 # value of MD_EXEC_PREFIX here. So we do a brute force search
4488 # through all the known MD_EXEC_PREFIX values. Ugh. This needs
4489 # to be fixed as part of the make/configure rewrite too.
4491 if test "x$exec_prefix" = xNONE; then
4492 if test "x$prefix" = xNONE; then
4493 test_prefix=/usr/local
4498 test_prefix=$exec_prefix
4501 # If the loop below does not find an assembler, then use whatever
4502 # one we can find in the users's path.
4506 test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \
4507 $test_prefix/lib/gcc-lib/$target \
4508 /usr/lib/gcc/$target/$gcc_version \
4509 /usr/lib/gcc/$target \
4510 $test_prefix/$target/bin/$target/$gcc_version \
4511 $test_prefix/$target/bin \
4516 /bsd43/usr/lib/cmplrs/cc \
4517 /usr/cross64/usr/bin \
4518 /usr/lib/cmplrs/cc \
4519 /sysv/usr/lib/cmplrs/cc \
4520 /svr4/usr/lib/cmplrs/cc \
4523 for dir in $test_dirs; do
4524 if test -f $dir/as$host_exeext; then
4525 gcc_cv_as=$dir/as$host_exeext
4530 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4531 AC_MSG_RESULT("newly built gas")
4533 AC_MSG_RESULT($gcc_cv_as)
4536 # Figure out what nm we will be using.
4537 AC_MSG_CHECKING(what nm to use)
4538 if test -x nm$host_exeext; then
4539 gcc_cv_nm=./nm$host_exeext
4540 elif test x$host = x$target; then
4542 gcc_cv_nm=nm$host_exeext
4544 AC_MSG_RESULT($gcc_cv_nm)
4546 # Figure out what assembler alignment features are present.
4547 AC_MSG_CHECKING(assembler alignment features)
4548 gcc_cv_as_alignment_features=
4549 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4550 # Gas version 2.6 and later support for .balign and .p2align.
4551 # bytes to skip when using .p2align.
4552 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
4553 gcc_cv_as_alignment_features=".balign and .p2align"
4554 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4556 # Gas version 2.8 and later support specifying the maximum
4557 # bytes to skip when using .p2align.
4558 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
4559 gcc_cv_as_alignment_features=".p2align including maximum skip"
4560 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4562 elif test x$gcc_cv_as != x; then
4563 # Check if we have .balign and .p2align
4564 echo ".balign 4" > conftest.s
4565 echo ".p2align 2" >> conftest.s
4566 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4567 gcc_cv_as_alignment_features=".balign and .p2align"
4568 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4570 rm -f conftest.s conftest.o
4571 # Check if specifying the maximum bytes to skip when
4572 # using .p2align is supported.
4573 echo ".p2align 4,,7" > conftest.s
4574 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4575 gcc_cv_as_alignment_features=".p2align including maximum skip"
4576 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4578 rm -f conftest.s conftest.o
4580 AC_MSG_RESULT($gcc_cv_as_alignment_features)
4582 AC_MSG_CHECKING(assembler subsection support)
4583 gcc_cv_as_subsections=
4584 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4585 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
4586 gcc_cv_as_subsections="working .subsection -1"
4588 elif test x$gcc_cv_as != x; then
4589 # Check if we have .subsection
4590 echo ".subsection 1" > conftest.s
4591 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4592 gcc_cv_as_subsections=".subsection"
4593 if test x$gcc_cv_nm != x; then
4594 cat > conftest.s <<EOF
4595 conftest_label1: .word 0
4597 conftest_label2: .word 0
4600 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4601 $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1
4602 $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2
4603 if cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then
4606 gcc_cv_as_subsections="working .subsection -1"
4611 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4613 if test x"$gcc_cv_as_subsections" = x"working .subsection -1"; then
4614 AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING, 1,
4615 [Define if your assembler supports .subsection and .subsection -1 starts
4616 emitting at the beginning of your section.])
4618 AC_MSG_RESULT($gcc_cv_as_subsections)
4620 AC_MSG_CHECKING(assembler weak 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 2 -o "$gcc_cv_gas_major_version" -gt 2; then
4624 gcc_cv_as_weak="yes"
4626 elif test x$gcc_cv_as != x; then
4627 # Check if we have .weak
4628 echo " .weak foobar" > conftest.s
4629 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4630 gcc_cv_as_weak="yes"
4632 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4634 if test x"$gcc_cv_as_weak" = xyes; then
4635 AC_DEFINE(HAVE_GAS_WEAK, 1, [Define if your assembler supports .weak.])
4637 AC_MSG_RESULT($gcc_cv_as_weak)
4639 AC_MSG_CHECKING(assembler hidden support)
4641 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4642 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
4643 gcc_cv_as_hidden="yes"
4645 elif test x$gcc_cv_as != x; then
4646 # Check if we have .hidden
4647 echo " .hidden foobar" > conftest.s
4648 echo "foobar:" >> conftest.s
4649 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4650 gcc_cv_as_hidden="yes"
4652 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4654 if test x"$gcc_cv_as_hidden" = xyes; then
4655 AC_DEFINE(HAVE_GAS_HIDDEN, 1,
4656 [Define if your assembler supports .hidden.])
4658 AC_MSG_RESULT($gcc_cv_as_hidden)
4662 AC_CACHE_CHECK([assembler .register pseudo-op support],
4663 gcc_cv_as_register_pseudo_op, [
4664 gcc_cv_as_register_pseudo_op=unknown
4665 if test x$gcc_cv_as != x; then
4666 # Check if we have .register
4667 echo ".register %g2, #scratch" > conftest.s
4668 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4669 gcc_cv_as_register_pseudo_op=yes
4671 gcc_cv_as_register_pseudo_op=no
4673 rm -f conftest.s conftest.o
4676 if test "x$gcc_cv_as_register_pseudo_op" = xyes; then
4677 AC_DEFINE(HAVE_AS_REGISTER_PSEUDO_OP, 1,
4678 [Define if your assembler supports .register.])
4681 AC_CACHE_CHECK([assembler supports -relax],
4682 gcc_cv_as_relax_opt, [
4683 gcc_cv_as_relax_opt=unknown
4684 if test x$gcc_cv_as != x; then
4685 # Check if gas supports -relax
4686 echo ".text" > conftest.s
4687 if $gcc_cv_as -relax -o conftest.o conftest.s > /dev/null 2>&1; then
4688 gcc_cv_as_relax_opt=yes
4690 gcc_cv_as_relax_opt=no
4692 rm -f conftest.s conftest.o
4695 if test "x$gcc_cv_as_relax_opt" = xyes; then
4696 AC_DEFINE(HAVE_AS_RELAX_OPTION, 1,
4697 [Define if your assembler supports -relax option.])
4702 AC_CACHE_CHECK([for 64 bit support in assembler ($gcc_cv_as)],
4703 gcc_cv_as_flags64, [
4704 if test -n "$gcc_cv_as"; then
4705 echo ".xword foo" > conftest.s
4706 gcc_cv_as_flags64=no
4707 for flag in "-xarch=v9" "-64 -Av9"; do
4708 if $gcc_cv_as $flag -o conftest.o conftest.s \
4709 > /dev/null 2>&1; then
4710 gcc_cv_as_flags64=$flag
4714 rm -f conftest.s conftest.o
4716 if test "$gas" = yes; then
4717 gcc_cv_as_flags64="-64 -Av9"
4719 gcc_cv_as_flags64="-xarch=v9"
4723 if test "x$gcc_cv_as_flags64" = xno; then
4725 tmake_file=`echo " $tmake_file " | sed -e 's, sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4726 dep_tmake_file=`echo " $dep_tmake_file " | sed -e 's, [^ ]*/config/sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4729 AC_DEFINE_UNQUOTED(AS_SPARC64_FLAG, "$gcc_cv_as_flags64",
4730 [Define if the assembler supports 64bit sparc.])
4733 *) gcc_cv_as_flags64=${gcc_cv_as_flags64-no}
4737 if test "x$gcc_cv_as_flags64" != xno; then
4738 AC_CACHE_CHECK([for assembler offsetable %lo() support],
4739 gcc_cv_as_offsetable_lo10, [
4740 gcc_cv_as_offsetable_lo10=unknown
4741 if test "x$gcc_cv_as" != x; then
4742 # Check if assembler has offsetable %lo()
4743 echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
4744 echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
4745 if $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s \
4747 $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s \
4748 > /dev/null 2>&1; then
4749 if cmp conftest.o conftest1.o > /dev/null 2>&1; then
4750 gcc_cv_as_offsetable_lo10=no
4752 gcc_cv_as_offsetable_lo10=yes
4755 gcc_cv_as_offsetable_lo10=no
4757 rm -f conftest.s conftest.o conftest1.s conftest1.o
4760 if test "x$gcc_cv_as_offsetable_lo10" = xyes; then
4761 AC_DEFINE(HAVE_AS_OFFSETABLE_LO10, 1,
4762 [Define if your assembler supports offsetable %lo().])
4770 AC_MSG_CHECKING(assembler instructions)
4771 gcc_cv_as_instructions=
4772 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4773 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
4774 gcc_cv_as_instructions="filds fists"
4776 elif test x$gcc_cv_as != x; then
4777 set "filds fists" "filds mem; fists mem"
4780 echo "$2" > conftest.s
4781 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4782 gcc_cv_as_instructions=${gcc_cv_as_instructions}$1" "
4786 rm -f conftest.s conftest.o
4788 if test x"$gcc_cv_as_instructions" != x; then
4789 AC_DEFINE_UNQUOTED(HAVE_GAS_`echo "$gcc_cv_as_instructions" | tr '[a-z ]' '[A-Z_]'`)
4791 AC_MSG_RESULT($gcc_cv_as_instructions)
4795 # Figure out what language subdirectories are present.
4796 # Look if the user specified --enable-languages="..."; if not, use
4797 # the environment variable $LANGUAGES if defined. $LANGUAGES might
4799 if test x"${enable_languages+set}" != xset; then
4800 if test x"${LANGUAGES+set}" = xset; then
4801 enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
4803 enable_languages=all
4806 if test x"${enable_languages}" = x; then
4807 AC_MSG_ERROR([--enable-languages needs at least one argument])
4811 for lang in ${srcdir}/*/config-lang.in ..
4815 # The odd quoting in the next line works around
4816 # an apparent bug in bash 1.12 on linux.
4818 ${srcdir}/[*]/config-lang.in) ;;
4820 lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
4821 if test "x$lang_alias" = x
4823 echo "$lang doesn't set \$language." 1>&2
4826 if test x"${enable_languages}" = xall && test x"${lang_alias}" != xCHILL; then
4829 case "${enable_languages}" in
4830 ${lang_alias} | "${lang_alias},"* | *",${lang_alias},"* | *",${lang_alias}" )
4838 if test x"${add_this_lang}" = xyes; then
4840 ${srcdir}/ada/config-lang.in)
4841 if test x$gnat = xyes ; then
4842 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4846 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4855 # Make gthr-default.h if we have a thread file.
4857 if test $thread_file != single; then
4858 rm -f gthr-default.h
4859 echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h
4860 gthread_flags=-DHAVE_GTHR_DEFAULT
4862 AC_SUBST(gthread_flags)
4864 # Find out what GC implementation we want, or may, use.
4866 [ --with-gc={simple,page} Choose the garbage collection mechanism to use
4867 with the compiler.],
4873 AC_MSG_ERROR([$withval is an invalid option to --with-gc])
4876 [if test $ac_cv_func_mmap_anywhere = yes \
4877 || test $ac_cv_func_valloc = yes; then
4883 echo "Using $GGC for garbage collection."
4885 # Use the system's zlib library.
4887 zlibinc="-I\$(srcdir)/../zlib"
4888 AC_ARG_WITH(system-zlib,
4889 [ --with-system-zlib use installed libz],
4896 # Build a new-abi (c++) system
4897 AC_ARG_ENABLE(new-gxx-abi,
4898 [ --enable-new-gxx-abi
4899 select the new abi for g++. You must select an ABI
4900 at configuration time, so that the correct runtime
4901 support is built. You cannot mix ABIs.],
4902 [AC_DEFINE(ENABLE_NEW_GXX_ABI, 1,
4903 [Define if you want to always select the new-abi for g++.])
4904 GXX_ABI_FLAG='-fnew-abi'
4905 echo "Building a new-abi g++ compiler."
4907 AC_SUBST(GXX_ABI_FLAG)
4909 # Build a new-libstdc++ system (ie libstdc++-v3)
4910 AC_MSG_CHECKING([for libstdc++ to install])
4911 AC_ARG_ENABLE(libstdcxx-v3,
4912 [ --enable-libstdcxx-v3
4913 enable libstdc++-v3 for building and installation],
4914 [enable_libstdcxx_v3="$enableval"], [enable_libstdcxx_v3=no])
4916 if test x$enable_libstdcxx_v3 = xyes; then
4925 AC_DEFINE_UNQUOTED(ENABLE_STD_NAMESPACE, $ac_esn,
4926 [Define to 1 if you want to enable namespaces (-fhonor-std) by default.])
4927 AC_SUBST(HAVE_LIBSTDCXX_V3)
4929 dnl Very limited version of automake's enable-maintainer-mode
4931 AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
4932 dnl maintainer-mode is disabled by default
4933 AC_ARG_ENABLE(maintainer-mode,
4934 [ --enable-maintainer-mode enable make rules and dependencies not useful
4935 (and sometimes confusing) to the casual installer],
4936 maintainer_mode=$enableval,
4939 AC_MSG_RESULT($maintainer_mode)
4941 if test "$maintainer_mode" = "yes"; then
4948 # Make empty files to contain the specs and options for each language.
4949 # Then add #include lines to for a compiler that has specs and/or options.
4954 rm -f specs.h options.h gencheck.h
4955 touch specs.h options.h gencheck.h
4956 for subdir in . $subdirs
4958 if test -f $srcdir/$subdir/lang-specs.h; then
4959 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
4960 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
4962 if test -f $srcdir/$subdir/lang-options.h; then
4963 echo "#include \"$subdir/lang-options.h\"" >>options.h
4964 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
4966 if test -f $srcdir/$subdir/$subdir-tree.def; then
4967 echo "#include \"$subdir/$subdir-tree.def\"" >>gencheck.h
4968 lang_tree_files="$lang_tree_files $srcdir/$subdir/$subdir-tree.def"
4972 # These (without "all_") are set in each config-lang.in.
4973 # `language' must be a single word so is spelled singularly.
4979 all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile gccbug mklibgcc'
4980 # List of language makefile fragments.
4985 # Add the language fragments.
4986 # Languages are added via two mechanisms. Some information must be
4987 # recorded in makefile variables, these are defined in config-lang.in.
4988 # We accumulate them and plug them into the main Makefile.
4989 # The other mechanism is a set of hooks for each of the main targets
4990 # like `clean', `install', etc.
4992 language_fragments="Make-lang"
4993 language_hooks="Make-hooks"
4995 for s in .. $subdirs
5007 . ${srcdir}/$s/config-lang.in
5008 if test "x$language" = x
5010 echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
5013 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in $outputs"
5014 all_languages="$all_languages $language"
5015 if test "x$boot_language" = xyes
5017 all_boot_languages="$all_boot_languages $language"
5019 all_compilers="$all_compilers $compilers"
5020 all_stagestuff="$all_stagestuff $stagestuff"
5021 all_diff_excludes="$all_diff_excludes $diff_excludes"
5022 all_headers="$all_headers $headers"
5023 all_outputs="$all_outputs $outputs"
5024 all_lib2funcs="$all_lib2funcs $lib2funcs"
5028 # Since we can't use `::' targets, we link each language in
5029 # with a set of hooks, reached indirectly via lang.${target}.
5033 target_list="all.build all.cross start.encap rest.encap \
5035 install-normal install-common install-info install-man \
5037 mostlyclean clean distclean extraclean maintainer-clean \
5038 stage1 stage2 stage3 stage4"
5039 for t in $target_list
5042 for lang in .. $all_languages
5044 if test $lang != ".."; then
5048 echo "lang.$t: $x" >> Make-hooks
5051 # If we're not building in srcdir, create .gdbinit.
5053 if test ! -f Makefile.in; then
5054 echo "dir ." > .gdbinit
5055 echo "dir ${srcdir}" >> .gdbinit
5056 if test x$gdb_needs_out_file_path = xyes
5058 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
5060 if test "x$subdirs" != x; then
5063 echo "dir ${srcdir}/$s" >> .gdbinit
5066 echo "source ${srcdir}/.gdbinit" >> .gdbinit
5069 # Define variables host_canonical and build_canonical
5070 # because some Cygnus local changes in the Makefile depend on them.
5071 build_canonical=${build}
5072 host_canonical=${host}
5074 if test "${host}" != "${target}" ; then
5075 target_subdir=${target}/
5077 AC_SUBST(build_canonical)
5078 AC_SUBST(host_canonical)
5079 AC_SUBST(target_subdir)
5081 # If $(exec_prefix) exists and is not the same as $(prefix), then compute an
5082 # absolute path for gcc_tooldir based on inserting the number of up-directory
5083 # movements required to get from $(exec_prefix) to $(prefix) into the basic
5084 # $(libsubdir)/@(unlibsubdir) based path.
5085 # Don't set gcc_tooldir to tooldir since that's only passed in by the toplevel
5086 # make and thus we'd get different behavior depending on where we built the
5088 if test x$exec_prefix = xNONE -o x$exec_prefix = x$prefix; then
5089 gcc_tooldir='$(libsubdir)/$(unlibsubdir)/../$(target_alias)'
5091 changequote(<<, >>)dnl
5092 # An explanation of the sed strings:
5093 # -e 's|^\$(prefix)||' matches and eliminates 'prefix' from 'exec_prefix'
5094 # -e 's|/$||' match a trailing forward slash and eliminates it
5095 # -e 's|^[^/]|/|' forces the string to start with a forward slash (*)
5096 # -e 's|/[^/]*|../|g' replaces each occurance of /<directory> with ../
5098 # (*) Note this pattern overwrites the first character of the string
5099 # with a forward slash if one is not already present. This is not a
5100 # problem because the exact names of the sub-directories concerned is
5101 # unimportant, just the number of them matters.
5103 # The practical upshot of these patterns is like this:
5105 # prefix exec_prefix result
5106 # ------ ----------- ------
5108 # /foo/ /foo/bar ../
5109 # /foo /foo/bar/ ../
5110 # /foo/ /foo/bar/ ../
5111 # /foo /foo/bar/ugg ../../
5114 gcc_tooldir="\$(libsubdir)/\$(unlibsubdir)/\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/\$(dollar)||' -e 's|^[^/]|/|' -e 's|/[^/]*|../|g'\`\$(target_alias)"
5115 changequote([, ])dnl
5117 AC_SUBST(gcc_tooldir)
5120 # Nothing to do for FLOAT_H, float_format already handled.
5124 # Process the language and host/target makefile fragments.
5125 ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
5127 # Substitute configuration variables
5129 AC_SUBST(all_boot_languages)
5130 AC_SUBST(all_compilers)
5131 AC_SUBST(all_diff_excludes)
5132 AC_SUBST(all_headers)
5133 AC_SUBST(all_lang_makefiles)
5134 AC_SUBST(all_languages)
5135 AC_SUBST(all_lib2funcs)
5136 AC_SUBST(all_stagestuff)
5137 AC_SUBST(build_exeext)
5138 AC_SUBST(build_install_headers_dir)
5139 AC_SUBST(build_xm_file_list)
5140 AC_SUBST(cc_set_by_configure)
5141 AC_SUBST(quoted_cc_set_by_configure)
5142 AC_SUBST(cpp_install_dir)
5143 AC_SUBST(dep_host_xmake_file)
5144 AC_SUBST(dep_tmake_file)
5145 AC_SUBST(extra_c_flags)
5146 AC_SUBST(extra_headers_list)
5147 AC_SUBST(extra_objs)
5148 AC_SUBST(extra_parts)
5149 AC_SUBST(extra_passes)
5150 AC_SUBST(extra_programs)
5151 AC_SUBST(float_h_file)
5152 AC_SUBST(gcc_gxx_include_dir)
5153 AC_SUBST(gcc_version)
5154 AC_SUBST(gcc_version_full)
5155 AC_SUBST(gcc_version_trigger)
5156 AC_SUBST(host_exeext)
5157 AC_SUBST(host_extra_gcc_objs)
5158 AC_SUBST(host_xm_file_list)
5160 AC_SUBST(lang_options_files)
5161 AC_SUBST(lang_specs_files)
5162 AC_SUBST(lang_tree_files)
5163 AC_SUBST(local_prefix)
5164 AC_SUBST(maybe_use_collect2)
5166 AC_SUBST(objc_boehm_gc)
5168 AC_SUBST(out_object_file)
5169 AC_SUBST(stage_prefix_set_by_configure)
5170 AC_SUBST(symbolic_link)
5171 AC_SUBST(thread_file)
5172 AC_SUBST(tm_file_list)
5173 AC_SUBST(will_use_collect2)
5176 AC_SUBST_FILE(target_overrides)
5177 AC_SUBST_FILE(host_overrides)
5178 AC_SUBST(cross_defines)
5179 AC_SUBST_FILE(cross_overrides)
5180 AC_SUBST_FILE(build_overrides)
5181 AC_SUBST_FILE(language_fragments)
5182 AC_SUBST_FILE(language_hooks)
5184 # Echo that links are built
5185 if test x$host = x$target
5193 if test x$host != x$build
5195 str3=" on a $build system"
5198 if test "x$str2" != x || test "x$str3" != x
5203 echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
5205 if test "x$str2" != x || test "x$str3" != x
5207 echo " ${str2}${str3}." 1>&2
5210 # Truncate the target if necessary
5211 if test x$host_truncate_target != x; then
5212 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
5215 # Configure the subdirectories
5216 # AC_CONFIG_SUBDIRS($subdirs)
5218 # Create the Makefile
5219 # and configure language subdirectories
5220 AC_OUTPUT($all_outputs,
5222 case x$CONFIG_HEADERS in
5223 xauto-host.h:config.in)
5226 # If the host supports symlinks, point stage[1234] at ../stage[1234] so
5227 # bootstrapping and the installation procedure can still use
5228 # CC="stage1/xgcc -Bstage1/". If the host doesn't support symlinks,
5229 # FLAGS_TO_PASS has been modified to solve the problem there.
5230 # This is virtually a duplicate of what happens in configure.lang; we do
5231 # an extra check to make sure this only happens if ln -s can be used.
5232 if test "$symbolic_link" = "ln -s"; then
5233 for d in .. ${subdirs} ; do
5234 if test $d != ..; then
5237 for t in stage1 stage2 stage3 stage4 include
5240 $symbolic_link ../$t $t 2>/dev/null
5246 # Avoid having to add intl to our include paths.
5247 if test -f intl/libintl.h; then
5248 echo creating libintl.h
5249 echo '#include "intl/libintl.h"' >libintl.h
5256 target_alias='${target_alias}'
5258 subdirs='${subdirs}'
5259 symbolic_link='${symbolic_link}'
5260 program_transform_set='${program_transform_set}'
5261 program_transform_name='${program_transform_name}'
5262 dep_host_xmake_file='${dep_host_xmake_file}'
5263 host_xmake_file='${host_xmake_file}'
5264 dep_tmake_file='${dep_tmake_file}'
5265 tmake_file='${tmake_file}'
5266 thread_file='${thread_file}'
5267 gcc_version='${gcc_version}'
5268 gcc_version_full='${gcc_version_full}'
5269 gcc_version_trigger='${gcc_version_trigger}'
5270 local_prefix='${local_prefix}'
5271 build_install_headers_dir='${build_install_headers_dir}'
5272 build_exeext='${build_exeext}'
5273 host_exeext='${host_exeext}'
5274 out_file='${out_file}'
5275 gdb_needs_out_file_path='${gdb_needs_out_file_path}'
5276 SET_MAKE='${SET_MAKE}'
5277 target_list='${target_list}'
5278 target_overrides='${target_overrides}'
5279 host_overrides='${host_overrides}'
5280 cross_defines='${cross_defines}'
5281 cross_overrides='${cross_overrides}'
5282 build_overrides='${build_overrides}'
5283 cpp_install_dir='${cpp_install_dir}'