2000-02-17 Zack Weinberg <zack@wolery.cumb.org>
[official-gcc.git] / gcc / configure.in
blob839570ff077ee80de9f55073734035a113e2c6d3
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)
11 #any later version.
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
24 AC_PREREQ(2.13)
25 AC_INIT(tree.c)
26 AC_CONFIG_HEADER(auto-host.h:config.in)
28 remove=rm
29 hard_link=ln
30 symbolic_link='ln -s'
31 copy=cp
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
37 # is true:
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)
42 changequote(,)dnl
43 case ${LIBRARY_PATH} in
44   [:\;]* | *[:\;] | *[:\;][:\;]* |  *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
45     library_path_setting="contains current directory"
46     ;;
47   *)
48     library_path_setting="ok"
49     ;;
50 esac
51 changequote([,])dnl
52 AC_MSG_RESULT($library_path_setting)
53 if test "$library_path_setting" != "ok"; then
54 AC_MSG_ERROR([
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
63 # is true:
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)
68 changequote(,)dnl
69 case ${GCC_EXEC_PREFIX} in
70   [:\;]* | *[:\;] | *[:\;][:\;]* |  *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
71     gcc_exec_prefix_setting="contains current directory"
72     ;;
73   *)
74     gcc_exec_prefix_setting="ok"
75     ;;
76 esac
77 changequote([,])dnl
78 AC_MSG_RESULT($gcc_exec_prefix_setting)
79 if test "$gcc_exec_prefix_setting" != "ok"; then
80 AC_MSG_ERROR([
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
88 # With GNU ld
89 AC_ARG_WITH(gnu-ld,
90 [  --with-gnu-ld           arrange to work with GNU ld.],
91 gnu_ld_flag="$with_gnu_ld",
92 gnu_ld_flag=no)
94 # With pre-defined ld
95 AC_ARG_WITH(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
102     gnu_ld_flag=yes
103   fi
104   AC_DEFINE_UNQUOTED(DEFAULT_LINKER,"$DEFAULT_LINKER",
105         [Define to enable the use of a default linker.])
108 # With GNU as
109 AC_ARG_WITH(gnu-as,
110 [  --with-gnu-as           arrange to work with GNU as.],
111 gas_flag="$with_gnu_as",
112 gas_flag=no)
114 AC_ARG_WITH(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
121     gas_flag=yes
122   fi
123   AC_DEFINE_UNQUOTED(DEFAULT_ASSEMBLER,"$DEFAULT_ASSEMBLER",
124         [Define to enable the use of a default assembler.])
127 # With stabs
128 AC_ARG_WITH(stabs,
129 [  --with-stabs            arrange to use stabs instead of host debug format.],
130 stabs="$with_stabs",
131 stabs=no)
133 # With ELF
134 AC_ARG_WITH(elf,
135 [  --with-elf              arrange to use ELF instead of host debug format.],
136 elf="$with_elf",
137 elf=no)
139 # Specify the local prefix
140 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) ;;
145 no)     ;;
146 *)      local_prefix=$with_local_prefix ;;
147 esac])
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.
157 gcc_gxx_include_dir=
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) ;;
164 no)     ;;
165 *)      gcc_gxx_include_dir=$with_gxx_include_dir ;;
166 esac])
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++'
171   else
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}
175 changequote([, ])dnl
176   fi
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
185                           is misc,tree,gc],
186 [ac_checking=
187 ac_tree_checking=
188 ac_rtl_checking=
189 ac_gc_checking=
190 ac_gc_always_collect=
191 case "${enableval}" in
192 yes)    ac_checking=1 ; ac_tree_checking=1 ; ac_gc_checking=1 ;;
193 no)     ;;
194 *)      IFS="${IFS=     }"; ac_save_IFS="$IFS"; IFS="$IFS,"
195         set fnord $enableval; shift
196         IFS="$ac_save_IFS"
197         for check
198         do
199                 case $check in
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) ;;
206                 esac
207         done
208         ;;
209 esac
210 ], 
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.])
243 AC_ARG_ENABLE(cpp,
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
255 fi])
257 dnl Disable this for the moment; the library interface is changing.
258 dnl # Link cpplib into the compiler proper, for C/C++/ObjC.
259 dnl AC_ARG_ENABLE(c-cpplib,
260 dnl [  --enable-c-cpplib       link cpplib directly into C and C++ compilers
261 dnl                           (EXPERIMENTAL) (implies --enable-cpplib).],
262 dnl if test x$enable_c_cpplib != xno; then
263 dnl  extra_c_objs="${extra_c_objs} libcpp.a"
264 dnl  extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
265 dnl  extra_c_flags="${extra_c_flags} -DUSE_CPPLIB=1"
266 dnl fi)
268 # Enable Multibyte Characters for C/C++
269 AC_ARG_ENABLE(c-mbchar,
270 [  --enable-c-mbchar       Enable multibyte characters for C and C++.],
271 if test x$enable_c_mbchar != xno; then
272   extra_c_flags="${extra_c_flags} -DMULTIBYTE_CHARS=1"
274   
275 # Enable threads
276 # Pass with no value to take the default
277 # Pass with a value to specify a thread package
278 AC_ARG_ENABLE(threads,
279 [  --enable-threads        enable thread usage for target GCC.
280   --enable-threads=LIB    use LIB thread package for target GCC.],
281 if test x$enable_threads = xno; then
282         enable_threads=''
284 enable_threads='')
286 enable_threads_flag=$enable_threads
287 # Check if a valid thread package
288 case x${enable_threads_flag} in
289         x | xno)
290                 # No threads
291                 target_thread_file='single'
292                 ;;
293         xyes)
294                 # default
295                 target_thread_file=''
296                 ;;
297         xdecosf1 | xirix | xmach | xos2 | xposix | xpthreads | xsingle | \
298         xsolaris | xwin32 | xdce | xvxworks)
299                 target_thread_file=$enable_threads_flag
300                 ;;
301         *)
302                 echo "$enable_threads is an unknown thread package" 1>&2
303                 exit 1
304                 ;;
305 esac
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
311         objc_boehm_gc=''
312 else
313         objc_boehm_gc=1
315 objc_boehm_gc='')
317 AC_ARG_WITH(dwarf2,
318 [  --with-dwarf2          force the default debug format to be DWARF2.],
319 dwarf2="$with_dwarf2",
320 dwarf2=no)
322 # Determine the host, build, and target systems
323 AC_CANONICAL_SYSTEM
325 # Find the native compiler
326 AC_PROG_CC
327 AC_PROG_CC_C_O
328 if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = no"; then
329   NO_MINUS_C_MINUS_O=yes
331 AC_SUBST(NO_MINUS_C_MINUS_O)
333 gcc_AC_C_LONG_DOUBLE
335 AC_CACHE_CHECK(whether ${CC-cc} accepts -Wno-long-long,
336 ac_cv_prog_cc_no_long_long,
337 [save_CFLAGS="$CFLAGS"
338 CFLAGS="-Wno-long-long"
339 AC_TRY_COMPILE(,,ac_cv_prog_cc_no_long_long=yes,
340                ac_cv_prog_cc_no_long_long=no)
341 CFLAGS="$save_CFLAGS"])
343 # If the native compiler is GCC, we can enable warnings even in stage1.  
344 # That's useful for people building cross-compilers, or just running a
345 # quick `make'.
346 stage1_warn_cflags=" -W -Wall -Wtraditional -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes"
347 stage2_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
348 if test "x$GCC" = "xyes"; then 
349   if test $ac_cv_prog_cc_no_long_long = yes; then
350     stage1_warn_cflags="$stage1_warn_cflags -pedantic -Wno-long-long"
351   fi
352 else
353   stage1_warn_cflags=""
355 AC_SUBST(stage1_warn_cflags)
356 AC_SUBST(stage2_warn_cflags)
358 AC_PROG_MAKE_SET
360 AC_MSG_CHECKING([whether a default assembler was specified])
361 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
362     if test x"$gas_flag" = x"no"; then
363         AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER)])
364     else
365         AC_MSG_RESULT([yes ($DEFAULT_ASSEMBLER - GNU as)])
366     fi
367 else
368     AC_MSG_RESULT(no)
371 AC_MSG_CHECKING([whether a default linker was specified])
372 if test x"${DEFAULT_LINKER+set}" = x"set"; then
373     if test x"$gnu_ld_flag" = x"no"; then
374         AC_MSG_RESULT([yes ($DEFAULT_LINKER)])
375     else
376         AC_MSG_RESULT([yes ($DEFAULT_LINKER - GNU ld)])
377     fi
378 else
379     AC_MSG_RESULT(no)
382 AC_C_INLINE
384 # Find some useful tools
385 AC_PROG_AWK
386 AC_PROG_LEX
387 gcc_AC_PROG_LN
388 gcc_AC_PROG_LN_S
389 gcc_AC_C_VOLATILE
390 AC_PROG_RANLIB
391 AC_PROG_YACC
392 gcc_AC_PROG_INSTALL
394 AC_HEADER_STDC
395 AC_HEADER_TIME
396 gcc_AC_HEADER_STRING
397 AC_HEADER_SYS_WAIT
398 AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h \
399                  fcntl.h unistd.h stab.h sys/file.h sys/time.h \
400                  sys/resource.h sys/param.h sys/times.h sys/stat.h \
401                  direct.h malloc.h)
403 # Check for thread headers.
404 AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
405 AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
407 # See if GNAT has been installed
408 AC_CHECK_PROG(gnat, gnatbind, yes, no)
410 # Do we have a single-tree copy of texinfo?
411 if test -f $srcdir/../texinfo/Makefile.in; then
412   MAKEINFO='$(objdir)/../texinfo/makeinfo/makeinfo'
413   gcc_cv_prog_makeinfo_modern=yes
414   AC_MSG_RESULT([Using makeinfo from the unified source tree.])
415 else
416   # See if makeinfo has been installed and is modern enough
417   # that we can use it.
418   gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version,
419   [GNU texinfo.* \([0-9][0-9.]*\)],
420   [3.1[2-9] | 3.[2-9][0-9] | 4.* | 1.6[89] | 1.7[0-9]])
423 if test $gcc_cv_prog_makeinfo_modern = no; then
424   AC_MSG_WARN([
425 *** Makeinfo is missing or too old.
426 *** Info documentation will not be built or installed.])
427   BUILD_INFO=
428   INSTALL_INFO=
429 else
430   BUILD_INFO=info               AC_SUBST(BUILD_INFO)
431   INSTALL_INFO=install-info     AC_SUBST(INSTALL_INFO)
434 # See if the stage1 system preprocessor understands the ANSI C
435 # preprocessor stringification operator.
436 AC_C_STRINGIZE
438 # Use <inttypes.h> only if it exists,
439 # doesn't clash with <sys/types.h>, and declares intmax_t.
440 AC_MSG_CHECKING(for inttypes.h)
441 AC_CACHE_VAL(gcc_cv_header_inttypes_h,
442 [AC_TRY_COMPILE(
443   [#include <sys/types.h>
444 #include <inttypes.h>],
445   [intmax_t i = -1;],
446   [gcc_cv_header_inttypes_h=yes],
447   gcc_cv_header_inttypes_h=no)])
448 AC_MSG_RESULT($gcc_cv_header_inttypes_h)
449 if test $gcc_cv_header_inttypes_h = yes; then
450   AC_DEFINE(HAVE_INTTYPES_H, 1,
451         [Define if you have a working <inttypes.h> header file.])
455 # Determine if enumerated bitfields are unsigned.   ISO C says they can 
456 # be either signed or unsigned.
458 AC_CACHE_CHECK(for unsigned enumerated bitfields, gcc_cv_enum_bf_unsigned,
459 [AC_TRY_RUN(#include <stdlib.h>
460 enum t { BLAH = 128 } ;
461 struct s_t { enum t member : 8; } s ;
462 int main(void)
463 {            
464         s.member = BLAH;
465         if (s.member < 0) exit(1);
466         exit(0);
468 }, gcc_cv_enum_bf_unsigned=yes, gcc_cv_enum_bf_unsigned=no, gcc_cv_enum_bf_unsigned=yes)])
469 if test $gcc_cv_enum_bf_unsigned = yes; then
470   AC_DEFINE(ENUM_BITFIELDS_ARE_UNSIGNED, 1,
471     [Define if enumerated bitfields are treated as unsigned values.])
474 AC_CHECK_FUNCS(strtoul bsearch putenv popen bcopy bzero bcmp \
475         index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
476         sysconf isascii gettimeofday strsignal putc_unlocked fputc_unlocked \
477         fputs_unlocked getrusage valloc)
479 AC_CHECK_TYPE(ssize_t, int)
481 # Try to determine the array type of the second argument of getgroups
482 # for the target system (int or gid_t).
483 AC_TYPE_GETGROUPS
484 if test "${target}" = "${build}"; then
485   TARGET_GETGROUPS_T=$ac_cv_type_getgroups
486 else
487   case "${target}" in
488         # This condition may need some tweaking.  It should include all
489         # targets where the array type of the second argument of getgroups
490         # is int and the type of gid_t is not equivalent to int.
491         *-*-sunos* | *-*-ultrix*)
492                 TARGET_GETGROUPS_T=int
493                 ;;
494         *)
495                 TARGET_GETGROUPS_T=gid_t
496                 ;;
497   esac
499 AC_SUBST(TARGET_GETGROUPS_T)
501 gcc_AC_FUNC_VFPRINTF_DOPRNT
502 gcc_AC_FUNC_PRINTF_PTR
504 case "${host}" in
505 *-*-uwin*)
506   # Under some versions of uwin, vfork is notoriously buggy and the test 
507   # can hang configure; on other versions, vfork exists just as a stub.
508   # FIXME: This should be removed once vfork in uwin's runtime is fixed.
509   ac_cv_func_vfork_works=no
510   ;;
511 esac
512 AC_FUNC_VFORK
513 AC_FUNC_MMAP_ANYWHERE
514 AC_FUNC_MMAP_FILE
516 # We will need to find libiberty.h and ansidecl.h
517 saved_CFLAGS="$CFLAGS"
518 CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
519 gcc_AC_CHECK_DECLS(bcopy bzero bcmp \
520         index rindex getenv atol sbrk abort atof getcwd getwd \
521         strsignal putc_unlocked fputs_unlocked strstr environ \
522         malloc realloc calloc free basename getopt, , ,[
523 #include "gansidecl.h"
524 #include "system.h"])
526 gcc_AC_CHECK_DECLS(getrlimit setrlimit getrusage, , ,[
527 #include "gansidecl.h"
528 #include "system.h"
529 #ifdef HAVE_SYS_RESOURCE_H
530 #include <sys/resource.h>
531 #endif
534 # Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
535 CFLAGS="$saved_CFLAGS"
537 # mkdir takes a single argument on some systems. 
538 gcc_AC_FUNC_MKDIR_TAKES_ONE_ARG
540 # File extensions
541 manext='.1'
542 objext='.o'
543 AC_SUBST(manext)
544 AC_SUBST(objext)
546 build_xm_file=
547 build_xm_defines=
548 build_install_headers_dir=install-headers-tar
549 build_exeext=
550 host_xm_file=
551 host_xm_defines=
552 host_xmake_file=
553 host_truncate_target=
554 host_exeext=
556 # Decode the host machine, then the target machine.
557 # For the host machine, we save the xm_file variable as host_xm_file;
558 # then we decode the target machine and forget everything else
559 # that came from the host machine.
560 for machine in $build $host $target; do
562         out_file=
563         xmake_file=
564         tmake_file=
565         extra_headers=
566         extra_passes=
567         extra_parts=
568         extra_programs=
569         extra_objs=
570         extra_host_objs=
571         extra_gcc_objs=
572         xm_defines=
573         float_format=
574         # Set this to force installation and use of collect2.
575         use_collect2=
576         # Set this to override the default target model.
577         target_cpu_default=
578         # Set this to control how the header file directory is installed.
579         install_headers_dir=install-headers-tar
580         # Set this to a non-empty list of args to pass to cpp if the target
581         # wants its .md file passed through cpp.
582         md_cppflags=
583         # Set this if directory names should be truncated to 14 characters.
584         truncate_target=
585         # Set this if gdb needs a dir command with `dirname $out_file`
586         gdb_needs_out_file_path=
587         # Set this if the build machine requires executables to have a
588         # file name suffix.
589         exeext=
590         # Set this to control which thread package will be used.
591         thread_file=
592         # Reinitialize these from the flag values every loop pass, since some
593         # configure entries modify them.
594         gas="$gas_flag"
595         gnu_ld="$gnu_ld_flag"
596         enable_threads=$enable_threads_flag
598         # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
599         # updated in each machine entry.
600         tm_p_file=
601         cpu_type=`echo $machine | sed 's/-.*$//'`
602         case $machine in
603         alpha*-*-*)
604                 cpu_type=alpha
605                 ;;
606         strongarm*-*-*)
607                 cpu_type=arm
608                 ;;
609         arm*-*-*)
610                 cpu_type=arm
611                 ;;
612         c*-convex-*)
613                 cpu_type=convex
614                 ;;
615 changequote(,)dnl
616         i[34567]86-*-*)
617 changequote([,])dnl
618                 cpu_type=i386
619                 ;;
620         hppa*-*-*)
621                 cpu_type=pa
622                 ;;
623         m68000-*-*)
624                 cpu_type=m68k
625                 ;;
626         mips*-*-*)
627                 cpu_type=mips
628                 ;;
629         pj*-*-*)
630                 cpu_type=pj
631                 ;;
632         powerpc*-*-*)
633                 cpu_type=rs6000
634                 ;;
635         pyramid-*-*)
636                 cpu_type=pyr
637                 ;;
638         sparc*-*-*)
639                 cpu_type=sparc
640                 ;;
641         esac
643         tm_file=${cpu_type}/${cpu_type}.h
644         xm_file=${cpu_type}/xm-${cpu_type}.h
645         if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
646         then
647                 tm_p_file=${cpu_type}/${cpu_type}-protos.h;
648         fi
649         # On a.out targets, we need to use collect2.
650         case $machine in
651         *-*-*aout*)
652                 use_collect2=yes
653                 ;;
654         esac    
656         # Common parts for linux-gnu and openbsd systems
657         case $machine in
658         *-*-linux-gnu*)
659                 xm_defines="HAVE_ATEXIT POSIX BSTRING"
660                 ;;
661         *-*-openbsd*)
662                 tm_file=${cpu_type}/openbsd.h
663                 tmake_file="t-libc-ok t-openbsd"
664                 # avoid surprises, always provide an xm-openbsd file 
665                 xm_file=${cpu_type}/xm-openbsd.h
666                 # don't depend on processor x-fragments as well
667                 xmake_file=none
668                 if test x$enable_threads = xyes; then
669                         thread_file='posix'
670                         tmake_file="${tmake_file} t-openbsd-thread"
671                 fi
672                 ;;
673         esac
675         case $machine in
676         # Support site-specific machine types.
677         *local*)
678                 cpu_type=`echo $machine | sed -e 's/-.*//'`
679                 rest=`echo $machine | sed -e "s/$cpu_type-//"`
680                 xm_file=${cpu_type}/xm-$rest.h
681                 tm_file=${cpu_type}/$rest.h
682                 if test -f $srcdir/config/${cpu_type}/x-$rest; \
683                 then xmake_file=${cpu_type}/x-$rest; \
684                 else true; \
685                 fi
686                 if test -f $srcdir/config/${cpu_type}/t-$rest; \
687                 then tmake_file=${cpu_type}/t-$rest; \
688                 else true; \
689                 fi
690                 ;;
691         1750a-*-*)
692                 ;;
693         a29k-*-bsd* | a29k-*-sym1*)
694                 tm_file="${tm_file} a29k/unix.h"
695                 xm_defines=USG
696                 xmake_file=a29k/x-unix
697                 use_collect2=yes
698                 ;;
699         a29k-*-udi | a29k-*-coff)
700                 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
701                 tmake_file=a29k/t-a29kbare
702                 ;;
703         a29k-wrs-vxworks*)
704                 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
705                 tmake_file=a29k/t-vx29k
706                 extra_parts="crtbegin.o crtend.o"
707                 thread_file='vxworks'
708                 ;;
709         a29k-*-*)                       # Default a29k environment.
710                 use_collect2=yes
711                 ;;
712         alpha-*-interix)
713                 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
715                 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
716                 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
718                 # GAS + IEEE_CONFORMANT
719                 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
721                 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
722                 xmake_file="x-interix alpha/t-pe"
723                 tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
724                 if test x$enable_threads = xyes ; then
725                         thread_file='posix'
726                 fi
727                 if test x$stabs = xyes ; then
728                         tm_file="${tm_file} dbxcoff.h"
729                 fi
730                 #prefix='$$INTERIX_ROOT'/usr/contrib
731                 #local_prefix='$$INTERIX_ROOT'/usr/contrib
732                 ;;
733         alpha*-*-linux-gnuecoff*)
734                 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
735                 target_cpu_default="MASK_GAS"
736                 tmake_file="alpha/t-alpha alpha/t-ieee"
737                 gas=no
738                 xmake_file=none
739                 gas=yes gnu_ld=yes
740                 ;;
741         alpha*-*-linux-gnulibc1*)
742                 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
743                 target_cpu_default="MASK_GAS"
744                 tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
745                 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
746                 xmake_file=none
747                 gas=yes gnu_ld=yes
748                 if test x$enable_threads = xyes; then
749                         thread_file='posix'
750                 fi
751                 ;;
752         alpha*-*-linux-gnu*)
753                 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
754                 target_cpu_default="MASK_GAS"
755                 tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
756                 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
757                 xmake_file=none
758                 gas=yes gnu_ld=yes
759                 if test x$enable_threads = xyes; then
760                         thread_file='posix'
761                 fi
762                 ;;
763         alpha*-*-netbsd*)
764                 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
765                 target_cpu_default="MASK_GAS"
766                 tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
767                 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
768                 xmake_file=none
769                 gas=yes gnu_ld=yes
770                 ;;
772         alpha*-*-openbsd*)
773                 # default x-alpha is only appropriate for dec-osf.
774                 target_cpu_default="MASK_GAS"
775                 tmake_file="alpha/t-alpha alpha/t-ieee"
776                 ;;
777                 
778         alpha*-dec-osf*)
779                 if test x$stabs = xyes
780                 then
781                         tm_file="${tm_file} dbx.h"
782                 fi
783                 if test x$gas != xyes
784                 then
785                         extra_passes="mips-tfile mips-tdump"
786                 fi
787                 use_collect2=yes
788                 tmake_file="alpha/t-alpha alpha/t-ieee"
789                 case $machine in
790                   *-*-osf1*)
791                     tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
792                     ;;
793 changequote(,)dnl
794                   *-*-osf[23]*)
795 changequote([,])dnl
796                     tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
797                     ;;
798                   *-*-osf4*)
799                     tm_file="${tm_file} alpha/osf.h"
800                     # Some versions of OSF4 (specifically X4.0-9 296.7) have
801                     # a broken tar, so we use cpio instead.
802                     install_headers_dir=install-headers-cpio
803                     ;;
804                   *-*-osf5*)
805                     tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
806                     ;;
807                 esac
808                 case $machine in
809 changequote(,)dnl
810                   *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
811 changequote([,])dnl
812                     target_cpu_default=MASK_SUPPORT_ARCH
813                     ;;
814                 esac
815                 ;;
816         alpha*-*-vxworks*)
817                 tm_file="${tm_file} dbx.h alpha/vxworks.h"
818                 tmake_file="alpha/t-alpha alpha/t-ieee"
819                 if [ x$gas != xyes ]
820                 then
821                         extra_passes="mips-tfile mips-tdump"
822                 fi
823                 use_collect2=yes
824                 thread_file='vxworks'
825                 ;;
826         alpha*-*-winnt*)
827                 tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h"
828                 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
829                 tmake_file="t-libc-ok alpha/t-alpha alpha/t-ieee"
830                 xmake_file=winnt/x-winnt
831                 extra_host_objs=oldnames.o
832                 extra_gcc_objs="spawnv.o oldnames.o"
833                 if test x$gnu_ld != xyes
834                 then
835                         extra_programs=ld.exe
836                 fi
837                 if test x$enable_threads = xyes; then
838                         thread_file='win32'
839                 fi
840                 ;;
841         alpha*-dec-vms*)
842                 tm_file=alpha/vms.h
843                 xm_file="${xm_file} alpha/xm-vms.h"
844                 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
845                 ;;
846         arc-*-elf*)
847                 extra_parts="crtinit.o crtfini.o"
848                 ;;
849         arm-*-coff* | armel-*-coff*)
850                 tm_file=arm/coff.h
851                 tmake_file=arm/t-arm-coff
852                 ;;
853         arm-*-vxworks*)
854                 tm_file=arm/vxarm.h
855                 tmake_file=arm/t-arm-coff
856                 thread_file='vxworks'
857                 ;;
858 changequote(,)dnl
859         arm-*-riscix1.[01]*)            # Acorn RISC machine (early versions)
860 changequote([,])dnl
861                 tm_file=arm/riscix1-1.h
862                 use_collect2=yes
863                 ;;
864         arm-*-riscix*)                  # Acorn RISC machine
865                 if test x$gas = xyes
866                 then
867                     tm_file=arm/rix-gas.h
868                 else
869                     tm_file=arm/riscix.h
870                 fi
871                 xmake_file=arm/x-riscix
872                 tmake_file=arm/t-riscix
873                 use_collect2=yes
874                 ;;
875         arm-semi-aout | armel-semi-aout)
876                 tm_file=arm/semi.h
877                 tmake_file=arm/t-semi
878                 ;;
879         arm-semi-aof | armel-semi-aof)
880                 tm_file=arm/semiaof.h
881                 tmake_file=arm/t-semiaof
882                 ;;
883         arm*-*-netbsd*)
884                 tm_file=arm/netbsd.h
885                 tmake_file="t-netbsd arm/t-netbsd"
886                 use_collect2=yes
887                 ;;
888         arm*-*-linux-gnuaout*)          # ARM GNU/Linux with a.out
889                 cpu_type=arm
890                 xmake_file=x-linux
891                 tm_file=arm/linux-aout.h
892                 tmake_file=arm/t-linux
893                 gnu_ld=yes
894                 ;;
895         arm*-*-linux-gnuoldld*)         # ARM GNU/Linux with old ELF linker
896                 xm_file=arm/xm-linux.h
897                 xmake_file=x-linux
898                 tm_file="arm/linux-oldld.h arm/linux-elf.h"
899                 case $machine in
900                 armv2*-*-*)
901                         tm_file="arm/linux-elf26.h $tm_file"
902                         ;;
903                 esac
904                 tmake_file="t-linux arm/t-linux"
905                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
906                 gnu_ld=yes
907                 case x${enable_threads} in
908                 x | xyes | xpthreads | xposix)
909                         thread_file='posix'
910                         ;;
911                 esac
912                 ;;
913         arm*-*-linux-gnu*)              # ARM GNU/Linux with ELF
914                 xm_file=arm/xm-linux.h
915                 xmake_file=x-linux
916                 tm_file="arm/linux-elf.h"
917                 case $machine in
918                 armv2*-*-*)
919                         tm_file="arm/linux-elf26.h $tm_file"
920                         ;;
921                 esac
922                 tmake_file="t-linux arm/t-linux"
923                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
924                 gnu_ld=yes
925                 case x${enable_threads} in
926                 x | xyes | xpthreads | xposix)
927                         thread_file='posix'
928                         ;;
929                 esac
930                 ;;
931         arm*-*-uclinux*)                # ARM ucLinux
932                 tm_file=arm/uclinux-elf.h
933                 tmake_file=arm/t-arm-elf
934                 ;;
935         arm*-*-aout)
936                 tm_file=arm/aout.h
937                 tmake_file=arm/t-arm-aout
938                 ;;
939         arm*-*-ecos-elf)
940                 tm_file=arm/ecos-elf.h
941                 tmake_file=arm/t-arm-elf
942                 ;; 
943         arm*-*-elf)
944                 tm_file=arm/unknown-elf.h
945                 tmake_file=arm/t-arm-elf
946                 ;;
947         arm*-*-conix*)
948                 tm_file=arm/conix-elf.h
949                 tmake_file=arm/t-arm-elf
950                 ;;
951         arm*-*-oabi)
952                 tm_file=arm/unknown-elf-oabi.h
953                 tmake_file=arm/t-arm-elf
954                 ;;
955         arm-*-pe*)
956                 tm_file=arm/pe.h
957                 tmake_file=arm/t-pe
958                 extra_objs="pe.o"
959                 ;;
960         avr-*-*)
961                 ;;
962         c1-convex-*)                    # Convex C1
963                 target_cpu_default=1
964                 use_collect2=yes
965                 ;;
966         c2-convex-*)                    # Convex C2
967                 target_cpu_default=2
968                 use_collect2=yes
969                 ;;
970         c32-convex-*)
971                 target_cpu_default=4
972                 use_collect2=yes
973                 ;;
974         c34-convex-*)
975                 target_cpu_default=8
976                 use_collect2=yes
977                 ;;
978         c38-convex-*)
979                 target_cpu_default=16           
980                 use_collect2=yes
981                 ;;
982         c4x-*)
983                 cpu_type=c4x
984                 tmake_file=c4x/t-c4x
985                 ;;
986         clipper-intergraph-clix*)
987                 tm_file="${tm_file} svr3.h clipper/clix.h"
988                 xm_file=clipper/xm-clix.h
989                 xmake_file=clipper/x-clix
990                 extra_headers=va-clipper.h
991                 extra_parts="crtbegin.o crtend.o"
992                 install_headers_dir=install-headers-cpio
993                 ;;
994         d30v-*)
995                 float_format=i64
996                 ;;
997         dsp16xx-*)
998                 ;;
999         elxsi-elxsi-*)
1000                 use_collect2=yes
1001                 ;;
1002         fr30-*-elf)
1003                 tm_file="fr30/fr30.h"
1004                 tmake_file=fr30/t-fr30
1005                 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1006                 ;;
1007 # This hasn't been upgraded to GCC 2.
1008 #       fx80-alliant-*)                 # Alliant FX/80
1009 #               ;;
1010         h8300-*-*)
1011                 float_format=i32
1012                 ;;
1013         hppa*-*-linux*)
1014                 target_cpu_default="(MASK_PA_11 | MASK_GAS | MASK_JUMP_IN_DELAY)"
1015                 tm_file="${tm_file} pa/elf.h linux.h pa/pa-linux.h"
1016                 tmake_file="t-linux pa/t-linux"
1017                 extra_parts="crtbegin.o crtend.o"
1018                 xmake_file=none
1019                 gas=yes gnu_ld=yes
1020                 if test x$enable_threads = xyes; then
1021                         thread_file='posix'
1022                 fi
1023                 ;;
1024         hppa*-*-openbsd*)
1025                 target_cpu_default="MASK_PA_11"
1026                 tmake_file=pa/t-openbsd
1027                 ;;
1028         hppa1.1-*-pro*)
1029                 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1030                 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
1031                 xm_file=pa/xm-papro.h
1032                 tmake_file=pa/t-pro
1033                 ;;
1034         hppa1.1-*-osf*)
1035                 target_cpu_default="MASK_PA_11"
1036                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1037                 use_collect2=yes
1038                 ;;
1039         hppa1.1-*-rtems*)
1040                 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
1041                 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
1042                 xm_file=pa/xm-papro.h
1043                 tmake_file=pa/t-pro
1044                 ;;
1045         hppa1.0-*-osf*)
1046                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
1047                 use_collect2=yes
1048                 ;;
1049         hppa1.1-*-bsd*)
1050                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1051                 target_cpu_default="MASK_PA_11"
1052                 use_collect2=yes
1053                 ;;
1054         hppa1.0-*-bsd*)
1055                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
1056                 use_collect2=yes
1057                 ;;
1058         hppa1.0-*-hpux7*)
1059                 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
1060                 xm_file=pa/xm-pahpux.h
1061                 xmake_file=pa/x-pa-hpux
1062                 if test x$gas = xyes
1063                 then
1064                         tm_file="${tm_file} pa/gas.h"
1065                 fi
1066                 install_headers_dir=install-headers-cpio
1067                 use_collect2=yes
1068                 ;;
1069 changequote(,)dnl
1070         hppa1.0-*-hpux8.0[0-2]*)
1071 changequote([,])dnl
1072                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1073                 xm_file=pa/xm-pahpux.h
1074                 xmake_file=pa/x-pa-hpux
1075                 if test x$gas = xyes
1076                 then
1077                         tm_file="${tm_file} pa/pa-gas.h"
1078                 else
1079                         tm_file="pa/pa-oldas.h ${tm_file}"
1080                 fi
1081                 install_headers_dir=install-headers-cpio
1082                 use_collect2=yes
1083                 ;;
1084 changequote(,)dnl
1085         hppa1.1-*-hpux8.0[0-2]*)
1086 changequote([,])dnl
1087                 target_cpu_default="MASK_PA_11"
1088                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1089                 xm_file=pa/xm-pahpux.h
1090                 xmake_file=pa/x-pa-hpux
1091                 if test x$gas = xyes
1092                 then
1093                         tm_file="${tm_file} pa/pa-gas.h"
1094                 else
1095                         tm_file="pa/pa-oldas.h ${tm_file}"
1096                 fi
1097                 install_headers_dir=install-headers-cpio
1098                 use_collect2=yes
1099                 ;;
1100         hppa1.1-*-hpux8*)
1101                 target_cpu_default="MASK_PA_11"
1102                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1103                 xm_file=pa/xm-pahpux.h
1104                 xmake_file=pa/x-pa-hpux
1105                 if test x$gas = xyes
1106                 then
1107                         tm_file="${tm_file} pa/pa-gas.h"
1108                 fi
1109                 install_headers_dir=install-headers-cpio
1110                 use_collect2=yes
1111                 ;;
1112         hppa1.0-*-hpux8*)
1113                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
1114                 xm_file=pa/xm-pahpux.h
1115                 xmake_file=pa/x-pa-hpux
1116                 if test x$gas = xyes
1117                 then
1118                         tm_file="${tm_file} pa/pa-gas.h"
1119                 fi
1120                 install_headers_dir=install-headers-cpio
1121                 use_collect2=yes
1122                 ;;
1123         hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
1124                 target_cpu_default="MASK_PA_11"
1125                 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1126                 float_format=i128
1127                 xm_file=pa/xm-pahpux.h
1128                 xmake_file=pa/x-pa-hpux
1129                 tmake_file=pa/t-pa
1130                 if test x$gas = xyes
1131                 then
1132                         tm_file="${tm_file} pa/pa-gas.h"
1133                 fi
1134                 if test x$enable_threads = x; then
1135                     enable_threads=$have_pthread_h
1136                 fi
1137                 if test x$enable_threads = xyes; then
1138                         thread_file='dce'
1139                         tmake_file="${tmake_file} pa/t-dce-thr"
1140                 fi
1141                 install_headers_dir=install-headers-cpio
1142                 use_collect2=yes
1143                 ;;
1144         hppa1.0-*-hpux10*)
1145                 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
1146                 float_format=i128
1147                 xm_file=pa/xm-pahpux.h
1148                 xmake_file=pa/x-pa-hpux
1149                 tmake_file=pa/t-pa
1150                 if test x$gas = xyes
1151                 then
1152                         tm_file="${tm_file} pa/pa-gas.h"
1153                 fi
1154                 if test x$enable_threads = x; then
1155                     enable_threads=$have_pthread_h
1156                 fi
1157                 if test x$enable_threads = xyes; then
1158                         thread_file='dce'
1159                         tmake_file="${tmake_file} pa/t-dce-thr"
1160                 fi
1161                 install_headers_dir=install-headers-cpio
1162                 use_collect2=yes
1163                 ;;
1164         hppa*64*-*-hpux11*)
1165                 target_cpu_default="MASK_PA_11"
1166                 xm_file=pa/xm-pa64hpux.h
1167                 xmake_file=pa/x-pa-hpux
1168                 tmake_file=pa/t-pa
1169                 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"
1170                 float_format=i128
1171                 tmake_file=pa/t-pa64
1172                 target_cpu_default="(MASK_PA_11|MASK_PA_20)"
1174                 if [[ x$gas = xyes ]]
1175                 then
1176                         tm_file="${tm_file} pa/pa-gas.h"
1177                 fi
1178 #               if [[ x$enable_threads = x ]]; then
1179 #                   enable_threads=$have_pthread_h
1180 #               fi
1181 #               if [[ x$enable_threads = xyes ]]; then
1182 #                       thread_file='dce'
1183 #                       tmake_file="${tmake_file} pa/t-dce-thr"
1184 #               fi
1185                 install_headers_dir=install-headers-cpio
1186                 use_collect2=yes
1187                 ;;
1188         hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
1189                 target_cpu_default="MASK_PA_11"
1190                 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1191                 float_format=i128
1192                 xm_file=pa/xm-pahpux.h
1193                 xmake_file=pa/x-pa-hpux
1194                 tmake_file=pa/t-pa
1195                 if test x$gas = xyes
1196                 then
1197                         tm_file="${tm_file} pa/pa-gas.h"
1198                 fi
1199 #               if test x$enable_threads = x; then
1200 #                   enable_threads=$have_pthread_h
1201 #               fi
1202 #               if test x$enable_threads = xyes; then
1203 #                       thread_file='dce'
1204 #                       tmake_file="${tmake_file} pa/t-dce-thr"
1205 #               fi
1206                 install_headers_dir=install-headers-cpio
1207                 use_collect2=yes
1208                 ;;
1209         hppa1.0-*-hpux11*)
1210                 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
1211                 float_format=i128
1212                 xm_file=pa/xm-pahpux.h
1213                 xmake_file=pa/x-pa-hpux
1214                 if test x$gas = xyes
1215                 then
1216                         tm_file="${tm_file} pa/pa-gas.h"
1217                 fi
1218 #               if test x$enable_threads = x; then
1219 #                   enable_threads=$have_pthread_h
1220 #               fi
1221 #               if test x$enable_threads = xyes; then
1222 #                       thread_file='dce'
1223 #                       tmake_file="${tmake_file} pa/t-dce-thr"
1224 #               fi
1225                 install_headers_dir=install-headers-cpio
1226                 use_collect2=yes
1227                 ;;
1228         hppa1.1-*-hpux* | hppa2*-*-hpux*)
1229                 target_cpu_default="MASK_PA_11"
1230                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1231                 xm_file=pa/xm-pahpux.h
1232                 xmake_file=pa/x-pa-hpux
1233                 if test x$gas = xyes
1234                 then
1235                         tm_file="${tm_file} pa/pa-gas.h"
1236                 fi
1237                 install_headers_dir=install-headers-cpio
1238                 use_collect2=yes
1239                 ;;
1240         hppa1.0-*-hpux*)
1241                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
1242                 xm_file=pa/xm-pahpux.h
1243                 xmake_file=pa/x-pa-hpux
1244                 if test x$gas = xyes
1245                 then
1246                         tm_file="${tm_file} pa/pa-gas.h"
1247                 fi
1248                 install_headers_dir=install-headers-cpio
1249                 use_collect2=yes
1250                 ;;
1251         hppa1.1-*-hiux* | hppa2*-*-hiux*)
1252                 target_cpu_default="MASK_PA_11"
1253                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1254                 xm_file=pa/xm-pahpux.h
1255                 xmake_file=pa/x-pa-hpux
1256                 if test x$gas = xyes
1257                 then
1258                         tm_file="${tm_file} pa/pa-gas.h"
1259                 fi
1260                 install_headers_dir=install-headers-cpio
1261                 use_collect2=yes
1262                 ;;
1263         hppa1.0-*-hiux*)
1264                 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
1265                 xm_file=pa/xm-pahpux.h
1266                 xmake_file=pa/x-pa-hpux
1267                 if test x$gas = xyes
1268                 then
1269                         tm_file="${tm_file} pa/pa-gas.h"
1270                 fi
1271                 install_headers_dir=install-headers-cpio
1272                 use_collect2=yes
1273                 ;;
1274         hppa*-*-lites*)
1275                 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
1276                 target_cpu_default="MASK_PA_11"
1277                 use_collect2=yes
1278                 ;;
1279         hppa*-*-mpeix*)
1280                 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
1281                 xm_file=pa/xm-pampeix.h 
1282                 xmake_file=pa/x-pa-mpeix 
1283                 echo "You must use gas. Assuming it is already installed." 
1284                 install_headers_dir=install-headers-tar
1285                 use_collect2=yes 
1286                 ;; 
1287         i370-*-opened*)                  # IBM 360/370/390 Architecture
1288                 xm_file=i370/xm-oe.h
1289                 tm_file=i370/oe.h
1290                 xmake_file=i370/x-oe
1291                 tmake_file=i370/t-oe
1292                 ;;
1293         i370-*-mvs*)
1294                 xm_file=i370/xm-mvs.h
1295                 tm_file=i370/mvs.h
1296                 tmake_file=i370/t-mvs
1297                 ;;
1298         i370-*-linux*)
1299                 xm_file="xm-linux.h i370/xm-linux.h"
1300                 xmake_file=x-linux
1301                 tm_file="i370/linux.h ${tm_file}"
1302                 tmake_file="t-linux i370/t-linux"
1303                 # broken_install=yes
1304                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1305                 # extra_parts="crtbegin.o crtend.o"
1306                 gnu_ld=yes
1307                 gas=yes
1308                 elf=yes
1309                 if test x$enable_threads = xyes; then
1310                         thread_file='posix'
1311                 fi
1312                 ;;
1313 changequote(,)dnl
1314         i[34567]86-*-elf*)
1315 changequote([,])dnl
1316                 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h"
1317                 tm_file=i386/i386elf.h
1318                 tmake_file=i386/t-i386elf
1319                 xmake_file=x-svr4
1320                 ;;
1321 changequote(,)dnl
1322         i[34567]86-ibm-aix*)            # IBM PS/2 running AIX
1323 changequote([,])dnl
1324                 if test x$gas = xyes
1325                 then
1326                         tm_file=i386/aix386.h
1327                         extra_parts="crtbegin.o crtend.o"
1328                         tmake_file=i386/t-crtstuff
1329                 else
1330                         tm_file=i386/aix386ng.h
1331                         use_collect2=yes
1332                 fi
1333                 xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
1334                 xm_defines=USG
1335                 xmake_file=i386/x-aix
1336                 ;;
1337 changequote(,)dnl
1338         i[34567]86-ncr-sysv4*)          # NCR 3000 - ix86 running system V.4
1339 changequote([,])dnl
1340                 xm_file="xm-alloca.h ${xm_file}"
1341                 xm_defines="USG POSIX SMALL_ARG_MAX"
1342                 xmake_file=i386/x-ncr3000
1343                 if test x$stabs = xyes -a x$gas = xyes
1344                 then
1345                         tm_file=i386/sysv4gdb.h
1346                 else
1347                         tm_file=i386/sysv4.h
1348                 fi
1349                 extra_parts="crtbegin.o crtend.o"
1350                 tmake_file=i386/t-crtpic
1351                 ;;
1352 changequote(,)dnl
1353         i[34567]86-next-*)
1354 changequote([,])dnl
1355                 tm_file=i386/next.h
1356                 xm_file=i386/xm-next.h
1357                 tmake_file=i386/t-next
1358                 xmake_file=i386/x-next
1359                 extra_objs=nextstep.o
1360                 extra_parts="crtbegin.o crtend.o"
1361                 if test x$enable_threads = xyes; then
1362                         thread_file='mach'
1363                 fi
1364                 ;;
1365 changequote(,)dnl
1366         i[34567]86-sequent-bsd*)                # 80386 from Sequent
1367 changequote([,])dnl
1368                 use_collect2=yes
1369                 if test x$gas = xyes
1370                 then
1371                         tm_file=i386/seq-gas.h
1372                 else
1373                         tm_file=i386/sequent.h
1374                 fi
1375                 ;;
1376 changequote(,)dnl
1377         i[34567]86-sequent-ptx1*)
1378 changequote([,])dnl
1379                 xm_defines="USG SVR3"
1380                 xmake_file=i386/x-sysv3
1381                 tm_file=i386/seq-sysv3.h
1382                 tmake_file=i386/t-crtstuff
1383                 extra_parts="crtbegin.o crtend.o"
1384                 install_headers_dir=install-headers-cpio
1385                 ;;
1386 changequote(,)dnl
1387         i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1388 changequote([,])dnl
1389                 xm_defines="USG SVR3"
1390                 xmake_file=i386/x-sysv3
1391                 tm_file=i386/seq2-sysv3.h
1392                 tmake_file=i386/t-crtstuff
1393                 extra_parts="crtbegin.o crtend.o"
1394                 install_headers_dir=install-headers-cpio
1395                 ;;
1396 changequote(,)dnl
1397         i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1398 changequote([,])dnl
1399                 xm_file="xm-alloca.h ${xm_file}"
1400                 xm_defines="USG POSIX SMALL_ARG_MAX"
1401                 xmake_file=x-svr4
1402                 tm_file=i386/ptx4-i.h
1403                 tmake_file=t-svr4
1404                 extra_parts="crtbegin.o crtend.o"
1405                 install_headers_dir=install-headers-cpio
1406                 ;;
1407         i386-sun-sunos*)                # Sun i386 roadrunner
1408                 xm_defines=USG
1409                 tm_file=i386/sun.h
1410                 use_collect2=yes
1411                 ;;
1412 changequote(,)dnl
1413         i[34567]86-wrs-vxworks*)
1414 changequote([,])dnl
1415                 tm_file=i386/vxi386.h
1416                 tmake_file=i386/t-i386bare
1417                 thread_file='vxworks'
1418                 ;;
1419 changequote(,)dnl
1420         i[34567]86-*-aout*)
1421 changequote([,])dnl
1422                 tm_file=i386/i386-aout.h
1423                 tmake_file=i386/t-i386bare
1424                 ;;
1425 changequote(,)dnl
1426         i[34567]86-*-beospe*)
1427 changequote([,])dnl
1428                 xm_file=i386/xm-beos.h
1429                 xm_defines="USE_C_ALLOCA"
1430                 tmake_file=i386/t-beos
1431                 tm_file=i386/beos-pe.h
1432                 xmake_file=i386/x-beos
1433                 extra_objs=winnt.o
1434                 ;;
1435 changequote(,)dnl
1436         i[34567]86-*-beoself* | i[34567]86-*-beos*)
1437 changequote([,])dnl
1438                 xm_file=i386/xm-beos.h
1439                 tmake_file='i386/t-beos i386/t-crtpic'
1440                 tm_file=i386/beos-elf.h
1441                 xmake_file=i386/x-beos
1442                 extra_objs=winnt.o
1443                 extra_parts='crtbegin.o crtend.o'
1444                 ;;
1445 changequote(,)dnl
1446         i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1447 changequote([,])dnl
1448                 tm_file=i386/bsd386.h
1449 #               tmake_file=t-libc-ok
1450                 ;;
1451 changequote(,)dnl
1452         i[34567]86-*-bsd*)
1453 changequote([,])dnl
1454                 tm_file=i386/386bsd.h
1455 #               tmake_file=t-libc-ok
1456 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1457 #               use_collect2=yes
1458                 ;;
1459 changequote(,)dnl
1460         i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
1461 changequote([,])dnl
1462                 tm_file="i386/freebsd.h i386/perform.h"
1463                 tmake_file=t-freebsd
1464                 ;;
1465 changequote(,)dnl
1466         i[34567]86-*-freebsd*)
1467 changequote([,])dnl
1468                 tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd-elf.h i386/perform.h"
1469                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1470                 tmake_file=t-freebsd
1471                 gas=yes
1472                 gnu_ld=yes
1473                 stabs=yes
1474                 case x${enable_threads} in
1475                 xyes | xpthreads | xposix)
1476                         thread_file='posix'
1477                         tmake_file="${tmake_file} t-freebsd-thread"
1478                         ;;
1479                 esac
1480                 ;;
1481 changequote(,)dnl
1482         i[34567]86-*-netbsd*)
1483 changequote([,])dnl
1484                 tm_file=i386/netbsd.h
1485                 tmake_file=t-netbsd
1486                 use_collect2=yes
1487                 ;;
1488 changequote(,)dnl
1489         i[34567]86-*-openbsd*)
1490 changequote([,])dnl
1491                 # we need collect2 until our bug is fixed...
1492                 use_collect2=yes
1493                 ;;
1494 changequote(,)dnl
1495         i[34567]86-*-coff*)
1496 changequote([,])dnl
1497                 tm_file=i386/i386-coff.h
1498                 tmake_file=i386/t-i386bare
1499                 ;;
1500 changequote(,)dnl
1501         i[34567]86-*-isc*)              # 80386 running ISC system
1502 changequote([,])dnl
1503                 xm_file="${xm_file} i386/xm-isc.h"
1504                 xm_defines="USG SVR3"
1505                 case $machine in
1506 changequote(,)dnl
1507                   i[34567]86-*-isc[34]*)
1508 changequote([,])dnl
1509                     xmake_file=i386/x-isc3
1510                     ;;
1511                   *)
1512                     xmake_file=i386/x-isc
1513                     ;;
1514                 esac
1515                 if test x$gas = xyes -a x$stabs = xyes
1516                 then
1517                         tm_file=i386/iscdbx.h
1518                         tmake_file=i386/t-svr3dbx
1519                         extra_parts="svr3.ifile svr3z.ifile"
1520                 else
1521                         tm_file=i386/isccoff.h
1522                         tmake_file=i386/t-crtstuff
1523                         extra_parts="crtbegin.o crtend.o"
1524                 fi
1525                 tmake_file="$tmake_file i386/t-i386bare"
1526                 install_headers_dir=install-headers-cpio
1527                 ;;
1528 changequote(,)dnl
1529         i[34567]86-*-linux-gnuoldld*)   # Intel 80386's running GNU/Linux
1530 changequote([,])dnl                     # with a.out format using
1531                                         # pre BFD linkers
1532                 xmake_file=x-linux-aout
1533                 tmake_file="t-linux-aout i386/t-crtstuff"
1534                 tm_file=i386/linux-oldld.h
1535                 gnu_ld=yes
1536                 float_format=i386
1537                 ;;
1538 changequote(,)dnl
1539         i[34567]86-*-linux-gnuaout*)    # Intel 80386's running GNU/Linux
1540 changequote([,])dnl                     # with a.out format
1541                 xmake_file=x-linux-aout
1542                 tmake_file="t-linux-aout i386/t-crtstuff"
1543                 tm_file=i386/linux-aout.h
1544                 gnu_ld=yes
1545                 float_format=i386
1546                 ;;
1547 changequote(,)dnl
1548         i[34567]86-*-linux-gnulibc1)    # Intel 80386's running GNU/Linux
1549 changequote([,])dnl                     # with ELF format using the
1550                                         # GNU/Linux C library 5
1551                 xmake_file=x-linux      
1552                 tm_file=i386/linux.h    
1553                 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1554                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1555                 gnu_ld=yes
1556                 float_format=i386
1557                 if test x$enable_threads = xyes; then
1558                         thread_file='single'
1559                 fi
1560                 ;;
1561 changequote(,)dnl
1562         i[34567]86-*-linux-gnu*)        # Intel 80386's running GNU/Linux
1563 changequote([,])dnl                     # with ELF format using glibc 2
1564                                         # aka GNU/Linux C library 6
1565                 xmake_file=x-linux
1566                 tm_file=i386/linux.h
1567                 tmake_file="t-linux i386/t-crtstuff"
1568                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1569                 gnu_ld=yes
1570                 float_format=i386
1571                 if test x$enable_threads = xyes; then
1572                         thread_file='posix'
1573                 fi
1574                 ;;
1575 changequote(,)dnl
1576         i[34567]86-*-gnu*)
1577                 float_format=i386
1578 changequote([,])dnl
1579                 ;;
1580 changequote(,)dnl
1581         i[34567]86-go32-msdos | i[34567]86-*-go32*)
1582 changequote([,])dnl
1583                 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1584                 exit 1
1585                 ;;
1586 changequote(,)dnl
1587         i[34567]86-pc-msdosdjgpp*)
1588 changequote([,])dnl
1589                 xm_file=i386/xm-djgpp.h
1590                 tm_file=i386/djgpp.h
1591                 tmake_file=i386/t-djgpp
1592                 xmake_file=i386/x-djgpp
1593                 gnu_ld=yes
1594                 gas=yes
1595                 exeext=.exe
1596                 float_format=none
1597                 case $host in *pc-msdosdjgpp*)
1598                         target_alias=djgpp
1599                         ;;
1600                 esac
1601                 ;;
1602 changequote(,)dnl
1603         i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1604 changequote([,])dnl
1605                 tm_file=i386/moss.h
1606                 tmake_file=t-libc-ok
1607                 gnu_ld=yes
1608                 gas=yes
1609                 ;;
1610 changequote(,)dnl
1611         i[34567]86-*-lynxos*)
1612 changequote([,])dnl
1613                 if test x$gas = xyes
1614                 then
1615                         tm_file=i386/lynx.h
1616                 else
1617                         tm_file=i386/lynx-ng.h
1618                 fi
1619                 xm_file=i386/xm-lynx.h
1620                 tmake_file=i386/t-i386bare
1621                 xmake_file=x-lynx
1622                 ;;
1623 changequote(,)dnl
1624         i[34567]86-*-mach*)
1625 changequote([,])dnl
1626                 tm_file=i386/mach.h
1627 #               tmake_file=t-libc-ok
1628                 use_collect2=yes
1629                 ;;
1630 changequote(,)dnl
1631         i[34567]86-*-osfrose*)          # 386 using OSF/rose
1632 changequote([,])dnl
1633                 if test x$elf = xyes
1634                 then
1635                         tm_file=i386/osfelf.h
1636                         use_collect2=
1637                 else
1638                         tm_file=i386/osfrose.h
1639                         use_collect2=yes
1640                 fi
1641                 xm_file="i386/xm-osf.h ${xm_file}"
1642                 xmake_file=i386/x-osfrose
1643                 tmake_file=i386/t-osf
1644                 extra_objs=halfpic.o
1645                 ;;
1646 changequote(,)dnl
1647         i[34567]86-go32-rtems*)
1648 changequote([,])dnl
1649                 cpu_type=i386
1650                 xm_file=i386/xm-go32.h
1651                 tm_file=i386/go32-rtems.h
1652                 tmake_file="i386/t-go32 t-rtems"
1653                 ;;
1654 changequote(,)dnl
1655         i[34567]86-*-rtemscoff*)
1656 changequote([,])dnl
1657                 cpu_type=i386
1658                 tm_file=i386/rtems.h
1659                 tmake_file="i386/t-i386bare t-rtems"
1660                 ;;
1661 changequote(,)dnl
1662         i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1663 changequote([,])dnl
1664                 cpu_type=i386
1665                 tm_file=i386/rtemself.h
1666                 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1667                 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1668                 ;;
1669 changequote(,)dnl
1670         i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1671 changequote([,])dnl
1672                 xm_file="xm-alloca.h ${xm_file} i386/xm-sco5.h"
1673                 xm_defines="USG SVR3"
1674                 xmake_file=i386/x-sco5
1675                 install_headers_dir=install-headers-cpio
1676                 tm_file=i386/sco5.h
1677                 if test x$gas = xyes
1678                 then
1679                         tm_file="i386/sco5gas.h ${tm_file}"
1680                         tmake_file=i386/t-sco5gas
1681                 else
1682                         tmake_file=i386/t-sco5
1683                 fi
1684                 tmake_file="$tmake_file i386/t-i386bare"
1685                 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1686                 ;;
1687 changequote(,)dnl
1688         i[34567]86-*-sco3.2v4*)         # 80386 running SCO 3.2v4 system
1689 changequote([,])dnl
1690                 xm_file="${xm_file} i386/xm-sco.h"
1691                 xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX"
1692                 xmake_file=i386/x-sco4
1693                 install_headers_dir=install-headers-cpio
1694                 if test x$stabs = xyes
1695                 then
1696                         tm_file=i386/sco4dbx.h
1697                         tmake_file=i386/t-svr3dbx
1698                         extra_parts="svr3.ifile svr3z.rfile"
1699                 else
1700                         tm_file=i386/sco4.h
1701                         tmake_file=i386/t-crtstuff
1702                         extra_parts="crtbegin.o crtend.o"
1703                 fi
1704                 tmake_file="$tmake_file i386/t-i386bare"
1705                 # The default EAFS filesystem supports long file names.
1706                 # Truncating the target makes $host != $target which
1707                 # makes gcc think it is doing a cross-compile.
1708                 # truncate_target=yes
1709                 ;;
1710 changequote(,)dnl
1711         i[34567]86-*-sco*)              # 80386 running SCO system
1712 changequote([,])dnl
1713                 xm_file=i386/xm-sco.h
1714                 xmake_file=i386/x-sco
1715                 install_headers_dir=install-headers-cpio
1716                 if test x$stabs = xyes
1717                 then
1718                         tm_file=i386/scodbx.h
1719                         tmake_file=i386/t-svr3dbx
1720                         extra_parts="svr3.ifile svr3z.rfile"
1721                 else
1722                         tm_file=i386/sco.h
1723                         extra_parts="crtbegin.o crtend.o"
1724                         tmake_file=i386/t-crtstuff
1725                 fi
1726                 tmake_file="$tmake_file i386/t-i386bare"
1727                 truncate_target=yes
1728                 ;;
1729 changequote(,)dnl
1730         i[34567]86-*-solaris2*)
1731 changequote([,])dnl
1732                 xm_file="xm-alloca.h ${xm_file}"
1733                 xm_defines="USG POSIX SMALL_ARG_MAX"
1734                 tm_file=i386/sol2.h
1735                 if test x$gas = xyes; then
1736                         # Only needed if gas does not support -s
1737                         tm_file="i386/sol2gas.h ${tm_file}"
1738                 fi
1739                 tmake_file="i386/t-i386bare i386/t-sol2"
1740                 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1741                 xmake_file=x-svr4
1742                 if test x${enable_threads} = x; then
1743                     enable_threads=$have_pthread_h
1744                     if test x${enable_threads} = x; then
1745                         enable_threads=$have_thread_h
1746                     fi
1747                 fi
1748                 if test x${enable_threads} = xyes; then
1749                     if test x${have_pthread_h} = xyes; then
1750                         thread_file='posix'
1751                     else
1752                         thread_file='solaris'
1753                     fi
1754                 fi
1755                 ;;
1756 changequote(,)dnl
1757        i[34567]86-*-sysv5*)           # Intel x86 on System V Release 5
1758 changequote([,])dnl
1759                xm_file="xm-alloca.h ${xm_file}"
1760                xm_defines="USG POSIX"
1761                tm_file=i386/sysv5.h
1762                if test x$stabs = xyes
1763                then
1764                        tm_file="${tm_file} dbx.h"
1765                fi
1766                tmake_file="i386/t-i386bare i386/t-crtpic"
1767                xmake_file=x-svr4
1768                extra_parts="crtbegin.o crtend.o"
1769                if test x$enable_threads = xyes; then
1770                        thread_file='posix'
1771                fi
1772                ;;
1773 changequote(,)dnl
1774         i[34567]86-*-sysv4*)            # Intel 80386's running system V.4
1775 changequote([,])dnl
1776                 xm_file="xm-alloca.h ${xm_file}"
1777                 xm_defines="USG POSIX SMALL_ARG_MAX"
1778                 tm_file=i386/sysv4.h
1779                 if test x$stabs = xyes
1780                 then
1781                         tm_file="${tm_file} dbx.h"
1782                 fi
1783                 tmake_file="i386/t-i386bare i386/t-crtpic"
1784                 xmake_file=x-svr4
1785                 extra_parts="crtbegin.o crtend.o"
1786                 ;;
1787 changequote(,)dnl
1788         i[34567]86-*-udk*)      # Intel x86 on SCO UW/OSR5 Dev Kit
1789 changequote([,])dnl
1790                 xm_file="xm-alloca.h ${xm_file}"
1791                 xm_defines="USG POSIX"
1792                 tm_file=i386/udk.h
1793                 tmake_file="i386/t-i386bare i386/t-crtpic i386/t-udk"
1794                 xmake_file=x-svr4
1795                 extra_parts="crtbegin.o crtend.o"
1796                 install_headers_dir=install-headers-cpio
1797                 ;;
1798 changequote(,)dnl
1799         i[34567]86-*-osf1*)             # Intel 80386's running OSF/1 1.3+
1800 changequote([,])dnl
1801                 cpu_type=i386
1802                 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
1803                 xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
1804                 if test x$stabs = xyes
1805                 then
1806                         tm_file=i386/osf1elfgdb.h
1807                 else
1808                         tm_file=i386/osf1elf.h
1809                 fi
1810                 tmake_file=i386/t-osf1elf
1811                 xmake_file=i386/x-osf1elf
1812                 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1813                 ;;
1814 changequote(,)dnl
1815         i[34567]86-*-sysv*)             # Intel 80386's running system V
1816 changequote([,])dnl
1817                 xm_defines="USG SVR3"
1818                 xmake_file=i386/x-sysv3
1819                 if test x$gas = xyes
1820                 then
1821                         if test x$stabs = xyes
1822                         then
1823                                 tm_file=i386/svr3dbx.h
1824                                 tmake_file=i386/t-svr3dbx
1825                                 extra_parts="svr3.ifile svr3z.rfile"
1826                         else
1827                                 tm_file=i386/svr3gas.h
1828                                 extra_parts="crtbegin.o crtend.o"
1829                                 tmake_file=i386/t-crtstuff
1830                         fi
1831                 else
1832                         tm_file=i386/sysv3.h
1833                         extra_parts="crtbegin.o crtend.o"
1834                         tmake_file=i386/t-crtstuff
1835                 fi
1836                 tmake_file="$tmake_file i386/t-crtpic"
1837                 ;;
1838         i386-*-vsta)                    # Intel 80386's running VSTa kernel
1839                 xm_file="${xm_file} i386/xm-vsta.h"
1840                 tm_file=i386/vsta.h
1841                 tmake_file=i386/t-vsta
1842                 xmake_file=i386/x-vsta
1843                 ;;
1844 changequote(,)dnl
1845         i[34567]86-*-win32)
1846 changequote([,])dnl
1847                 xm_file="${xm_file} i386/xm-cygwin.h"
1848                 tmake_file=i386/t-cygwin
1849                 tm_file=i386/win32.h
1850                 xmake_file=i386/x-cygwin
1851                 extra_objs=winnt.o
1852                 if test x$enable_threads = xyes; then
1853                         thread_file='win32'
1854                 fi
1855                 exeext=.exe
1856                 ;;
1857 changequote(,)dnl
1858         i[34567]86-*-pe | i[34567]86-*-cygwin*)
1859 changequote([,])dnl
1860                 xm_file="${xm_file} i386/xm-cygwin.h"
1861                 tmake_file=i386/t-cygwin
1862                 tm_file=i386/cygwin.h
1863                 xmake_file=i386/x-cygwin
1864                 extra_objs=winnt.o
1865                 if test x$enable_threads = xyes; then
1866                         thread_file='win32'
1867                 fi
1868                 exeext=.exe
1869                 ;;
1870 changequote(,)dnl
1871         i[34567]86-*-mingw32*)
1872 changequote([,])dnl
1873                 tm_file=i386/mingw32.h
1874                 xm_file="${xm_file} i386/xm-mingw32.h"
1875                 tmake_file="i386/t-cygwin i386/t-mingw32"
1876                 extra_objs=winnt.o
1877                 xmake_file=i386/x-cygwin
1878                 if test x$enable_threads = xyes; then
1879                         thread_file='win32'
1880                 fi
1881                 exeext=.exe
1882                 case $machine in
1883                         *mingw32msv*)
1884                                 ;;
1885                         *minwg32crt* | *mingw32*)
1886                                 tm_file="${tm_file} i386/crtdll.h"
1887                                 ;;
1888                 esac
1889                 ;;
1890 changequote(,)dnl
1891         i[34567]86-*-uwin*)
1892 changequote([,])dnl
1893                 tm_file=i386/uwin.h
1894                 xm_file="${xm_file} i386/xm-uwin.h"
1895                 xm_defines="USG NO_STAB_H"
1896                 tmake_file="i386/t-cygwin i386/t-uwin"
1897                 extra_objs=winnt.o
1898                 xmake_file=i386/x-cygwin
1899                 if test x$enable_threads = xyes; then
1900                         thread_file='win32'
1901                 fi
1902                 exeext=.exe
1903                 ;;
1904 changequote(,)dnl
1905         i[34567]86-*-interix*)
1906 changequote([,])dnl
1907                 tm_file="i386/i386-interix.h interix.h"
1908                 xm_file="i386/xm-i386-interix.h xm-interix.h"
1909                 xm_defines="USG"
1910                 tmake_file="i386/t-interix"
1911                 extra_objs=interix.o
1912                 xmake_file=x-interix
1913                 if test x$enable_threads = xyes ; then
1914                         thread_file='posix'
1915                 fi
1916                 if test x$stabs = xyes ; then
1917                         tm_file="${tm_file} dbxcoff.h"
1918                 fi
1919                 ;;
1920 changequote(,)dnl
1921         i[34567]86-*-winnt3*)
1922 changequote([,])dnl
1923                 tm_file=i386/win-nt.h
1924                 out_file=i386/i386.c
1925                 xm_file="xm-winnt.h ${xm_file}"
1926                 xmake_file=winnt/x-winnt
1927                 tmake_file=i386/t-winnt
1928                 extra_host_objs="winnt.o oldnames.o"
1929                 extra_gcc_objs="spawnv.o oldnames.o"
1930                 if test x$gnu_ld != xyes
1931                 then
1932                         extra_programs=ld.exe
1933                 fi
1934                 if test x$enable_threads = xyes; then
1935                         thread_file='win32'
1936                 fi
1937                 ;;
1938 changequote(,)dnl
1939         i[34567]86-dg-dgux*)
1940 changequote([,])dnl
1941                 xm_file="xm-alloca.h ${xm_file}"
1942                 xm_defines="USG POSIX"
1943                 out_file=i386/dgux.c
1944                 tm_file=i386/dgux.h
1945                 tmake_file=i386/t-dgux
1946                 xmake_file=i386/x-dgux
1947                 install_headers_dir=install-headers-cpio
1948               ;;
1949         i860-alliant-*)         # Alliant FX/2800
1950                 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1951                 xm_file="${xm_file}"
1952                 xmake_file=i860/x-fx2800
1953                 tmake_file=i860/t-fx2800
1954                 extra_parts="crtbegin.o crtend.o"
1955                 ;;
1956         i860-*-bsd*)
1957                 tm_file="${tm_file} i860/bsd.h"
1958                 if test x$gas = xyes
1959                 then
1960                         tm_file="${tm_file} i860/bsd-gas.h"
1961                 fi
1962                 use_collect2=yes
1963                 ;;
1964         i860-*-mach*)
1965                 tm_file="${tm_file} i860/mach.h"
1966                 tmake_file=t-libc-ok
1967                 ;;
1968         i860-*-osf*)                    # Intel Paragon XP/S, OSF/1AD
1969                 tm_file="${tm_file} svr3.h i860/paragon.h"
1970                 xm_defines="USG SVR3"
1971                 tmake_file=t-osf
1972                 ;;
1973         i860-*-sysv3*)
1974                 tm_file="${tm_file} svr3.h i860/sysv3.h"
1975                 xm_defines="USG SVR3"
1976                 xmake_file=i860/x-sysv3
1977                 extra_parts="crtbegin.o crtend.o"
1978                 ;;
1979         i860-*-sysv4*)
1980                 tm_file="${tm_file} svr4.h i860/sysv4.h"
1981                 xm_defines="USG SVR3"
1982                 xmake_file=i860/x-sysv4
1983                 tmake_file=t-svr4
1984                 extra_parts="crtbegin.o crtend.o"
1985                 ;;
1986         i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1987                 tm_file="${tm_file} i960/vx960.h"
1988                 tmake_file=i960/t-vxworks960
1989                 use_collect2=yes
1990                 thread_file='vxworks'
1991                 ;;
1992         i960-wrs-vxworks5* | i960-wrs-vxworks)
1993                 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1994                 tmake_file=i960/t-vxworks960
1995                 use_collect2=yes
1996                 thread_file='vxworks'
1997                 ;;
1998         i960-wrs-vxworks*)
1999                 tm_file="${tm_file} i960/vx960.h"
2000                 tmake_file=i960/t-vxworks960
2001                 use_collect2=yes
2002                 thread_file='vxworks'
2003                 ;;
2004         i960-*-coff*)
2005                 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
2006                 tmake_file=i960/t-960bare
2007                 use_collect2=yes
2008                 ;;
2009         i960-*-rtems)
2010                 tmake_file="i960/t-960bare t-rtems"
2011                 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
2012                 use_collect2=yes
2013                 ;;
2014         i960-*-*)                       # Default i960 environment.
2015                 use_collect2=yes
2016                 ;;
2017         ia64*-*-elf*)
2018                 tm_file=ia64/elf.h
2019                 tmake_file="ia64/t-ia64"
2020                 target_cpu_default="0"
2021                 if test x$gas = xyes
2022                 then
2023                         target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
2024                 fi
2025                 if test x$gnu_ld = xyes
2026                 then
2027                         target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
2028                 fi
2029                 ;;
2030         ia64*-*-linux*)
2031                 tm_file=ia64/linux.h
2032                 tmake_file="t-linux ia64/t-ia64"
2033                 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
2034                 if test x$enable_threads = xyes; then
2035                         thread_file='posix'
2036                 fi
2037                 ;;
2038         m32r-*-elf*)
2039                 extra_parts="crtinit.o crtfini.o"
2040                 ;;
2041         m68000-convergent-sysv*)
2042                 tm_file=m68k/ctix.h
2043                 xm_file="m68k/xm-3b1.h ${xm_file}"
2044                 xm_defines=USG
2045                 use_collect2=yes
2046                 extra_headers=math-68881.h
2047                 ;;
2048         m68000-hp-bsd*)                 # HP 9000/200 running BSD
2049                 tm_file=m68k/hp2bsd.h
2050                 xmake_file=m68k/x-hp2bsd
2051                 use_collect2=yes
2052                 extra_headers=math-68881.h
2053                 ;;
2054         m68000-hp-hpux*)                # HP 9000 series 300
2055                 xm_file="xm-alloca.h ${xm_file}"
2056                 xm_defines="USG"
2057                 if test x$gas = xyes
2058                 then
2059                         xmake_file=m68k/x-hp320g
2060                         tm_file=m68k/hp310g.h
2061                 else
2062                         xmake_file=m68k/x-hp320
2063                         tm_file=m68k/hp310.h
2064                 fi
2065                 install_headers_dir=install-headers-cpio
2066                 use_collect2=yes
2067                 extra_headers=math-68881.h
2068                 ;;
2069         m68000-sun-sunos3*)
2070                 tm_file=m68k/sun2.h
2071                 use_collect2=yes
2072                 extra_headers=math-68881.h
2073                 ;;
2074         m68000-sun-sunos4*)
2075                 tm_file=m68k/sun2o4.h
2076                 use_collect2=yes
2077                 extra_headers=math-68881.h
2078                 ;;
2079         m68000-att-sysv*)
2080                 xm_file="m68k/xm-3b1.h ${xm_file}"
2081                 xm_defines=USG
2082                 if test x$gas = xyes
2083                 then
2084                         tm_file=m68k/3b1g.h
2085                 else
2086                         tm_file=m68k/3b1.h
2087                 fi
2088                 use_collect2=yes
2089                 extra_headers=math-68881.h
2090                 ;;
2091         m68k-apple-aux*)                # Apple Macintosh running A/UX
2092                 xm_defines="USG AUX"
2093                 tmake_file=m68k/t-aux
2094                 install_headers_dir=install-headers-cpio
2095                 extra_headers=math-68881.h
2096                 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
2097                 tm_file=
2098                 if test "$gnu_ld" = yes
2099                 then
2100                         tm_file="${tm_file} m68k/auxgld.h"
2101                 else
2102                         tm_file="${tm_file} m68k/auxld.h"
2103                 fi
2104                 if test "$gas" = yes
2105                 then
2106                         tm_file="${tm_file} m68k/auxgas.h"
2107                 else
2108                         tm_file="${tm_file} m68k/auxas.h"
2109                 fi
2110                 tm_file="${tm_file} m68k/a-ux.h"
2111                 float_format=m68k
2112                 ;;
2113         m68k-apollo-*)
2114                 tm_file=m68k/apollo68.h
2115                 xmake_file=m68k/x-apollo68
2116                 use_collect2=yes
2117                 extra_headers=math-68881.h
2118                 float_format=m68k
2119                 ;;
2120         m68k-altos-sysv*)                  # Altos 3068
2121                 if test x$gas = xyes
2122                 then
2123                         tm_file=m68k/altos3068.h
2124                         xm_defines=USG
2125                 else
2126                         echo "The Altos is supported only with the GNU assembler" 1>&2
2127                         exit 1
2128                 fi
2129                 extra_headers=math-68881.h
2130                 ;;
2131         m68k-bull-sysv*)                # Bull DPX/2
2132                 if test x$gas = xyes
2133                 then
2134                         if test x$stabs = xyes
2135                         then
2136                                 tm_file=m68k/dpx2cdbx.h
2137                         else
2138                                 tm_file=m68k/dpx2g.h
2139                         fi
2140                 else
2141                         tm_file=m68k/dpx2.h
2142                 fi
2143                 xm_file="xm-alloca.h ${xm_file}"
2144                 xm_defines=USG
2145                 xmake_file=m68k/x-dpx2
2146                 use_collect2=yes
2147                 extra_headers=math-68881.h
2148                 ;;
2149         m68k-atari-sysv4*)              # Atari variant of V.4.
2150                 tm_file=m68k/atari.h
2151                 xm_file="xm-alloca.h ${xm_file}"
2152                 xm_defines="USG FULL_PROTOTYPES"
2153                 tmake_file=t-svr4
2154                 extra_parts="crtbegin.o crtend.o"
2155                 extra_headers=math-68881.h
2156                 float_format=m68k
2157                 ;;
2158         m68k-motorola-sysv*)
2159                 tm_file=m68k/mot3300.h
2160                 xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
2161                 if test x$gas = xyes
2162                 then
2163                         xmake_file=m68k/x-mot3300-gas
2164                         if test x$gnu_ld = xyes
2165                         then
2166                                 tmake_file=m68k/t-mot3300-gald
2167                         else
2168                                 tmake_file=m68k/t-mot3300-gas
2169                                 use_collect2=yes
2170                         fi
2171                 else
2172                         xmake_file=m68k/x-mot3300
2173                         if test x$gnu_ld = xyes
2174                         then
2175                                 tmake_file=m68k/t-mot3300-gld
2176                         else
2177                                 tmake_file=m68k/t-mot3300
2178                                 use_collect2=yes
2179                         fi
2180                 fi
2181                 gdb_needs_out_file_path=yes
2182                 extra_parts="crt0.o mcrt0.o"
2183                 extra_headers=math-68881.h
2184                 float_format=m68k
2185                 ;;
2186         m68k-ncr-sysv*)                 # NCR Tower 32 SVR3
2187                 tm_file=m68k/tower-as.h
2188                 xm_defines="USG SVR3"
2189                 xmake_file=m68k/x-tower
2190                 extra_parts="crtbegin.o crtend.o"
2191                 extra_headers=math-68881.h
2192                 ;;
2193         m68k-plexus-sysv*)
2194                 tm_file=m68k/plexus.h
2195                 xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
2196                 xm_defines=USG
2197                 use_collect2=yes
2198                 extra_headers=math-68881.h
2199                 ;;
2200         m68k-tti-*)
2201                 tm_file=m68k/pbb.h
2202                 xm_file="xm-alloca.h ${xm_file}"
2203                 xm_defines=USG
2204                 extra_headers=math-68881.h
2205                 ;;
2206         m68k-crds-unos*)
2207                 xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
2208                 xm_defines="USG unos"
2209                 xmake_file=m68k/x-crds
2210                 tm_file=m68k/crds.h
2211                 use_collect2=yes
2212                 extra_headers=math-68881.h
2213                 ;;
2214         m68k-cbm-sysv4*)                # Commodore variant of V.4.
2215                 tm_file=m68k/amix.h
2216                 xm_file="xm-alloca.h ${xm_file}"
2217                 xm_defines="USG FULL_PROTOTYPES"
2218                 xmake_file=m68k/x-amix
2219                 tmake_file=t-svr4
2220                 extra_parts="crtbegin.o crtend.o"
2221                 extra_headers=math-68881.h
2222                 float_format=m68k
2223                 ;;
2224         m68k-ccur-rtu)
2225                 tm_file=m68k/ccur-GAS.h
2226                 xmake_file=m68k/x-ccur
2227                 extra_headers=math-68881.h
2228                 use_collect2=yes
2229                 float_format=m68k
2230                 ;;
2231         m68k-hp-bsd4.4*)                # HP 9000/3xx running 4.4bsd
2232                 tm_file=m68k/hp3bsd44.h
2233                 xmake_file=m68k/x-hp3bsd44
2234                 use_collect2=yes
2235                 extra_headers=math-68881.h
2236                 float_format=m68k
2237                 ;;
2238         m68k-hp-bsd*)                   # HP 9000/3xx running Berkeley Unix
2239                 tm_file=m68k/hp3bsd.h
2240                 use_collect2=yes
2241                 extra_headers=math-68881.h
2242                 float_format=m68k
2243                 ;;
2244         m68k-isi-bsd*)
2245                 if test x$with_fp = xno
2246                 then
2247                         tm_file=m68k/isi-nfp.h
2248                 else
2249                         tm_file=m68k/isi.h
2250                         float_format=m68k
2251                 fi
2252                 use_collect2=yes
2253                 extra_headers=math-68881.h
2254                 ;;
2255         m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
2256                 xm_file="xm-alloca.h ${xm_file}"
2257                 xm_defines="USG"
2258                 if test x$gas = xyes
2259                 then
2260                         xmake_file=m68k/x-hp320g
2261                         tm_file=m68k/hp320g.h
2262                 else
2263                         xmake_file=m68k/x-hp320
2264                         tm_file=m68k/hpux7.h
2265                 fi
2266                 install_headers_dir=install-headers-cpio
2267                 use_collect2=yes
2268                 extra_headers=math-68881.h
2269                 float_format=m68k
2270                 ;;
2271         m68k-hp-hpux*)  # HP 9000 series 300
2272                 xm_file="xm-alloca.h ${xm_file}"
2273                 xm_defines="USG"
2274                 if test x$gas = xyes
2275                 then
2276                         xmake_file=m68k/x-hp320g
2277                         tm_file=m68k/hp320g.h
2278                 else
2279                         xmake_file=m68k/x-hp320
2280                         tm_file=m68k/hp320.h
2281                 fi
2282                 install_headers_dir=install-headers-cpio
2283                 use_collect2=yes
2284                 extra_headers=math-68881.h
2285                 float_format=m68k
2286                 ;;
2287         m68k-sun-mach*)
2288                 tm_file=m68k/sun3mach.h
2289                 use_collect2=yes
2290                 extra_headers=math-68881.h
2291                 float_format=m68k
2292                 ;;
2293         m68k-sony-newsos3*)
2294                 if test x$gas = xyes
2295                 then
2296                         tm_file=m68k/news3gas.h
2297                 else
2298                         tm_file=m68k/news3.h
2299                 fi
2300                 use_collect2=yes
2301                 extra_headers=math-68881.h
2302                 float_format=m68k
2303                 ;;
2304         m68k-sony-bsd* | m68k-sony-newsos*)
2305                 if test x$gas = xyes
2306                 then
2307                         tm_file=m68k/newsgas.h
2308                 else
2309                         tm_file=m68k/news.h
2310                 fi
2311                 use_collect2=yes
2312                 extra_headers=math-68881.h
2313                 float_format=m68k
2314                 ;;
2315         m68k-next-nextstep2*)
2316                 tm_file=m68k/next21.h
2317                 xm_file="m68k/xm-next.h ${xm_file}"
2318                 tmake_file=m68k/t-next
2319                 xmake_file=m68k/x-next
2320                 extra_objs=nextstep.o
2321                 extra_headers=math-68881.h
2322                 use_collect2=yes
2323                 float_format=m68k
2324                 ;;
2325 changequote(,)dnl
2326         m68k-next-nextstep[34]*)
2327 changequote([,])dnl
2328                 tm_file=m68k/next.h
2329                 xm_file="m68k/xm-next.h ${xm_file}"
2330                 tmake_file=m68k/t-next
2331                 xmake_file=m68k/x-next
2332                 extra_objs=nextstep.o
2333                 extra_parts="crtbegin.o crtend.o"
2334                 extra_headers=math-68881.h
2335                 float_format=m68k
2336                 if test x$enable_threads = xyes; then
2337                         thread_file='mach'
2338                 fi
2339                 ;;
2340         m68k-sun-sunos3*)
2341                 if test x$with_fp = xno
2342                 then
2343                         tm_file=m68k/sun3n3.h
2344                 else
2345                         tm_file=m68k/sun3o3.h
2346                         float_format=m68k
2347                 fi
2348                 use_collect2=yes
2349                 extra_headers=math-68881.h
2350                 ;;
2351         m68k-sun-sunos*)                        # For SunOS 4 (the default).
2352                 if test x$with_fp = xno
2353                 then
2354                         tm_file=m68k/sun3n.h
2355                 else
2356                         tm_file=m68k/sun3.h
2357                         float_format=m68k
2358                 fi
2359                 use_collect2=yes
2360                 extra_headers=math-68881.h
2361                 ;;
2362         m68k-wrs-vxworks*)
2363                 tm_file=m68k/vxm68k.h
2364                 tmake_file=m68k/t-vxworks68
2365                 extra_headers=math-68881.h
2366                 thread_file='vxworks'
2367                 float_format=m68k
2368                 ;;
2369         m68k-*-aout*)
2370                 tmake_file=m68k/t-m68kbare
2371                 tm_file="m68k/m68k-aout.h libgloss.h"
2372                 extra_headers=math-68881.h
2373                 float_format=m68k
2374                 ;;
2375         m68k-*-coff*)
2376                 tmake_file=m68k/t-m68kbare
2377                 tm_file="m68k/m68k-coff.h dbx.h libgloss.h"
2378                 extra_headers=math-68881.h
2379                 float_format=m68k
2380                 ;;
2381         m68020-*-elf* | m68k-*-elf*)
2382                 tm_file="m68k/m68020-elf.h"
2383                 xm_file=m68k/xm-m68kv.h
2384                 tmake_file=m68k/t-m68kelf
2385                 header_files=math-68881.h
2386                 ;;
2387         m68k-*-lynxos*)
2388                 if test x$gas = xyes
2389                 then
2390                         tm_file=m68k/lynx.h
2391                 else
2392                         tm_file=m68k/lynx-ng.h
2393                 fi
2394                 xm_file=m68k/xm-lynx.h
2395                 xmake_file=x-lynx
2396                 tmake_file=m68k/t-lynx
2397                 extra_headers=math-68881.h
2398                 float_format=m68k
2399                 ;;
2400         m68k*-*-netbsd*)
2401                 tm_file=m68k/netbsd.h
2402                 tmake_file=t-netbsd
2403                 float_format=m68k
2404                 use_collect2=yes
2405                 ;;
2406         m68k*-*-openbsd*)
2407                 float_format=m68k
2408                 # we need collect2 until our bug is fixed...
2409                 use_collect2=yes
2410                 ;;
2411         m68k-*-sysv3*)                  # Motorola m68k's running system V.3
2412                 xm_file="xm-alloca.h ${xm_file}"
2413                 xm_defines=USG
2414                 xmake_file=m68k/x-m68kv
2415                 extra_parts="crtbegin.o crtend.o"
2416                 extra_headers=math-68881.h
2417                 float_format=m68k
2418                 ;;
2419         m68k-*-sysv4*)                  # Motorola m68k's running system V.4
2420                 tm_file=m68k/m68kv4.h
2421                 xm_file="xm-alloca.h ${xm_file}"
2422                 xm_defines=USG
2423                 tmake_file=t-svr4
2424                 extra_parts="crtbegin.o crtend.o"
2425                 extra_headers=math-68881.h
2426                 float_format=m68k
2427                 ;;
2428         m68k-*-linux-gnuaout*)          # Motorola m68k's running GNU/Linux
2429                                         # with a.out format
2430                 xmake_file=x-linux
2431                 tm_file=m68k/linux-aout.h
2432                 tmake_file="t-linux-aout m68k/t-linux-aout"
2433                 extra_headers=math-68881.h
2434                 float_format=m68k
2435                 gnu_ld=yes
2436                 ;;
2437         m68k-*-linux-gnulibc1)          # Motorola m68k's running GNU/Linux
2438                                         # with ELF format using the
2439                                         # GNU/Linux C library 5
2440                 xmake_file=x-linux
2441                 tm_file=m68k/linux.h
2442                 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
2443                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2444                 extra_headers=math-68881.h
2445                 float_format=m68k
2446                 gnu_ld=yes
2447                 ;;
2448         m68k-*-linux-gnu*)              # Motorola m68k's running GNU/Linux
2449                                         # with ELF format using glibc 2
2450                                         # aka the GNU/Linux C library 6.
2451                 xmake_file=x-linux
2452                 tm_file=m68k/linux.h
2453                 tmake_file="t-linux m68k/t-linux"
2454                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2455                 extra_headers=math-68881.h
2456                 float_format=m68k
2457                 gnu_ld=yes
2458                 if test x$enable_threads = xyes; then
2459                         thread_file='posix'
2460                 fi
2461                 ;;
2462         m68k-*-psos*)
2463                 tmake_file=m68k/t-m68kbare
2464                 tm_file=m68k/m68k-psos.h
2465                 extra_headers=math-68881.h
2466                 float_format=m68k
2467                 ;;
2468         m68k-*-rtemscoff*)
2469                 tmake_file="m68k/t-m68kbare t-rtems"
2470                 tm_file=m68k/rtems.h
2471                 extra_headers=math-68881.h
2472                 float_format=m68k
2473                 ;;
2474         m68k-*-rtemself*|m68k-*-rtems*)
2475                 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
2476                 tm_file=m68k/rtemself.h
2477                 extra_headers=math-68881.h
2478                 float_format=m68k
2479                 ;;
2480         m88k-dg-dgux*)
2481                 case $machine in
2482                   m88k-dg-dguxbcs*)
2483                     tm_file=m88k/dguxbcs.h
2484                     tmake_file=m88k/t-dguxbcs
2485                     ;;
2486                   *)
2487                     tm_file=m88k/dgux.h
2488                     tmake_file=m88k/t-dgux
2489                     ;;
2490                 esac
2491                 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2492                 xmake_file=m88k/x-dgux
2493                 if test x$gas = xyes
2494                 then
2495                         tmake_file=m88k/t-dgux-gas
2496                 fi
2497                 ;;
2498         m88k-dolphin-sysv3*)
2499                 tm_file=m88k/dolph.h
2500                 extra_parts="crtbegin.o crtend.o"
2501                 xm_file="m88k/xm-sysv3.h ${xm_file}"
2502                 xmake_file=m88k/x-dolph
2503                 if test x$gas = xyes
2504                 then
2505                         tmake_file=m88k/t-m88k-gas
2506                 fi
2507                 ;;
2508         m88k-tektronix-sysv3)
2509                 tm_file=m88k/tekXD88.h
2510                 extra_parts="crtbegin.o crtend.o"
2511                 xm_file="m88k/xm-sysv3.h ${xm_file}"
2512                 xmake_file=m88k/x-tekXD88
2513                 if test x$gas = xyes
2514                 then
2515                         tmake_file=m88k/t-m88k-gas
2516                 fi
2517                 ;;
2518         m88k-*-aout*)
2519                 tm_file=m88k/m88k-aout.h
2520                 ;;
2521         m88k-*-coff*)
2522                 tm_file=m88k/m88k-coff.h
2523                 tmake_file=m88k/t-bug
2524                 ;;
2525         m88k-*-luna*)
2526                 tm_file=m88k/luna.h
2527                 extra_parts="crtbegin.o crtend.o"
2528                 if test x$gas = xyes
2529                 then
2530                         tmake_file=m88k/t-luna-gas
2531                 else
2532                         tmake_file=m88k/t-luna
2533                 fi
2534                 ;;
2535         m88k-*-openbsd*)
2536                 tmake_file="${tmake_file} m88k/t-luna-gas"
2537                 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
2538                 xm_file="xm-openbsd.h m88k/xm-m88k.h ${xm_file}"
2539                 ;;
2540         m88k-*-sysv3*)
2541                 tm_file=m88k/sysv3.h
2542                 extra_parts="crtbegin.o crtend.o"
2543                 xm_file="m88k/xm-sysv3.h ${xm_file}"
2544                 xmake_file=m88k/x-sysv3
2545                 if test x$gas = xyes
2546                 then
2547                         tmake_file=m88k/t-m88k-gas
2548                 fi
2549                 ;;
2550         m88k-*-sysv4*)
2551                 tm_file=m88k/sysv4.h
2552                 extra_parts="crtbegin.o crtend.o"
2553                 xmake_file=m88k/x-sysv4
2554                 tmake_file=m88k/t-sysv4
2555                 ;;
2556         mcore-*-elf)
2557                 tm_file=mcore/mcore-elf.h
2558                 tmake_file=mcore/t-mcore
2559                 ;;
2560         mcore-*-pe*)
2561                 tm_file=mcore/mcore-pe.h
2562                 tmake_file=mcore/t-mcore-pe
2563                 ;;
2564         mips-sgi-irix6*)                # SGI System V.4., IRIX 6
2565                 if test "x$gnu_ld" = xyes
2566                 then
2567                         tm_file="mips/iris6.h mips/iris6gld.h"
2568                 else
2569                         tm_file=mips/iris6.h
2570                 fi
2571                 tmake_file=mips/t-iris6
2572                 xm_file=mips/xm-iris6.h
2573                 xmake_file=mips/x-iris6
2574 #               if test x$enable_threads = xyes; then
2575 #                       thread_file='irix'
2576 #               fi
2577                 ;;
2578         mips-wrs-vxworks)
2579                 tm_file="mips/elf.h mips/vxworks.h"
2580                 tmake_file=mips/t-ecoff
2581                 gas=yes
2582                 gnu_ld=yes
2583                 extra_parts="crtbegin.o crtend.o"
2584                 thread_file='vxworks'
2585                 ;;
2586         mips-sgi-irix5cross64)          # Irix5 host, Irix 6 target, cross64
2587                 tm_file="mips/iris6.h mips/cross64.h"
2588                 xm_defines=USG
2589                 xm_file="mips/xm-iris5.h"
2590                 xmake_file=mips/x-iris
2591                 tmake_file=mips/t-cross64
2592                 # See comment in mips/iris[56].h files.
2593                 use_collect2=yes
2594 #               if test x$enable_threads = xyes; then
2595 #                       thread_file='irix'
2596 #               fi
2597                 ;;
2598         mips-sni-sysv4)
2599                 if test x$gas = xyes
2600                 then
2601                         if test x$stabs = xyes
2602                         then
2603                                 tm_file=mips/iris5gdb.h
2604                         else
2605                                 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2606                         fi
2607                 else
2608                         tm_file=mips/sni-svr4.h
2609                 fi
2610                 xm_defines=USG
2611                 xmake_file=mips/x-sni-svr4
2612                 tmake_file=mips/t-mips-gas
2613                 if test x$gnu_ld != xyes
2614                 then
2615                         use_collect2=yes
2616                 fi
2617                 ;;
2618         mips-sgi-irix5*)                # SGI System V.4., IRIX 5
2619                 if test x$gas = xyes
2620                 then
2621                         tm_file="mips/iris5.h mips/iris5gas.h"
2622                         if test x$stabs = xyes
2623                         then
2624                                 tm_file="${tm_file} dbx.h"
2625                         fi
2626                 else
2627                         tm_file=mips/iris5.h
2628                 fi
2629                 xm_defines=USG
2630                 xm_file="mips/xm-iris5.h"
2631                 xmake_file=mips/x-iris
2632                 # mips-tfile doesn't work yet
2633                 tmake_file=mips/t-mips-gas
2634                 # See comment in mips/iris5.h file.
2635                 use_collect2=yes
2636 #               if test x$enable_threads = xyes; then
2637 #                       thread_file='irix'
2638 #               fi
2639                 ;;
2640         mips-sgi-irix4loser*)           # Mostly like a MIPS.
2641                 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2642                 if test x$stabs = xyes; then
2643                         tm_file="${tm_file} dbx.h"
2644                 fi
2645                 xm_defines=USG
2646                 xmake_file=mips/x-iris
2647                 if test x$gas = xyes
2648                 then
2649                         tmake_file=mips/t-mips-gas
2650                 else
2651                         extra_passes="mips-tfile mips-tdump"
2652                 fi
2653                 if test x$gnu_ld != xyes
2654                 then
2655                         use_collect2=yes
2656                 fi
2657 #               if test x$enable_threads = xyes; then
2658 #                       thread_file='irix'
2659 #               fi
2660                 ;;
2661         mips-sgi-irix4*)                # Mostly like a MIPS.
2662                 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2663                 if test x$stabs = xyes; then
2664                         tm_file="${tm_file} dbx.h"
2665                 fi
2666                 xm_defines=USG
2667                 xmake_file=mips/x-iris
2668                 if test x$gas = xyes
2669                 then
2670                         tmake_file=mips/t-mips-gas
2671                 else
2672                         extra_passes="mips-tfile mips-tdump"
2673                 fi
2674                 if test x$gnu_ld != xyes
2675                 then
2676                         use_collect2=yes
2677                 fi
2678 #               if test x$enable_threads = xyes; then
2679 #                       thread_file='irix'
2680 #               fi
2681                 ;;
2682         mips-sgi-*)                     # Mostly like a MIPS.
2683                 tm_file="mips/iris3.h ${tm_file}"
2684                 if test x$stabs = xyes; then
2685                         tm_file="${tm_file} dbx.h"
2686                 fi
2687                 xm_defines=USG
2688                 xmake_file=mips/x-iris3
2689                 if test x$gas = xyes
2690                 then
2691                         tmake_file=mips/t-mips-gas
2692                 else
2693                         extra_passes="mips-tfile mips-tdump"
2694                 fi
2695                 if test x$gnu_ld != xyes
2696                 then
2697                         use_collect2=yes
2698                 fi
2699                 ;;
2700         mips-dec-osfrose*)              # Decstation running OSF/1 reference port with OSF/rose.
2701                 tm_file="mips/osfrose.h ${tm_file}"
2702                 xmake_file=mips/x-osfrose
2703                 tmake_file=mips/t-osfrose
2704                 extra_objs=halfpic.o
2705                 use_collect2=yes
2706                 ;;
2707         mips-dec-osf*)                  # Decstation running OSF/1 as shipped by DIGITAL
2708                 tm_file=mips/dec-osf1.h
2709                 if test x$stabs = xyes; then
2710                         tm_file="${tm_file} dbx.h"
2711                 fi
2712                 xmake_file=mips/x-dec-osf1
2713                 if test x$gas = xyes
2714                 then
2715                         tmake_file=mips/t-mips-gas
2716                 else
2717                         tmake_file=mips/t-ultrix
2718                         extra_passes="mips-tfile mips-tdump"
2719                 fi
2720                 if test x$gnu_ld != xyes
2721                 then
2722                         use_collect2=yes
2723                 fi
2724                 ;;
2725         mips-dec-bsd*)                  # Decstation running 4.4 BSD
2726               tm_file=mips/dec-bsd.h
2727               if test x$gas = xyes
2728               then
2729                         tmake_file=mips/t-mips-gas
2730               else
2731                         tmake_file=mips/t-ultrix
2732                         extra_passes="mips-tfile mips-tdump"
2733               fi
2734               if test x$gnu_ld != xyes
2735               then
2736                         use_collect2=yes
2737               fi
2738               ;;
2739         mipsel-*-netbsd* | mips-dec-netbsd*)    # Decstation running NetBSD
2740                 tm_file=mips/netbsd.h
2741                 # On NetBSD, the headers are already okay, except for math.h.
2742                 tmake_file=t-netbsd
2743                 ;;
2744        mips*-*-linux*)                         # Linux MIPS, either endian.
2745                 xmake_file=x-linux
2746                case $machine in
2747                        mipsel-*)  tm_file="mips/elfl.h mips/linux.h" ;;
2748                        *)         tm_file="mips/elf.h mips/linux.h" ;;
2749                esac
2750                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2751                 gnu_ld=yes
2752                 gas=yes
2753                 if test x$enable_threads = xyes; then
2754                         thread_file='posix'
2755                 fi
2756                 ;;
2757         mips*el-*-openbsd*)     # mips little endian
2758                 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2759                 ;;
2760         mips*-*-openbsd*)               # mips big endian
2761                 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2762                 tm_file="mips/openbsd-be.h ${tm_file}"
2763                 ;;
2764         mips-sony-bsd* | mips-sony-newsos*)     # Sony NEWS 3600 or risc/news.
2765                 tm_file="mips/news4.h ${tm_file}"
2766                 if test x$stabs = xyes; then
2767                         tm_file="${tm_file} dbx.h"
2768                 fi
2769                 if test x$gas = xyes
2770                 then
2771                         tmake_file=mips/t-mips-gas
2772                 else
2773                         extra_passes="mips-tfile mips-tdump"
2774                 fi
2775                 if test x$gnu_ld != xyes
2776                 then
2777                         use_collect2=yes
2778                 fi
2779                 xmake_file=mips/x-sony
2780                 ;;
2781         mips-sony-sysv*)                # Sony NEWS 3800 with NEWSOS5.0.
2782                                         # That is based on svr4.
2783                 # t-svr4 is not right because this system doesn't use ELF.
2784                 tm_file="mips/news5.h ${tm_file}"
2785                 if test x$stabs = xyes; then
2786                         tm_file="${tm_file} dbx.h"
2787                 fi
2788                 xm_defines=USG
2789                 if test x$gas = xyes
2790                 then
2791                         tmake_file=mips/t-mips-gas
2792                 else
2793                         extra_passes="mips-tfile mips-tdump"
2794                 fi
2795                 if test x$gnu_ld != xyes
2796                 then
2797                         use_collect2=yes
2798                 fi
2799                 ;;
2800         mips-tandem-sysv4*)             # Tandem S2 running NonStop UX
2801                 tm_file="mips/svr4-5.h mips/svr4-t.h"
2802                 if test x$stabs = xyes; then
2803                         tm_file="${tm_file} dbx.h"
2804                 fi
2805                 xm_defines=USG
2806                 xmake_file=mips/x-sysv
2807                 if test x$gas = xyes
2808                 then
2809                         tmake_file=mips/t-mips-gas
2810                         extra_parts="crtbegin.o crtend.o"
2811                 else
2812                         tmake_file=mips/t-mips
2813                         extra_passes="mips-tfile mips-tdump"
2814                 fi
2815                 if test x$gnu_ld != xyes
2816                 then
2817                         use_collect2=yes
2818                 fi
2819                 ;;
2820         mips-*-ultrix* | mips-dec-mach3)        # Decstation.
2821                 tm_file="mips/ultrix.h ${tm_file}"
2822                 if test x$stabs = xyes; then
2823                         tm_file="${tm_file} dbx.h"
2824                 fi
2825                 xmake_file=mips/x-ultrix
2826                 if test x$gas = xyes
2827                 then
2828                         tmake_file=mips/t-mips-gas
2829                 else
2830                         tmake_file=mips/t-ultrix
2831                         extra_passes="mips-tfile mips-tdump"
2832                 fi
2833                 if test x$gnu_ld != xyes
2834                 then
2835                         use_collect2=yes
2836                 fi
2837                 ;;
2838 changequote(,)dnl
2839         mips-*-riscos[56789]bsd*)
2840 changequote([,])dnl
2841                 tm_file=mips/bsd-5.h    # MIPS BSD 4.3, RISC-OS 5.0
2842                 if test x$stabs = xyes; then
2843                         tm_file="${tm_file} dbx.h"
2844                 fi
2845                 if test x$gas = xyes
2846                 then
2847                         tmake_file=mips/t-bsd-gas
2848                 else
2849                         tmake_file=mips/t-bsd
2850                         extra_passes="mips-tfile mips-tdump"
2851                 fi
2852                 if test x$gnu_ld != xyes
2853                 then
2854                         use_collect2=yes
2855                 fi
2856                 ;;
2857 changequote(,)dnl
2858         mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2859 changequote([,])dnl
2860                 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2861                 if test x$stabs = xyes; then
2862                         tm_file="${tm_file} dbx.h"
2863                 fi
2864                 if test x$gas = xyes
2865                 then
2866                         tmake_file=mips/t-bsd-gas
2867                 else
2868                         tmake_file=mips/t-bsd
2869                         extra_passes="mips-tfile mips-tdump"
2870                 fi
2871                 if test x$gnu_ld != xyes
2872                 then
2873                         use_collect2=yes
2874                 fi
2875                 ;;
2876 changequote(,)dnl
2877         mips-*-riscos[56789]sysv4*)
2878 changequote([,])dnl
2879                 tm_file=mips/svr4-5.h   # MIPS System V.4., RISC-OS 5.0
2880                 if test x$stabs = xyes; then
2881                         tm_file="${tm_file} dbx.h"
2882                 fi
2883                 xmake_file=mips/x-sysv
2884                 if test x$gas = xyes
2885                 then
2886                         tmake_file=mips/t-svr4-gas
2887                 else
2888                         tmake_file=mips/t-svr4
2889                         extra_passes="mips-tfile mips-tdump"
2890                 fi
2891                 if test x$gnu_ld != xyes
2892                 then
2893                         use_collect2=yes
2894                 fi
2895                 ;;
2896 changequote(,)dnl
2897         mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2898 changequote([,])dnl
2899                 tm_file="mips/svr4-4.h ${tm_file}"
2900                 if test x$stabs = xyes; then
2901                         tm_file="${tm_file} dbx.h"
2902                 fi
2903                 xm_defines=USG
2904                 xmake_file=mips/x-sysv
2905                 if test x$gas = xyes
2906                 then
2907                         tmake_file=mips/t-svr4-gas
2908                 else
2909                         tmake_file=mips/t-svr4
2910                         extra_passes="mips-tfile mips-tdump"
2911                 fi
2912                 if test x$gnu_ld != xyes
2913                 then
2914                         use_collect2=yes
2915                 fi
2916                 ;;
2917 changequote(,)dnl
2918         mips-*-riscos[56789]sysv*)
2919 changequote([,])dnl
2920                 tm_file=mips/svr3-5.h   # MIPS System V.3, RISC-OS 5.0
2921                 if test x$stabs = xyes; then
2922                         tm_file="${tm_file} dbx.h"
2923                 fi
2924                 xm_defines=USG
2925                 xmake_file=mips/x-sysv
2926                 if test x$gas = xyes
2927                 then
2928                         tmake_file=mips/t-svr3-gas
2929                 else
2930                         tmake_file=mips/t-svr3
2931                         extra_passes="mips-tfile mips-tdump"
2932                 fi
2933                 if test x$gnu_ld != xyes
2934                 then
2935                         use_collect2=yes
2936                 fi
2937                 ;;
2938         mips-*-sysv* | mips-*-riscos*sysv*)
2939                 tm_file="mips/svr3-4.h ${tm_file}"
2940                 if test x$stabs = xyes; then
2941                         tm_file="${tm_file} dbx.h"
2942                 fi
2943                 xm_defines=USG
2944                 xmake_file=mips/x-sysv
2945                 if test x$gas = xyes
2946                 then
2947                         tmake_file=mips/t-svr3-gas
2948                 else
2949                         tmake_file=mips/t-svr3
2950                         extra_passes="mips-tfile mips-tdump"
2951                 fi
2952                 if test x$gnu_ld != xyes
2953                 then
2954                         use_collect2=yes
2955                 fi
2956                 ;;
2957 changequote(,)dnl
2958         mips-*-riscos[56789]*)          # Default MIPS RISC-OS 5.0.
2959 changequote([,])dnl
2960                 tm_file=mips/mips-5.h
2961                 if test x$stabs = xyes; then
2962                         tm_file="${tm_file} dbx.h"
2963                 fi
2964                 if test x$gas = xyes
2965                 then
2966                         tmake_file=mips/t-mips-gas
2967                 else
2968                         extra_passes="mips-tfile mips-tdump"
2969                 fi
2970                 if test x$gnu_ld != xyes
2971                 then
2972                         use_collect2=yes
2973                 fi
2974                 ;;
2975         mips-*-gnu*)
2976                 ;;
2977         mipsel-*-ecoff*)
2978                 tm_file=mips/ecoffl.h
2979                 if test x$stabs = xyes; then
2980                         tm_file="${tm_file} dbx.h"
2981                 fi
2982                 tmake_file=mips/t-ecoff
2983                 ;;
2984         mips-*-ecoff*)
2985                 tm_file="gofast.h mips/ecoff.h"
2986                 if test x$stabs = xyes; then
2987                         tm_file="${tm_file} dbx.h"
2988                 fi
2989                 tmake_file=mips/t-ecoff
2990                 ;;
2991         mipsel-*-elf*)
2992                 tm_file="mips/elfl.h"
2993                 tmake_file=mips/t-elf
2994                 ;;
2995         mips-*-elf*)
2996                 tm_file="mips/elf.h"
2997                 tmake_file=mips/t-elf
2998                 ;;
2999         mips64el-*-elf*)
3000                 tm_file="mips/elfl64.h"
3001                 tmake_file=mips/t-elf
3002                 ;;
3003         mips64orionel-*-elf*)
3004                 tm_file="mips/elforion.h mips/elfl64.h"
3005                 tmake_file=mips/t-elf
3006                 ;;
3007         mips64-*-elf*)
3008                 tm_file="mips/elf64.h"
3009                 tmake_file=mips/t-elf
3010                 ;;
3011         mips64orion-*-elf*)
3012                 tm_file="mips/elforion.h mips/elf64.h"
3013                 tmake_file=mips/t-elf
3014                 ;;
3015         mips64orion-*-rtems*)
3016                 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
3017                 tmake_file="mips/t-elf t-rtems"
3018                 ;;
3019         mipstx39el-*-elf*)
3020                 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
3021                 tmake_file=mips/t-r3900
3022                 ;;
3023         mipstx39-*-elf*)
3024                 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
3025                 tmake_file=mips/t-r3900
3026                 ;;
3027         mips-*-*)                               # Default MIPS RISC-OS 4.0.
3028                 if test x$stabs = xyes; then
3029                         tm_file="${tm_file} dbx.h"
3030                 fi
3031                 if test x$gas = xyes
3032                 then
3033                         tmake_file=mips/t-mips-gas
3034                 else
3035                         extra_passes="mips-tfile mips-tdump"
3036                 fi
3037                 if test x$gnu_ld != xyes
3038                 then
3039                         use_collect2=yes
3040                 fi
3041                 ;;
3042         mn10200-*-*)
3043                 float_format=i32
3044                 cpu_type=mn10200
3045                 tm_file="mn10200/mn10200.h"
3046                 if test x$stabs = xyes
3047                 then
3048                         tm_file="${tm_file} dbx.h"
3049                 fi
3050                 use_collect2=no
3051                 ;;
3052         mn10300-*-*)
3053                 cpu_type=mn10300
3054                 tm_file="mn10300/mn10300.h"
3055                 if test x$stabs = xyes
3056                 then
3057                         tm_file="${tm_file} dbx.h"
3058                 fi
3059                 use_collect2=no
3060                 ;;
3061         ns32k-encore-bsd*)
3062                 tm_file=ns32k/encore.h
3063                 use_collect2=yes
3064                 ;;
3065         ns32k-sequent-bsd*)
3066                 tm_file=ns32k/sequent.h
3067                 use_collect2=yes
3068                 ;;
3069         ns32k-tek6100-bsd*)
3070                 tm_file=ns32k/tek6100.h
3071                 use_collect2=yes
3072                 ;;
3073         ns32k-tek6200-bsd*)
3074                 tm_file=ns32k/tek6200.h
3075                 use_collect2=yes
3076                 ;;
3077 # This has not been updated to GCC 2.
3078 #       ns32k-ns-genix*)
3079 #               xm_defines=USG
3080 #               xmake_file=ns32k/x-genix
3081 #               tm_file=ns32k/genix.h
3082 #               use_collect2=yes
3083 #               ;;
3084         ns32k-merlin-*)
3085                 tm_file=ns32k/merlin.h
3086                 use_collect2=yes
3087                 ;;
3088         ns32k-pc532-mach*)
3089                 tm_file=ns32k/pc532-mach.h
3090                 use_collect2=yes
3091                 ;;
3092         ns32k-pc532-minix*)
3093                 tm_file=ns32k/pc532-min.h
3094                 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
3095                 xm_defines=USG
3096                 use_collect2=yes
3097                 ;;
3098         ns32k-*-netbsd*)
3099                 tm_file=ns32k/netbsd.h
3100                 xm_file="ns32k/xm-netbsd.h ${xm_file}"
3101                 # On NetBSD, the headers are already okay, except for math.h.
3102                 tmake_file=t-netbsd
3103                 use_collect2=yes
3104                 ;;
3105         pdp11-*-bsd)
3106                 tm_file="${tm_file} pdp11/2bsd.h"
3107                 ;;
3108         pdp11-*-*)
3109                 ;;
3110         avr-*-*)
3111                 ;;
3112         ns32k-*-openbsd*)
3113                 # Nothing special
3114                 ;;
3115 # This has not been updated to GCC 2.
3116 #       pyramid-*-*)
3117 #               cpu_type=pyr
3118 #               xmake_file=pyr/x-pyr
3119 #               use_collect2=yes
3120 #               ;;
3122         pj*-linux*)
3123                 tm_file="svr4.h pj/linux.h ${tm_file}"
3124                 ;;
3125         pj-*)
3126                 ;;
3127         pjl-*)
3128                 tm_file="svr4.h pj/pjl.h ${tm_file}"
3129                 ;;
3131         romp-*-aos*)
3132                 use_collect2=yes
3133                 ;;
3134         romp-*-mach*)
3135                 xmake_file=romp/x-mach
3136                 use_collect2=yes
3137                 ;;
3138         romp-*-openbsd*)
3139                 # Nothing special
3140                 ;;
3141         powerpc-*-openbsd*)
3142                 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
3143                 ;;
3144         powerpc-*-beos*)
3145                 cpu_type=rs6000
3146                 tm_file=rs6000/beos.h
3147                 xm_file=rs6000/xm-beos.h
3148                 tmake_file=rs6000/t-beos
3149                 xmake_file=rs6000/x-beos
3150                 ;;
3151         powerpc-*-sysv*)
3152                 tm_file=rs6000/sysv4.h
3153                 xm_file="rs6000/xm-sysv4.h"
3154                 xm_defines="USG POSIX"
3155                 extra_headers=ppc-asm.h
3156                 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3157                 xmake_file=rs6000/x-sysv4
3158                 ;;
3159         powerpc-*-eabiaix*)
3160                 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
3161                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3162                 extra_headers=ppc-asm.h
3163                 ;;
3164         powerpc-*-eabisim*)
3165                 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
3166                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3167                 extra_headers=ppc-asm.h
3168                 ;;
3169         powerpc-*-elf*)
3170                 tm_file="rs6000/sysv4.h"
3171                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3172                 extra_headers=ppc-asm.h
3173                 ;;
3174         powerpc-*-eabi*)
3175                 tm_file="rs6000/sysv4.h rs6000/eabi.h"
3176                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3177                 extra_headers=ppc-asm.h
3178                 ;;
3179         powerpc-*-rtems*)
3180                 tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h"
3181                 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
3182                 extra_headers=ppc-asm.h
3183                 ;;
3184         powerpc-*-linux-gnulibc1)
3185                 tm_file="rs6000/sysv4.h rs6000/linux.h"
3186                 xm_file=rs6000/xm-sysv4.h
3187                 out_file=rs6000/rs6000.c
3188                 tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
3189                 xmake_file=x-linux
3190                 extra_headers=ppc-asm.h
3191                 if test x$enable_threads = xyes; then
3192                         thread_file='posix'
3193                 fi
3194                 ;;
3195         powerpc-*-linux-gnu*)
3196                 tm_file="rs6000/sysv4.h rs6000/linux.h"
3197                 xm_file="rs6000/xm-sysv4.h"
3198                 xm_defines="USG ${xm_defines}"
3199                 out_file=rs6000/rs6000.c
3200                 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
3201                 xmake_file=x-linux
3202                 extra_headers=ppc-asm.h
3203                 if test x$enable_threads = xyes; then
3204                         thread_file='posix'
3205                 fi
3206                 ;;
3207         powerpc-wrs-vxworks*)
3208                 cpu_type=rs6000
3209                 xm_file="rs6000/xm-sysv4.h"
3210                 xm_defines="USG POSIX"
3211                 tm_file="rs6000/sysv4.h rs6000/vxppc.h"
3212                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3213                 extra_headers=ppc-asm.h
3214                 thread_file='vxworks'
3215                 ;;
3216         powerpcle-wrs-vxworks*)
3217                 cpu_type=rs6000
3218                 xm_file="rs6000/xm-sysv4.h"
3219                 xm_defines="USG POSIX"
3220                 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
3221                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3222                 extra_headers=ppc-asm.h
3223                 thread_file='vxworks'
3224                 ;;
3225         powerpcle-*-sysv*)
3226                 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3227                 xm_file="rs6000/xm-sysv4.h"
3228                 xm_defines="USG POSIX"
3229                 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3230                 xmake_file=rs6000/x-sysv4
3231                 extra_headers=ppc-asm.h
3232                 ;;
3233         powerpcle-*-elf*)
3234                 tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
3235                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3236                 extra_headers=ppc-asm.h
3237                 ;;
3238         powerpcle-*-eabisim*)
3239                 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
3240                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3241                 extra_headers=ppc-asm.h
3242                 ;;
3243         powerpcle-*-eabi*)
3244                 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
3245                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
3246                 extra_headers=ppc-asm.h
3247                 ;;
3248         powerpcle-*-solaris2*)
3249                 tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
3250                 xm_file="rs6000/xm-sysv4.h"
3251                 xm_defines="USG POSIX"
3252                 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
3253                 xmake_file=rs6000/x-sysv4
3254                 extra_headers=ppc-asm.h
3255                 ;;
3256 changequote(,)dnl
3257         rs6000-ibm-aix3.[01]*)
3258 changequote([,])dnl
3259                 tm_file=rs6000/aix31.h
3260                 xmake_file=rs6000/x-aix31
3261                 float_format=none
3262                 use_collect2=yes
3263                 ;;
3264 changequote(,)dnl
3265         rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
3266 changequote([,])dnl
3267                 tm_file=rs6000/aix3newas.h
3268                 if test x$host != x$target
3269                 then
3270                         tmake_file=rs6000/t-xnewas
3271                 else
3272                         tmake_file=rs6000/t-newas
3273                 fi
3274                 float_format=none
3275                 use_collect2=yes
3276                 ;;
3277 changequote(,)dnl
3278         rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
3279 changequote([,])dnl
3280                 tm_file=rs6000/aix41.h
3281                 if test x$host != x$target
3282                 then
3283                         tmake_file=rs6000/t-xnewas
3284                 else
3285                         tmake_file=rs6000/t-newas
3286                 fi
3287                 if test "$gnu_ld" = yes
3288                 then
3289                         xmake_file=rs6000/x-aix41-gld
3290                 else
3291                         tmake_file="rs6000/t-newas rs6000/t-aix41"
3292                 fi
3293                 xmake_file=rs6000/x-aix41
3294                 float_format=none
3295                 use_collect2=yes
3296                 ;;
3297 changequote(,)dnl
3298         rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
3299 changequote([,])dnl
3300                 tm_file=rs6000/aix43.h
3301                 tmake_file=rs6000/t-aix43
3302                 xmake_file=rs6000/x-aix41
3303                 float_format=none
3304                 use_collect2=yes
3305                 ;;
3306 changequote(,)dnl
3307         rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
3308 changequote([,])dnl
3309                 tm_file=rs6000/aix43.h
3310                 tmake_file=rs6000/t-aix43
3311                 xmake_file=rs6000/x-aix41
3312                 float_format=none
3313                 use_collect2=yes
3314                 ;;
3315         rs6000-ibm-aix*)
3316                 float_format=none
3317                 use_collect2=yes
3318                 ;;
3319         rs6000-bull-bosx)
3320                 float_format=none
3321                 use_collect2=yes
3322                 ;;
3323         rs6000-*-mach*)
3324                 tm_file=rs6000/mach.h
3325                 xm_file="${xm_file} rs6000/xm-mach.h"
3326                 xmake_file=rs6000/x-mach
3327                 use_collect2=yes
3328                 ;;
3329         rs6000-*-lynxos*)
3330                 tm_file=rs6000/lynx.h
3331                 xm_file=rs6000/xm-lynx.h
3332                 tmake_file=rs6000/t-rs6000
3333                 xmake_file=rs6000/x-lynx
3334                 use_collect2=yes
3335                 ;;
3336         sh-*-elf*)
3337                 tm_file=sh/elf.h
3338                 float_format=sh
3339                 ;;
3340         sh-*-rtemself*)
3341                 tmake_file="sh/t-sh t-rtems"
3342                 tm_file=sh/rtemself.h
3343                 float_format=sh
3344                 ;;
3345         sh-*-rtems*)
3346                 tmake_file="sh/t-sh t-rtems"
3347                 tm_file=sh/rtems.h
3348                 float_format=sh
3349                 ;;
3350         sh-*-*)
3351                 float_format=sh
3352                 ;;
3353         sparc-tti-*)
3354                 tm_file=sparc/pbd.h
3355                 xm_file="xm-alloca.h ${xm_file}"
3356                 xm_defines=USG
3357                 ;;
3358         sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
3359                 tm_file=sparc/vxsparc.h
3360                 tmake_file=sparc/t-vxsparc
3361                 use_collect2=yes
3362                 thread_file='vxworks'
3363                 ;;
3364         sparc-*-aout*)
3365                 tmake_file=sparc/t-sparcbare
3366                 tm_file="sparc/aout.h libgloss.h"
3367                 ;;
3368         sparc-*-netbsd*)
3369                 tm_file=sparc/netbsd.h
3370                 tmake_file=t-netbsd
3371                 use_collect2=yes
3372                 ;;
3373         sparc-*-openbsd*)
3374                 # we need collect2 until our bug is fixed...
3375                 use_collect2=yes
3376                 ;;
3377         sparc-*-bsd*)
3378                 tm_file=sparc/bsd.h
3379                 ;;
3380         sparc-*-elf*)
3381                 tm_file=sparc/elf.h
3382                 tmake_file=sparc/t-elf
3383                 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3384                 #float_format=i128
3385                 float_format=i64
3386                 ;;
3387         sparc-*-linux-gnuaout*)         # Sparc's running GNU/Linux, a.out
3388                 xm_file="${xm_file} sparc/xm-linux.h"
3389                 tm_file=sparc/linux-aout.h
3390                 xmake_file=x-linux
3391                 gnu_ld=yes
3392                 ;;
3393         sparc-*-linux-gnulibc1*)        # Sparc's running GNU/Linux, libc5
3394                 xm_file="${xm_file} sparc/xm-linux.h"
3395                 xmake_file=x-linux
3396                 tm_file=sparc/linux.h
3397                 tmake_file="t-linux t-linux-gnulibc1"
3398                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3399                 gnu_ld=yes
3400                 float_format=sparc
3401                 ;;
3402         sparc-*-linux-gnu*)             # Sparc's running GNU/Linux, libc6
3403                 xm_file="${xm_file} sparc/xm-linux.h"
3404                 xmake_file=x-linux
3405                 tm_file=sparc/linux.h
3406                 tmake_file="t-linux"
3407                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3408                 gnu_ld=yes
3409                 if test x$enable_threads = xyes; then
3410                         thread_file='posix'
3411                 fi
3412                 float_format=sparc
3413                 ;;
3414         sparc-*-lynxos*)
3415                 if test x$gas = xyes
3416                 then
3417                         tm_file=sparc/lynx.h
3418                 else
3419                         tm_file=sparc/lynx-ng.h
3420                 fi
3421                 xm_file=sparc/xm-lynx.h
3422                 tmake_file=sparc/t-sunos41
3423                 xmake_file=x-lynx
3424                 ;;
3425         sparc-*-rtemsaout*)
3426                 tmake_file="sparc/t-sparcbare t-rtems"
3427                 tm_file=sparc/rtems.h
3428                 ;;
3429         sparc-*-rtems*|sparc-*-rtemself*)
3430                 tm_file="sparc/rtemself.h"
3431                 tmake_file="sparc/t-elf t-rtems"
3432                 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
3433                 #float_format=i128
3434                 float_format=i64
3435                 ;;
3436         sparcv9-*-solaris2*)
3437                 if test x$gnu_ld = xyes
3438                 then
3439                         tm_file=sparc/sol2-64.h
3440                 else
3441                         tm_file=sparc/sol2-sld-64.h
3442                 fi
3443                 xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
3444                 xm_defines="USG POSIX"
3445                 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
3446                 xmake_file=sparc/x-sysv4
3447                 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
3448                 float_format=none
3449                 if test x${enable_threads} = x ; then
3450                     enable_threads=$have_pthread_h
3451                     if test x${enable_threads} = x ; then
3452                         enable_threads=$have_thread_h
3453                     fi
3454                 fi
3455                 if test x${enable_threads} = xyes ; then
3456                     if test x${have_pthread_h} = xyes ; then
3457                         thread_file='posix'
3458                     else
3459                         thread_file='solaris'
3460                     fi
3461                 fi
3462                 ;;
3463         sparc-hal-solaris2*)
3464                 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3465                 xm_defines="USG POSIX"
3466                 tm_file="sparc/sol2.h sparc/hal.h"
3467                 tmake_file="sparc/t-halos sparc/t-sol2"
3468                 xmake_file=sparc/x-sysv4
3469                 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3470                 case $machine in
3471 changequote(,)dnl
3472                 *-*-solaris2.[0-4])
3473 changequote([,])dnl
3474                         float_format=i128
3475                 ;;
3476                 *)
3477                         float_format=none
3478                         ;;
3479                 esac
3480                 thread_file='solaris'
3481                 ;;
3482         sparc-*-solaris2*)
3483                 if test x$gnu_ld = xyes
3484                 then
3485                         tm_file=sparc/sol2.h
3486                 else
3487                         tm_file=sparc/sol2-sld.h
3488                 fi
3489                 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3490                 xm_defines="USG POSIX"
3491                 tmake_file=sparc/t-sol2
3492                 xmake_file=sparc/x-sysv4
3493                 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3494                 case $machine in
3495 changequote(,)dnl
3496                 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3497 changequote([,])dnl
3498                 *-*-solaris2*)
3499                         if test x$gnu_ld = xyes
3500                         then
3501                                 tm_file=sparc/sol2-64.h
3502                         else
3503                                 tm_file=sparc/sol2-sld-64.h
3504                         fi
3505                         tmake_file="$tmake_file sparc/t-sol2-64"
3506                         ;;
3507                 esac
3508                 case $machine in
3509 changequote(,)dnl
3510                 *-*-solaris2.[0-4])
3511 changequote([,])dnl
3512                         float_format=i128
3513                         ;;
3514                 *)
3515                         float_format=none
3516                         ;;
3517                 esac
3518                 if test x${enable_threads} = x; then
3519                     enable_threads=$have_pthread_h
3520                     if test x${enable_threads} = x; then
3521                         enable_threads=$have_thread_h
3522                     fi
3523                 fi
3524                 if test x${enable_threads} = xyes; then
3525                     if test x${have_pthread_h} = xyes; then
3526                         thread_file='posix'
3527                     else
3528                         thread_file='solaris'
3529                     fi
3530                 fi
3531                 ;;
3532         sparc-*-sunos4.0*)
3533                 tm_file=sparc/sunos4.h
3534                 tmake_file=sparc/t-sunos40
3535                 use_collect2=yes
3536                 ;;
3537         sparc-*-sunos4*)
3538                 tm_file=sparc/sunos4.h
3539                 tmake_file=sparc/t-sunos41
3540                 use_collect2=yes
3541                 if test x$gas = xyes; then
3542                         tm_file="${tm_file} sparc/sun4gas.h"
3543                 fi
3544                 ;;
3545         sparc-*-sunos3*)
3546                 tm_file=sparc/sun4o3.h
3547                 use_collect2=yes
3548                 ;;
3549         sparc-*-sysv4*)
3550                 tm_file=sparc/sysv4.h
3551                 xm_file="sparc/xm-sysv4.h"
3552                 xm_defines="USG POSIX"
3553                 tmake_file=t-svr4
3554                 xmake_file=sparc/x-sysv4
3555                 extra_parts="crtbegin.o crtend.o"
3556                 ;;
3557         sparc-*-vxsim*)
3558                 xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
3559                 xm_defines="USG POSIX"
3560                 tm_file=sparc/vxsim.h
3561                 tmake_file=sparc/t-vxsparc
3562                 xmake_file=sparc/x-sysv4
3563                 ;;
3564         sparclet-*-aout*)
3565                 tm_file="sparc/splet.h libgloss.h"
3566                 tmake_file=sparc/t-splet
3567                 ;;
3568         sparclite-*-coff*)
3569                 tm_file="sparc/litecoff.h libgloss.h"
3570                 tmake_file=sparc/t-sparclite
3571                 ;;
3572         sparclite-*-aout*)
3573                 tm_file="sparc/lite.h aoutos.h libgloss.h"
3574                 tmake_file=sparc/t-sparclite
3575                 ;;
3576         sparclite-*-elf*)
3577                 tm_file="sparc/liteelf.h"
3578                 tmake_file=sparc/t-sparclite
3579                 extra_parts="crtbegin.o crtend.o"
3580                 ;;
3581         sparc86x-*-aout*)
3582                 tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
3583                 tmake_file=sparc/t-sp86x
3584                 ;;
3585         sparc86x-*-elf*)        
3586                 tm_file="sparc/sp86x-elf.h"
3587                 tmake_file=sparc/t-sp86x
3588                 extra_parts="crtbegin.o crtend.o"
3589                 ;;
3590         sparc64-*-aout*)
3591                 tmake_file=sparc/t-sp64
3592                 tm_file=sparc/sp64-aout.h
3593                 ;;
3594         sparc64-*-elf*)
3595                 tmake_file=sparc/t-sp64
3596                 tm_file=sparc/sp64-elf.h
3597                 extra_parts="crtbegin.o crtend.o"
3598                 ;;
3599         sparc64-*-linux*)               # 64-bit Sparc's running GNU/Linux
3600                 tmake_file="t-linux sparc/t-linux64"
3601                 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3602                 tm_file=sparc/linux64.h
3603                 xmake_file=x-linux
3604                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3605                 gnu_ld=yes
3606                 if test x$enable_threads = xyes; then
3607                         thread_file='posix'
3608                 fi
3609                 float_format=sparc
3610                 ;;
3611 # This hasn't been upgraded to GCC 2.
3612 #       tahoe-harris-*)                 # Harris tahoe, using COFF.
3613 #               tm_file=tahoe/harris.h
3614 #               ;;
3615 #       tahoe-*-bsd*)                   # tahoe running BSD
3616 #               ;;
3618         thumb*-*-*)
3619                 AC_MSG_ERROR([
3620 *** The Thumb targets have been depreciated.  The equivalent
3621 *** ARM based toolchain can now generated Thumb instructions
3622 *** when the -mthumb switch is given to the compiler.])
3623                 ;;
3624 # This hasn't been upgraded to GCC 2.
3625 #       tron-*-*)
3626 #               cpu_type=gmicro
3627 #               use_collect2=yes
3628 #               ;;
3629         v850-*-rtems*)
3630                 cpu_type=v850
3631                 tm_file="v850/rtems.h"
3632                 xm_file="v850/xm-v850.h"
3633                 tmake_file="v850/t-v850 t-rtems"
3634                 if test x$stabs = xyes
3635                 then
3636                         tm_file="${tm_file} dbx.h"
3637                 fi
3638                 use_collect2=no
3639                 ;;
3640         v850-*-*)
3641                 target_cpu_default="TARGET_CPU_generic"
3642                 cpu_type=v850
3643                 tm_file="v850/v850.h"
3644                 xm_file="v850/xm-v850.h"
3645                 tmake_file=v850/t-v850
3646                 if test x$stabs = xyes
3647                 then
3648                         tm_file="${tm_file} dbx.h"
3649                 fi
3650                 use_collect2=no
3651                 ;;
3652         vax-*-bsd*)                     # vaxen running BSD
3653                 use_collect2=yes
3654                 float_format=vax
3655                 ;;
3656         vax-*-sysv*)                    # vaxen running system V
3657                 tm_file="${tm_file} vax/vaxv.h"
3658                 xm_defines=USG
3659                 float_format=vax
3660                 ;;
3661         vax-*-netbsd*)
3662                 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3663                 tmake_file=t-netbsd
3664                 float_format=vax
3665                 use_collect2=yes
3666                 ;;
3667         vax-*-openbsd*)
3668                 tmake_file="${tmake_file} vax/t-openbsd"
3669                 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
3670                 xm_file="xm-openbsd.h vax/xm-vax.h"
3671                 float_format=vax
3672                 use_collect2=yes
3673                 ;;
3674         vax-*-ultrix*)                  # vaxen running ultrix
3675                 tm_file="${tm_file} vax/ultrix.h"
3676                 use_collect2=yes
3677                 float_format=vax
3678                 ;;
3679         vax-*-vms*)                     # vaxen running VMS
3680                 xm_file=vax/xm-vms.h
3681                 tm_file=vax/vms.h
3682                 float_format=vax
3683                 ;;
3684         vax-*-*)                        # vax default entry
3685                 float_format=vax
3686                 ;;
3687         we32k-att-sysv*)
3688                 xm_file="${xm_file} xm-svr3"
3689                 use_collect2=yes
3690                 ;;
3691         *)
3692                 echo "Configuration $machine not supported" 1>&2
3693                 exit 1
3694                 ;;
3695         esac
3697         case $machine in
3698         *-*-linux-gnu*)
3699                 ;; # Existing GNU/Linux systems do not use the GNU setup.
3700         *-*-gnu*)
3701                 # On the GNU system, the setup is just about the same on
3702                 # each different CPU.  The specific machines that GNU
3703                 # supports are matched above and just set $cpu_type.
3704                 xm_file="xm-gnu.h ${xm_file}"
3705                 tm_file=${cpu_type}/gnu.h
3706                 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
3707                 # GNU always uses ELF.
3708                 elf=yes
3709                 # GNU tools are the only tools.
3710                 gnu_ld=yes
3711                 gas=yes
3712                 xmake_file=x-linux      # These details are the same as Linux.
3713                 tmake_file=t-gnu        # These are not.
3714                 ;;
3715         *-*-sysv4*)
3716                 xmake_try_sysv=x-sysv
3717                 install_headers_dir=install-headers-cpio
3718                 ;;
3719         *-*-sysv*)
3720                 install_headers_dir=install-headers-cpio
3721                 ;;
3722         esac
3724         # Distinguish i[34567]86
3725         # Also, do not run mips-tfile on MIPS if using gas.
3726         # Process --with-cpu= for PowerPC/rs6000
3727         target_cpu_default2=
3728         case $machine in
3729         i486-*-*)
3730                 target_cpu_default2=1
3731                 ;;
3732         i586-*-*)
3733                 case $target_alias in
3734                         k6-*)
3735                                 target_cpu_default2=4
3736                                 ;;
3737                         *)
3738                                 target_cpu_default2=2
3739                                 ;;
3740                 esac
3741                 ;;
3742         i686-*-* | i786-*-*)
3743                 target_cpu_default2=3
3744                 ;;
3745         alpha*-*-*)
3746                 case $machine in
3747 changequote(,)dnl
3748                         alphaev6[78]*)
3749 changequote([,])dnl
3750                                 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3751                                 ;;
3752                         alphaev6*)
3753                                 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3754                                 ;;
3755                         alphapca56*)
3756                                 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3757                                 ;;
3758                         alphaev56*)
3759                                 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3760                                 ;;
3761                         alphaev5*)
3762                                 target_cpu_default2="MASK_CPU_EV5"
3763                                 ;;
3764                 esac
3765                                 
3766                 if test x$gas = xyes
3767                 then
3768                         if test "$target_cpu_default2" = ""
3769                         then
3770                                 target_cpu_default2="MASK_GAS"
3771                         else
3772                                 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3773                         fi
3774                 fi
3775                 ;;
3776         arm*-*-*)
3777                 case "x$with_cpu" in
3778                         x)
3779                                 # The most generic
3780                                 target_cpu_default2="TARGET_CPU_generic"
3781                                 ;;
3783                         # Distinguish cores, and major variants
3784                         # arm7m doesn't exist, but D & I don't affect code
3785 changequote(,)dnl
3786                         xarm[23678] | xarm250 | xarm[67][01]0 \
3787                         | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
3788                         | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3789                         | xstrongarm | xstrongarm110 | xstrongarm1100)
3790 changequote([,])dnl
3791                                 target_cpu_default2="TARGET_CPU_$with_cpu"
3792                                 ;;
3794                         xyes | xno)
3795                                 echo "--with-cpu must be passed a value" 1>&2
3796                                 exit 1
3797                                 ;;
3799                         *)
3800                                 if test x$pass2done = xyes
3801                                 then
3802                                         echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3803                                         exit 1
3804                                 fi
3805                                 ;;
3806                 esac
3807                 ;;
3809         mips*-*-ecoff* | mips*-*-elf*)
3810                 if test x$gas = xyes
3811                 then
3812                         if test x$gnu_ld = xyes
3813                         then
3814                                 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3815                         else
3816                                 target_cpu_default2="MASK_GAS"
3817                         fi
3818                 fi
3819                 ;;
3820         mips*-*-*)
3821                 if test x$gas = xyes
3822                 then
3823                         target_cpu_default2="MASK_GAS"
3824                 fi
3825                 ;;
3826         powerpc*-*-* | rs6000-*-*)
3827                 case "x$with_cpu" in
3828                         x)
3829                                 ;;
3831                         xcommon | xpower | xpower2 | xpowerpc | xrios \
3832                           | xrios1 | xrios2 | xrsc | xrsc1 \
3833                           | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3834                           | xec603e | x740 | x750 | x401 \
3835                           | x403 | x505 | x801 | x821 | x823 | x860)
3836                                 target_cpu_default2="\"$with_cpu\""
3837                                 ;;
3839                         xyes | xno)
3840                                 echo "--with-cpu must be passed a value" 1>&2
3841                                 exit 1
3842                                 ;;
3844                         *)
3845                                 if test x$pass2done = xyes
3846                                 then
3847                                         echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3848                                         exit 1
3849                                 fi
3850                                 ;;
3851                 esac
3852                 ;;
3853         sparc*-*-*)
3854                 case ".$with_cpu" in
3855                         .)
3856                                 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3857                                 ;;
3858                         .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3859                                 target_cpu_default2="TARGET_CPU_$with_cpu"
3860                                 ;;
3861                         *)
3862                                 if test x$pass2done = xyes
3863                                 then
3864                                         echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3865                                         exit 1
3866                                 fi
3867                                 ;;
3868                 esac
3869                 ;;
3870         esac
3872         if test "$target_cpu_default2" != ""
3873         then
3874                 if test "$target_cpu_default" != ""
3875                 then
3876                         target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3877                 else
3878                         target_cpu_default=$target_cpu_default2
3879                 fi
3880         fi
3882         # No need for collect2 if we have the GNU linker.
3883         # Actually, there is now; GNU ld doesn't handle the EH info or
3884         # collecting for shared libraries.
3885         #case x$gnu_ld in
3886         #xyes)
3887         #       use_collect2=
3888         #       ;;
3889         #esac
3891 # Save data on machine being used to compile GCC in build_xm_file.
3892 # Save data on host machine in vars host_xm_file and host_xmake_file.
3893         if test x$pass1done = x
3894         then
3895                 if test x"$xm_file" = x
3896                 then build_xm_file=$cpu_type/xm-$cpu_type.h
3897                 else build_xm_file=$xm_file
3898                 fi
3899                 build_xm_defines=$xm_defines
3900                 build_install_headers_dir=$install_headers_dir
3901                 build_exeext=$exeext
3902                 pass1done=yes
3903         else
3904                 if test x$pass2done = x
3905                 then
3906                         if test x"$xm_file" = x
3907                         then host_xm_file=$cpu_type/xm-$cpu_type.h
3908                         else host_xm_file=$xm_file
3909                         fi
3910                         host_xm_defines=$xm_defines
3911                         if test x"$xmake_file" = x
3912                         then xmake_file=$cpu_type/x-$cpu_type
3913                         fi
3914                         host_xmake_file="$xmake_file"
3915                         host_truncate_target=$truncate_target
3916                         host_extra_gcc_objs=$extra_gcc_objs
3917                         host_extra_objs=$extra_host_objs
3918                         host_exeext=$exeext
3919                         pass2done=yes
3920                 fi
3921         fi
3922 done
3924 extra_objs="${host_extra_objs} ${extra_objs}"
3926 # Default the target-machine variables that were not explicitly set.
3927 if test x"$tm_file" = x
3928 then tm_file=$cpu_type/$cpu_type.h; fi
3930 if test x$extra_headers = x
3931 then extra_headers=; fi
3933 if test x"$xm_file" = x
3934 then xm_file=$cpu_type/xm-$cpu_type.h; fi
3936 if test x$md_file = x
3937 then md_file=$cpu_type/$cpu_type.md; fi
3939 if test x$out_file = x
3940 then out_file=$cpu_type/$cpu_type.c; fi
3942 if test x"$tmake_file" = x
3943 then tmake_file=$cpu_type/t-$cpu_type
3946 if test x"$dwarf2" = xyes
3947 then tm_file="$tm_file tm-dwarf2.h"
3950 if test x$float_format = x
3951 then float_format=i64
3954 if test $float_format = none
3955 then float_h_file=Makefile.in
3956 else float_h_file=float-$float_format.h
3959 # Handle cpp installation.
3960 if test x$enable_cpp != xno
3961 then
3962   tmake_file="$tmake_file t-install-cpp"
3965 # Say what files are being used for the output code and MD file.
3966 echo "Using \`$srcdir/config/$out_file' to output insns."
3967 echo "Using \`$srcdir/config/$md_file' as machine description file."
3969 count=a
3970 for f in $tm_file; do
3971         count=${count}x
3972 done
3973 if test $count = ax; then
3974         echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
3975 else
3976         echo "Using the following target machine macro files:"
3977         for f in $tm_file; do
3978                 echo "  $srcdir/config/$f"
3979         done
3982 count=a
3983 for f in $host_xm_file; do
3984         count=${count}x
3985 done
3986 if test $count = ax; then
3987         echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
3988 else
3989         echo "Using the following host machine macro files:"
3990         for f in $host_xm_file; do
3991                 echo "  $srcdir/config/$f"
3992         done
3995 if test "$host_xm_file" != "$build_xm_file"; then
3996         count=a
3997         for f in $build_xm_file; do
3998                 count=${count}x
3999         done
4000         if test $count = ax; then
4001                 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
4002         else
4003                 echo "Using the following build machine macro files:"
4004                 for f in $build_xm_file; do
4005                         echo "  $srcdir/config/$f"
4006                 done
4007         fi
4010 if test x$thread_file = x; then
4011         if test x$target_thread_file != x; then
4012                 thread_file=$target_thread_file
4013         else
4014                 thread_file='single'
4015         fi
4018 # Set up the header files.
4019 # $links is the list of header files to create.
4020 # $vars is the list of shell variables with file names to include.
4021 # auto-host.h is the file containing items generated by autoconf and is
4022 # the first file included by config.h.
4023 null_defines=
4024 host_xm_file="auto-host.h gansidecl.h ${host_xm_file} hwint.h"
4026 # If host=build, it is correct to have hconfig include auto-host.h
4027 # as well.  If host!=build, we are in error and need to do more 
4028 # work to find out the build config parameters.
4029 if test x$host = x$build
4030 then
4031         build_xm_file="auto-host.h gansidecl.h ${build_xm_file} hwint.h"
4032 else
4033         # We create a subdir, then run autoconf in the subdir.
4034         # To prevent recursion we set host and build for the new
4035         # invocation of configure to the build for this invocation
4036         # of configure. 
4037         tempdir=build.$$
4038         rm -rf $tempdir
4039         mkdir $tempdir
4040         cd $tempdir
4041         case ${srcdir} in
4042         /*) realsrcdir=${srcdir};;
4043         *) realsrcdir=../${srcdir};;
4044         esac
4045         CC=${CC_FOR_BUILD} ${realsrcdir}/configure \
4046                 --target=$target --host=$build --build=$build
4048         # We just finished tests for the build machine, so rename
4049         # the file auto-build.h in the gcc directory.
4050         mv auto-host.h ../auto-build.h
4051         cd ..
4052         rm -rf $tempdir
4053         build_xm_file="auto-build.h gansidecl.h ${build_xm_file} hwint.h"
4056 xm_file="gansidecl.h ${xm_file}"
4057 tm_file="gansidecl.h ${tm_file}"
4059 vars="host_xm_file tm_file tm_p_file xm_file build_xm_file"
4060 links="config.h tm.h tm_p.h tconfig.h hconfig.h"
4061 defines="host_xm_defines null_defines null_defines xm_defines build_xm_defines"
4063 rm -f config.bak
4064 if test -f config.status; then mv -f config.status config.bak; fi
4066 # Make the links.
4067 while test -n "$vars"
4069         set $vars; var=$1; shift; vars=$*
4070         set $links; link=$1; shift; links=$*
4071         set $defines; define=$1; shift; defines=$*
4073         rm -f $link
4074         # Make sure the file is created, even if it is empty.
4075         echo >$link
4077         # Define TARGET_CPU_DEFAULT if the system wants one.
4078         # This substitutes for lots of *.h files.
4079         if test "$target_cpu_default" != "" -a $link = tm.h
4080         then
4081                 echo "#define TARGET_CPU_DEFAULT ($target_cpu_default)" >>$link
4082         fi
4084         for file in `eval echo '$'$var`; do
4085                 case $file in
4086                 auto-host.h | auto-build.h )
4087                         ;;
4088                 *)
4089                         echo '#ifdef IN_GCC' >>$link
4090                         ;;
4091                 esac
4092                 echo "#include \"$file\"" >>$link
4093                 case $file in
4094                 auto-host.h | auto-build.h )
4095                         ;;
4096                 *)
4097                         echo '#endif' >>$link
4098                         ;;
4099                 esac
4100         done
4102         for def in `eval echo '$'$define`; do
4103                 echo "#ifndef $def" >>$link
4104                 echo "#define $def" >>$link
4105                 echo "#endif" >>$link
4106         done
4107 done
4109 # Truncate the target if necessary
4110 if test x$host_truncate_target != x; then
4111         target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4114 # Get the version trigger filename from the toplevel
4115 if test "${with_gcc_version_trigger+set}" = set; then
4116         gcc_version_trigger=$with_gcc_version_trigger
4117 else
4118         gcc_version_trigger=${srcdir}/version.c
4120 changequote(,)dnl
4121 gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
4122 changequote([,])dnl
4124 # Internationalization
4125 PACKAGE=gcc
4126 VERSION="$gcc_version"
4127 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE",
4128         [Define to the name of the distribution.])
4129 AC_DEFINE_UNQUOTED(VERSION, "$VERSION",
4130         [Define to the version of the distribution.])
4131 AC_SUBST(PACKAGE)
4132 AC_SUBST(VERSION)
4134 ALL_LINGUAS="en_GB"
4136 # Enable NLS support by default
4137 AC_ARG_ENABLE(nls,
4138   [  --enable-nls            use Native Language Support (default)],
4139   , enable_nls=yes)
4141 # if cross compiling, disable NLS support.
4142 # It's not worth the trouble, at least for now.
4144 if test "${build}" != "${host}" && test "x$enable_nls" = "xyes"; then
4145   AC_MSG_WARN(Disabling NLS support for canadian cross compiler.)
4146   enable_nls=no
4149 AM_GNU_GETTEXT
4150 XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
4152 # Windows32 Registry support for specifying GCC installation paths.
4153 AC_ARG_ENABLE(win32-registry,
4154 [  --disable-win32-registry
4155                           Disable lookup of installation paths in the
4156                          Registry on Windows hosts.
4157   --enable-win32-registry Enable registry lookup (default).
4158   --enable-win32-registry=KEY
4159                           Use KEY instead of GCC version as the last portion
4160                          of the registry key.],,)
4162 AC_MSG_CHECKING(whether windows registry support is requested)
4163 if test x$enable_win32_registry != xno; then
4164   AC_DEFINE(ENABLE_WIN32_REGISTRY, 1,
4165 [Define to 1 if installation paths should be looked up in Windows32
4166    Registry. Ignored on non windows32 hosts.])
4167   AC_MSG_RESULT(yes)
4168 else
4169   AC_MSG_RESULT(no)
4172 # Check if user specified a different registry key.
4173 case x${enable_win32_registry} in
4174 x | xyes)
4175   # default.
4176   gcc_cv_win32_registry_key="$VERSION"
4177   ;;
4178 xno)
4179   # no registry lookup.
4180   gcc_cv_win32_registry_key=''
4181   ;;
4183   # user-specified key.
4184   gcc_cv_win32_registry_key="$enable_win32_registry"
4185   ;;
4186 esac
4188 if test x$enable_win32_registry != xno; then
4189   AC_MSG_CHECKING(registry key on windows hosts)
4190   AC_DEFINE_UNQUOTED(WIN32_REGISTRY_KEY, "$gcc_cv_win32_registry_key",
4191         [Define to be the last portion of registry key on windows hosts.])
4192   AC_MSG_RESULT($gcc_cv_win32_registry_key)
4195 # Get an absolute path to the GCC top-level source directory
4196 holddir=`pwd`
4197 cd $srcdir
4198 topdir=`pwd`
4199 cd $holddir
4201 # Conditionalize the makefile for this host machine.
4202 # Make-host contains the concatenation of all host makefile fragments
4203 # [there can be more than one].  This file is built by configure.frag.
4204 host_overrides=Make-host
4205 dep_host_xmake_file=
4206 for f in .. ${host_xmake_file}
4208         if test -f ${srcdir}/config/$f
4209         then
4210                 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
4211         fi
4212 done
4214 # Conditionalize the makefile for this target machine.
4215 # Make-target contains the concatenation of all host makefile fragments
4216 # [there can be more than one].  This file is built by configure.frag.
4217 target_overrides=Make-target
4218 dep_tmake_file=
4219 for f in .. ${tmake_file}
4221         if test -f ${srcdir}/config/$f
4222         then
4223                 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
4224         fi
4225 done
4227 # If the host doesn't support symlinks, modify CC in
4228 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
4229 # Otherwise, we can use "CC=$(CC)".
4230 rm -f symtest.tem
4231 if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
4232 then
4233         cc_set_by_configure="\$(CC)"
4234         quoted_cc_set_by_configure="\$(CC)"
4235         stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
4236 else
4237         rm -f symtest.tem
4238         if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
4239         then
4240                 symbolic_link="cp -p"
4241         else
4242                 symbolic_link="cp"
4243         fi
4244         cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
4245         quoted_cc_set_by_configure="\\\`case '\\\$(CC)' in stage*) echo '\\\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\\\$(CC)';; esac\\\`"
4246         stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
4248 rm -f symtest.tem
4250 out_object_file=`basename $out_file .c`.o
4252 tm_file_list=
4253 for f in $tm_file; do
4254   case $f in
4255     gansidecl.h )
4256        tm_file_list="${tm_file_list} $f" ;;
4257     *) tm_file_list="${tm_file_list} \$(srcdir)/config/$f" ;;
4258   esac
4259 done
4261 host_xm_file_list=
4262 for f in $host_xm_file; do
4263   case $f in
4264     auto-host.h | gansidecl.h | hwint.h )
4265        host_xm_file_list="${host_xm_file_list} $f" ;;
4266     *) host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f" ;;
4267   esac
4268 done
4270 build_xm_file_list=
4271 for f in $build_xm_file; do
4272   case $f in
4273     auto-build.h | auto-host.h | gansidecl.h | hwint.h )
4274        build_xm_file_list="${build_xm_file_list} $f" ;;
4275     *) build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f" ;;
4276   esac
4277 done
4279 # Define macro CROSS_COMPILE in compilation
4280 # if this is a cross-compiler.
4281 # Also use all.cross instead of all.internal
4282 # and add cross-make to Makefile.
4283 cross_overrides="/dev/null"
4284 if test x$host != x$target
4285 then
4286         cross_defines="CROSS=-DCROSS_COMPILE"
4287         cross_overrides="${topdir}/cross-make"
4290 # If this is a cross-compiler that does not
4291 # have its own set of headers then define
4292 # inhibit_libc
4294 # If this is using newlib, then define inhibit_libc in
4295 # LIBGCC2_CFLAGS.  This will cause __eprintf to be left out of
4296 # libgcc.a, but that's OK because newlib should have its own version of
4297 # assert.h.
4298 inhibit_libc=
4299 if [test x$host != x$target] && [test x$with_headers = x]; then
4300        inhibit_libc=-Dinhibit_libc
4301 else
4302        if [test x$with_newlib = xyes]; then
4303                inhibit_libc=-Dinhibit_libc
4304        fi
4306 AC_SUBST(inhibit_libc)
4308 # When building gcc with a cross-compiler, we need to fix a few things.
4309 # This must come after cross-make as we want all.build to override
4310 # all.cross.
4311 build_overrides="/dev/null"
4312 if test x$build != x$host
4313 then
4314         build_overrides="${topdir}/build-make"
4317 # Expand extra_headers to include complete path.
4318 # This substitutes for lots of t-* files.
4319 extra_headers_list=
4320 if test "x$extra_headers" = x
4321 then true
4322 else
4323         # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
4324         for file in $extra_headers;
4325         do
4326                 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
4327         done
4330 if test x$use_collect2 = xno; then
4331         use_collect2=
4334 # Add a definition of USE_COLLECT2 if system wants one.
4335 # Also tell toplev.c what to do.
4336 # This substitutes for lots of t-* files.
4337 if test x$use_collect2 = x
4338 then
4339         will_use_collect2=
4340         maybe_use_collect2=
4341 else
4342         will_use_collect2="collect2"
4343         maybe_use_collect2="-DUSE_COLLECT2"
4346 # NEED TO CONVERT
4347 # Set MD_DEPS if the real md file is in md.pre-cpp.
4348 # Set MD_CPP to the cpp to pass the md file through.  Md files use ';'
4349 # for line oriented comments, so we must always use a GNU cpp.  If
4350 # building gcc with a cross compiler, use the cross compiler just
4351 # built.  Otherwise, we can use the cpp just built.
4352 md_file_sub=
4353 if test "x$md_cppflags" = x
4354 then
4355         md_file_sub=$srcdir/config/$md_file
4356 else
4357         md_file=md
4360 # If we have gas in the build tree, make a link to it.
4361 if test -f ../gas/Makefile; then
4362         rm -f as; $symbolic_link ../gas/as-new$host_exeext as$host_exeext 2>/dev/null
4365 # If we have nm in the build tree, make a link to it.
4366 if test -f ../binutils/Makefile; then
4367         rm -f nm; $symbolic_link ../binutils/nm-new$host_exeext nm$host_exeext 2>/dev/null
4370 # If we have ld in the build tree, make a link to it.
4371 if test -f ../ld/Makefile; then
4372 #       if test x$use_collect2 = x; then
4373 #               rm -f ld; $symbolic_link ../ld/ld-new$host_exeext ld$host_exeext 2>/dev/null
4374 #       else
4375                 rm -f collect-ld; $symbolic_link ../ld/ld-new$host_exeext collect-ld$host_exeext 2>/dev/null
4376 #       fi
4379 # Figure out what assembler alignment features are present.
4380 AC_MSG_CHECKING(assembler alignment features)
4381 gcc_cv_as=
4382 gcc_cv_as_alignment_features=
4383 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
4384 if test -x "$DEFAULT_ASSEMBLER"; then
4385         gcc_cv_as="$DEFAULT_ASSEMBLER"
4386 elif test -x "$AS"; then
4387         gcc_cv_as="$AS"
4388 elif test -x as$host_exeext; then
4389         # Build using assembler in the current directory.
4390         gcc_cv_as=./as$host_exeext
4391 elif test -f $gcc_cv_as_gas_srcdir/configure.in -a -f ../gas/Makefile; then
4392         # Single tree build which includes gas.
4393         for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
4394         do
4395 changequote(,)dnl
4396                 gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f`
4397 changequote([,])dnl
4398                 if test x$gcc_cv_gas_version != x; then
4399                         break
4400                 fi
4401         done
4402 changequote(,)dnl
4403         gcc_cv_gas_major_version=`expr "$gcc_cv_gas_version" : "VERSION=\([0-9]*\)"`
4404         gcc_cv_gas_minor_version=`expr "$gcc_cv_gas_version" : "VERSION=[0-9]*\.\([0-9]*\)"`
4405 changequote([,])dnl
4406         if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
4407                 # Gas version 2.6 and later support for .balign and .p2align.
4408                 # bytes to skip when using .p2align.
4409                 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
4410                         gcc_cv_as_alignment_features=".balign and .p2align"
4411                         AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4412                 fi
4413                 # Gas version 2.8 and later support specifying the maximum
4414                 # bytes to skip when using .p2align.
4415                 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
4416                         gcc_cv_as_alignment_features=".p2align including maximum skip"
4417                         AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4418                 fi
4419         fi
4420 elif test x$host = x$target; then
4421         # Native build.
4422         # Search the same directories that the installed compiler will
4423         # search.  Else we may find the wrong assembler and lose.  If we
4424         # do not find a suitable assembler binary, then try the user's
4425         # path.
4426         #
4427         # Also note we have to check MD_EXEC_PREFIX before checking the
4428         # user's path.  Unfortunately, there is no good way to get at the
4429         # value of MD_EXEC_PREFIX here.  So we do a brute force search
4430         # through all the known MD_EXEC_PREFIX values.  Ugh.  This needs
4431         # to be fixed as part of the make/configure rewrite too.
4433         if test "x$exec_prefix" = xNONE; then
4434                 if test "x$prefix" = xNONE; then
4435                         test_prefix=/usr/local
4436                 else
4437                         test_prefix=$prefix
4438                 fi
4439         else
4440                 test_prefix=$exec_prefix
4441         fi
4443         # If the loop below does not find an assembler, then use whatever
4444         # one we can find in the users's path.
4445         # user's path.
4446         as=as$host_exeext
4448         test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \
4449                    $test_prefix/lib/gcc-lib/$target \
4450                    /usr/lib/gcc/$target/$gcc_version \
4451                    /usr/lib/gcc/$target \
4452                    $test_prefix/$target/bin/$target/$gcc_version \
4453                    $test_prefix/$target/bin \
4454                    /usr/libexec \
4455                    /usr/ccs/gcc \
4456                    /usr/ccs/bin \
4457                    /udk/usr/ccs/bin \
4458                    /bsd43/usr/lib/cmplrs/cc \
4459                    /usr/cross64/usr/bin \
4460                    /usr/lib/cmplrs/cc \
4461                    /sysv/usr/lib/cmplrs/cc \
4462                    /svr4/usr/lib/cmplrs/cc \
4463                    /usr/bin"
4465         for dir in $test_dirs; do
4466                 if test -f $dir/as$host_exeext; then
4467                         gcc_cv_as=$dir/as$host_exeext
4468                         break;
4469                 fi
4470         done
4472 if test x$gcc_cv_as != x; then
4473         # Check if we have .balign and .p2align
4474         echo ".balign  4" > conftest.s
4475         echo ".p2align  2" >> conftest.s
4476         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4477                 gcc_cv_as_alignment_features=".balign and .p2align"
4478                 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
4479         fi
4480         rm -f conftest.s conftest.o
4481         # Check if specifying the maximum bytes to skip when
4482         # using .p2align is supported.
4483         echo ".p2align 4,,7" > conftest.s
4484         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4485                 gcc_cv_as_alignment_features=".p2align including maximum skip"
4486                 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
4487         fi
4488         rm -f conftest.s conftest.o
4490 AC_MSG_RESULT($gcc_cv_as_alignment_features)
4492 AC_MSG_CHECKING(assembler subsection support)
4493 gcc_cv_as_subsections=
4494 if test x$gcc_cv_as != x; then
4495         # Check if we have .subsection
4496         echo ".subsection 1" > conftest.s
4497         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4498                 gcc_cv_as_subsections=".subsection"
4499                 if test -x nm$host_exeext; then
4500                         gcc_cv_nm=./nm$host_exeext
4501                 elif test x$host = x$target; then
4502                         # Native build.
4503                         gcc_cv_nm=nm$host_exeext
4504                 fi
4505                 if test x$gcc_cv_nm != x; then
4506                         cat > conftest.s <<EOF
4507 conftest_label1: .word 0
4508 .subsection -1
4509 conftest_label2: .word 0
4510 .previous
4512                         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4513                                 $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1
4514                                 $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2
4515                                 if cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then
4516                                         :
4517                                 else
4518                                         gcc_cv_as_subsections="working .subsection -1"
4519                                         AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING, 1,
4520 [Define if your assembler supports .subsection and .subsection -1 starts
4521    emitting at the beginning of your section.])
4522                                 fi
4523                         fi
4524                 fi
4525         fi
4526         rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4528 AC_MSG_RESULT($gcc_cv_as_subsections)
4530 AC_MSG_CHECKING(assembler weak support)
4531 gcc_cv_as_weak=
4532 if test x$gcc_cv_as != x; then
4533         # Check if we have .weak
4534         echo "  .weak foobar" > conftest.s
4535         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4536                 AC_DEFINE(HAVE_GAS_WEAK, 1,
4537                         [Define if your assembler supports .weak.])
4538                 gcc_cv_as_weak="yes"
4539         fi
4540         rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4542 AC_MSG_RESULT($gcc_cv_as_weak)
4544 AC_MSG_CHECKING(assembler hidden support)
4545 gcc_cv_as_hidden=
4546 if test x$gcc_cv_as != x; then
4547         # Check if we have .hidden
4548         echo "  .hidden foobar" > conftest.s
4549         echo "foobar:" >> conftest.s
4550         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4551                 AC_DEFINE(HAVE_GAS_HIDDEN, 1,
4552                         [Define if your assembler supports .hidden.])
4553                 gcc_cv_as_hidden="yes"
4554         fi
4555         rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
4557 AC_MSG_RESULT($gcc_cv_as_hidden)
4559 case "$target" in 
4560   sparc*-*-*)
4561     AC_CACHE_CHECK([assembler .register pseudo-op support],
4562         gcc_cv_as_register_pseudo_op, [
4563         gcc_cv_as_register_pseudo_op=unknown
4564         if test x$gcc_cv_as != x; then
4565             # Check if we have .register
4566             echo ".register %g2, #scratch" > conftest.s
4567             if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4568                 gcc_cv_as_register_pseudo_op=yes
4569             else
4570                 gcc_cv_as_register_pseudo_op=no
4571             fi
4572             rm -f conftest.s conftest.o
4573         fi
4574     ])
4575     if test "x$gcc_cv_as_register_pseudo_op" = xyes; then
4576         AC_DEFINE(HAVE_AS_REGISTER_PSEUDO_OP, 1,
4577                 [Define if your assembler supports .register.])
4578     fi
4580     AC_CACHE_CHECK([assembler supports -relax],
4581         gcc_cv_as_relax_opt, [
4582         gcc_cv_as_relax_opt=unknown
4583         if test x$gcc_cv_as != x; then
4584             # Check if gas supports -relax
4585             echo ".text" > conftest.s
4586             if $gcc_cv_as -relax -o conftest.o conftest.s > /dev/null 2>&1; then
4587                 gcc_cv_as_relax_opt=yes
4588             else
4589                 gcc_cv_as_relax_opt=no
4590             fi
4591             rm -f conftest.s conftest.o
4592         fi
4593     ])
4594     if test "x$gcc_cv_as_relax_opt" = xyes; then
4595         AC_DEFINE(HAVE_AS_RELAX_OPTION, 1,
4596                 [Define if your assembler supports -relax option.])
4597     fi
4599     case "$tm_file" in
4600     *64*)
4601         AC_CACHE_CHECK([for 64 bit support in assembler ($gcc_cv_as)],
4602             gcc_cv_as_flags64, [
4603                 if test -n "$gcc_cv_as"; then
4604                     echo ".xword foo" > conftest.s
4605                     gcc_cv_as_flags64=no
4606                     for flag in "-xarch=v9" "-64 -Av9"; do
4607                         if $gcc_cv_as $flag -o conftest.o conftest.s \
4608                             > /dev/null 2>&1; then
4609                             gcc_cv_as_flags64=$flag
4610                             break
4611                         fi
4612                     done
4613                     rm -f conftest.s conftest.o
4614                 else
4615                     if test "$gas" = yes; then
4616                         gcc_cv_as_flags64="-64 -Av9"
4617                     else
4618                         gcc_cv_as_flags64="-xarch=v9"
4619                     fi
4620                 fi
4621         ])
4622         if test "x$gcc_cv_as_flags64" = xno; then
4623 changequote(, )
4624             tmake_file=`echo " $tmake_file " | sed -e 's, sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4625             dep_tmake_file=`echo " $dep_tmake_file " | sed -e 's, [^ ]*/config/sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
4626 changequote([, ])
4627         else
4628             AC_DEFINE_UNQUOTED(AS_SPARC64_FLAG, "$gcc_cv_as_flags64",
4629                         [Define if the assembler supports 64bit sparc.])
4630         fi
4631         ;;
4632     *) gcc_cv_as_flags64=${gcc_cv_as_flags64-no}
4633         ;;
4634     esac
4636     if test "x$gcc_cv_as_flags64" != xno; then
4637         AC_CACHE_CHECK([for assembler offsetable %lo() support],
4638             gcc_cv_as_offsetable_lo10, [
4639             gcc_cv_as_offsetable_lo10=unknown
4640             if test "x$gcc_cv_as" != x; then
4641                 # Check if assembler has offsetable %lo()
4642                 echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
4643                 echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
4644                 if $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s \
4645                         > /dev/null 2>&1 &&
4646                    $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s \
4647                         > /dev/null 2>&1; then
4648                     if cmp conftest.o conftest1.o > /dev/null 2>&1; then
4649                         gcc_cv_as_offsetable_lo10=no
4650                     else
4651                         gcc_cv_as_offsetable_lo10=yes
4652                     fi
4653                 else
4654                     gcc_cv_as_offsetable_lo10=no
4655                 fi
4656                 rm -f conftest.s conftest.o conftest1.s conftest1.o
4657             fi
4658         ])
4659         if test "x$gcc_cv_as_offsetable_lo10" = xyes; then
4660             AC_DEFINE(HAVE_AS_OFFSETABLE_LO10, 1,
4661                 [Define if your assembler supports offsetable %lo().])
4662         fi
4663     fi
4664     ;;
4666 changequote(,)dnl
4667   i[34567]86-*-*)
4668 changequote([,])dnl
4669     AC_MSG_CHECKING(assembler instructions)
4670     gcc_cv_as_instructions=
4671     if test x$gcc_cv_as != x; then
4672         set "filds fists" "filds mem; fists mem"
4673         while test $# -gt 0
4674         do
4675                 echo "$2" > conftest.s
4676                 if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
4677                         gcc_cv_as_instructions=${gcc_cv_as_instructions}$1" "
4678                         AC_DEFINE_UNQUOTED(HAVE_GAS_`echo "$1" | tr '[a-z ]' '[A-Z_]'`)
4679                 fi
4680                 shift 2
4681         done
4682         rm -f conftest.s conftest.o
4683     fi
4684     AC_MSG_RESULT($gcc_cv_as_instructions)
4685     ;;
4686 esac
4688 # Figure out what language subdirectories are present.
4689 # Look if the user specified --enable-languages="..."; if not, use
4690 # the environment variable $LANGUAGES if defined. $LANGUAGES might
4691 # go away some day.
4692 if test x"${enable_languages+set}" != xset; then
4693         if test x"${LANGUAGES+set}" = xset; then
4694                 enable_languages="`echo ${LANGUAGES} | tr ' ' ','`"
4695         else
4696                 enable_languages=all
4697         fi
4698 else
4699         if test x"${enable_languages}" = x; then
4700                 AC_MSG_ERROR([--enable-languages needs at least one argument])
4701         fi
4703 subdirs=
4704 for lang in ${srcdir}/*/config-lang.in ..
4706         case $lang in
4707         ..) ;;
4708         # The odd quoting in the next line works around
4709         # an apparent bug in bash 1.12 on linux.
4710 changequote(,)dnl
4711         ${srcdir}/[*]/config-lang.in) ;;
4712         *)
4713           lang_alias=`sed -n -e 's,^language=['"'"'"'"]\(.*\)["'"'"'"'].*$,\1,p' -e 's,^language=\([^   ]*\).*$,\1,p' $lang`
4714           if test "x$lang_alias" = x
4715           then
4716                 echo "$lang doesn't set \$language." 1>&2
4717                 exit 1
4718           fi
4719           if test x"${enable_languages}" = xall; then
4720                 add_this_lang=yes
4721           else
4722                 case "${enable_languages}" in
4723                     ${lang_alias} | "${lang_alias},"* | *",${lang_alias},"* | *",${lang_alias}" )
4724                         add_this_lang=yes
4725                         ;;
4726                     * )
4727                         add_this_lang=no
4728                         ;;
4729                 esac
4730           fi
4731           if test x"${add_this_lang}" = xyes; then
4732                 case $lang in
4733                     ${srcdir}/ada/config-lang.in)
4734                         if test x$gnat = xyes ; then
4735                                 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4736                         fi
4737                         ;;
4738                     *)
4739                         subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
4740                         ;;
4741                 esac
4742           fi
4743           ;;
4744 changequote([,])dnl
4745         esac
4746 done
4748 # Make gthr-default.h if we have a thread file.
4749 gthread_flags=
4750 if test $thread_file != single; then
4751     rm -f gthr-default.h
4752     echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h
4753     gthread_flags=-DHAVE_GTHR_DEFAULT
4755 AC_SUBST(gthread_flags)
4757 # Find out what GC implementation we want, or may, use.
4758 AC_ARG_WITH(gc,
4759 [  --with-gc={simple,page} Choose the garbage collection mechanism to use
4760                            with the compiler.],
4761 [case "$withval" in
4762   simple | page)
4763     GGC=ggc-$withval
4764     ;;
4765   *)
4766     AC_MSG_ERROR([$withval is an invalid option to --with-gc])
4767     ;;
4768 esac],
4769 [if test $ac_cv_func_mmap_anywhere = yes \
4770     || test $ac_cv_func_valloc = yes; then
4771   GGC=ggc-page
4772 else
4773   GGC=ggc-simple
4774 fi])
4775 AC_SUBST(GGC)
4776 echo "Using $GGC for garbage collection."
4778 # Build a new-abi (c++) system
4779 AC_ARG_ENABLE(new-gxx-abi,
4780 [  --enable-new-gxx-abi
4781                           select the new abi for g++. You must select an ABI
4782                           at configuration time, so that the correct runtime
4783                           support is built. You cannot mix ABIs.],
4784 [AC_DEFINE(ENABLE_NEW_GXX_ABI, 1,
4785         [Define if you want to always select the new-abi for g++.])
4786 GXX_ABI_FLAG='-fnew-abi'
4787 echo "Building a new-abi g++ compiler."
4789 AC_SUBST(GXX_ABI_FLAG)
4791 # Build a new-libstdc++ system (ie libstdc++-v3)
4792 AC_MSG_CHECKING([for libstdc++ to install])
4793 AC_ARG_ENABLE(libstdcxx-v3,
4794 [  --enable-libstdcxx-v3 
4795                           enable libstdc++-v3 for building and installation],
4796   [enable_libstdcxx_v3=yes], [enable_libstdcxx_v3=no])
4798 if test x$enable_libstdcxx_v3 = xyes; then
4799   AC_MSG_RESULT(v3)
4800   ac_esn=1
4801 else
4802   AC_MSG_RESULT(v2)
4803   ac_esn=0
4805 AC_DEFINE_UNQUOTED(ENABLE_STD_NAMESPACE, $ac_esn,
4806   [Define to 1 if you want to enable namespaces (-fhonor-std) by default.])
4808 dnl Very limited version of automake's enable-maintainer-mode
4810 AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
4811   dnl maintainer-mode is disabled by default
4812   AC_ARG_ENABLE(maintainer-mode,
4813 [  --enable-maintainer-mode enable make rules and dependencies not useful
4814                           (and sometimes confusing) to the casual installer],
4815       maintainer_mode=$enableval,
4816       maintainer_mode=no)
4818 AC_MSG_RESULT($maintainer_mode)
4820 if test "$maintainer_mode" = "yes"; then
4821   MAINT=''
4822 else
4823   MAINT='#'
4825 AC_SUBST(MAINT)dnl
4827 # Make empty files to contain the specs and options for each language.
4828 # Then add #include lines to for a compiler that has specs and/or options.
4830 lang_specs_files=
4831 lang_options_files=
4832 lang_tree_files=
4833 rm -f specs.h options.h gencheck.h
4834 touch specs.h options.h gencheck.h
4835 for subdir in . $subdirs
4837         if test -f $srcdir/$subdir/lang-specs.h; then
4838                 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
4839                 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
4840         fi
4841         if test -f $srcdir/$subdir/lang-options.h; then
4842                 echo "#include \"$subdir/lang-options.h\"" >>options.h
4843                 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
4844         fi
4845         if test -f $srcdir/$subdir/$subdir-tree.def; then
4846                 echo "#include \"$subdir/$subdir-tree.def\"" >>gencheck.h
4847                 lang_tree_files="$lang_tree_files $srcdir/$subdir/$subdir-tree.def"
4848         fi
4849 done
4851 # These (without "all_") are set in each config-lang.in.
4852 # `language' must be a single word so is spelled singularly.
4853 all_languages=
4854 all_boot_languages=
4855 all_compilers=
4856 all_stagestuff=
4857 all_diff_excludes=
4858 all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile gccbug mklibgcc'
4859 # List of language makefile fragments.
4860 all_lang_makefiles=
4861 all_headers=
4862 all_lib2funcs=
4864 # Add the language fragments.
4865 # Languages are added via two mechanisms.  Some information must be
4866 # recorded in makefile variables, these are defined in config-lang.in.
4867 # We accumulate them and plug them into the main Makefile.
4868 # The other mechanism is a set of hooks for each of the main targets
4869 # like `clean', `install', etc.
4871 language_fragments="Make-lang"
4872 language_hooks="Make-hooks"
4873 oldstyle_subdirs=
4875 for s in .. $subdirs
4877         if test $s != ".."
4878         then
4879                 language=
4880                 boot_language=
4881                 compilers=
4882                 stagestuff=
4883                 diff_excludes=
4884                 headers=
4885                 outputs=
4886                 lib2funcs=
4887                 . ${srcdir}/$s/config-lang.in
4888                 if test "x$language" = x
4889                 then
4890                         echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
4891                         exit 1
4892                 fi
4893                 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in ${srcdir}/$s/Makefile.in"
4894                 all_languages="$all_languages $language"
4895                 if test "x$boot_language" = xyes
4896                 then
4897                         all_boot_languages="$all_boot_languages $language"
4898                 fi
4899                 all_compilers="$all_compilers $compilers"
4900                 all_stagestuff="$all_stagestuff $stagestuff"
4901                 all_diff_excludes="$all_diff_excludes $diff_excludes"
4902                 all_headers="$all_headers $headers"
4903                 all_outputs="$all_outputs $outputs"
4904                 if test x$outputs = x
4905                 then
4906                         oldstyle_subdirs="$oldstyle_subdirs $s"
4907                 fi
4908                 all_lib2funcs="$all_lib2funcs $lib2funcs"
4909         fi
4910 done
4912 # Since we can't use `::' targets, we link each language in
4913 # with a set of hooks, reached indirectly via lang.${target}.
4915 rm -f Make-hooks
4916 touch Make-hooks
4917 target_list="all.build all.cross start.encap rest.encap \
4918         info dvi \
4919         install-normal install-common install-info install-man \
4920         uninstall distdir \
4921         mostlyclean clean distclean extraclean maintainer-clean \
4922         stage1 stage2 stage3 stage4"
4923 for t in $target_list
4925         x=
4926         for lang in .. $all_languages
4927         do
4928                 if test $lang != ".."; then
4929                         x="$x $lang.$t"
4930                 fi
4931         done
4932         echo "lang.$t: $x" >> Make-hooks
4933 done
4935 # If we're not building in srcdir, create .gdbinit.
4937 if test ! -f Makefile.in; then
4938         echo "dir ." > .gdbinit
4939         echo "dir ${srcdir}" >> .gdbinit
4940         if test x$gdb_needs_out_file_path = xyes
4941         then
4942                 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
4943         fi
4944         if test "x$subdirs" != x; then
4945                 for s in $subdirs
4946                 do
4947                         echo "dir ${srcdir}/$s" >> .gdbinit
4948                 done
4949         fi
4950         echo "source ${srcdir}/.gdbinit" >> .gdbinit
4953 # Define variables host_canonical and build_canonical
4954 # because some Cygnus local changes in the Makefile depend on them.
4955 build_canonical=${build}
4956 host_canonical=${host}
4957 target_subdir=
4958 if test "${host}" != "${target}" ; then
4959     target_subdir=${target}/
4961 AC_SUBST(build_canonical)
4962 AC_SUBST(host_canonical)
4963 AC_SUBST(target_subdir)
4964         
4965 # If $(exec_prefix) exists and is not the same as $(prefix), then compute an
4966 # absolute path for gcc_tooldir based on inserting the number of up-directory
4967 # movements required to get from $(exec_prefix) to $(prefix) into the basic
4968 # $(libsubdir)/@(unlibsubdir) based path.
4969 # Don't set gcc_tooldir to tooldir since that's only passed in by the toplevel
4970 # make and thus we'd get different behavior depending on where we built the
4971 # sources.
4972 if test x$exec_prefix = xNONE -o x$exec_prefix = x$prefix; then
4973     gcc_tooldir='$(libsubdir)/$(unlibsubdir)/../$(target_alias)'
4974 else
4975 changequote(<<, >>)dnl
4976 # An explanation of the sed strings:
4977 #  -e 's|^\$(prefix)||'   matches and eliminates 'prefix' from 'exec_prefix'
4978 #  -e 's|/$||'            match a trailing forward slash and eliminates it
4979 #  -e 's|^[^/]|/|'        forces the string to start with a forward slash (*)
4980 #  -e 's|/[^/]*|../|g'    replaces each occurance of /<directory> with ../
4982 # (*) Note this pattern overwrites the first character of the string
4983 # with a forward slash if one is not already present.  This is not a
4984 # problem because the exact names of the sub-directories concerned is
4985 # unimportant, just the number of them matters.
4987 # The practical upshot of these patterns is like this:
4989 #  prefix     exec_prefix        result
4990 #  ------     -----------        ------
4991 #   /foo        /foo/bar          ../
4992 #   /foo/       /foo/bar          ../
4993 #   /foo        /foo/bar/         ../
4994 #   /foo/       /foo/bar/         ../
4995 #   /foo        /foo/bar/ugg      ../../
4997     dollar='$$'
4998     gcc_tooldir="\$(libsubdir)/\$(unlibsubdir)/\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/\$(dollar)||' -e 's|^[^/]|/|' -e 's|/[^/]*|../|g'\`\$(target_alias)"
4999 changequote([, ])dnl
5001 AC_SUBST(gcc_tooldir)
5002 AC_SUBST(dollar)
5004 # Nothing to do for FLOAT_H, float_format already handled.
5005 objdir=`pwd`
5006 AC_SUBST(objdir)
5008 # Process the language and host/target makefile fragments.
5009 ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
5011 # Substitute configuration variables
5012 AC_SUBST(subdirs)
5013 AC_SUBST(all_boot_languages)
5014 AC_SUBST(all_compilers)
5015 AC_SUBST(all_diff_excludes)
5016 AC_SUBST(all_headers)
5017 AC_SUBST(all_lang_makefiles)
5018 AC_SUBST(all_languages)
5019 AC_SUBST(all_lib2funcs)
5020 AC_SUBST(all_stagestuff)
5021 AC_SUBST(build_exeext)
5022 AC_SUBST(build_install_headers_dir)
5023 AC_SUBST(build_xm_file_list)
5024 AC_SUBST(cc_set_by_configure)
5025 AC_SUBST(quoted_cc_set_by_configure)
5026 AC_SUBST(cpp_install_dir)
5027 AC_SUBST(dep_host_xmake_file)
5028 AC_SUBST(dep_tmake_file)
5029 AC_SUBST(extra_c_flags)
5030 AC_SUBST(extra_c_objs)
5031 AC_SUBST(extra_cpp_objs)
5032 AC_SUBST(extra_cxx_objs)
5033 AC_SUBST(extra_headers_list)
5034 AC_SUBST(extra_objs)
5035 AC_SUBST(extra_parts)
5036 AC_SUBST(extra_passes)
5037 AC_SUBST(extra_programs)
5038 AC_SUBST(float_h_file)
5039 AC_SUBST(gcc_gxx_include_dir)
5040 AC_SUBST(gcc_version)
5041 AC_SUBST(gcc_version_trigger)
5042 AC_SUBST(host_exeext)
5043 AC_SUBST(host_extra_gcc_objs)
5044 AC_SUBST(host_xm_file_list)
5045 AC_SUBST(install)
5046 AC_SUBST(lang_options_files)
5047 AC_SUBST(lang_specs_files)
5048 AC_SUBST(lang_tree_files)
5049 AC_SUBST(local_prefix)
5050 AC_SUBST(maybe_use_collect2)
5051 AC_SUBST(md_file)
5052 AC_SUBST(objc_boehm_gc)
5053 AC_SUBST(out_file)
5054 AC_SUBST(out_object_file)
5055 AC_SUBST(stage_prefix_set_by_configure)
5056 AC_SUBST(symbolic_link)
5057 AC_SUBST(thread_file)
5058 AC_SUBST(tm_file_list)
5059 AC_SUBST(will_use_collect2)
5062 AC_SUBST_FILE(target_overrides)
5063 AC_SUBST_FILE(host_overrides)
5064 AC_SUBST(cross_defines)
5065 AC_SUBST_FILE(cross_overrides)
5066 AC_SUBST_FILE(build_overrides)
5067 AC_SUBST_FILE(language_fragments)
5068 AC_SUBST_FILE(language_hooks)
5070 # Echo that links are built
5071 if test x$host = x$target
5072 then
5073         str1="native "
5074 else
5075         str1="cross-"
5076         str2=" from $host"
5079 if test x$host != x$build
5080 then
5081         str3=" on a $build system"
5084 if test "x$str2" != x || test "x$str3" != x
5085 then
5086         str4=
5089 echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
5091 if test "x$str2" != x || test "x$str3" != x
5092 then
5093         echo " ${str2}${str3}." 1>&2
5096 # Truncate the target if necessary
5097 if test x$host_truncate_target != x; then
5098         target=`echo $target | sed -e 's/\(..............\).*/\1/'`
5101 # Configure the subdirectories
5102 # AC_CONFIG_SUBDIRS($subdirs)
5104 # Create the Makefile
5105 # and configure language subdirectories
5106 AC_OUTPUT($all_outputs,
5108 . $srcdir/configure.lang
5109 case x$CONFIG_HEADERS in
5110 xauto-host.h:config.in)
5111 echo > cstamp-h ;;
5112 esac
5113 # If the host supports symlinks, point stage[1234] at ../stage[1234] so
5114 # bootstrapping and the installation procedure can still use
5115 # CC="stage1/xgcc -Bstage1/".  If the host doesn't support symlinks,
5116 # FLAGS_TO_PASS has been modified to solve the problem there.
5117 # This is virtually a duplicate of what happens in configure.lang; we do
5118 # an extra check to make sure this only happens if ln -s can be used.
5119 if test "$symbolic_link" = "ln -s"; then
5120  for d in .. ${subdirs} ; do
5121    if test $d != ..; then
5122         STARTDIR=`pwd`
5123         cd $d
5124         for t in stage1 stage2 stage3 stage4 include
5125         do
5126                 rm -f $t
5127                 $symbolic_link ../$t $t 2>/dev/null
5128         done
5129         cd $STARTDIR
5130    fi
5131  done
5132 else true ; fi
5133 # Avoid having to add intl to our include paths.
5134 if test -f intl/libintl.h; then
5135   echo creating libintl.h
5136   echo '#include "intl/libintl.h"' >libintl.h
5140 host='${host}'
5141 build='${build}'
5142 target='${target}'
5143 target_alias='${target_alias}'
5144 srcdir='${srcdir}'
5145 subdirs='${subdirs}'
5146 oldstyle_subdirs='${oldstyle_subdirs}'
5147 symbolic_link='${symbolic_link}'
5148 program_transform_set='${program_transform_set}'
5149 program_transform_name='${program_transform_name}'
5150 dep_host_xmake_file='${dep_host_xmake_file}'
5151 host_xmake_file='${host_xmake_file}'
5152 dep_tmake_file='${dep_tmake_file}'
5153 tmake_file='${tmake_file}'
5154 thread_file='${thread_file}'
5155 gcc_version='${gcc_version}'
5156 gcc_version_trigger='${gcc_version_trigger}'
5157 local_prefix='${local_prefix}'
5158 build_install_headers_dir='${build_install_headers_dir}'
5159 build_exeext='${build_exeext}'
5160 host_exeext='${host_exeext}'
5161 out_file='${out_file}'
5162 gdb_needs_out_file_path='${gdb_needs_out_file_path}'
5163 SET_MAKE='${SET_MAKE}'
5164 target_list='${target_list}'
5165 target_overrides='${target_overrides}'
5166 host_overrides='${host_overrides}'
5167 cross_defines='${cross_defines}'
5168 cross_overrides='${cross_overrides}'
5169 build_overrides='${build_overrides}'
5170 cpp_install_dir='${cpp_install_dir}'