OSDN Git Service

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