OSDN Git Service

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