OSDN Git Service

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