1 # configure.in for GNU CC
2 # Process this file with autoconf to generate a configuration script.
4 # Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
6 #This file is part of GNU CC.
8 #GNU CC is free software; you can redistribute it and/or modify
9 #it under the terms of the GNU General Public License as published by
10 #the Free Software Foundation; either version 2, or (at your option)
13 #GNU CC is distributed in the hope that it will be useful,
14 #but WITHOUT ANY WARRANTY; without even the implied warranty of
15 #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 #GNU General Public License for more details.
18 #You should have received a copy of the GNU General Public License
19 #along with GNU CC; see the file COPYING. If not, write to
20 #the Free Software Foundation, 59 Temple Place - Suite 330,
21 #Boston, MA 02111-1307, USA.
23 # Initialization and defaults
26 AC_CONFIG_HEADER(auto-host.h:config.in)
33 # Check for bogus environment variables.
34 # Test if LIBRARY_PATH contains the notation for the current directory
35 # since this would lead to problems installing/building glibc.
36 # LIBRARY_PATH contains the current directory if one of the following
38 # - one of the terminals (":" and ";") is the first or last sign
39 # - two terminals occur directly after each other
40 # - the path contains an element with a dot in it
41 AC_MSG_CHECKING(LIBRARY_PATH variable)
43 case ${LIBRARY_PATH} in
44 [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
45 library_path_setting="contains current directory"
48 library_path_setting="ok"
52 AC_MSG_RESULT($library_path_setting)
53 if test "$library_path_setting" != "ok"; then
55 *** LIBRARY_PATH shouldn't contain the current directory when
56 *** building gcc. Please change the environment variable
57 *** and run configure again.])
60 # Test if GCC_EXEC_PREFIX contains the notation for the current directory
61 # since this would lead to problems installing/building glibc.
62 # GCC_EXEC_PREFIX contains the current directory if one of the following
64 # - one of the terminals (":" and ";") is the first or last sign
65 # - two terminals occur directly after each other
66 # - the path contains an element with a dot in it
67 AC_MSG_CHECKING(GCC_EXEC_PREFIX variable)
69 case ${GCC_EXEC_PREFIX} in
70 [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
71 gcc_exec_prefix_setting="contains current directory"
74 gcc_exec_prefix_setting="ok"
78 AC_MSG_RESULT($gcc_exec_prefix_setting)
79 if test "$gcc_exec_prefix_setting" != "ok"; then
81 *** GCC_EXEC_PREFIX shouldn't contain the current directory when
82 *** building gcc. Please change the environment variable
83 *** and run configure again.])
86 # Check for additional parameters
90 [ --with-gnu-ld arrange to work with GNU ld.],
91 gnu_ld_flag="$with_gnu_ld",
96 [ --with-ld arrange to use the specified ld (full pathname).],
97 DEFAULT_LINKER="$with_ld")
98 if test x"${DEFAULT_LINKER+set}" = x"set"; then
99 if test ! -x "$DEFAULT_LINKER"; then
100 AC_MSG_WARN([cannot execute: $DEFAULT_LINKER: check --with-ld or env. var. DEFAULT_LINKER])
101 elif $DEFAULT_LINKER -v < /dev/null 2>&1 | grep GNU > /dev/null; then
104 AC_DEFINE_UNQUOTED(DEFAULT_LINKER,"$DEFAULT_LINKER",
105 [Define to enable the use of a default linker.])
110 [ --with-gnu-as arrange to work with GNU as.],
111 gas_flag="$with_gnu_as",
115 [ --with-as arrange to use the specified as (full pathname).],
116 DEFAULT_ASSEMBLER="$with_as")
117 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
118 if test ! -x "$DEFAULT_ASSEMBLER"; then
119 AC_MSG_WARN([cannot execute: $DEFAULT_ASSEMBLER: check --with-as or env. var. DEFAULT_ASSEMBLER])
120 elif $DEFAULT_ASSEMBLER -v < /dev/null 2>&1 | grep GNU > /dev/null; then
123 AC_DEFINE_UNQUOTED(DEFAULT_ASSEMBLER,"$DEFAULT_ASSEMBLER",
124 [Define to enable the use of a default assembler.])
129 [ --with-stabs arrange to use stabs instead of host debug format.],
135 [ --with-elf arrange to use ELF instead of host debug format.],
139 # Specify the local prefix
141 AC_ARG_WITH(local-prefix,
142 [ --with-local-prefix=DIR specifies directory to put local include.],
143 [case "${withval}" in
144 yes) AC_MSG_ERROR(bad value ${withval} given for local include directory prefix) ;;
146 *) local_prefix=$with_local_prefix ;;
149 # Default local prefix if it is empty
150 if test x$local_prefix = x; then
151 local_prefix=/usr/local
154 # Don't set gcc_gxx_include_dir to gxx_include_dir since that's only
155 # passed in by the toplevel make and thus we'd get different behavior
156 # depending on where we built the sources.
158 # Specify the g++ header file directory
159 AC_ARG_WITH(gxx-include-dir,
160 [ --with-gxx-include-dir=DIR
161 specifies directory to put g++ header files.],
162 [case "${withval}" in
163 yes) AC_MSG_ERROR(bad value ${withval} given for g++ include directory) ;;
165 *) gcc_gxx_include_dir=$with_gxx_include_dir ;;
168 if test x${gcc_gxx_include_dir} = x; then
169 if test x${enable_version_specific_runtime_libs} = xyes; then
170 gcc_gxx_include_dir='${libsubdir}/include/g++'
172 topsrcdir=${srcdir}/.. . ${srcdir}/../config.if
173 changequote(<<, >>)dnl
174 gcc_gxx_include_dir="\$(libsubdir)/\$(unlibsubdir)/..\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/[^/]*|/..|g'\`/include/g++"-${libstdcxx_interface}
179 # Enable expensive internal checks
180 AC_ARG_ENABLE(checking,
181 [ --enable-checking[=LIST]
182 enable expensive run-time checks. With LIST,
183 enable only specific categories of checks.
184 Categories are: misc,tree,rtl,gc,gcac; default
190 ac_gc_always_collect=
191 case "${enableval}" in
192 yes) ac_checking=1 ; ac_tree_checking=1 ; ac_gc_checking=1 ;;
194 *) IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS="$IFS,"
195 set fnord $enableval; shift
200 misc) ac_checking=1 ;;
201 tree) ac_tree_checking=1 ;;
202 rtl) ac_rtl_checking=1 ;;
203 gc) ac_gc_checking=1 ;;
204 gcac) ac_gc_always_collect=1 ;;
205 *) AC_MSG_ERROR(unknown check category $check) ;;
211 # Enable some checks by default for development versions of GCC
212 [ac_checking=1; ac_tree_checking=1; ac_gc_checking=1;])
213 if test x$ac_checking != x ; then
214 AC_DEFINE(ENABLE_CHECKING, 1,
215 [Define if you want more run-time sanity checks. This one gets a grab
216 bag of miscellaneous but relatively cheap checks.])
218 if test x$ac_tree_checking != x ; then
219 AC_DEFINE(ENABLE_TREE_CHECKING, 1,
220 [Define if you want all operations on trees (the basic data
221 structure of the front ends) to be checked for dynamic type safety
222 at runtime. This is moderately expensive.])
224 if test x$ac_rtl_checking != x ; then
225 AC_DEFINE(ENABLE_RTL_CHECKING, 1,
226 [Define if you want all operations on RTL (the basic data structure
227 of the optimizer and back end) to be checked for dynamic type safety
228 at runtime. This is quite expensive.])
230 if test x$ac_gc_checking != x ; then
231 AC_DEFINE(ENABLE_GC_CHECKING, 1,
232 [Define if you want the garbage collector to do object poisoning and
233 other memory allocation checks. This is quite expensive.])
235 if test x$ac_gc_always_collect != x ; then
236 AC_DEFINE(ENABLE_GC_ALWAYS_COLLECT, 1,
237 [Define if you want the garbage collector to operate in maximally
238 paranoid mode, validating the entire heap and collecting garbage at
239 every opportunity. This is extremely expensive.])
244 [ --disable-cpp don't provide a user-visible C preprocessor.],
245 [], [enable_cpp=yes])
247 AC_ARG_WITH(cpp_install_dir,
248 [ --with-cpp-install-dir=DIR
249 install the user visible C preprocessor in DIR
250 (relative to PREFIX) as well as PREFIX/bin.],
251 [if test x$withval = xyes; then
252 AC_MSG_ERROR([option --with-cpp-install-dir requires an argument])
253 elif test x$withval != xno; then
254 cpp_install_dir=$withval
257 # Link cpplib into the compiler proper, for C/C++/ObjC.
258 AC_ARG_ENABLE(c-cpplib,
259 [ --enable-c-cpplib link cpplib directly into C and C++ compilers
260 (HIGHLY EXPERIMENTAL).],
261 if test x$enable_c_cpplib != xno; then
262 extra_c_objs="${extra_c_objs} libcpp.a"
263 extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
264 AC_DEFINE(USE_CPPLIB, 1,
265 [Define if you want the preprocessor merged into the C and C++ compilers.
266 This mode is not ready for production use.])
269 # Enable Multibyte Characters for C/C++
270 AC_ARG_ENABLE(c-mbchar,
271 [ --enable-c-mbchar Enable multibyte characters for C and C++.],
272 if test x$enable_c_mbchar != xno; then
273 AC_DEFINE(MULTIBYTE_CHARS, 1,
274 [Define if you want the C and C++ compilers to support multibyte
275 character sets for source code.])
279 # Pass with no value to take the default
280 # Pass with a value to specify a thread package
281 AC_ARG_ENABLE(threads,
282 [ --enable-threads enable thread usage for target GCC.
283 --enable-threads=LIB use LIB thread package for target GCC.],,
286 enable_threads_flag=$enable_threads
287 # Check if a valid thread package
288 case x${enable_threads_flag} in
291 target_thread_file='single'
295 target_thread_file=''
297 xdecosf1 | xirix | xmach | xos2 | xposix | xpthreads | xsingle | \
298 xsolaris | xwin32 | xdce | xvxworks | xaix)
299 target_thread_file=$enable_threads_flag
302 echo "$enable_threads is an unknown thread package" 1>&2
307 AC_ARG_ENABLE(objc-gc,
308 [ --enable-objc-gc enable the use of Boehm's garbage collector with
309 the GNU Objective-C runtime.],
310 if test x$enable_objc_gc = xno; then
318 [ --with-dwarf2 force the default debug format to be DWARF2.],
319 dwarf2="$with_dwarf2",
322 AC_ARG_ENABLE(shared,
323 [ --disable-shared don't provide a shared libgcc.],
324 [], [enable_shared=yes])
325 AC_SUBST(enable_shared)
327 # Determine the host, build, and target systems
330 # Find the native compiler
333 if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = no"; then
334 NO_MINUS_C_MINUS_O=yes
336 AC_SUBST(NO_MINUS_C_MINUS_O)
340 AC_CACHE_CHECK(whether ${CC-cc} accepts -Wno-long-long,
341 ac_cv_prog_cc_no_long_long,
342 [save_CFLAGS="$CFLAGS"
343 CFLAGS="-Wno-long-long"
344 AC_TRY_COMPILE(,,ac_cv_prog_cc_no_long_long=yes,
345 ac_cv_prog_cc_no_long_long=no)
346 CFLAGS="$save_CFLAGS"])
348 # If the native compiler is GCC, we can enable warnings even in stage1.
349 # That's useful for people building cross-compilers, or just running a
351 stage1_warn_cflags=" -W -Wall -Wtraditional -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes"
352 stage2_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
353 if test "x$GCC" = "xyes"; then
354 if test $ac_cv_prog_cc_no_long_long = yes; then
355 stage1_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
358 stage1_warn_cflags=""
361 # Stage specific cflags for build.
366 stage1_warn_cflags="$stage1_warn_cflags -Wa,-J"
368 stage1_warn_cflags="$stage1_warn_cflags -J"
373 AC_SUBST(stage1_warn_cflags)
374 AC_SUBST(stage2_warn_cflags)
378 AC_MSG_CHECKING([whether a default assembler was specified])
379 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
380 if test x"$gas_flag" = x"no"; then
381 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER)])
383 AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER - GNU as)])
389 AC_MSG_CHECKING([whether a default linker was specified])
390 if test x"${DEFAULT_LINKER+set}" = x"set"; then
391 if test x"$gnu_ld_flag" = x"no"; then
392 AC_MSG_RESULT([yes ($DEFAULT_LINKER)])
394 AC_MSG_RESULT([yes ($DEFAULT_LINKER - GNU ld)])
400 AC_MSG_CHECKING(for GNU C library)
401 AC_CACHE_VAL(gcc_cv_glibc,
403 [#include <features.h>],[
404 #if ! (defined __GLIBC__ || defined __GNU_LIBRARY__)
405 #error Not a GNU C library system
409 AC_MSG_RESULT($gcc_cv_glibc)
410 if test $gcc_cv_glibc = yes; then
411 AC_DEFINE(_GNU_SOURCE, 1, [Always define this when using the GNU C Library])
416 # Find some useful tools
430 AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h \
431 fcntl.h unistd.h stab.h sys/file.h sys/time.h \
432 sys/resource.h sys/param.h sys/times.h sys/stat.h \
433 direct.h malloc.h langinfo.h iconv.h)
435 # Check for thread headers.
436 AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
437 AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
439 # See if GNAT has been installed
440 AC_CHECK_PROG(gnat, gnatbind, yes, no)
442 # Do we have a single-tree copy of texinfo?
443 if test -f $srcdir/../texinfo/Makefile.in; then
444 MAKEINFO='$(objdir)/../texinfo/makeinfo/makeinfo'
445 gcc_cv_prog_makeinfo_modern=yes
446 AC_MSG_RESULT([Using makeinfo from the unified source tree.])
448 # See if makeinfo has been installed and is modern enough
449 # that we can use it.
450 gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
451 [GNU texinfo.* \([0-9][0-9.]*\)],
452 [3.1[2-9] | 3.[2-9][0-9] | 4.* | 1.6[89] | 1.7[0-9]])
455 if test $gcc_cv_prog_makeinfo_modern = no; then
457 *** Makeinfo is missing or too old.
458 *** Info documentation will not be built or installed.])
462 BUILD_INFO=info AC_SUBST(BUILD_INFO)
463 INSTALL_INFO=install-info AC_SUBST(INSTALL_INFO)
466 # See if the stage1 system preprocessor understands the ANSI C
467 # preprocessor stringification operator.
470 # Use <inttypes.h> only if it exists,
471 # doesn't clash with <sys/types.h>, and declares intmax_t.
472 AC_MSG_CHECKING(for inttypes.h)
473 AC_CACHE_VAL(gcc_cv_header_inttypes_h,
475 [#include <sys/types.h>
476 #include <inttypes.h>],
478 [gcc_cv_header_inttypes_h=yes],
479 gcc_cv_header_inttypes_h=no)])
480 AC_MSG_RESULT($gcc_cv_header_inttypes_h)
481 if test $gcc_cv_header_inttypes_h = yes; then
482 AC_DEFINE(HAVE_INTTYPES_H, 1,
483 [Define if you have a working <inttypes.h> header file.])
487 # Determine if enumerated bitfields are unsigned. ISO C says they can
488 # be either signed or unsigned.
490 AC_CACHE_CHECK(for unsigned enumerated bitfields, gcc_cv_enum_bf_unsigned,
491 [AC_TRY_RUN(#include <stdlib.h>
492 enum t { BLAH = 128 } ;
493 struct s_t { enum t member : 8; } s ;
497 if (s.member < 0) exit(1);
500 }, gcc_cv_enum_bf_unsigned=yes, gcc_cv_enum_bf_unsigned=no, gcc_cv_enum_bf_unsigned=yes)])
501 if test $gcc_cv_enum_bf_unsigned = yes; then
502 AC_DEFINE(ENUM_BITFIELDS_ARE_UNSIGNED, 1,
503 [Define if enumerated bitfields are treated as unsigned values.])
506 AC_CHECK_FUNCS(strtoul bsearch putenv popen bcopy bzero bcmp \
507 index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
508 sysconf isascii gettimeofday strsignal putc_unlocked fputc_unlocked \
509 fputs_unlocked getrusage valloc iconv nl_langinfo)
511 AC_CHECK_TYPE(ssize_t, int)
513 # Try to determine the array type of the second argument of getgroups
514 # for the target system (int or gid_t).
516 if test "${target}" = "${build}"; then
517 TARGET_GETGROUPS_T=$ac_cv_type_getgroups
520 # This condition may need some tweaking. It should include all
521 # targets where the array type of the second argument of getgroups
522 # is int and the type of gid_t is not equivalent to int.
523 *-*-sunos* | *-*-ultrix*)
524 TARGET_GETGROUPS_T=int
527 TARGET_GETGROUPS_T=gid_t
531 AC_SUBST(TARGET_GETGROUPS_T)
533 gcc_AC_FUNC_VFPRINTF_DOPRNT
534 gcc_AC_FUNC_PRINTF_PTR
538 # Under some versions of uwin, vfork is notoriously buggy and the test
539 # can hang configure; on other versions, vfork exists just as a stub.
540 # FIXME: This should be removed once vfork in uwin's runtime is fixed.
541 ac_cv_func_vfork_works=no
545 AC_FUNC_MMAP_ANYWHERE
548 # We will need to find libiberty.h and ansidecl.h
549 saved_CFLAGS="$CFLAGS"
550 CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
551 gcc_AC_CHECK_DECLS(bcopy bzero bcmp \
552 index rindex getenv atol sbrk abort atof getcwd getwd \
553 strsignal putc_unlocked fputs_unlocked strstr environ \
554 malloc realloc calloc free basename getopt, , ,[
555 #include "gansidecl.h"
556 #include "system.h"])
558 gcc_AC_CHECK_DECLS(getrlimit setrlimit getrusage, , ,[
559 #include "gansidecl.h"
561 #ifdef HAVE_SYS_RESOURCE_H
562 #include <sys/resource.h>
566 # Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
567 CFLAGS="$saved_CFLAGS"
569 # mkdir takes a single argument on some systems.
570 gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
580 build_install_headers_dir=install-headers-tar
585 host_truncate_target=
588 # Decode the host machine, then the target machine.
589 # For the host machine, we save the xm_file variable as host_xm_file;
590 # then we decode the target machine and forget everything else
591 # that came from the host machine.
592 for machine in $build $host $target; do
606 # Set this to force installation and use of collect2.
608 # Set this to override the default target model.
610 # Set this to control how the header file directory is installed.
611 install_headers_dir=install-headers-tar
612 # Set this to a non-empty list of args to pass to cpp if the target
613 # wants its .md file passed through cpp.
615 # Set this if directory names should be truncated to 14 characters.
617 # Set this if gdb needs a dir command with `dirname $out_file`
618 gdb_needs_out_file_path=
619 # Set this if the build machine requires executables to have a
622 # Set this to control which thread package will be used.
624 # Reinitialize these from the flag values every loop pass, since some
625 # configure entries modify them.
627 gnu_ld="$gnu_ld_flag"
628 enable_threads=$enable_threads_flag
630 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
631 # updated in each machine entry.
633 cpu_type=`echo $machine | sed 's/-.*$//'`
675 tm_file=${cpu_type}/${cpu_type}.h
676 xm_file=${cpu_type}/xm-${cpu_type}.h
677 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
679 tm_p_file=${cpu_type}/${cpu_type}-protos.h;
681 # On a.out targets, we need to use collect2.
688 # Common parts for linux and openbsd systems
691 xm_defines="HAVE_ATEXIT POSIX BSTRING"
694 tm_file=${cpu_type}/openbsd.h
695 tmake_file="t-libc-ok t-openbsd"
696 # avoid surprises, always provide an xm-openbsd file
697 xm_file=${cpu_type}/xm-openbsd.h
698 # don't depend on processor x-fragments as well
700 if test x$enable_threads = xyes; then
702 tmake_file="${tmake_file} t-openbsd-thread"
708 # Support site-specific machine types.
710 cpu_type=`echo $machine | sed -e 's/-.*//'`
711 rest=`echo $machine | sed -e "s/$cpu_type-//"`
712 xm_file=${cpu_type}/xm-$rest.h
713 tm_file=${cpu_type}/$rest.h
714 if test -f $srcdir/config/${cpu_type}/x-$rest; \
715 then xmake_file=${cpu_type}/x-$rest; \
718 if test -f $srcdir/config/${cpu_type}/t-$rest; \
719 then tmake_file=${cpu_type}/t-$rest; \
725 a29k-*-bsd* | a29k-*-sym1*)
726 tm_file="${tm_file} a29k/unix.h"
728 xmake_file=a29k/x-unix
731 a29k-*-udi | a29k-*-coff)
732 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
733 tmake_file=a29k/t-a29kbare
736 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
737 tmake_file=a29k/t-vx29k
738 extra_parts="crtbegin.o crtend.o"
739 thread_file='vxworks'
741 a29k-*-*) # Default a29k environment.
745 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
747 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
748 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
750 # GAS + IEEE_CONFORMANT
751 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
753 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
754 xmake_file="x-interix alpha/t-pe"
755 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
756 if test x$enable_threads = xyes ; then
759 if test x$stabs = xyes ; then
760 tm_file="${tm_file} dbxcoff.h"
762 #prefix='$$INTERIX_ROOT'/usr/contrib
763 #local_prefix='$$INTERIX_ROOT'/usr/contrib
765 alpha*-*-linux*ecoff*)
766 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
767 target_cpu_default="MASK_GAS"
768 tmake_file="alpha/t-alpha alpha/t-ieee"
773 alpha*-*-linux*libc1*)
774 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
775 target_cpu_default="MASK_GAS"
776 tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
777 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
780 if test x$enable_threads = xyes; then
785 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
786 target_cpu_default="MASK_GAS"
787 tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
788 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
791 if test x$enable_threads = xyes; then
796 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
797 target_cpu_default="MASK_GAS"
798 tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
799 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
805 # default x-alpha is only appropriate for dec-osf.
806 target_cpu_default="MASK_GAS"
807 tmake_file="alpha/t-alpha alpha/t-ieee"
811 if test x$stabs = xyes
813 tm_file="${tm_file} dbx.h"
815 if test x$gas != xyes
817 extra_passes="mips-tfile mips-tdump"
820 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-osf"
821 xmake_file=alpha/x-osf
824 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
829 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
832 tm_file="${tm_file} alpha/osf.h"
833 tmake_file="$tmake_file alpha/t-osf4"
834 # Some versions of OSF4 (specifically X4.0-9 296.7) have
835 # a broken tar, so we use cpio instead.
836 install_headers_dir=install-headers-cpio
839 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
840 tmake_file="$tmake_file alpha/t-osf4"
845 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
847 target_cpu_default=MASK_SUPPORT_ARCH
852 tm_file="${tm_file} dbx.h alpha/vxworks.h"
853 tmake_file="alpha/t-alpha alpha/t-ieee"
856 extra_passes="mips-tfile mips-tdump"
859 thread_file='vxworks'
862 tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h"
863 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
864 tmake_file="t-libc-ok alpha/t-alpha alpha/t-ieee"
865 xmake_file=winnt/x-winnt
866 extra_host_objs=oldnames.o
867 extra_gcc_objs="spawnv.o oldnames.o"
868 if test x$gnu_ld != xyes
870 extra_programs=ld.exe
872 if test x$enable_threads = xyes; then
878 xm_file="${xm_file} alpha/xm-vms.h"
879 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
882 extra_parts="crtinit.o crtfini.o"
884 arm-*-coff* | armel-*-coff*)
886 tmake_file=arm/t-arm-coff
890 tmake_file=arm/t-arm-coff
891 thread_file='vxworks'
894 arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
896 tm_file=arm/riscix1-1.h
899 arm-*-riscix*) # Acorn RISC machine
902 tm_file=arm/rix-gas.h
906 xmake_file=arm/x-riscix
907 tmake_file=arm/t-riscix
910 arm-semi-aout | armel-semi-aout)
912 tmake_file=arm/t-semi
914 arm-semi-aof | armel-semi-aof)
915 tm_file=arm/semiaof.h
916 tmake_file=arm/t-semiaof
920 tmake_file="t-netbsd arm/t-netbsd"
923 arm*-*-linux*aout*) # ARM GNU/Linux with a.out
926 tm_file=arm/linux-aout.h
927 tmake_file=arm/t-linux
930 arm*-*-linux*oldld*) # ARM GNU/Linux with old ELF linker
931 xm_file=arm/xm-linux.h
933 tm_file="arm/linux-oldld.h arm/linux-elf.h"
936 tm_file="arm/linux-elf26.h $tm_file"
939 tmake_file="t-linux arm/t-linux"
940 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
942 case x${enable_threads} in
943 x | xyes | xpthreads | xposix)
948 arm*-*-linux*) # ARM GNU/Linux with ELF
949 xm_file=arm/xm-linux.h
951 tm_file="arm/linux-elf.h"
954 tm_file="arm/linux-elf26.h $tm_file"
957 tmake_file="t-linux arm/t-linux"
958 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
960 case x${enable_threads} in
961 x | xyes | xpthreads | xposix)
966 arm*-*-uclinux*) # ARM ucLinux
967 tm_file=arm/uclinux-elf.h
968 tmake_file=arm/t-arm-elf
972 tmake_file=arm/t-arm-aout
975 tm_file=arm/ecos-elf.h
976 tmake_file=arm/t-arm-elf
979 tm_file=arm/unknown-elf.h
980 tmake_file=arm/t-arm-elf
983 tm_file=arm/conix-elf.h
984 tmake_file=arm/t-arm-elf
987 tm_file=arm/unknown-elf-oabi.h
988 tmake_file=arm/t-arm-elf
997 c1-convex-*) # Convex C1
1001 c2-convex-*) # Convex C2
1002 target_cpu_default=2
1006 target_cpu_default=4
1010 target_cpu_default=8
1014 target_cpu_default=16
1020 tmake_file=c4x/t-c4x
1022 clipper-intergraph-clix*)
1023 tm_file="${tm_file} svr3.h clipper/clix.h"
1024 xm_file=clipper/xm-clix.h
1025 xmake_file=clipper/x-clix
1026 extra_headers=va-clipper.h
1027 extra_parts="crtbegin.o crtend.o"
1028 install_headers_dir=install-headers-cpio
1039 tm_file="fr30/fr30.h"
1040 tmake_file=fr30/t-fr30
1041 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1047 target_cpu_default="(MASK_PA_11 | MASK_GAS | MASK_JUMP_IN_DELAY)"
1048 tm_file="${tm_file} pa/elf.h linux.h pa/pa-linux.h"
1049 tmake_file="t-linux pa/t-linux"
1050 extra_parts="crtbegin.o crtend.o"
1053 if test x$enable_threads = xyes; then
1058 target_cpu_default="MASK_PA_11"
1059 tmake_file=pa/t-openbsd
1062 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1063 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
1064 xm_file=pa/xm-papro.h
1068 target_cpu_default="MASK_PA_11"
1069 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1073 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1074 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
1075 xm_file=pa/xm-papro.h
1079 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1083 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1084 target_cpu_default="MASK_PA_11"
1088 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1092 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
1093 xm_file=pa/xm-pahpux.h
1094 xmake_file=pa/x-pa-hpux
1095 if test x$gas = xyes
1097 tm_file="${tm_file} pa/gas.h"
1099 install_headers_dir=install-headers-cpio
1103 hppa1.0-*-hpux8.0[0-2]*)
1105 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1106 xm_file=pa/xm-pahpux.h
1107 xmake_file=pa/x-pa-hpux
1108 if test x$gas = xyes
1110 tm_file="${tm_file} pa/pa-gas.h"
1112 tm_file="pa/pa-oldas.h ${tm_file}"
1114 install_headers_dir=install-headers-cpio
1118 hppa1.1-*-hpux8.0[0-2]*)
1120 target_cpu_default="MASK_PA_11"
1121 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1122 xm_file=pa/xm-pahpux.h
1123 xmake_file=pa/x-pa-hpux
1124 if test x$gas = xyes
1126 tm_file="${tm_file} pa/pa-gas.h"
1128 tm_file="pa/pa-oldas.h ${tm_file}"
1130 install_headers_dir=install-headers-cpio
1134 target_cpu_default="MASK_PA_11"
1135 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1136 xm_file=pa/xm-pahpux.h
1137 xmake_file=pa/x-pa-hpux
1138 if test x$gas = xyes
1140 tm_file="${tm_file} pa/pa-gas.h"
1142 install_headers_dir=install-headers-cpio
1146 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1147 xm_file=pa/xm-pahpux.h
1148 xmake_file=pa/x-pa-hpux
1149 if test x$gas = xyes
1151 tm_file="${tm_file} pa/pa-gas.h"
1153 install_headers_dir=install-headers-cpio
1156 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
1157 target_cpu_default="MASK_PA_11"
1158 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1160 xm_file=pa/xm-pahpux.h
1161 xmake_file=pa/x-pa-hpux
1163 if test x$gas = xyes
1165 tm_file="${tm_file} pa/pa-gas.h"
1167 if test x$enable_threads = x; then
1168 enable_threads=$have_pthread_h
1170 case x${enable_threads} in
1172 tmake_file="${tmake_file} pa/t-dce-thr"
1175 install_headers_dir=install-headers-cpio
1179 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1181 xm_file=pa/xm-pahpux.h
1182 xmake_file=pa/x-pa-hpux
1184 if test x$gas = xyes
1186 tm_file="${tm_file} pa/pa-gas.h"
1188 if test x$enable_threads = x; then
1189 enable_threads=$have_pthread_h
1191 case x${enable_threads} in
1193 tmake_file="${tmake_file} pa/t-dce-thr"
1196 install_headers_dir=install-headers-cpio
1200 target_cpu_default="MASK_PA_11"
1201 xm_file=pa/xm-pa64hpux.h
1202 xmake_file=pa/x-pa-hpux
1204 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"
1206 tmake_file=pa/t-pa64
1207 target_cpu_default="(MASK_PA_11|MASK_PA_20)"
1209 if [[ x$gas = xyes ]]
1211 tm_file="${tm_file} pa/pa-gas.h"
1213 # if [[ x$enable_threads = x ]]; then
1214 # enable_threads=$have_pthread_h
1216 # if [[ x$enable_threads = xyes ]]; then
1218 # tmake_file="${tmake_file} pa/t-dce-thr"
1220 install_headers_dir=install-headers-cpio
1223 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
1224 target_cpu_default="MASK_PA_11"
1225 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1227 xm_file=pa/xm-pahpux.h
1228 xmake_file=pa/x-pa-hpux
1230 if test x$gas = xyes
1232 tm_file="${tm_file} pa/pa-gas.h"
1234 # if test x$enable_threads = x; then
1235 # enable_threads=$have_pthread_h
1237 # if test x$enable_threads = xyes; then
1239 # tmake_file="${tmake_file} pa/t-dce-thr"
1241 install_headers_dir=install-headers-cpio
1245 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1247 xm_file=pa/xm-pahpux.h
1248 xmake_file=pa/x-pa-hpux
1249 if test x$gas = xyes
1251 tm_file="${tm_file} pa/pa-gas.h"
1253 # if test x$enable_threads = x; then
1254 # enable_threads=$have_pthread_h
1256 # if test x$enable_threads = xyes; then
1258 # tmake_file="${tmake_file} pa/t-dce-thr"
1260 install_headers_dir=install-headers-cpio
1263 hppa1.1-*-hpux* | hppa2*-*-hpux*)
1264 target_cpu_default="MASK_PA_11"
1265 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1266 xm_file=pa/xm-pahpux.h
1267 xmake_file=pa/x-pa-hpux
1268 if test x$gas = xyes
1270 tm_file="${tm_file} pa/pa-gas.h"
1272 install_headers_dir=install-headers-cpio
1276 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1277 xm_file=pa/xm-pahpux.h
1278 xmake_file=pa/x-pa-hpux
1279 if test x$gas = xyes
1281 tm_file="${tm_file} pa/pa-gas.h"
1283 install_headers_dir=install-headers-cpio
1286 hppa1.1-*-hiux* | hppa2*-*-hiux*)
1287 target_cpu_default="MASK_PA_11"
1288 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1289 xm_file=pa/xm-pahpux.h
1290 xmake_file=pa/x-pa-hpux
1291 if test x$gas = xyes
1293 tm_file="${tm_file} pa/pa-gas.h"
1295 install_headers_dir=install-headers-cpio
1299 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1300 xm_file=pa/xm-pahpux.h
1301 xmake_file=pa/x-pa-hpux
1302 if test x$gas = xyes
1304 tm_file="${tm_file} pa/pa-gas.h"
1306 install_headers_dir=install-headers-cpio
1310 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
1311 target_cpu_default="MASK_PA_11"
1315 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
1316 xm_file=pa/xm-pampeix.h
1317 xmake_file=pa/x-pa-mpeix
1318 echo "You must use gas. Assuming it is already installed."
1319 install_headers_dir=install-headers-tar
1322 i370-*-opened*) # IBM 360/370/390 Architecture
1323 xm_file=i370/xm-oe.h
1325 xmake_file=i370/x-oe
1326 tmake_file=i370/t-oe
1329 xm_file=i370/xm-mvs.h
1331 tmake_file=i370/t-mvs
1334 xm_file="xm-linux.h i370/xm-linux.h"
1336 tm_file="i370/linux.h ${tm_file}"
1337 tmake_file="t-linux i370/t-linux"
1338 # broken_install=yes
1339 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1340 # extra_parts="crtbegin.o crtend.o"
1344 if test x$enable_threads = xyes; then
1351 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h"
1352 tm_file=i386/i386elf.h
1353 tmake_file=i386/t-i386elf
1357 i[34567]86-ibm-aix*) # IBM PS/2 running AIX
1359 if test x$gas = xyes
1361 tm_file=i386/aix386.h
1362 extra_parts="crtbegin.o crtend.o"
1363 tmake_file=i386/t-crtstuff
1365 tm_file=i386/aix386ng.h
1368 xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
1370 xmake_file=i386/x-aix
1373 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
1375 xm_file="xm-alloca.h ${xm_file}"
1376 xm_defines="USG POSIX SMALL_ARG_MAX"
1377 xmake_file=i386/x-ncr3000
1378 if test x$stabs = xyes -a x$gas = xyes
1380 tm_file=i386/sysv4gdb.h
1382 tm_file=i386/sysv4.h
1384 extra_parts="crtbegin.o crtend.o"
1385 tmake_file=i386/t-crtpic
1391 xm_file=i386/xm-next.h
1392 tmake_file=i386/t-next
1393 xmake_file=i386/x-next
1394 extra_objs=nextstep.o
1395 extra_parts="crtbegin.o crtend.o"
1396 if test x$enable_threads = xyes; then
1401 i[34567]86-sequent-bsd*) # 80386 from Sequent
1404 if test x$gas = xyes
1406 tm_file=i386/seq-gas.h
1408 tm_file=i386/sequent.h
1412 i[34567]86-sequent-ptx1*)
1414 xm_defines="USG SVR3"
1415 xmake_file=i386/x-sysv3
1416 tm_file=i386/seq-sysv3.h
1417 tmake_file=i386/t-crtstuff
1418 extra_parts="crtbegin.o crtend.o"
1419 install_headers_dir=install-headers-cpio
1422 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1424 xm_defines="USG SVR3"
1425 xmake_file=i386/x-sysv3
1426 tm_file=i386/seq2-sysv3.h
1427 tmake_file=i386/t-crtstuff
1428 extra_parts="crtbegin.o crtend.o"
1429 install_headers_dir=install-headers-cpio
1432 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1434 xm_file="xm-alloca.h ${xm_file}"
1435 xm_defines="USG POSIX SMALL_ARG_MAX"
1437 tm_file=i386/ptx4-i.h
1439 extra_parts="crtbegin.o crtend.o"
1440 install_headers_dir=install-headers-cpio
1442 i386-sun-sunos*) # Sun i386 roadrunner
1448 i[34567]86-wrs-vxworks*)
1450 tm_file=i386/vxi386.h
1451 tmake_file=i386/t-i386bare
1452 thread_file='vxworks'
1457 tm_file=i386/i386-aout.h
1458 tmake_file=i386/t-i386bare
1461 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1463 xm_file=i386/xm-beos.h
1464 tmake_file='i386/t-beos i386/t-crtpic'
1465 tm_file=i386/beos-elf.h
1466 xmake_file=i386/x-beos
1467 extra_parts='crtbegin.o crtend.o'
1470 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1472 tm_file=i386/bsd386.h
1473 # tmake_file=t-libc-ok
1478 tm_file=i386/386bsd.h
1479 # tmake_file=t-libc-ok
1480 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1484 i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
1486 tm_file="i386/freebsd-aout.h i386/perform.h"
1487 tmake_file=t-freebsd
1490 i[34567]86-*-freebsd*)
1492 tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd.h i386/perform.h"
1493 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1494 tmake_file=t-freebsd
1498 case x${enable_threads} in
1499 xyes | xpthreads | xposix)
1501 tmake_file="${tmake_file} t-freebsd-thread"
1506 i[34567]86-*-netbsd*)
1508 tm_file=i386/netbsd.h
1513 i[34567]86-*-openbsd*)
1515 # we need collect2 until our bug is fixed...
1521 tm_file=i386/i386-coff.h
1522 tmake_file=i386/t-i386bare
1525 i[34567]86-*-isc*) # 80386 running ISC system
1527 xm_file="${xm_file} i386/xm-isc.h"
1528 xm_defines="USG SVR3"
1531 i[34567]86-*-isc[34]*)
1533 xmake_file=i386/x-isc3
1536 xmake_file=i386/x-isc
1539 if test x$gas = xyes -a x$stabs = xyes
1541 tm_file=i386/iscdbx.h
1542 tmake_file=i386/t-svr3dbx
1543 extra_parts="svr3.ifile svr3z.ifile"
1545 tm_file=i386/isccoff.h
1546 tmake_file=i386/t-crtstuff
1547 extra_parts="crtbegin.o crtend.o"
1549 tmake_file="$tmake_file i386/t-i386bare"
1550 install_headers_dir=install-headers-cpio
1553 i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
1554 changequote([,])dnl # with a.out format using
1556 xmake_file=x-linux-aout
1557 tmake_file="t-linux-aout i386/t-crtstuff"
1558 tm_file=i386/linux-oldld.h
1563 i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1564 changequote([,])dnl # with a.out format
1565 xmake_file=x-linux-aout
1566 tmake_file="t-linux-aout i386/t-crtstuff"
1567 tm_file=i386/linux-aout.h
1572 i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1573 changequote([,])dnl # with ELF format using the
1574 # GNU/Linux C library 5
1576 tm_file=i386/linux.h
1577 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1578 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1581 if test x$enable_threads = xyes; then
1582 thread_file='single'
1586 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1587 changequote([,])dnl # with ELF format using glibc 2
1588 # aka GNU/Linux C library 6
1590 tm_file=i386/linux.h
1591 tmake_file="t-linux i386/t-crtstuff"
1592 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1595 if test x$enable_threads = xyes; then
1605 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1607 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1611 i[34567]86-pc-msdosdjgpp*)
1613 xm_file=i386/xm-djgpp.h
1614 tm_file=i386/djgpp.h
1615 tmake_file=i386/t-djgpp
1616 xmake_file=i386/x-djgpp
1621 case $host in *pc-msdosdjgpp*)
1627 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1630 tmake_file=t-libc-ok
1635 i[34567]86-*-lynxos*)
1637 if test x$gas = xyes
1641 tm_file=i386/lynx-ng.h
1643 xm_file=i386/xm-lynx.h
1644 tmake_file=i386/t-i386bare
1651 # tmake_file=t-libc-ok
1655 i[34567]86-*-osfrose*) # 386 using OSF/rose
1657 if test x$elf = xyes
1659 tm_file=i386/osfelf.h
1662 tm_file=i386/osfrose.h
1665 xm_file="i386/xm-osf.h ${xm_file}"
1666 xmake_file=i386/x-osfrose
1667 tmake_file=i386/t-osf
1668 extra_objs=halfpic.o
1671 i[34567]86-go32-rtems*)
1674 xm_file=i386/xm-go32.h
1675 tm_file=i386/go32-rtems.h
1676 tmake_file="i386/t-go32 t-rtems"
1679 i[34567]86-*-rtemscoff*)
1682 tm_file=i386/rtems.h
1683 tmake_file="i386/t-i386bare t-rtems"
1686 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1689 tm_file=i386/rtemself.h
1690 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1691 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1694 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1696 xm_file="xm-alloca.h ${xm_file} i386/xm-sco5.h"
1697 xm_defines="USG SVR3"
1698 xmake_file=i386/x-sco5
1699 install_headers_dir=install-headers-cpio
1701 if test x$gas = xyes
1703 tm_file="i386/sco5gas.h ${tm_file}"
1704 tmake_file=i386/t-sco5gas
1706 tmake_file=i386/t-sco5
1708 tmake_file="$tmake_file i386/t-i386bare"
1709 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1712 i[34567]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
1714 xm_file="${xm_file} i386/xm-sco.h"
1715 xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX"
1716 xmake_file=i386/x-sco4
1717 install_headers_dir=install-headers-cpio
1718 if test x$stabs = xyes
1720 tm_file=i386/sco4dbx.h
1721 tmake_file=i386/t-svr3dbx
1722 extra_parts="svr3.ifile svr3z.rfile"
1725 tmake_file=i386/t-crtstuff
1726 extra_parts="crtbegin.o crtend.o"
1728 tmake_file="$tmake_file i386/t-i386bare"
1729 # The default EAFS filesystem supports long file names.
1730 # Truncating the target makes $host != $target which
1731 # makes gcc think it is doing a cross-compile.
1732 # truncate_target=yes
1735 i[34567]86-*-sco*) # 80386 running SCO system
1737 xm_file=i386/xm-sco.h
1738 xmake_file=i386/x-sco
1739 install_headers_dir=install-headers-cpio
1740 if test x$stabs = xyes
1742 tm_file=i386/scodbx.h
1743 tmake_file=i386/t-svr3dbx
1744 extra_parts="svr3.ifile svr3z.rfile"
1747 extra_parts="crtbegin.o crtend.o"
1748 tmake_file=i386/t-crtstuff
1750 tmake_file="$tmake_file i386/t-i386bare"
1754 i[34567]86-*-solaris2*)
1756 xm_file="xm-alloca.h ${xm_file}"
1757 xm_defines="USG POSIX SMALL_ARG_MAX"
1759 if test x$gas = xyes; then
1760 # Only needed if gas does not support -s
1761 tm_file="i386/sol2gas.h ${tm_file}"
1763 tmake_file="i386/t-i386bare i386/t-sol2"
1764 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1766 if test x${enable_threads} = x; then
1767 enable_threads=$have_pthread_h
1768 if test x${enable_threads} = x; then
1769 enable_threads=$have_thread_h
1772 if test x${enable_threads} = xyes; then
1773 if test x${have_pthread_h} = xyes; then
1776 thread_file='solaris'
1781 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1783 xm_file="xm-alloca.h ${xm_file}"
1784 xm_defines="USG POSIX"
1785 tm_file=i386/sysv5.h
1786 if test x$stabs = xyes
1788 tm_file="${tm_file} dbx.h"
1790 tmake_file="i386/t-i386bare i386/t-crtpic"
1792 extra_parts="crtbegin.o crtend.o"
1793 if test x$enable_threads = xyes; then
1798 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1800 xm_file="xm-alloca.h ${xm_file}"
1801 xm_defines="USG POSIX SMALL_ARG_MAX"
1802 tm_file=i386/sysv4.h
1803 if test x$stabs = xyes
1805 tm_file="${tm_file} dbx.h"
1807 tmake_file="i386/t-i386bare i386/t-crtpic"
1809 extra_parts="crtbegin.o crtend.o"
1812 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1814 xm_file="xm-alloca.h ${xm_file}"
1815 xm_defines="USG POSIX"
1817 tmake_file="i386/t-i386bare i386/t-crtpic i386/t-udk"
1819 extra_parts="crtbegin.o crtend.o"
1820 install_headers_dir=install-headers-cpio
1823 i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
1826 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
1827 xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
1828 if test x$stabs = xyes
1830 tm_file=i386/osf1elfgdb.h
1832 tm_file=i386/osf1elf.h
1834 tmake_file=i386/t-osf1elf
1835 xmake_file=i386/x-osf1elf
1836 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1839 i[34567]86-*-sysv*) # Intel 80386's running system V
1841 xm_defines="USG SVR3"
1842 xmake_file=i386/x-sysv3
1843 if test x$gas = xyes
1845 if test x$stabs = xyes
1847 tm_file=i386/svr3dbx.h
1848 tmake_file=i386/t-svr3dbx
1849 extra_parts="svr3.ifile svr3z.rfile"
1851 tm_file=i386/svr3gas.h
1852 extra_parts="crtbegin.o crtend.o"
1853 tmake_file=i386/t-crtstuff
1856 tm_file=i386/sysv3.h
1857 extra_parts="crtbegin.o crtend.o"
1858 tmake_file=i386/t-crtstuff
1860 tmake_file="$tmake_file i386/t-crtpic"
1862 i386-*-vsta) # Intel 80386's running VSTa kernel
1863 xm_file="${xm_file} i386/xm-vsta.h"
1865 tmake_file=i386/t-vsta
1866 xmake_file=i386/x-vsta
1871 xm_file="${xm_file} i386/xm-cygwin.h"
1872 tmake_file=i386/t-cygwin
1873 tm_file=i386/win32.h
1874 xmake_file=i386/x-cygwin
1876 if test x$enable_threads = xyes; then
1882 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1884 xm_file="${xm_file} i386/xm-cygwin.h"
1885 tmake_file=i386/t-cygwin
1886 tm_file=i386/cygwin.h
1887 xmake_file=i386/x-cygwin
1889 if test x$enable_threads = xyes; then
1895 i[34567]86-*-mingw32*)
1897 tm_file=i386/mingw32.h
1898 xm_file="${xm_file} i386/xm-mingw32.h"
1899 tmake_file="i386/t-cygwin i386/t-mingw32"
1901 xmake_file=i386/x-cygwin
1902 if test x$enable_threads = xyes; then
1909 *minwg32crt* | *mingw32*)
1910 tm_file="${tm_file} i386/crtdll.h"
1918 xm_file="${xm_file} i386/xm-uwin.h"
1919 xm_defines="USG NO_STAB_H"
1920 tmake_file="i386/t-cygwin i386/t-uwin"
1922 xmake_file=i386/x-cygwin
1923 if test x$enable_threads = xyes; then
1929 i[34567]86-*-interix*)
1931 tm_file="i386/i386-interix.h interix.h"
1932 xm_file="i386/xm-i386-interix.h xm-interix.h"
1934 tmake_file="i386/t-interix"
1935 extra_objs=interix.o
1936 xmake_file=x-interix
1937 if test x$enable_threads = xyes ; then
1940 if test x$stabs = xyes ; then
1941 tm_file="${tm_file} dbxcoff.h"
1945 i[34567]86-*-winnt3*)
1947 tm_file=i386/win-nt.h
1948 out_file=i386/i386.c
1949 xm_file="xm-winnt.h ${xm_file}"
1950 xmake_file=winnt/x-winnt
1951 tmake_file=i386/t-winnt
1952 extra_host_objs="winnt.o oldnames.o"
1953 extra_gcc_objs="spawnv.o oldnames.o"
1954 if test x$gnu_ld != xyes
1956 extra_programs=ld.exe
1958 if test x$enable_threads = xyes; then
1963 i[34567]86-dg-dgux*)
1965 xm_file="xm-alloca.h ${xm_file}"
1966 xm_defines="USG POSIX"
1967 out_file=i386/dgux.c
1969 tmake_file=i386/t-dgux
1970 xmake_file=i386/x-dgux
1971 install_headers_dir=install-headers-cpio
1973 i860-alliant-*) # Alliant FX/2800
1974 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1975 xm_file="${xm_file}"
1976 xmake_file=i860/x-fx2800
1977 tmake_file=i860/t-fx2800
1978 extra_parts="crtbegin.o crtend.o"
1981 tm_file="${tm_file} i860/bsd.h"
1982 if test x$gas = xyes
1984 tm_file="${tm_file} i860/bsd-gas.h"
1989 tm_file="${tm_file} i860/mach.h"
1990 tmake_file=t-libc-ok
1992 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1993 tm_file="${tm_file} svr3.h i860/paragon.h"
1994 xm_defines="USG SVR3"
1998 tm_file="${tm_file} svr3.h i860/sysv3.h"
1999 xm_defines="USG SVR3"
2000 xmake_file=i860/x-sysv3
2001 extra_parts="crtbegin.o crtend.o"
2004 tm_file="${tm_file} svr4.h i860/sysv4.h"
2005 xm_defines="USG SVR3"
2006 xmake_file=i860/x-sysv4
2008 extra_parts="crtbegin.o crtend.o"
2010 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
2011 tm_file="${tm_file} i960/vx960.h"
2012 tmake_file=i960/t-vxworks960
2014 thread_file='vxworks'
2016 i960-wrs-vxworks5* | i960-wrs-vxworks)
2017 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
2018 tmake_file=i960/t-vxworks960
2020 thread_file='vxworks'
2023 tm_file="${tm_file} i960/vx960.h"
2024 tmake_file=i960/t-vxworks960
2026 thread_file='vxworks'
2029 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
2030 tmake_file=i960/t-960bare
2034 tmake_file="i960/t-960bare t-rtems"
2035 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
2038 i960-*-*) # Default i960 environment.
2043 tmake_file="ia64/t-ia64"
2044 target_cpu_default="0"
2045 if test x$gas = xyes
2047 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
2049 if test x$gnu_ld = xyes
2051 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
2056 tm_file=ia64/linux.h
2057 tmake_file="t-linux ia64/t-ia64 ia64/t-glibc"
2058 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
2059 if test x$enable_threads = xyes; then
2065 extra_parts="crtinit.o crtfini.o"
2067 # m68hc11 and m68hc12 share the same machine description.
2068 m68hc11-*-*|m6811-*-*)
2069 tm_file="m68hc11/m68hc11.h"
2070 xm_file="m68hc11/xm-m68hc11.h"
2071 tm_p_file="m68hc11/m68hc11-protos.h"
2072 md_file="m68hc11/m68hc11.md"
2073 out_file="m68hc11/m68hc11.c"
2074 tmake_file="m68hc11/t-m68hc11-gas"
2076 m68hc12-*-*|m6812-*-*)
2077 tm_file="m68hc11/m68hc12.h"
2078 tm_p_file="m68hc11/m68hc11-protos.h"
2079 xm_file="m68hc11/xm-m68hc11.h"
2080 md_file="m68hc11/m68hc11.md"
2081 out_file="m68hc11/m68hc11.c"
2082 tmake_file="m68hc11/t-m68hc11-gas"
2084 m68000-convergent-sysv*)
2086 xm_file="m68k/xm-3b1.h ${xm_file}"
2089 extra_headers=math-68881.h
2091 m68000-hp-bsd*) # HP 9000/200 running BSD
2092 tm_file=m68k/hp2bsd.h
2093 xmake_file=m68k/x-hp2bsd
2095 extra_headers=math-68881.h
2097 m68000-hp-hpux*) # HP 9000 series 300
2098 xm_file="xm-alloca.h ${xm_file}"
2100 if test x$gas = xyes
2102 xmake_file=m68k/x-hp320g
2103 tm_file=m68k/hp310g.h
2105 xmake_file=m68k/x-hp320
2106 tm_file=m68k/hp310.h
2108 install_headers_dir=install-headers-cpio
2110 extra_headers=math-68881.h
2115 extra_headers=math-68881.h
2118 tm_file=m68k/sun2o4.h
2120 extra_headers=math-68881.h
2123 xm_file="m68k/xm-3b1.h ${xm_file}"
2125 if test x$gas = xyes
2132 extra_headers=math-68881.h
2134 m68k-apple-aux*) # Apple Macintosh running A/UX
2135 xm_defines="USG AUX"
2136 tmake_file=m68k/t-aux
2137 install_headers_dir=install-headers-cpio
2138 extra_headers=math-68881.h
2139 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
2141 if test "$gnu_ld" = yes
2143 tm_file="${tm_file} m68k/auxgld.h"
2145 tm_file="${tm_file} m68k/auxld.h"
2147 if test "$gas" = yes
2149 tm_file="${tm_file} m68k/auxgas.h"
2151 tm_file="${tm_file} m68k/auxas.h"
2153 tm_file="${tm_file} m68k/a-ux.h"
2157 tm_file=m68k/apollo68.h
2158 xmake_file=m68k/x-apollo68
2160 extra_headers=math-68881.h
2163 m68k-altos-sysv*) # Altos 3068
2164 if test x$gas = xyes
2166 tm_file=m68k/altos3068.h
2169 echo "The Altos is supported only with the GNU assembler" 1>&2
2172 extra_headers=math-68881.h
2174 m68k-bull-sysv*) # Bull DPX/2
2175 if test x$gas = xyes
2177 if test x$stabs = xyes
2179 tm_file=m68k/dpx2cdbx.h
2181 tm_file=m68k/dpx2g.h
2186 xm_file="xm-alloca.h ${xm_file}"
2188 xmake_file=m68k/x-dpx2
2190 extra_headers=math-68881.h
2192 m68k-atari-sysv4*) # Atari variant of V.4.
2193 tm_file=m68k/atari.h
2194 xm_file="xm-alloca.h ${xm_file}"
2195 xm_defines="USG FULL_PROTOTYPES"
2197 extra_parts="crtbegin.o crtend.o"
2198 extra_headers=math-68881.h
2201 m68k-motorola-sysv*)
2202 tm_file=m68k/mot3300.h
2203 xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
2204 if test x$gas = xyes
2206 xmake_file=m68k/x-mot3300-gas
2207 if test x$gnu_ld = xyes
2209 tmake_file=m68k/t-mot3300-gald
2211 tmake_file=m68k/t-mot3300-gas
2215 xmake_file=m68k/x-mot3300
2216 if test x$gnu_ld = xyes
2218 tmake_file=m68k/t-mot3300-gld
2220 tmake_file=m68k/t-mot3300
2224 gdb_needs_out_file_path=yes
2225 extra_parts="crt0.o mcrt0.o"
2226 extra_headers=math-68881.h
2229 m68k-ncr-sysv*) # NCR Tower 32 SVR3
2230 tm_file=m68k/tower-as.h
2231 xm_defines="USG SVR3"
2232 xmake_file=m68k/x-tower
2233 extra_parts="crtbegin.o crtend.o"
2234 extra_headers=math-68881.h
2237 tm_file=m68k/plexus.h
2238 xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
2241 extra_headers=math-68881.h
2245 xm_file="xm-alloca.h ${xm_file}"
2247 extra_headers=math-68881.h
2250 xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
2251 xm_defines="USG unos"
2252 xmake_file=m68k/x-crds
2255 extra_headers=math-68881.h
2257 m68k-cbm-sysv4*) # Commodore variant of V.4.
2259 xm_file="xm-alloca.h ${xm_file}"
2260 xm_defines="USG FULL_PROTOTYPES"
2261 xmake_file=m68k/x-amix
2263 extra_parts="crtbegin.o crtend.o"
2264 extra_headers=math-68881.h
2268 tm_file=m68k/ccur-GAS.h
2269 xmake_file=m68k/x-ccur
2270 extra_headers=math-68881.h
2274 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
2275 tm_file=m68k/hp3bsd44.h
2276 xmake_file=m68k/x-hp3bsd44
2278 extra_headers=math-68881.h
2281 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
2282 tm_file=m68k/hp3bsd.h
2284 extra_headers=math-68881.h
2288 if test x$with_fp = xno
2290 tm_file=m68k/isi-nfp.h
2296 extra_headers=math-68881.h
2298 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
2299 xm_file="xm-alloca.h ${xm_file}"
2301 if test x$gas = xyes
2303 xmake_file=m68k/x-hp320g
2304 tm_file=m68k/hp320g.h
2306 xmake_file=m68k/x-hp320
2307 tm_file=m68k/hpux7.h
2309 install_headers_dir=install-headers-cpio
2311 extra_headers=math-68881.h
2314 m68k-hp-hpux*) # HP 9000 series 300
2315 xm_file="xm-alloca.h ${xm_file}"
2317 if test x$gas = xyes
2319 xmake_file=m68k/x-hp320g
2320 tm_file=m68k/hp320g.h
2322 xmake_file=m68k/x-hp320
2323 tm_file=m68k/hp320.h
2325 install_headers_dir=install-headers-cpio
2327 extra_headers=math-68881.h
2331 tm_file=m68k/sun3mach.h
2333 extra_headers=math-68881.h
2337 if test x$gas = xyes
2339 tm_file=m68k/news3gas.h
2341 tm_file=m68k/news3.h
2344 extra_headers=math-68881.h
2347 m68k-sony-bsd* | m68k-sony-newsos*)
2348 if test x$gas = xyes
2350 tm_file=m68k/newsgas.h
2355 extra_headers=math-68881.h
2358 m68k-next-nextstep2*)
2359 tm_file=m68k/next21.h
2360 xm_file="m68k/xm-next.h ${xm_file}"
2361 tmake_file=m68k/t-next
2362 xmake_file=m68k/x-next
2363 extra_objs=nextstep.o
2364 extra_headers=math-68881.h
2369 m68k-next-nextstep[34]*)
2372 xm_file="m68k/xm-next.h ${xm_file}"
2373 tmake_file=m68k/t-next
2374 xmake_file=m68k/x-next
2375 extra_objs=nextstep.o
2376 extra_parts="crtbegin.o crtend.o"
2377 extra_headers=math-68881.h
2379 if test x$enable_threads = xyes; then
2384 if test x$with_fp = xno
2386 tm_file=m68k/sun3n3.h
2388 tm_file=m68k/sun3o3.h
2392 extra_headers=math-68881.h
2394 m68k-sun-sunos*) # For SunOS 4 (the default).
2395 if test x$with_fp = xno
2397 tm_file=m68k/sun3n.h
2403 extra_headers=math-68881.h
2406 tm_file=m68k/vxm68k.h
2407 tmake_file=m68k/t-vxworks68
2408 extra_headers=math-68881.h
2409 thread_file='vxworks'
2413 tmake_file=m68k/t-m68kbare
2414 tm_file="m68k/m68k-aout.h libgloss.h"
2415 extra_headers=math-68881.h
2419 tmake_file=m68k/t-m68kbare
2420 tm_file="m68k/m68k-coff.h dbx.h libgloss.h"
2421 extra_headers=math-68881.h
2424 m68020-*-elf* | m68k-*-elf*)
2425 tm_file="m68k/m68020-elf.h"
2426 xm_file=m68k/xm-m68kv.h
2427 tmake_file=m68k/t-m68kelf
2428 header_files=math-68881.h
2431 if test x$gas = xyes
2435 tm_file=m68k/lynx-ng.h
2437 xm_file=m68k/xm-lynx.h
2439 tmake_file=m68k/t-lynx
2440 extra_headers=math-68881.h
2444 tm_file=m68k/netbsd.h
2451 # we need collect2 until our bug is fixed...
2454 m68k-*-sysv3*) # Motorola m68k's running system V.3
2455 xm_file="xm-alloca.h ${xm_file}"
2457 xmake_file=m68k/x-m68kv
2458 extra_parts="crtbegin.o crtend.o"
2459 extra_headers=math-68881.h
2462 m68k-*-sysv4*) # Motorola m68k's running system V.4
2463 tm_file=m68k/m68kv4.h
2464 xm_file="xm-alloca.h ${xm_file}"
2467 extra_parts="crtbegin.o crtend.o"
2468 extra_headers=math-68881.h
2471 m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
2474 tm_file=m68k/linux-aout.h
2475 tmake_file="t-linux-aout m68k/t-linux-aout"
2476 extra_headers=math-68881.h
2480 m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
2481 # with ELF format using the
2482 # GNU/Linux C library 5
2484 tm_file=m68k/linux.h
2485 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
2486 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2487 extra_headers=math-68881.h
2491 m68k-*-linux*) # Motorola m68k's running GNU/Linux
2492 # with ELF format using glibc 2
2493 # aka the GNU/Linux C library 6.
2495 tm_file=m68k/linux.h
2496 tmake_file="t-linux m68k/t-linux"
2497 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2498 extra_headers=math-68881.h
2501 if test x$enable_threads = xyes; then
2506 tmake_file=m68k/t-m68kbare
2507 tm_file=m68k/m68k-psos.h
2508 extra_headers=math-68881.h
2512 tmake_file="m68k/t-m68kbare t-rtems"
2513 tm_file=m68k/rtems.h
2514 extra_headers=math-68881.h
2517 m68k-*-rtemself*|m68k-*-rtems*)
2518 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2519 tm_file=m68k/rtemself.h
2520 extra_headers=math-68881.h
2526 tm_file=m88k/dguxbcs.h
2527 tmake_file=m88k/t-dguxbcs
2531 tmake_file=m88k/t-dgux
2534 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2535 xmake_file=m88k/x-dgux
2536 if test x$gas = xyes
2538 tmake_file=m88k/t-dgux-gas
2541 m88k-dolphin-sysv3*)
2542 tm_file=m88k/dolph.h
2543 extra_parts="crtbegin.o crtend.o"
2544 xm_file="m88k/xm-sysv3.h ${xm_file}"
2545 xmake_file=m88k/x-dolph
2546 if test x$gas = xyes
2548 tmake_file=m88k/t-m88k-gas
2551 m88k-tektronix-sysv3)
2552 tm_file=m88k/tekXD88.h
2553 extra_parts="crtbegin.o crtend.o"
2554 xm_file="m88k/xm-sysv3.h ${xm_file}"
2555 xmake_file=m88k/x-tekXD88
2556 if test x$gas = xyes
2558 tmake_file=m88k/t-m88k-gas
2562 tm_file=m88k/m88k-aout.h
2565 tm_file=m88k/m88k-coff.h
2566 tmake_file=m88k/t-bug
2570 extra_parts="crtbegin.o crtend.o"
2571 if test x$gas = xyes
2573 tmake_file=m88k/t-luna-gas
2575 tmake_file=m88k/t-luna
2579 tmake_file="${tmake_file} m88k/t-luna-gas"
2580 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
2581 xm_file="xm-openbsd.h m88k/xm-m88k.h ${xm_file}"
2584 tm_file=m88k/sysv3.h
2585 extra_parts="crtbegin.o crtend.o"
2586 xm_file="m88k/xm-sysv3.h ${xm_file}"
2587 xmake_file=m88k/x-sysv3
2588 if test x$gas = xyes
2590 tmake_file=m88k/t-m88k-gas
2594 tm_file=m88k/sysv4.h
2595 extra_parts="crtbegin.o crtend.o"
2596 xmake_file=m88k/x-sysv4
2597 tmake_file=m88k/t-sysv4
2600 tm_file=mcore/mcore-elf.h
2601 tmake_file=mcore/t-mcore
2604 tm_file=mcore/mcore-pe.h
2605 tmake_file=mcore/t-mcore-pe
2607 mips-sgi-irix6*) # SGI System V.4., IRIX 6
2608 if test "x$gnu_ld" = xyes
2610 tm_file="mips/iris6.h mips/iris6gld.h"
2612 tm_file=mips/iris6.h
2614 tmake_file=mips/t-iris6
2615 xm_file=mips/xm-iris6.h
2616 xmake_file=mips/x-iris6
2617 # if test x$enable_threads = xyes; then
2618 # thread_file='irix'
2622 tm_file="mips/elf.h mips/vxworks.h"
2623 tmake_file=mips/t-ecoff
2626 extra_parts="crtbegin.o crtend.o"
2627 thread_file='vxworks'
2629 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2630 tm_file="mips/iris6.h mips/cross64.h"
2632 xm_file="mips/xm-iris5.h"
2633 xmake_file=mips/x-iris
2634 tmake_file=mips/t-cross64
2635 # See comment in mips/iris[56].h files.
2637 # if test x$enable_threads = xyes; then
2638 # thread_file='irix'
2642 if test x$gas = xyes
2644 if test x$stabs = xyes
2646 tm_file=mips/iris5gdb.h
2648 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2651 tm_file=mips/sni-svr4.h
2654 xmake_file=mips/x-sni-svr4
2655 tmake_file=mips/t-mips-gas
2656 if test x$gnu_ld != xyes
2661 mips-sgi-irix5*) # SGI System V.4., IRIX 5
2662 if test x$gas = xyes
2664 tm_file="mips/iris5.h mips/iris5gas.h"
2665 if test x$stabs = xyes
2667 tm_file="${tm_file} dbx.h"
2670 tm_file=mips/iris5.h
2673 xm_file="mips/xm-iris5.h"
2674 xmake_file=mips/x-iris
2675 # mips-tfile doesn't work yet
2676 tmake_file=mips/t-mips-gas
2677 # See comment in mips/iris5.h file.
2679 # if test x$enable_threads = xyes; then
2680 # thread_file='irix'
2683 mips-sgi-irix4loser*) # Mostly like a MIPS.
2684 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2685 if test x$stabs = xyes; then
2686 tm_file="${tm_file} dbx.h"
2689 xmake_file=mips/x-iris
2690 if test x$gas = xyes
2692 tmake_file=mips/t-mips-gas
2694 extra_passes="mips-tfile mips-tdump"
2696 if test x$gnu_ld != xyes
2700 # if test x$enable_threads = xyes; then
2701 # thread_file='irix'
2704 mips-sgi-irix4*) # Mostly like a MIPS.
2705 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2706 if test x$stabs = xyes; then
2707 tm_file="${tm_file} dbx.h"
2710 xmake_file=mips/x-iris
2711 if test x$gas = xyes
2713 tmake_file=mips/t-mips-gas
2715 extra_passes="mips-tfile mips-tdump"
2717 if test x$gnu_ld != xyes
2721 # if test x$enable_threads = xyes; then
2722 # thread_file='irix'
2725 mips-sgi-*) # Mostly like a MIPS.
2726 tm_file="mips/iris3.h ${tm_file}"
2727 if test x$stabs = xyes; then
2728 tm_file="${tm_file} dbx.h"
2731 xmake_file=mips/x-iris3
2732 if test x$gas = xyes
2734 tmake_file=mips/t-mips-gas
2736 extra_passes="mips-tfile mips-tdump"
2738 if test x$gnu_ld != xyes
2743 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2744 tm_file="mips/osfrose.h ${tm_file}"
2745 xmake_file=mips/x-osfrose
2746 tmake_file=mips/t-osfrose
2747 extra_objs=halfpic.o
2750 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2751 tm_file=mips/dec-osf1.h
2752 if test x$stabs = xyes; then
2753 tm_file="${tm_file} dbx.h"
2755 xmake_file=mips/x-dec-osf1
2756 if test x$gas = xyes
2758 tmake_file=mips/t-mips-gas
2760 tmake_file=mips/t-ultrix
2761 extra_passes="mips-tfile mips-tdump"
2763 if test x$gnu_ld != xyes
2768 mips-dec-bsd*) # Decstation running 4.4 BSD
2769 tm_file=mips/dec-bsd.h
2770 if test x$gas = xyes
2772 tmake_file=mips/t-mips-gas
2774 tmake_file=mips/t-ultrix
2775 extra_passes="mips-tfile mips-tdump"
2777 if test x$gnu_ld != xyes
2782 mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2783 tm_file=mips/netbsd.h
2784 # On NetBSD, the headers are already okay, except for math.h.
2787 mips*-*-linux*) # Linux MIPS, either endian.
2790 mips*el-*) tm_file="mips/elfl.h mips/linux.h" ;;
2791 *) tm_file="mips/elf.h mips/linux.h" ;;
2794 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2797 if test x$enable_threads = xyes; then
2801 mips*el-*-openbsd*) # mips little endian
2802 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2804 mips*-*-openbsd*) # mips big endian
2805 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2806 tm_file="mips/openbsd-be.h ${tm_file}"
2808 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2809 tm_file="mips/news4.h ${tm_file}"
2810 if test x$stabs = xyes; then
2811 tm_file="${tm_file} dbx.h"
2813 if test x$gas = xyes
2815 tmake_file=mips/t-mips-gas
2817 extra_passes="mips-tfile mips-tdump"
2819 if test x$gnu_ld != xyes
2823 xmake_file=mips/x-sony
2825 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2826 # That is based on svr4.
2827 # t-svr4 is not right because this system doesn't use ELF.
2828 tm_file="mips/news5.h ${tm_file}"
2829 if test x$stabs = xyes; then
2830 tm_file="${tm_file} dbx.h"
2833 if test x$gas = xyes
2835 tmake_file=mips/t-mips-gas
2837 extra_passes="mips-tfile mips-tdump"
2839 if test x$gnu_ld != xyes
2844 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2845 tm_file="mips/svr4-5.h mips/svr4-t.h"
2846 if test x$stabs = xyes; then
2847 tm_file="${tm_file} dbx.h"
2850 xmake_file=mips/x-sysv
2851 if test x$gas = xyes
2853 tmake_file=mips/t-mips-gas
2854 extra_parts="crtbegin.o crtend.o"
2856 tmake_file=mips/t-mips
2857 extra_passes="mips-tfile mips-tdump"
2859 if test x$gnu_ld != xyes
2864 mips-*-ultrix* | mips-dec-mach3) # Decstation.
2865 tm_file="mips/ultrix.h ${tm_file}"
2866 if test x$stabs = xyes; then
2867 tm_file="${tm_file} dbx.h"
2869 xmake_file=mips/x-ultrix
2870 if test x$gas = xyes
2872 tmake_file=mips/t-mips-gas
2874 tmake_file=mips/t-ultrix
2875 extra_passes="mips-tfile mips-tdump"
2877 if test x$gnu_ld != xyes
2883 mips-*-riscos[56789]bsd*)
2885 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
2886 if test x$stabs = xyes; then
2887 tm_file="${tm_file} dbx.h"
2889 if test x$gas = xyes
2891 tmake_file=mips/t-bsd-gas
2893 tmake_file=mips/t-bsd
2894 extra_passes="mips-tfile mips-tdump"
2896 if test x$gnu_ld != xyes
2902 mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2904 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2905 if test x$stabs = xyes; then
2906 tm_file="${tm_file} dbx.h"
2908 if test x$gas = xyes
2910 tmake_file=mips/t-bsd-gas
2912 tmake_file=mips/t-bsd
2913 extra_passes="mips-tfile mips-tdump"
2915 if test x$gnu_ld != xyes
2921 mips-*-riscos[56789]sysv4*)
2923 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2924 if test x$stabs = xyes; then
2925 tm_file="${tm_file} dbx.h"
2927 xmake_file=mips/x-sysv
2928 if test x$gas = xyes
2930 tmake_file=mips/t-svr4-gas
2932 tmake_file=mips/t-svr4
2933 extra_passes="mips-tfile mips-tdump"
2935 if test x$gnu_ld != xyes
2941 mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2943 tm_file="mips/svr4-4.h ${tm_file}"
2944 if test x$stabs = xyes; then
2945 tm_file="${tm_file} dbx.h"
2948 xmake_file=mips/x-sysv
2949 if test x$gas = xyes
2951 tmake_file=mips/t-svr4-gas
2953 tmake_file=mips/t-svr4
2954 extra_passes="mips-tfile mips-tdump"
2956 if test x$gnu_ld != xyes
2962 mips-*-riscos[56789]sysv*)
2964 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
2965 if test x$stabs = xyes; then
2966 tm_file="${tm_file} dbx.h"
2969 xmake_file=mips/x-sysv
2970 if test x$gas = xyes
2972 tmake_file=mips/t-svr3-gas
2974 tmake_file=mips/t-svr3
2975 extra_passes="mips-tfile mips-tdump"
2977 if test x$gnu_ld != xyes
2982 mips-*-sysv* | mips-*-riscos*sysv*)
2983 tm_file="mips/svr3-4.h ${tm_file}"
2984 if test x$stabs = xyes; then
2985 tm_file="${tm_file} dbx.h"
2988 xmake_file=mips/x-sysv
2989 if test x$gas = xyes
2991 tmake_file=mips/t-svr3-gas
2993 tmake_file=mips/t-svr3
2994 extra_passes="mips-tfile mips-tdump"
2996 if test x$gnu_ld != xyes
3002 mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
3004 tm_file=mips/mips-5.h
3005 if test x$stabs = xyes; then
3006 tm_file="${tm_file} dbx.h"
3008 if test x$gas = xyes
3010 tmake_file=mips/t-mips-gas
3012 extra_passes="mips-tfile mips-tdump"
3014 if test x$gnu_ld != xyes
3022 tm_file=mips/ecoffl.h
3023 if test x$stabs = xyes; then
3024 tm_file="${tm_file} dbx.h"
3026 tmake_file=mips/t-ecoff
3029 tm_file="gofast.h mips/ecoff.h"
3030 if test x$stabs = xyes; then
3031 tm_file="${tm_file} dbx.h"
3033 tmake_file=mips/t-ecoff
3036 tm_file="mips/elfl.h"
3037 tmake_file=mips/t-elf
3040 tm_file="mips/elf.h"
3041 tmake_file=mips/t-elf
3044 tm_file="mips/elfl64.h"
3045 tmake_file=mips/t-elf
3047 mips64orionel-*-elf*)
3048 tm_file="mips/elforion.h mips/elfl64.h"
3049 tmake_file=mips/t-elf
3052 tm_file="mips/elf64.h"
3053 tmake_file=mips/t-elf
3056 tm_file="mips/elforion.h mips/elf64.h"
3057 tmake_file=mips/t-elf
3059 mips64orion-*-rtems*)
3060 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
3061 tmake_file="mips/t-elf t-rtems"
3064 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
3065 tmake_file=mips/t-r3900
3068 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
3069 tmake_file=mips/t-r3900
3071 mips-*-*) # Default MIPS RISC-OS 4.0.
3072 if test x$stabs = xyes; then
3073 tm_file="${tm_file} dbx.h"
3075 if test x$gas = xyes
3077 tmake_file=mips/t-mips-gas
3079 extra_passes="mips-tfile mips-tdump"
3081 if test x$gnu_ld != xyes
3089 tm_file="mn10200/mn10200.h"
3090 if test x$stabs = xyes
3092 tm_file="${tm_file} dbx.h"
3098 tm_file="mn10300/mn10300.h"
3099 if test x$stabs = xyes
3101 tm_file="${tm_file} dbx.h"
3106 tm_file=ns32k/encore.h
3110 tm_file=ns32k/sequent.h
3114 tm_file=ns32k/tek6100.h
3118 tm_file=ns32k/tek6200.h
3122 tm_file=ns32k/merlin.h
3126 tm_file=ns32k/pc532-mach.h
3130 tm_file=ns32k/pc532-min.h
3131 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
3136 tm_file=ns32k/netbsd.h
3137 xm_file="ns32k/xm-netbsd.h ${xm_file}"
3138 # On NetBSD, the headers are already okay, except for math.h.
3143 tm_file="${tm_file} pdp11/2bsd.h"
3153 tm_file="svr4.h pj/linux.h ${tm_file}"
3158 tm_file="svr4.h pj/pjl.h ${tm_file}"
3165 xmake_file=romp/x-mach
3172 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
3176 tm_file=rs6000/beos.h
3177 xm_file=rs6000/xm-beos.h
3178 tmake_file=rs6000/t-beos
3179 xmake_file=rs6000/x-beos
3182 tm_file=rs6000/sysv4.h
3183 xm_file="rs6000/xm-sysv4.h"
3184 xm_defines="USG POSIX"
3185 extra_headers=ppc-asm.h
3186 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3187 xmake_file=rs6000/x-sysv4
3190 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
3191 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3192 extra_headers=ppc-asm.h
3195 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
3196 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3197 extra_headers=ppc-asm.h
3200 tm_file="rs6000/sysv4.h"
3201 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3202 extra_headers=ppc-asm.h
3205 tm_file="rs6000/sysv4.h rs6000/eabi.h"
3206 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3207 extra_headers=ppc-asm.h
3210 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h"
3211 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
3212 extra_headers=ppc-asm.h
3214 powerpc-*-linux*libc1)
3215 tm_file="rs6000/sysv4.h rs6000/linux.h"
3216 xm_file=rs6000/xm-sysv4.h
3217 out_file=rs6000/rs6000.c
3218 tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
3220 extra_headers=ppc-asm.h
3221 if test x$enable_threads = xyes; then
3226 tm_file="rs6000/sysv4.h rs6000/linux.h"
3227 xm_file="rs6000/xm-sysv4.h"
3228 xm_defines="USG ${xm_defines}"
3229 out_file=rs6000/rs6000.c
3230 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
3232 extra_headers=ppc-asm.h
3233 if test x$enable_threads = xyes; then
3237 powerpc-wrs-vxworks*)
3239 xm_file="rs6000/xm-sysv4.h"
3240 xm_defines="USG POSIX"
3241 tm_file="rs6000/sysv4.h rs6000/vxppc.h"
3242 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3243 extra_headers=ppc-asm.h
3244 thread_file='vxworks'
3246 powerpcle-wrs-vxworks*)
3248 xm_file="rs6000/xm-sysv4.h"
3249 xm_defines="USG POSIX"
3250 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
3251 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3252 extra_headers=ppc-asm.h
3253 thread_file='vxworks'
3256 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3257 xm_file="rs6000/xm-sysv4.h"
3258 xm_defines="USG POSIX"
3259 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3260 xmake_file=rs6000/x-sysv4
3261 extra_headers=ppc-asm.h
3264 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3265 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3266 extra_headers=ppc-asm.h
3268 powerpcle-*-eabisim*)
3269 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
3270 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3271 extra_headers=ppc-asm.h
3274 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
3275 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3276 extra_headers=ppc-asm.h
3278 powerpcle-*-solaris2*)
3279 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
3280 xm_file="rs6000/xm-sysv4.h"
3281 xm_defines="USG POSIX"
3282 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3283 xmake_file=rs6000/x-sysv4
3284 extra_headers=ppc-asm.h
3287 rs6000-ibm-aix3.[01]*)
3289 tm_file=rs6000/aix31.h
3290 xmake_file=rs6000/x-aix31
3295 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
3297 tm_file=rs6000/aix3newas.h
3298 if test x$host != x$target
3300 tmake_file=rs6000/t-xnewas
3302 tmake_file=rs6000/t-newas
3308 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
3310 tm_file=rs6000/aix41.h
3311 if test x$host != x$target
3313 tmake_file=rs6000/t-xnewas
3315 tmake_file=rs6000/t-newas
3317 if test "$gnu_ld" = yes
3319 xmake_file=rs6000/x-aix41-gld
3321 tmake_file='rs6000/t-newas'
3323 xmake_file=rs6000/x-aix41
3328 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
3330 tm_file=rs6000/aix43.h
3331 tmake_file=rs6000/t-aix43
3332 xmake_file=rs6000/x-aix41
3338 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
3340 tm_file=rs6000/aix43.h
3341 tmake_file=rs6000/t-aix43
3342 xmake_file=rs6000/x-aix41
3356 tm_file=rs6000/mach.h
3357 xm_file="${xm_file} rs6000/xm-mach.h"
3358 xmake_file=rs6000/x-mach
3362 tm_file=rs6000/lynx.h
3363 xm_file=rs6000/xm-lynx.h
3364 tmake_file=rs6000/t-rs6000
3365 xmake_file=rs6000/x-lynx
3369 tmake_file="sh/t-sh sh/t-elf"
3370 tm_file="sh/sh.h sh/elf.h"
3374 tmake_file="sh/t-sh sh/t-elf t-rtems"
3375 tm_file="sh/sh.h sh/elf.h sh/rtemself.h"
3379 tmake_file="sh/t-sh t-rtems"
3380 tm_file="sh/sh.h sh/rtems.h"
3384 tm_file="sh/sh.h sh/elf.h sh/linux.h"
3385 tmake_file="sh/t-sh sh/t-elf sh/t-linux"
3388 if test x$enable_threads = xyes; then
3398 xm_file="xm-alloca.h ${xm_file}"
3401 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
3402 tm_file=sparc/vxsparc.h
3403 tmake_file=sparc/t-vxsparc
3405 thread_file='vxworks'
3408 tmake_file=sparc/t-sparcbare
3409 tm_file="sparc/aout.h libgloss.h"
3412 tm_file=sparc/netbsd.h
3417 # we need collect2 until our bug is fixed...
3425 tmake_file=sparc/t-elf
3426 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3430 sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
3431 xm_file="${xm_file} sparc/xm-linux.h"
3432 tm_file=sparc/linux-aout.h
3436 sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
3437 xm_file="${xm_file} sparc/xm-linux.h"
3439 tm_file=sparc/linux.h
3440 tmake_file="t-linux t-linux-gnulibc1"
3441 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3445 sparc-*-linux*) # Sparc's running GNU/Linux, libc6
3446 xm_file="${xm_file} sparc/xm-linux.h"
3448 tm_file=sparc/linux.h
3449 tmake_file="t-linux"
3450 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3452 if test x$enable_threads = xyes; then
3458 if test x$gas = xyes
3460 tm_file=sparc/lynx.h
3462 tm_file=sparc/lynx-ng.h
3464 xm_file=sparc/xm-lynx.h
3465 tmake_file=sparc/t-sunos41
3469 tmake_file="sparc/t-sparcbare t-rtems"
3470 tm_file=sparc/rtems.h
3472 sparc-*-rtems*|sparc-*-rtemself*)
3473 tm_file="sparc/rtemself.h"
3474 tmake_file="sparc/t-elf t-rtems"
3475 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3479 sparcv9-*-solaris2*)
3480 if test x$gnu_ld = xyes
3482 tm_file=sparc/sol2-64.h
3484 tm_file=sparc/sol2-sld-64.h
3486 xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
3487 xm_defines="USG POSIX"
3488 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3489 xmake_file=sparc/x-sysv4
3490 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3492 if test x${enable_threads} = x ; then
3493 enable_threads=$have_pthread_h
3494 if test x${enable_threads} = x ; then
3495 enable_threads=$have_thread_h
3498 if test x${enable_threads} = xyes ; then
3499 if test x${have_pthread_h} = xyes ; then
3502 thread_file='solaris'
3506 sparc-hal-solaris2*)
3507 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3508 xm_defines="USG POSIX"
3509 tm_file="sparc/sol2.h sparc/hal.h"
3510 tmake_file="sparc/t-halos sparc/t-sol2"
3511 xmake_file=sparc/x-sysv4
3512 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3523 thread_file='solaris'
3526 if test x$gnu_ld = xyes
3528 tm_file=sparc/sol2.h
3530 tm_file=sparc/sol2-sld.h
3532 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3533 xm_defines="USG POSIX"
3534 tmake_file=sparc/t-sol2
3535 xmake_file=sparc/x-sysv4
3536 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3537 # At the moment, 32-to-64 cross compilation doesn't work.
3540 # *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3541 #changequote([,])dnl
3543 # if test x$gnu_ld = xyes
3545 # tm_file=sparc/sol2-64.h
3547 # tm_file=sparc/sol2-sld-64.h
3549 # tmake_file="$tmake_file sparc/t-sol2-64"
3562 if test x${enable_threads} = x; then
3563 enable_threads=$have_pthread_h
3564 if test x${enable_threads} = x; then
3565 enable_threads=$have_thread_h
3568 if test x${enable_threads} = xyes; then
3569 if test x${have_pthread_h} = xyes; then
3572 thread_file='solaris'
3577 tm_file=sparc/sunos4.h
3578 tmake_file=sparc/t-sunos40
3582 tm_file=sparc/sunos4.h
3583 tmake_file=sparc/t-sunos41
3585 if test x$gas = xyes; then
3586 tm_file="${tm_file} sparc/sun4gas.h"
3590 tm_file=sparc/sun4o3.h
3594 tm_file=sparc/sysv4.h
3595 xm_file="sparc/xm-sysv4.h"
3596 xm_defines="USG POSIX"
3598 xmake_file=sparc/x-sysv4
3599 extra_parts="crtbegin.o crtend.o"
3602 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3603 xm_defines="USG POSIX"
3604 tm_file=sparc/vxsim.h
3605 tmake_file=sparc/t-vxsparc
3606 xmake_file=sparc/x-sysv4
3609 tm_file="sparc/splet.h libgloss.h"
3610 tmake_file=sparc/t-splet
3613 tm_file="sparc/litecoff.h libgloss.h"
3614 tmake_file=sparc/t-sparclite
3617 tm_file="sparc/lite.h aoutos.h libgloss.h"
3618 tmake_file=sparc/t-sparclite
3621 tm_file="sparc/liteelf.h"
3622 tmake_file=sparc/t-sparclite
3623 extra_parts="crtbegin.o crtend.o"
3626 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3627 tmake_file=sparc/t-sp86x
3630 tm_file="sparc/sp86x-elf.h"
3631 tmake_file=sparc/t-sp86x
3632 extra_parts="crtbegin.o crtend.o"
3635 tmake_file=sparc/t-sp64
3636 tm_file=sparc/sp64-aout.h
3639 tmake_file=sparc/t-sp64
3640 tm_file=sparc/sp64-elf.h
3641 extra_parts="crtbegin.o crtend.o"
3643 sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
3644 tmake_file="t-linux sparc/t-linux64"
3645 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3646 tm_file=sparc/linux64.h
3648 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3650 if test x$enable_threads = xyes; then
3657 *** The Thumb targets have been depreciated. The equivalent
3658 *** ARM based toolchain can now generated Thumb instructions
3659 *** when the -mthumb switch is given to the compiler.])
3663 tm_file="v850/rtems.h"
3664 xm_file="v850/xm-v850.h"
3665 tmake_file="v850/t-v850 t-rtems"
3666 if test x$stabs = xyes
3668 tm_file="${tm_file} dbx.h"
3673 target_cpu_default="TARGET_CPU_generic"
3675 tm_file="v850/v850.h"
3676 xm_file="v850/xm-v850.h"
3677 tmake_file=v850/t-v850
3678 if test x$stabs = xyes
3680 tm_file="${tm_file} dbx.h"
3684 vax-*-bsd*) # vaxen running BSD
3688 vax-*-sysv*) # vaxen running system V
3689 tm_file="${tm_file} vax/vaxv.h"
3694 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3700 tmake_file="${tmake_file} vax/t-openbsd"
3701 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
3702 xm_file="xm-openbsd.h vax/xm-vax.h"
3706 vax-*-ultrix*) # vaxen running ultrix
3707 tm_file="${tm_file} vax/ultrix.h"
3710 vax-*-vms*) # vaxen running VMS
3711 xm_file=vax/xm-vms.h
3715 vax-*-*) # vax default entry
3719 xm_file="${xm_file} xm-svr3"
3723 echo "Configuration $machine not supported" 1>&2
3730 ;; # Existing GNU/Linux systems do not use the GNU setup.
3732 # On the GNU system, the setup is just about the same on
3733 # each different CPU. The specific machines that GNU
3734 # supports are matched above and just set $cpu_type.
3735 xm_file="xm-gnu.h ${xm_file}"
3736 tm_file=${cpu_type}/gnu.h
3737 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
3738 # GNU always uses ELF.
3740 # GNU tools are the only tools.
3743 xmake_file=x-linux # These details are the same as Linux.
3744 tmake_file=t-gnu # These are not.
3747 xmake_try_sysv=x-sysv
3748 install_headers_dir=install-headers-cpio
3751 install_headers_dir=install-headers-cpio
3755 # Distinguish i[34567]86
3756 # Also, do not run mips-tfile on MIPS if using gas.
3757 # Process --with-cpu= for PowerPC/rs6000
3758 target_cpu_default2=
3761 target_cpu_default2=1
3764 case $target_alias in
3766 target_cpu_default2=4
3769 target_cpu_default2=2
3773 i686-*-* | i786-*-*)
3774 target_cpu_default2=3
3781 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3784 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3787 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3790 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3793 target_cpu_default2="MASK_CPU_EV5"
3797 if test x$gas = xyes
3799 if test "$target_cpu_default2" = ""
3801 target_cpu_default2="MASK_GAS"
3803 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3808 case "x$with_cpu" in
3811 target_cpu_default2="TARGET_CPU_generic"
3814 # Distinguish cores, and major variants
3815 # arm7m doesn't exist, but D & I don't affect code
3817 xarm[23678] | xarm250 | xarm[67][01]0 \
3818 | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
3819 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3820 | xstrongarm | xstrongarm110 | xstrongarm1100)
3822 target_cpu_default2="TARGET_CPU_$with_cpu"
3826 echo "--with-cpu must be passed a value" 1>&2
3831 if test x$pass2done = xyes
3833 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3840 mips*-*-ecoff* | mips*-*-elf*)
3841 if test x$gas = xyes
3843 if test x$gnu_ld = xyes
3845 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3847 target_cpu_default2="MASK_GAS"
3852 if test x$gas = xyes
3854 target_cpu_default2="MASK_GAS"
3857 powerpc*-*-* | rs6000-*-*)
3858 case "x$with_cpu" in
3862 xcommon | xpower | xpower2 | xpowerpc | xrios \
3863 | xrios1 | xrios2 | xrsc | xrsc1 \
3864 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3865 | xec603e | x740 | x750 | x401 \
3866 | x403 | x505 | x801 | x821 | x823 | x860)
3867 target_cpu_default2="\"$with_cpu\""
3871 echo "--with-cpu must be passed a value" 1>&2
3876 if test x$pass2done = xyes
3878 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3885 case ".$with_cpu" in
3887 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3889 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3890 target_cpu_default2="TARGET_CPU_$with_cpu"
3893 if test x$pass2done = xyes
3895 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3903 if test "$target_cpu_default2" != ""
3905 if test "$target_cpu_default" != ""
3907 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3909 target_cpu_default=$target_cpu_default2
3913 # No need for collect2 if we have the GNU linker.
3914 # Actually, there is now; GNU ld doesn't handle the EH info or
3915 # collecting for shared libraries.
3922 # Save data on machine being used to compile GCC in build_xm_file.
3923 # Save data on host machine in vars host_xm_file and host_xmake_file.
3924 if test x$pass1done = x
3926 if test x"$xm_file" = x
3927 then build_xm_file=$cpu_type/xm-$cpu_type.h
3928 else build_xm_file=$xm_file
3930 build_xm_defines=$xm_defines
3931 build_install_headers_dir=$install_headers_dir
3932 build_exeext=$exeext
3935 if test x$pass2done = x
3937 if test x"$xm_file" = x
3938 then host_xm_file=$cpu_type/xm-$cpu_type.h
3939 else host_xm_file=$xm_file
3941 host_xm_defines=$xm_defines
3942 if test x"$xmake_file" = x
3943 then xmake_file=$cpu_type/x-$cpu_type
3945 host_xmake_file="$xmake_file"
3946 host_truncate_target=$truncate_target
3947 host_extra_gcc_objs=$extra_gcc_objs
3948 host_extra_objs=$extra_host_objs
3955 extra_objs="${host_extra_objs} ${extra_objs}"
3957 # Default the target-machine variables that were not explicitly set.
3958 if test x"$tm_file" = x
3959 then tm_file=$cpu_type/$cpu_type.h; fi
3961 if test x$extra_headers = x
3962 then extra_headers=; fi
3964 if test x"$xm_file" = x
3965 then xm_file=$cpu_type/xm-$cpu_type.h; fi
3967 if test x$md_file = x
3968 then md_file=$cpu_type/$cpu_type.md; fi
3970 if test x$out_file = x
3971 then out_file=$cpu_type/$cpu_type.c; fi
3973 if test x"$tmake_file" = x
3974 then tmake_file=$cpu_type/t-$cpu_type
3977 if test x"$dwarf2" = xyes
3978 then tm_file="$tm_file tm-dwarf2.h"
3981 if test x$float_format = x
3982 then float_format=i64
3985 if test $float_format = none
3986 then float_h_file=Makefile.in
3987 else float_h_file=float-$float_format.h
3990 # Handle cpp installation.
3991 if test x$enable_cpp != xno
3993 tmake_file="$tmake_file t-install-cpp"
3996 # Say what files are being used for the output code and MD file.
3997 echo "Using \`$srcdir/config/$out_file' to output insns."
3998 echo "Using \`$srcdir/config/$md_file' as machine description file."
4001 for f in $tm_file; do
4004 if test $count = ax; then
4005 echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
4007 echo "Using the following target machine macro files:"
4008 for f in $tm_file; do
4009 echo " $srcdir/config/$f"
4014 for f in $host_xm_file; do
4017 if test $count = ax; then
4018 echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
4020 echo "Using the following host machine macro files:"
4021 for f in $host_xm_file; do
4022 echo " $srcdir/config/$f"
4026 if test "$host_xm_file" != "$build_xm_file"; then
4028 for f in $build_xm_file; do
4031 if test $count = ax; then
4032 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
4034 echo "Using the following build machine macro files:"
4035 for f in $build_xm_file; do
4036 echo " $srcdir/config/$f"
4041 if test x$thread_file = x; then
4042 if test x$target_thread_file != x; then
4043 thread_file=$target_thread_file
4045 thread_file='single'
4049 # Set up the header files.
4050 # $links is the list of header files to create.
4051 # $vars is the list of shell variables with file names to include.
4052 # auto-host.h is the file containing items generated by autoconf and is
4053 # the first file included by config.h.
4055 host_xm_file="auto-host.h gansidecl.h ${host_xm_file} hwint.h"
4057 # If host=build, it is correct to have hconfig include auto-host.h
4058 # as well. If host!=build, we are in error and need to do more
4059 # work to find out the build config parameters.
4060 if test x$host = x$build
4062 build_xm_file="auto-host.h gansidecl.h ${build_xm_file} hwint.h"
4064 # We create a subdir, then run autoconf in the subdir.
4065 # To prevent recursion we set host and build for the new
4066 # invocation of configure to the build for this invocation
4073 /*) realsrcdir=${srcdir};;
4074 *) realsrcdir=../${srcdir};;
4076 CC=${CC_FOR_BUILD} ${realsrcdir}/configure \
4077 --target=$target --host=$build --build=$build
4079 # We just finished tests for the build machine, so rename
4080 # the file auto-build.h in the gcc directory.
4081 mv auto-host.h ../auto-build.h
4084 build_xm_file="auto-build.h gansidecl.h ${build_xm_file} hwint.h"
4087 xm_file="gansidecl.h ${xm_file}"
4088 tm_file="gansidecl.h ${tm_file}"
4090 vars="host_xm_file tm_file tm_p_file xm_file build_xm_file"
4091 links="config.h tm.h tm_p.h tconfig.h hconfig.h"
4092 defines="host_xm_defines null_defines null_defines xm_defines build_xm_defines"
4095 if test -f config.status; then mv -f config.status config.bak; fi
4098 while test -n "$vars"
4100 set $vars; var=$1; shift; vars=$*
4101 set $links; link=$1; shift; links=$*
4102 set $defines; define=$1; shift; defines=$*
4105 # Make sure the file is created, even if it is empty.
4108 # Define TARGET_CPU_DEFAULT if the system wants one.
4109 # This substitutes for lots of *.h files.
4110 if test "$target_cpu_default" != "" -a $link = tm.h
4112 echo "#define TARGET_CPU_DEFAULT ($target_cpu_default)" >>$link
4115 for file in `eval echo '$'$var`; do
4117 auto-host.h | auto-build.h )
4120 echo '#ifdef IN_GCC' >>$link
4123 echo "#include \"$file\"" >>$link
4125 auto-host.h | auto-build.h )
4128 echo '#endif' >>$link
4133 for def in `eval echo '$'$define`; do
4134 echo "#ifndef $def" >>$link
4135 echo "#define $def" >>$link
4136 echo "#endif" >>$link
4140 # Truncate the target if necessary
4141 if test x$host_truncate_target != x; then
4142 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4145 # Get the version trigger filename from the toplevel
4146 if test "${with_gcc_version_trigger+set}" = set; then
4147 gcc_version_trigger=$with_gcc_version_trigger
4149 gcc_version_trigger=${srcdir}/version.c
4152 gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
4155 # Internationalization
4157 VERSION="$gcc_version"
4158 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",
4159 [Define to the name of the distribution.])
4160 AC_DEFINE_UNQUOTED(VERSION, "$VERSION",
4161 [Define to the version of the distribution.])
4167 # Enable NLS support by default
4169 [ --enable-nls use Native Language Support (default)],
4172 # if cross compiling, disable NLS support.
4173 # It's not worth the trouble, at least for now.
4175 if test "${build}" != "${host}" && test "x$enable_nls" = "xyes"; then
4176 AC_MSG_WARN(Disabling NLS support for canadian cross compiler.)
4181 XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
4183 # Windows32 Registry support for specifying GCC installation paths.
4184 AC_ARG_ENABLE(win32-registry,
4185 [ --disable-win32-registry
4186 Disable lookup of installation paths in the
4187 Registry on Windows hosts.
4188 --enable-win32-registry Enable registry lookup (default).
4189 --enable-win32-registry=KEY
4190 Use KEY instead of GCC version as the last portion
4191 of the registry key.],,)
4193 AC_MSG_CHECKING(whether windows registry support is requested)
4194 if test x$enable_win32_registry != xno; then
4195 AC_DEFINE(ENABLE_WIN32_REGISTRY, 1,
4196 [Define to 1 if installation paths should be looked up in Windows32
4197 Registry. Ignored on non windows32 hosts.])
4203 # Check if user specified a different registry key.
4204 case x${enable_win32_registry} in
4207 gcc_cv_win32_registry_key="$VERSION"
4210 # no registry lookup.
4211 gcc_cv_win32_registry_key=''
4214 # user-specified key.
4215 gcc_cv_win32_registry_key="$enable_win32_registry"
4219 if test x$enable_win32_registry != xno; then
4220 AC_MSG_CHECKING(registry key on windows hosts)
4221 AC_DEFINE_UNQUOTED(WIN32_REGISTRY_KEY, "$gcc_cv_win32_registry_key",
4222 [Define to be the last portion of registry key on windows hosts.])
4223 AC_MSG_RESULT($gcc_cv_win32_registry_key)
4226 # Get an absolute path to the GCC top-level source directory
4232 # Conditionalize the makefile for this host machine.
4233 # Make-host contains the concatenation of all host makefile fragments
4234 # [there can be more than one]. This file is built by configure.frag.
4235 host_overrides=Make-host
4236 dep_host_xmake_file=
4237 for f in .. ${host_xmake_file}
4239 if test -f ${srcdir}/config/$f
4241 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
4245 # Conditionalize the makefile for this target machine.
4246 # Make-target contains the concatenation of all host makefile fragments
4247 # [there can be more than one]. This file is built by configure.frag.
4248 target_overrides=Make-target
4250 for f in .. ${tmake_file}
4252 if test -f ${srcdir}/config/$f
4254 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
4258 # If the host doesn't support symlinks, modify CC in
4259 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
4260 # Otherwise, we can use "CC=$(CC)".
4262 if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
4264 cc_set_by_configure="\$(CC)"
4265 quoted_cc_set_by_configure="\$(CC)"
4266 stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
4269 if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
4271 symbolic_link="cp -p"
4275 cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
4276 quoted_cc_set_by_configure="\\\`case '\\\$(CC)' in stage*) echo '\\\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\\\$(CC)';; esac\\\`"
4277 stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
4281 out_object_file=`basename $out_file .c`.o
4284 for f in $tm_file; do
4287 tm_file_list="${tm_file_list} $f" ;;
4288 *) tm_file_list="${tm_file_list} \$(srcdir)/config/$f" ;;
4293 for f in $host_xm_file; do
4295 auto-host.h | gansidecl.h | hwint.h )
4296 host_xm_file_list="${host_xm_file_list} $f" ;;
4297 *) host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f" ;;
4302 for f in $build_xm_file; do
4304 auto-build.h | auto-host.h | gansidecl.h | hwint.h )
4305 build_xm_file_list="${build_xm_file_list} $f" ;;
4306 *) build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f" ;;
4310 # Define macro CROSS_COMPILE in compilation
4311 # if this is a cross-compiler.
4312 # Also use all.cross instead of all.internal
4313 # and add cross-make to Makefile.
4314 cross_overrides="/dev/null"
4315 if test x$host != x$target
4317 cross_defines="CROSS=-DCROSS_COMPILE"
4318 cross_overrides="${topdir}/cross-make"
4321 # If this is a cross-compiler that does not
4322 # have its own set of headers then define
4325 # If this is using newlib, then define inhibit_libc in
4326 # LIBGCC2_CFLAGS. This will cause __eprintf to be left out of
4327 # libgcc.a, but that's OK because newlib should have its own version of
4330 if [test x$host != x$target] && [test x$with_headers = x]; then
4331 inhibit_libc=-Dinhibit_libc
4333 if [test x$with_newlib = xyes]; then
4334 inhibit_libc=-Dinhibit_libc
4337 AC_SUBST(inhibit_libc)
4339 # When building gcc with a cross-compiler, we need to fix a few things.
4340 # This must come after cross-make as we want all.build to override
4342 build_overrides="/dev/null"
4343 if test x$build != x$host
4345 build_overrides="${topdir}/build-make"
4348 # Expand extra_headers to include complete path.
4349 # This substitutes for lots of t-* files.
4351 if test "x$extra_headers" = x
4354 # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
4355 for file in $extra_headers;
4357 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
4361 if test x$use_collect2 = xno; then
4365 # Add a definition of USE_COLLECT2 if system wants one.
4366 # Also tell toplev.c what to do.
4367 # This substitutes for lots of t-* files.
4368 if test x$use_collect2 = x
4373 will_use_collect2="collect2"
4374 maybe_use_collect2="-DUSE_COLLECT2"
4378 # Set MD_DEPS if the real md file is in md.pre-cpp.
4379 # Set MD_CPP to the cpp to pass the md file through. Md files use ';'
4380 # for line oriented comments, so we must always use a GNU cpp. If
4381 # building gcc with a cross compiler, use the cross compiler just
4382 # built. Otherwise, we can use the cpp just built.
4384 if test "x$md_cppflags" = x
4386 md_file_sub=$srcdir/config/$md_file
4391 # If we have gas in the build tree, make a link to it.
4392 if test -f ../gas/Makefile; then
4393 rm -f as; $symbolic_link ../gas/as-new$host_exeext as$host_exeext 2>/dev/null
4396 # If we have nm in the build tree, make a link to it.
4397 if test -f ../binutils/Makefile; then
4398 rm -f nm; $symbolic_link ../binutils/nm-new$host_exeext nm$host_exeext 2>/dev/null
4401 # If we have ld in the build tree, make a link to it.
4402 if test -f ../ld/Makefile; then
4403 # if test x$use_collect2 = x; then
4404 # rm -f ld; $symbolic_link ../ld/ld-new$host_exeext ld$host_exeext 2>/dev/null
4406 rm -f collect-ld; $symbolic_link ../ld/ld-new$host_exeext collect-ld$host_exeext 2>/dev/null
4410 # Figure out what assembler we will be using.
4411 AC_MSG_CHECKING(what assembler to use)
4413 gcc_cv_gas_major_version=
4414 gcc_cv_gas_minor_version=
4415 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
4416 if test -x "$DEFAULT_ASSEMBLER"; then
4417 gcc_cv_as="$DEFAULT_ASSEMBLER"
4418 elif test -x "$AS"; then
4420 elif test -x as$host_exeext; then
4421 # Build using assembler in the current directory.
4422 gcc_cv_as=./as$host_exeext
4423 elif test -f $gcc_cv_as_gas_srcdir/configure.in -a -f ../gas/Makefile; then
4424 # Single tree build which includes gas.
4425 for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
4428 gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f`
4430 if test x$gcc_cv_gas_version != x; then
4435 gcc_cv_gas_major_version=`expr "$gcc_cv_gas_version" : "VERSION=\([0-9]*\)"`
4436 gcc_cv_gas_minor_version=`expr "$gcc_cv_gas_version" : "VERSION=[0-9]*\.\([0-9]*\)"`
4440 if test "x$gcc_cv_as" = x -a x$host = x$target; then
4442 # Search the same directories that the installed compiler will
4443 # search. Else we may find the wrong assembler and lose. If we
4444 # do not find a suitable assembler binary, then try the user's
4447 # Also note we have to check MD_EXEC_PREFIX before checking the
4448 # user's path. Unfortunately, there is no good way to get at the
4449 # value of MD_EXEC_PREFIX here. So we do a brute force search
4450 # through all the known MD_EXEC_PREFIX values. Ugh. This needs
4451 # to be fixed as part of the make/configure rewrite too.
4453 if test "x$exec_prefix" = xNONE; then
4454 if test "x$prefix" = xNONE; then
4455 test_prefix=/usr/local
4460 test_prefix=$exec_prefix
4463 # If the loop below does not find an assembler, then use whatever
4464 # one we can find in the users's path.
4468 test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \
4469 $test_prefix/lib/gcc-lib/$target \
4470 /usr/lib/gcc/$target/$gcc_version \
4471 /usr/lib/gcc/$target \
4472 $test_prefix/$target/bin/$target/$gcc_version \
4473 $test_prefix/$target/bin \
4478 /bsd43/usr/lib/cmplrs/cc \
4479 /usr/cross64/usr/bin \
4480 /usr/lib/cmplrs/cc \
4481 /sysv/usr/lib/cmplrs/cc \
4482 /svr4/usr/lib/cmplrs/cc \
4485 for dir in $test_dirs; do
4486 if test -f $dir/as$host_exeext; then
4487 gcc_cv_as=$dir/as$host_exeext
4492 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4493 AC_MSG_RESULT("newly built gas")
4495 AC_MSG_RESULT($gcc_cv_as)
4498 # Figure out what nm we will be using.
4499 AC_MSG_CHECKING(what nm to use)
4500 if test -x nm$host_exeext; then
4501 gcc_cv_nm=./nm$host_exeext
4502 elif test x$host = x$target; then
4504 gcc_cv_nm=nm$host_exeext
4506 AC_MSG_RESULT($gcc_cv_nm)
4508 # Figure out what assembler alignment features are present.
4509 AC_MSG_CHECKING(assembler alignment features)
4510 gcc_cv_as_alignment_features=
4511 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4512 # Gas version 2.6 and later support for .balign and .p2align.
4513 # bytes to skip when using .p2align.
4514 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
4515 gcc_cv_as_alignment_features=".balign and .p2align"
4516 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4518 # Gas version 2.8 and later support specifying the maximum
4519 # bytes to skip when using .p2align.
4520 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
4521 gcc_cv_as_alignment_features=".p2align including maximum skip"
4522 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4524 elif test x$gcc_cv_as != x; then
4525 # Check if we have .balign and .p2align
4526 echo ".balign 4" > conftest.s
4527 echo ".p2align 2" >> conftest.s
4528 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4529 gcc_cv_as_alignment_features=".balign and .p2align"
4530 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4532 rm -f conftest.s conftest.o
4533 # Check if specifying the maximum bytes to skip when
4534 # using .p2align is supported.
4535 echo ".p2align 4,,7" > conftest.s
4536 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4537 gcc_cv_as_alignment_features=".p2align including maximum skip"
4538 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4540 rm -f conftest.s conftest.o
4542 AC_MSG_RESULT($gcc_cv_as_alignment_features)
4544 AC_MSG_CHECKING(assembler subsection support)
4545 gcc_cv_as_subsections=
4546 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4547 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
4548 gcc_cv_as_subsections="working .subsection -1"
4550 elif test x$gcc_cv_as != x; then
4551 # Check if we have .subsection
4552 echo ".subsection 1" > conftest.s
4553 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4554 gcc_cv_as_subsections=".subsection"
4555 if test x$gcc_cv_nm != x; then
4556 cat > conftest.s <<EOF
4557 conftest_label1: .word 0
4559 conftest_label2: .word 0
4562 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4563 $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1
4564 $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2
4565 if cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then
4568 gcc_cv_as_subsections="working .subsection -1"
4573 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4575 if test x"$gcc_cv_as_subsections" = x"working .subsection -1"; then
4576 AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING, 1,
4577 [Define if your assembler supports .subsection and .subsection -1 starts
4578 emitting at the beginning of your section.])
4580 AC_MSG_RESULT($gcc_cv_as_subsections)
4582 AC_MSG_CHECKING(assembler weak support)
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 2 -o "$gcc_cv_gas_major_version" -gt 2; then
4586 gcc_cv_as_weak="yes"
4588 elif test x$gcc_cv_as != x; then
4589 # Check if we have .weak
4590 echo " .weak foobar" > conftest.s
4591 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4592 gcc_cv_as_weak="yes"
4594 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4596 if test x"$gcc_cv_as_weak" = xyes; then
4597 AC_DEFINE(HAVE_GAS_WEAK, 1, [Define if your assembler supports .weak.])
4599 AC_MSG_RESULT($gcc_cv_as_weak)
4601 AC_MSG_CHECKING(assembler hidden support)
4603 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4604 if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 10 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then
4605 gcc_cv_as_hidden="yes"
4607 elif test x$gcc_cv_as != x; then
4608 # Check if we have .hidden
4609 echo " .hidden foobar" > conftest.s
4610 echo "foobar:" >> conftest.s
4611 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4612 gcc_cv_as_hidden="yes"
4614 rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4616 if test x"$gcc_cv_as_hidden" = xyes; then
4617 AC_DEFINE(HAVE_GAS_HIDDEN, 1,
4618 [Define if your assembler supports .hidden.])
4620 AC_MSG_RESULT($gcc_cv_as_hidden)
4624 AC_CACHE_CHECK([assembler .register pseudo-op support],
4625 gcc_cv_as_register_pseudo_op, [
4626 gcc_cv_as_register_pseudo_op=unknown
4627 if test x$gcc_cv_as != x; then
4628 # Check if we have .register
4629 echo ".register %g2, #scratch" > conftest.s
4630 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4631 gcc_cv_as_register_pseudo_op=yes
4633 gcc_cv_as_register_pseudo_op=no
4635 rm -f conftest.s conftest.o
4638 if test "x$gcc_cv_as_register_pseudo_op" = xyes; then
4639 AC_DEFINE(HAVE_AS_REGISTER_PSEUDO_OP, 1,
4640 [Define if your assembler supports .register.])
4643 AC_CACHE_CHECK([assembler supports -relax],
4644 gcc_cv_as_relax_opt, [
4645 gcc_cv_as_relax_opt=unknown
4646 if test x$gcc_cv_as != x; then
4647 # Check if gas supports -relax
4648 echo ".text" > conftest.s
4649 if $gcc_cv_as -relax -o conftest.o conftest.s > /dev/null 2>&1; then
4650 gcc_cv_as_relax_opt=yes
4652 gcc_cv_as_relax_opt=no
4654 rm -f conftest.s conftest.o
4657 if test "x$gcc_cv_as_relax_opt" = xyes; then
4658 AC_DEFINE(HAVE_AS_RELAX_OPTION, 1,
4659 [Define if your assembler supports -relax option.])
4664 AC_CACHE_CHECK([for 64 bit support in assembler ($gcc_cv_as)],
4665 gcc_cv_as_flags64, [
4666 if test -n "$gcc_cv_as"; then
4667 echo ".xword foo" > conftest.s
4668 gcc_cv_as_flags64=no
4669 for flag in "-xarch=v9" "-64 -Av9"; do
4670 if $gcc_cv_as $flag -o conftest.o conftest.s \
4671 > /dev/null 2>&1; then
4672 gcc_cv_as_flags64=$flag
4676 rm -f conftest.s conftest.o
4678 if test "$gas" = yes; then
4679 gcc_cv_as_flags64="-64 -Av9"
4681 gcc_cv_as_flags64="-xarch=v9"
4685 if test "x$gcc_cv_as_flags64" = xno; then
4687 tmake_file=`echo " $tmake_file " | sed -e 's, sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4688 dep_tmake_file=`echo " $dep_tmake_file " | sed -e 's, [^ ]*/config/sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4691 AC_DEFINE_UNQUOTED(AS_SPARC64_FLAG, "$gcc_cv_as_flags64",
4692 [Define if the assembler supports 64bit sparc.])
4695 *) gcc_cv_as_flags64=${gcc_cv_as_flags64-no}
4699 if test "x$gcc_cv_as_flags64" != xno; then
4700 AC_CACHE_CHECK([for assembler offsetable %lo() support],
4701 gcc_cv_as_offsetable_lo10, [
4702 gcc_cv_as_offsetable_lo10=unknown
4703 if test "x$gcc_cv_as" != x; then
4704 # Check if assembler has offsetable %lo()
4705 echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
4706 echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
4707 if $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s \
4709 $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s \
4710 > /dev/null 2>&1; then
4711 if cmp conftest.o conftest1.o > /dev/null 2>&1; then
4712 gcc_cv_as_offsetable_lo10=no
4714 gcc_cv_as_offsetable_lo10=yes
4717 gcc_cv_as_offsetable_lo10=no
4719 rm -f conftest.s conftest.o conftest1.s conftest1.o
4722 if test "x$gcc_cv_as_offsetable_lo10" = xyes; then
4723 AC_DEFINE(HAVE_AS_OFFSETABLE_LO10, 1,
4724 [Define if your assembler supports offsetable %lo().])
4732 AC_MSG_CHECKING(assembler instructions)
4733 gcc_cv_as_instructions=
4734 if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4735 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
4736 gcc_cv_as_instructions="filds fists"
4738 elif test x$gcc_cv_as != x; then
4739 set "filds fists" "filds mem; fists mem"
4742 echo "$2" > conftest.s
4743 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4744 gcc_cv_as_instructions=${gcc_cv_as_instructions}$1" "
4748 rm -f conftest.s conftest.o
4750 if test x"$gcc_cv_as_instructions" != x; then
4751 AC_DEFINE_UNQUOTED(HAVE_GAS_`echo "$gcc_cv_as_instructions" | tr '[a-z ]' '[A-Z_]'`)
4753 AC_MSG_RESULT($gcc_cv_as_instructions)
4757 # Figure out what language subdirectories are present.
4758 # Look if the user specified --enable-languages="..."; if not, use
4759 # the environment variable $LANGUAGES if defined. $LANGUAGES might
4761 if test x"${enable_languages+set}" != xset; then
4762 if test x"${LANGUAGES+set}" = xset; then
4763 enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
4765 enable_languages=all
4768 if test x"${enable_languages}" = x; then
4769 AC_MSG_ERROR([--enable-languages needs at least one argument])
4773 for lang in ${srcdir}/*/config-lang.in ..
4777 # The odd quoting in the next line works around
4778 # an apparent bug in bash 1.12 on linux.
4780 ${srcdir}/[*]/config-lang.in) ;;
4782 lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^ ]*\).*$,\1,p' $lang`
4783 if test "x$lang_alias" = x
4785 echo "$lang doesn't set \$language." 1>&2
4788 if test x"${enable_languages}" = xall && test x"${lang_alias}" != xCHILL; then
4791 case "${enable_languages}" in
4792 ${lang_alias} | "${lang_alias},"* | *",${lang_alias},"* | *",${lang_alias}" )
4800 if test x"${add_this_lang}" = xyes; then
4802 ${srcdir}/ada/config-lang.in)
4803 if test x$gnat = xyes ; then
4804 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4808 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4817 # Make gthr-default.h if we have a thread file.
4819 if test $thread_file != single; then
4820 rm -f gthr-default.h
4821 echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h
4822 gthread_flags=-DHAVE_GTHR_DEFAULT
4824 AC_SUBST(gthread_flags)
4826 # Find out what GC implementation we want, or may, use.
4828 [ --with-gc={simple,page} Choose the garbage collection mechanism to use
4829 with the compiler.],
4835 AC_MSG_ERROR([$withval is an invalid option to --with-gc])
4838 [if test $ac_cv_func_mmap_anywhere = yes \
4839 || test $ac_cv_func_valloc = yes; then
4845 echo "Using $GGC for garbage collection."
4847 # Use the system's zlib library.
4848 zlibdir=-L../../zlib
4849 zlibinc="-I\$(srcdir)/../../zlib"
4850 AC_ARG_WITH(system-zlib,
4851 [ --with-system-zlib use installed libz],
4858 # Build a new-abi (c++) system
4859 AC_ARG_ENABLE(new-gxx-abi,
4860 [ --enable-new-gxx-abi
4861 select the new abi for g++. You must select an ABI
4862 at configuration time, so that the correct runtime
4863 support is built. You cannot mix ABIs.],
4864 [AC_DEFINE(ENABLE_NEW_GXX_ABI, 1,
4865 [Define if you want to always select the new-abi for g++.])
4866 GXX_ABI_FLAG='-fnew-abi'
4867 echo "Building a new-abi g++ compiler."
4869 AC_SUBST(GXX_ABI_FLAG)
4871 # Build a new-libstdc++ system (ie libstdc++-v3)
4872 AC_MSG_CHECKING([for libstdc++ to install])
4873 AC_ARG_ENABLE(libstdcxx-v3,
4874 [ --enable-libstdcxx-v3
4875 enable libstdc++-v3 for building and installation],
4876 [enable_libstdcxx_v3="$enableval"], [enable_libstdcxx_v3=no])
4878 if test x$enable_libstdcxx_v3 = xyes; then
4885 AC_DEFINE_UNQUOTED(ENABLE_STD_NAMESPACE, $ac_esn,
4886 [Define to 1 if you want to enable namespaces (-fhonor-std) by default.])
4888 dnl Very limited version of automake's enable-maintainer-mode
4890 AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
4891 dnl maintainer-mode is disabled by default
4892 AC_ARG_ENABLE(maintainer-mode,
4893 [ --enable-maintainer-mode enable make rules and dependencies not useful
4894 (and sometimes confusing) to the casual installer],
4895 maintainer_mode=$enableval,
4898 AC_MSG_RESULT($maintainer_mode)
4900 if test "$maintainer_mode" = "yes"; then
4907 # Make empty files to contain the specs and options for each language.
4908 # Then add #include lines to for a compiler that has specs and/or options.
4913 rm -f specs.h options.h gencheck.h
4914 touch specs.h options.h gencheck.h
4915 for subdir in . $subdirs
4917 if test -f $srcdir/$subdir/lang-specs.h; then
4918 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
4919 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
4921 if test -f $srcdir/$subdir/lang-options.h; then
4922 echo "#include \"$subdir/lang-options.h\"" >>options.h
4923 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
4925 if test -f $srcdir/$subdir/$subdir-tree.def; then
4926 echo "#include \"$subdir/$subdir-tree.def\"" >>gencheck.h
4927 lang_tree_files="$lang_tree_files $srcdir/$subdir/$subdir-tree.def"
4931 # These (without "all_") are set in each config-lang.in.
4932 # `language' must be a single word so is spelled singularly.
4938 all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile gccbug mklibgcc'
4939 # List of language makefile fragments.
4944 # Add the language fragments.
4945 # Languages are added via two mechanisms. Some information must be
4946 # recorded in makefile variables, these are defined in config-lang.in.
4947 # We accumulate them and plug them into the main Makefile.
4948 # The other mechanism is a set of hooks for each of the main targets
4949 # like `clean', `install', etc.
4951 language_fragments="Make-lang"
4952 language_hooks="Make-hooks"
4955 for s in .. $subdirs
4967 . ${srcdir}/$s/config-lang.in
4968 if test "x$language" = x
4970 echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
4973 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in ${srcdir}/$s/Makefile.in"
4974 all_languages="$all_languages $language"
4975 if test "x$boot_language" = xyes
4977 all_boot_languages="$all_boot_languages $language"
4979 all_compilers="$all_compilers $compilers"
4980 all_stagestuff="$all_stagestuff $stagestuff"
4981 all_diff_excludes="$all_diff_excludes $diff_excludes"
4982 all_headers="$all_headers $headers"
4983 all_outputs="$all_outputs $outputs"
4984 if test x$outputs = x
4986 oldstyle_subdirs="$oldstyle_subdirs $s"
4988 all_lib2funcs="$all_lib2funcs $lib2funcs"
4992 # Since we can't use `::' targets, we link each language in
4993 # with a set of hooks, reached indirectly via lang.${target}.
4997 target_list="all.build all.cross start.encap rest.encap \
4999 install-normal install-common install-info install-man \
5001 mostlyclean clean distclean extraclean maintainer-clean \
5002 stage1 stage2 stage3 stage4"
5003 for t in $target_list
5006 for lang in .. $all_languages
5008 if test $lang != ".."; then
5012 echo "lang.$t: $x" >> Make-hooks
5015 # If we're not building in srcdir, create .gdbinit.
5017 if test ! -f Makefile.in; then
5018 echo "dir ." > .gdbinit
5019 echo "dir ${srcdir}" >> .gdbinit
5020 if test x$gdb_needs_out_file_path = xyes
5022 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
5024 if test "x$subdirs" != x; then
5027 echo "dir ${srcdir}/$s" >> .gdbinit
5030 echo "source ${srcdir}/.gdbinit" >> .gdbinit
5033 # Define variables host_canonical and build_canonical
5034 # because some Cygnus local changes in the Makefile depend on them.
5035 build_canonical=${build}
5036 host_canonical=${host}
5038 if test "${host}" != "${target}" ; then
5039 target_subdir=${target}/
5041 AC_SUBST(build_canonical)
5042 AC_SUBST(host_canonical)
5043 AC_SUBST(target_subdir)
5045 # If $(exec_prefix) exists and is not the same as $(prefix), then compute an
5046 # absolute path for gcc_tooldir based on inserting the number of up-directory
5047 # movements required to get from $(exec_prefix) to $(prefix) into the basic
5048 # $(libsubdir)/@(unlibsubdir) based path.
5049 # Don't set gcc_tooldir to tooldir since that's only passed in by the toplevel
5050 # make and thus we'd get different behavior depending on where we built the
5052 if test x$exec_prefix = xNONE -o x$exec_prefix = x$prefix; then
5053 gcc_tooldir='$(libsubdir)/$(unlibsubdir)/../$(target_alias)'
5055 changequote(<<, >>)dnl
5056 # An explanation of the sed strings:
5057 # -e 's|^\$(prefix)||' matches and eliminates 'prefix' from 'exec_prefix'
5058 # -e 's|/$||' match a trailing forward slash and eliminates it
5059 # -e 's|^[^/]|/|' forces the string to start with a forward slash (*)
5060 # -e 's|/[^/]*|../|g' replaces each occurance of /<directory> with ../
5062 # (*) Note this pattern overwrites the first character of the string
5063 # with a forward slash if one is not already present. This is not a
5064 # problem because the exact names of the sub-directories concerned is
5065 # unimportant, just the number of them matters.
5067 # The practical upshot of these patterns is like this:
5069 # prefix exec_prefix result
5070 # ------ ----------- ------
5072 # /foo/ /foo/bar ../
5073 # /foo /foo/bar/ ../
5074 # /foo/ /foo/bar/ ../
5075 # /foo /foo/bar/ugg ../../
5078 gcc_tooldir="\$(libsubdir)/\$(unlibsubdir)/\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/\$(dollar)||' -e 's|^[^/]|/|' -e 's|/[^/]*|../|g'\`\$(target_alias)"
5079 changequote([, ])dnl
5081 AC_SUBST(gcc_tooldir)
5084 # Nothing to do for FLOAT_H, float_format already handled.
5088 # Process the language and host/target makefile fragments.
5089 ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
5091 # Substitute configuration variables
5093 AC_SUBST(all_boot_languages)
5094 AC_SUBST(all_compilers)
5095 AC_SUBST(all_diff_excludes)
5096 AC_SUBST(all_headers)
5097 AC_SUBST(all_lang_makefiles)
5098 AC_SUBST(all_languages)
5099 AC_SUBST(all_lib2funcs)
5100 AC_SUBST(all_stagestuff)
5101 AC_SUBST(build_exeext)
5102 AC_SUBST(build_install_headers_dir)
5103 AC_SUBST(build_xm_file_list)
5104 AC_SUBST(cc_set_by_configure)
5105 AC_SUBST(quoted_cc_set_by_configure)
5106 AC_SUBST(cpp_install_dir)
5107 AC_SUBST(dep_host_xmake_file)
5108 AC_SUBST(dep_tmake_file)
5109 AC_SUBST(extra_c_flags)
5110 AC_SUBST(extra_c_objs)
5111 AC_SUBST(extra_cpp_objs)
5112 AC_SUBST(extra_cxx_objs)
5113 AC_SUBST(extra_headers_list)
5114 AC_SUBST(extra_objs)
5115 AC_SUBST(extra_parts)
5116 AC_SUBST(extra_passes)
5117 AC_SUBST(extra_programs)
5118 AC_SUBST(float_h_file)
5119 AC_SUBST(gcc_gxx_include_dir)
5120 AC_SUBST(gcc_version)
5121 AC_SUBST(gcc_version_trigger)
5122 AC_SUBST(host_exeext)
5123 AC_SUBST(host_extra_gcc_objs)
5124 AC_SUBST(host_xm_file_list)
5126 AC_SUBST(lang_options_files)
5127 AC_SUBST(lang_specs_files)
5128 AC_SUBST(lang_tree_files)
5129 AC_SUBST(local_prefix)
5130 AC_SUBST(maybe_use_collect2)
5132 AC_SUBST(objc_boehm_gc)
5134 AC_SUBST(out_object_file)
5135 AC_SUBST(stage_prefix_set_by_configure)
5136 AC_SUBST(symbolic_link)
5137 AC_SUBST(thread_file)
5138 AC_SUBST(tm_file_list)
5139 AC_SUBST(will_use_collect2)
5142 AC_SUBST_FILE(target_overrides)
5143 AC_SUBST_FILE(host_overrides)
5144 AC_SUBST(cross_defines)
5145 AC_SUBST_FILE(cross_overrides)
5146 AC_SUBST_FILE(build_overrides)
5147 AC_SUBST_FILE(language_fragments)
5148 AC_SUBST_FILE(language_hooks)
5150 # Echo that links are built
5151 if test x$host = x$target
5159 if test x$host != x$build
5161 str3=" on a $build system"
5164 if test "x$str2" != x || test "x$str3" != x
5169 echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
5171 if test "x$str2" != x || test "x$str3" != x
5173 echo " ${str2}${str3}." 1>&2
5176 # Truncate the target if necessary
5177 if test x$host_truncate_target != x; then
5178 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
5181 # Configure the subdirectories
5182 # AC_CONFIG_SUBDIRS($subdirs)
5184 # Create the Makefile
5185 # and configure language subdirectories
5186 AC_OUTPUT($all_outputs,
5188 . $srcdir/configure.lang
5189 case x$CONFIG_HEADERS in
5190 xauto-host.h:config.in)
5193 # If the host supports symlinks, point stage[1234] at ../stage[1234] so
5194 # bootstrapping and the installation procedure can still use
5195 # CC="stage1/xgcc -Bstage1/". If the host doesn't support symlinks,
5196 # FLAGS_TO_PASS has been modified to solve the problem there.
5197 # This is virtually a duplicate of what happens in configure.lang; we do
5198 # an extra check to make sure this only happens if ln -s can be used.
5199 if test "$symbolic_link" = "ln -s"; then
5200 for d in .. ${subdirs} ; do
5201 if test $d != ..; then
5204 for t in stage1 stage2 stage3 stage4 include
5207 $symbolic_link ../$t $t 2>/dev/null
5213 # Avoid having to add intl to our include paths.
5214 if test -f intl/libintl.h; then
5215 echo creating libintl.h
5216 echo '#include "intl/libintl.h"' >libintl.h
5223 target_alias='${target_alias}'
5225 subdirs='${subdirs}'
5226 oldstyle_subdirs='${oldstyle_subdirs}'
5227 symbolic_link='${symbolic_link}'
5228 program_transform_set='${program_transform_set}'
5229 program_transform_name='${program_transform_name}'
5230 dep_host_xmake_file='${dep_host_xmake_file}'
5231 host_xmake_file='${host_xmake_file}'
5232 dep_tmake_file='${dep_tmake_file}'
5233 tmake_file='${tmake_file}'
5234 thread_file='${thread_file}'
5235 gcc_version='${gcc_version}'
5236 gcc_version_trigger='${gcc_version_trigger}'
5237 local_prefix='${local_prefix}'
5238 build_install_headers_dir='${build_install_headers_dir}'
5239 build_exeext='${build_exeext}'
5240 host_exeext='${host_exeext}'
5241 out_file='${out_file}'
5242 gdb_needs_out_file_path='${gdb_needs_out_file_path}'
5243 SET_MAKE='${SET_MAKE}'
5244 target_list='${target_list}'
5245 target_overrides='${target_overrides}'
5246 host_overrides='${host_overrides}'
5247 cross_defines='${cross_defines}'
5248 cross_overrides='${cross_overrides}'
5249 build_overrides='${build_overrides}'
5250 cpp_install_dir='${cpp_install_dir}'