OSDN Git Service

* Makefile.in (cc1): Put C_OBJS, and thence @extra_c_objs@ last.
[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 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_INIT(tree.c)
25 AC_CONFIG_HEADER(auto-host.h:config.in)
26
27 remove=rm
28 hard_link=ln
29 symbolic_link='ln -s'
30 copy=cp
31
32 # Check for bogus environment variables.
33 # Test if LIBRARY_PATH contains the notation for the current directory
34 # since this would lead to problems installing/building glibc.
35 # LIBRARY_PATH contains the current directory if one of the following
36 # is true:
37 # - one of the terminals (":" and ";") is the first or last sign
38 # - two terminals occur directly after each other
39 # - the path contains an element with a dot in it
40 AC_MSG_CHECKING(LIBRARY_PATH variable)
41 changequote(,)dnl
42 case ${LIBRARY_PATH} in
43   [:\;]* | *[:\;] | *[:\;][:\;]* |  *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
44     library_path_setting="contains current directory"
45     ;;
46   *)
47     library_path_setting="ok"
48     ;;
49 esac
50 changequote([,])dnl
51 AC_MSG_RESULT($library_path_setting)
52 if test "$library_path_setting" != "ok"; then
53 AC_MSG_ERROR([
54 *** LIBRARY_PATH shouldn't contain the current directory when
55 *** building egcs. Please change the environment variable
56 *** and run configure again.])
57 fi
58
59 # Test if GCC_EXEC_PREFIX contains the notation for the current directory
60 # since this would lead to problems installing/building glibc.
61 # GCC_EXEC_PREFIX contains the current directory if one of the following
62 # is true:
63 # - one of the terminals (":" and ";") is the first or last sign
64 # - two terminals occur directly after each other
65 # - the path contains an element with a dot in it
66 AC_MSG_CHECKING(GCC_EXEC_PREFIX variable)
67 changequote(,)dnl
68 case ${GCC_EXEC_PREFIX} in
69   [:\;]* | *[:\;] | *[:\;][:\;]* |  *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
70     gcc_exec_prefix_setting="contains current directory"
71     ;;
72   *)
73     gcc_exec_prefix_setting="ok"
74     ;;
75 esac
76 changequote([,])dnl
77 AC_MSG_RESULT($gcc_exec_prefix_setting)
78 if test "$gcc_exec_prefix_setting" != "ok"; then
79 AC_MSG_ERROR([
80 *** GCC_EXEC_PREFIX shouldn't contain the current directory when
81 *** building egcs. Please change the environment variable
82 *** and run configure again.])
83 fi
84
85 # Check for additional parameters
86
87 # With GNU ld
88 AC_ARG_WITH(gnu-ld,
89 [  --with-gnu-ld           arrange to work with GNU ld.],
90 gnu_ld_flag="$with_gnu_ld",
91 gnu_ld_flag=no)
92
93 # With pre-defined ld
94 AC_ARG_WITH(ld,
95 [  --with-ld               arrange to use the specified ld (full pathname).],
96 LD="$with_ld")
97 if test x"${LD+set}" = x"set"; then
98   if test ! -x "$LD"; then
99     AC_MSG_WARN([cannot execute: $LD: check --with-ld or env. var. LD])
100   elif test "GNU" = `$LD -v </dev/null 2>&1 | sed '1s/^GNU.*/GNU/;q'`; then
101     gnu_ld_flag=yes
102   fi
103   AC_DEFINE_UNQUOTED(DEFAULT_LINKER,"$LD")
104 fi
105
106 # With GNU as
107 AC_ARG_WITH(gnu-as,
108 [  --with-gnu-as           arrange to work with GNU as.],
109 gas_flag="$with_gnu_as",
110 gas_flag=no)
111
112 AC_ARG_WITH(as,
113 [  --with-as               arrange to use the specified as (full pathname).],
114 AS="$with_as")
115 if test x"${AS+set}" = x"set"; then
116   if test ! -x "$AS"; then
117     AC_MSG_WARN([cannot execute: $AS: check --with-as or env. var. AS])
118   elif test "GNU" = `$AS -v </dev/null 2>&1 | sed '1s/^GNU.*/GNU/;q'`; then
119     gas_flag=yes
120   fi
121   AC_DEFINE_UNQUOTED(DEFAULT_ASSEMBLER,"$AS")
122 fi
123
124 # With stabs
125 AC_ARG_WITH(stabs,
126 [  --with-stabs            arrange to use stabs instead of host debug format.],
127 stabs="$with_stabs",
128 stabs=no)
129
130 # With ELF
131 AC_ARG_WITH(elf,
132 [  --with-elf              arrange to use ELF instead of host debug format.],
133 elf="$with_elf",
134 elf=no)
135
136 # Specify the local prefix
137 local_prefix=
138 AC_ARG_WITH(local-prefix,
139 [  --with-local-prefix=DIR specifies directory to put local include.],
140 [case "${withval}" in
141 yes)    AC_MSG_ERROR(bad value ${withval} given for local include directory prefix) ;;
142 no)     ;;
143 *)      local_prefix=$with_local_prefix ;;
144 esac])
145
146 # Default local prefix if it is empty
147 if test x$local_prefix = x; then
148         local_prefix=/usr/local
149 fi
150
151 gxx_include_dir=
152 # Specify the g++ header file directory
153 AC_ARG_WITH(gxx-include-dir,
154 [  --with-gxx-include-dir=DIR
155                           specifies directory to put g++ header files.],
156 [case "${withval}" in
157 yes)    AC_MSG_ERROR(bad value ${withval} given for g++ include directory) ;;
158 no)     ;;
159 *)      gxx_include_dir=$with_gxx_include_dir ;;
160 esac])
161
162 if test x${gxx_include_dir} = x; then
163   if test x${enable_version_specific_runtime_libs} = xyes; then
164     gxx_include_dir='${libsubdir}/include/g++'
165   else
166     topsrcdir=${srcdir}/.. . ${srcdir}/../config.if
167     gxx_include_dir="\$(libsubdir)/\$(unlibsubdir)/..\`echo \$(exec_prefix) | sed -e 's|^\$(prefix)||' -e 's|/[^/]*|/..|g'\`/include/g++"-${libstdcxx_interface}
168   fi
169 fi
170
171 # Enable expensive internal checks
172 AC_ARG_ENABLE(checking,
173 [  --enable-checking       enable expensive run-time checks.],
174 [case "${enableval}" in
175 yes)    AC_DEFINE(ENABLE_CHECKING) ;;
176 no)     ;;
177 *)      AC_MSG_ERROR(bad value ${enableval} given for checking option) ;;
178 esac])
179
180 # Use cpplib+cppmain for the preprocessor, but don't link it with the compiler.
181 cpp_main=cccp
182 AC_ARG_ENABLE(cpplib,
183 [  --enable-cpplib         use cpplib for the C preprocessor.],
184 if test x$enable_cpplib != xno; then
185   cpp_main=cppmain
186 fi)
187
188 # Link cpplib into the compiler proper, for C/C++/ObjC.
189 AC_ARG_ENABLE(c-cpplib,
190 [  --enable-c-cpplib       link cpplib directly into C and C++ compilers
191                           (implies --enable-cpplib).],
192 if test x$enable_c_cpplib != xno; then
193   extra_c_objs="${extra_c_objs} libcpp.a"
194   extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
195   extra_c_flags=-DUSE_CPPLIB=1
196   cpp_main=cppmain
197 fi)
198
199 # Enable Multibyte Characters for C/C++
200 AC_ARG_ENABLE(c-mbchar,
201 [  --enable-c-mbchar       enable multibyte characters for C and C++.],
202 if test x$enable_c_mbchar != xno; then
203   extra_c_flags=-DMULTIBYTE_CHARS=1
204 fi)
205   
206 # Enable Haifa scheduler.
207 AC_ARG_ENABLE(haifa,
208 [  --enable-haifa          use the experimental scheduler.
209   --disable-haifa         don't use the experimental scheduler for the
210                           targets which normally enable it.])
211 # Fast fixincludes
212 #
213 # This is a work in progress...
214 AC_ARG_WITH(fast-fixincludes,
215 [  --with-fast-fixincludes    use a faster fixinclude program (experimental)],
216 fast_fixinc="$with_fast_fixincludes",
217 fast_fixinc=no)
218
219 # Enable init_priority.
220 AC_ARG_ENABLE(init-priority,
221 [  --enable-init-priority  use attributes to assign initialization order
222                           for static objects.
223   --disable-init-priority conform to ISO C++ rules for ordering static objects
224                           (i.e. initialized in order of declaration). ],
225 if test x$enable_init_priority != xno; then
226   extra_c_flags=-DUSE_INIT_PRIORITY
227 fi)
228
229 # Enable threads
230 # Pass with no value to take the default
231 # Pass with a value to specify a thread package
232 AC_ARG_ENABLE(threads,
233 [  --enable-threads        enable thread usage for target GCC.
234   --enable-threads=LIB    use LIB thread package for target GCC.],
235 if test x$enable_threads = xno; then
236         enable_threads=''
237 fi,
238 enable_threads='')
239
240 enable_threads_flag=$enable_threads
241 # Check if a valid thread package
242 case x${enable_threads_flag} in
243         x | xno)
244                 # No threads
245                 target_thread_file='single'
246                 ;;
247         xyes)
248                 # default
249                 target_thread_file=''
250                 ;;
251         xdecosf1 | xirix | xmach | xos2 | xposix | xpthreads | xsingle | \
252         xsolaris | xwin32 | xdce | xvxworks)
253                 target_thread_file=$enable_threads_flag
254                 ;;
255         *)
256                 echo "$enable_threads is an unknown thread package" 1>&2
257                 exit 1
258                 ;;
259 esac
260
261 AC_ARG_ENABLE(objc-gc,
262 [  --enable-objc-gc       enable the use of Boehm's garbage collector with
263                           the GNU Objective-C runtime.],
264 if [[[ x$enable_objc_gc = xno ]]]; then
265         objc_boehm_gc=''
266 else
267         objc_boehm_gc=1
268 fi,
269 objc_boehm_gc='')
270
271 # Determine the host, build, and target systems
272 AC_CANONICAL_SYSTEM
273
274 # Find the native compiler
275 AC_PROG_CC
276
277 # If the native compiler is GCC, we can enable warnings even in stage1.  
278 # That's useful for people building cross-compilers, or just running a
279 # quick `make'.
280 if test "x$GCC" = "xyes"; then 
281   stage1_warn_cflags='$(WARN_CFLAGS)'
282 else
283   stage1_warn_cflags=""
284 fi
285 AC_SUBST(stage1_warn_cflags)
286
287 AC_PROG_MAKE_SET
288
289 AC_MSG_CHECKING([whether a default assembler was specified])
290 if test x"${AS+set}" = x"set"; then
291     if test x"$with_gas" = x"no"; then
292         AC_MSG_RESULT([yes ($AS)])
293     else
294         AC_MSG_RESULT([yes ($AS - GNU as)])
295     fi
296 else
297     AC_MSG_RESULT(no)
298 fi
299
300 AC_MSG_CHECKING([whether a default linker was specified])
301 if test x"${LD+set}" = x"set"; then
302     if test x"$with_gnu_ld" = x"no"; then
303         AC_MSG_RESULT([yes ($LD)])
304     else
305         AC_MSG_RESULT([yes ($LD - GNU ld)])
306     fi
307 else
308     AC_MSG_RESULT(no)
309 fi
310
311 # Find some useful tools
312 AC_PROG_AWK
313 AC_PROG_LEX
314 GCC_PROG_LN
315 GCC_PROG_LN_S
316 GCC_C_VOLATILE
317 AC_PROG_RANLIB
318 AC_PROG_YACC
319 EGCS_PROG_INSTALL
320
321 AC_HEADER_STDC
322 AC_HEADER_TIME
323 GCC_HEADER_STRING
324 AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h time.h fcntl.h unistd.h stab.h sys/file.h sys/time.h sys/resource.h sys/param.h sys/times.h wait.h sys/wait.h)
325
326 # Check for thread headers.
327 AC_CHECK_HEADER(thread.h, [have_thread_h=yes], [have_thread_h=])
328 AC_CHECK_HEADER(pthread.h, [have_pthread_h=yes], [have_pthread_h=])
329
330 # See if GNAT has been installed
331 AC_CHECK_PROG(gnat, gnatbind, yes, no)
332
333 # See if the system preprocessor understands the ANSI C preprocessor
334 # stringification operator.
335 AC_MSG_CHECKING(whether cpp understands the stringify operator)
336 AC_CACHE_VAL(gcc_cv_c_have_stringify,
337 [AC_TRY_COMPILE(,
338 [#define S(x)   #x
339 char *test = S(foo);],
340 gcc_cv_c_have_stringify=yes, gcc_cv_c_have_stringify=no)])
341 AC_MSG_RESULT($gcc_cv_c_have_stringify)
342 if test $gcc_cv_c_have_stringify = yes; then
343   AC_DEFINE(HAVE_CPP_STRINGIFY)
344 fi
345
346 # Use <inttypes.h> only if it exists,
347 # doesn't clash with <sys/types.h>, and declares intmax_t.
348 AC_MSG_CHECKING(for inttypes.h)
349 AC_CACHE_VAL(gcc_cv_header_inttypes_h,
350 [AC_TRY_COMPILE(
351   [#include <sys/types.h>
352 #include <inttypes.h>],
353   [intmax_t i = -1;],
354   [AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H)
355    gcc_cv_header_inttypes_h=yes],
356   gcc_cv_header_inttypes_h=no)])
357 AC_MSG_RESULT($gcc_cv_header_inttypes_h)
358
359 AC_CHECK_FUNCS(strtoul bsearch strerror putenv popen bcopy bzero bcmp \
360         index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
361         sysconf isascii gettimeofday strsignal)
362
363 # Make sure wchar_t is available
364 #AC_CHECK_TYPE(wchar_t, unsigned int)
365
366 GCC_FUNC_VFPRINTF_DOPRNT
367 GCC_FUNC_PRINTF_PTR
368
369 GCC_NEED_DECLARATIONS(malloc realloc calloc free bcopy bzero bcmp \
370         index rindex getenv atol sbrk abort atof strerror getcwd getwd \
371         strsignal)
372
373 GCC_NEED_DECLARATIONS(getrlimit setrlimit, [
374 #include <sys/types.h>
375 #ifdef HAVE_SYS_RESOURCE_H
376 #include <sys/resource.h>
377 #endif
378 ])
379
380 AC_DECL_SYS_SIGLIST
381
382 # File extensions
383 manext='.1'
384 objext='.o'
385 AC_SUBST(manext)
386 AC_SUBST(objext)
387
388 build_xm_file=
389 build_xm_defines=
390 build_install_headers_dir=install-headers-tar
391 build_exeext=
392 host_xm_file=
393 host_xm_defines=
394 host_xmake_file=
395 host_truncate_target=
396 host_exeext=
397
398 # Decode the host machine, then the target machine.
399 # For the host machine, we save the xm_file variable as host_xm_file;
400 # then we decode the target machine and forget everything else
401 # that came from the host machine.
402 for machine in $build $host $target; do
403
404         out_file=
405         xmake_file=
406         tmake_file=
407         extra_headers=
408         extra_passes=
409         extra_parts=
410         extra_programs=
411         extra_objs=
412         extra_host_objs=
413         extra_gcc_objs=
414         xm_defines=
415         float_format=
416         # Set this to force installation and use of collect2.
417         use_collect2=
418         # Set this to override the default target model.
419         target_cpu_default=
420         # Set this to control which fixincludes program to use.
421         if test x$fast_fixinc != xyes; then
422                 fixincludes=fixincludes
423         else fixincludes=fixinc.sh ; fi
424         # Set this to control how the header file directory is installed.
425         install_headers_dir=install-headers-tar
426         # Set this to a non-empty list of args to pass to cpp if the target
427         # wants its .md file passed through cpp.
428         md_cppflags=
429         # Set this if directory names should be truncated to 14 characters.
430         truncate_target=
431         # Set this if gdb needs a dir command with `dirname $out_file`
432         gdb_needs_out_file_path=
433         # Set this if the build machine requires executables to have a
434         # file name suffix.
435         exeext=
436         # Set this to control which thread package will be used.
437         thread_file=
438         # Reinitialize these from the flag values every loop pass, since some
439         # configure entries modify them.
440         gas="$gas_flag"
441         gnu_ld="$gnu_ld_flag"
442         enable_threads=$enable_threads_flag
443
444         # Set default cpu_type, tm_file and xm_file so it can be updated in
445         # each machine entry.
446         cpu_type=`echo $machine | sed 's/-.*$//'`
447         case $machine in
448         alpha*-*-*)
449                 cpu_type=alpha
450                 ;;
451         arm*-*-*)
452                 cpu_type=arm
453                 ;;
454         c*-convex-*)
455                 cpu_type=convex
456                 ;;
457 changequote(,)dnl
458         i[34567]86-*-*)
459 changequote([,])dnl
460                 cpu_type=i386
461                 ;;
462         hppa*-*-*)
463                 cpu_type=pa
464                 ;;
465         m68000-*-*)
466                 cpu_type=m68k
467                 ;;
468         mips*-*-*)
469                 cpu_type=mips
470                 ;;
471         powerpc*-*-*)
472                 cpu_type=rs6000
473                 ;;
474         pyramid-*-*)
475                 cpu_type=pyr
476                 ;;
477         sparc*-*-*)
478                 cpu_type=sparc
479                 ;;
480         esac
481
482         tm_file=${cpu_type}/${cpu_type}.h
483         xm_file=${cpu_type}/xm-${cpu_type}.h
484         
485         # Set the default macros to define for GNU/Linux systems.
486         case $machine in
487         *-*-linux-gnu*)
488                 xm_defines="HAVE_ATEXIT POSIX BSTRING"
489                 ;;
490         esac
491
492         case $machine in
493         # Support site-specific machine types.
494         *local*)
495                 cpu_type=`echo $machine | sed -e 's/-.*//'`
496                 rest=`echo $machine | sed -e "s/$cpu_type-//"`
497                 xm_file=${cpu_type}/xm-$rest.h
498                 tm_file=${cpu_type}/$rest.h
499                 if test -f $srcdir/config/${cpu_type}/x-$rest; \
500                 then xmake_file=${cpu_type}/x-$rest; \
501                 else true; \
502                 fi
503                 if test -f $srcdir/config/${cpu_type}/t-$rest; \
504                 then tmake_file=${cpu_type}/t-$rest; \
505                 else true; \
506                 fi
507                 ;;
508         1750a-*-*)
509                 ;;
510         a29k-*-bsd* | a29k-*-sym1*)
511                 tm_file="${tm_file} a29k/unix.h"
512                 xm_defines=USG
513                 xmake_file=a29k/x-unix
514                 use_collect2=yes
515                 ;;
516         a29k-*-udi | a29k-*-coff)
517                 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
518                 tmake_file=a29k/t-a29kbare
519                 ;;
520         a29k-wrs-vxworks*)
521                 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
522                 tmake_file=a29k/t-vx29k
523                 extra_parts="crtbegin.o crtend.o"
524                 thread_file='vxworks'
525                 ;;
526         a29k-*-*)                       # Default a29k environment.
527                 use_collect2=yes
528                 ;;
529         alpha*-*-linux-gnuecoff*)
530                 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
531                 target_cpu_default="MASK_GAS"
532                 gas=no
533                 xmake_file=none
534                 gas=yes gnu_ld=yes
535                 ;;
536         alpha*-*-linux-gnulibc1*)
537                 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
538                 target_cpu_default="MASK_GAS"
539                 tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux alpha/t-crtbe"
540                 extra_parts="crtbegin.o crtend.o"
541                 fixincludes=fixinc.wrap
542                 xmake_file=none
543                 gas=yes gnu_ld=yes
544                 if test x$enable_threads = xyes; then
545                         thread_file='posix'
546                 fi
547                 ;;
548         alpha*-*-linux-gnu*)
549                 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
550                 target_cpu_default="MASK_GAS"
551                 tmake_file="t-linux alpha/t-linux alpha/t-crtbe"
552                 extra_parts="crtbegin.o crtend.o"
553                 xmake_file=none
554                 fixincludes=Makefile.in
555                 gas=yes gnu_ld=yes
556                 if test x$enable_threads = xyes; then
557                         thread_file='posix'
558                 fi
559                 ;;
560         alpha*-*-netbsd*)
561                 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsdl-elf.h"
562                 target_cpu_default="MASK_GAS"
563                 tmake_file="alpha/t-crtbe"
564                 extra_parts="crtbegin.o crtend.o"
565                 xmake_file=none
566                 fixincludes=fixinc.wrap
567                 gas=yes gnu_ld=yes
568                 ;;
569                 
570         alpha*-dec-osf*)
571                 if test x$stabs = xyes
572                 then
573                         tm_file="${tm_file} dbx.h"
574                 fi
575                 if test x$gas != xyes
576                 then
577                         extra_passes="mips-tfile mips-tdump"
578                 fi
579                 use_collect2=yes
580                 case $machine in
581                   *-*-osf1*)
582                     tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
583                     ;;
584 changequote(,)dnl
585                   *-*-osf[23]*)
586 changequote([,])dnl
587                     tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
588                     ;;
589                   *-*-osf4*)
590                     tm_file="${tm_file} alpha/osf.h"
591                     # Some versions of OSF4 (specifically X4.0-9 296.7) have
592                     # a broken tar, so we use cpio instead.
593                     install_headers_dir=install-headers-cpio
594                     ;;
595                 esac
596                 case $machine in
597 changequote(,)dnl
598                   *-*-osf4.0[b-z] | *-*-osf4.[1-9]*)
599 changequote([,])dnl
600                     target_cpu_default=MASK_SUPPORT_ARCH
601                     ;;
602                 esac
603                 ;;
604         alpha*-*-vxworks*)
605                 tm_file="${tm_file} dbx.h alpha/vxworks.h"
606                 if [ x$gas != xyes ]
607                 then
608                         extra_passes="mips-tfile mips-tdump"
609                 fi
610                 use_collect2=yes
611                 ;;
612         alpha*-*-winnt*)
613                 tm_file="${tm_file} alpha/win-nt.h"
614                 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
615                 tmake_file=t-libc-ok
616                 xmake_file=winnt/x-winnt
617                 extra_host_objs=oldnames.o
618                 extra_gcc_objs="spawnv.o oldnames.o"
619                 fixincludes=fixinc.winnt
620                 if test x$gnu_ld != xyes
621                 then
622                         extra_programs=ld.exe
623                 fi
624                 if test x$enable_threads = xyes; then
625                         thread_file='win32'
626                 fi
627                 ;;
628         alpha*-dec-vms*)
629                 tm_file=alpha/vms.h
630                 xm_file="${xm_file} alpha/xm-vms.h"
631                 tmake_file=alpha/t-vms
632                 fixincludes=Makefile.in
633                 ;;
634         arc-*-elf*)
635                 extra_parts="crtinit.o crtfini.o"
636                 ;;
637         arm-*-coff* | armel-*-coff*)
638                 tm_file=arm/coff.h
639                 tmake_file=arm/t-bare
640                 ;;
641 changequote(,)dnl
642         arm-*-riscix1.[01]*)            # Acorn RISC machine (early versions)
643 changequote([,])dnl
644                 tm_file=arm/riscix1-1.h
645                 use_collect2=yes
646                 ;;
647         arm-*-riscix*)                  # Acorn RISC machine
648                 if test x$gas = xyes
649                 then
650                     tm_file=arm/rix-gas.h
651                 else
652                     tm_file=arm/riscix.h
653                 fi
654                 xmake_file=arm/x-riscix
655                 tmake_file=arm/t-riscix
656                 use_collect2=yes
657                 ;;
658         arm-semi-aout | armel-semi-aout)
659                 tm_file=arm/semi.h
660                 tmake_file=arm/t-semi
661                 fixincludes=Makefile.in # There is nothing to fix
662                 ;;
663         arm-semi-aof | armel-semi-aof)
664                 tm_file=arm/semiaof.h
665                 tmake_file=arm/t-semiaof
666                 fixincludes=Makefile.in # There is nothing to fix
667                 ;;
668         arm*-*-netbsd*)
669                 tm_file=arm/netbsd.h
670                 xm_file="arm/xm-netbsd.h ${xm_file}"
671                 tmake_file="t-netbsd arm/t-netbsd"
672                 # On NetBSD, the headers are already okay, except for math.h.
673                 fixincludes=fixinc.wrap
674                 ;;
675         arm*-*-linux-gnuaout*)          # ARM GNU/Linux with a.out
676                 cpu_type=arm
677                 xmake_file=x-linux
678                 tm_file=arm/linux-aout.h
679                 tmake_file=arm/t-linux
680                 fixincludes=Makefile.in
681                 gnu_ld=yes
682                 ;;
683         arm*-*-linux-gnu*)              # ARM GNU/Linux with ELF
684                 xm_file=arm/xm-linux.h
685                 xmake_file=x-linux
686                 case $machine in
687                 armv2*-*-*)
688                         tm_file=arm/linux-elf26.h
689                         ;;
690                 *)
691                         tm_file=arm/linux-elf.h
692                         ;;
693                 esac
694                 tmake_file="t-linux arm/t-linux"
695                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
696                 fixincludes=Makefile.in         # Nothing to fix
697                 gnu_ld=yes
698                 ;;
699         arm*-*-aout)
700                 tm_file=arm/aout.h
701                 tmake_file=arm/t-bare
702                 ;;
703         arm*-*-elf)
704                 tm_file=arm/unknown-elf.h
705                 tmake_file=arm/t-arm-elf
706                 ;;
707         c1-convex-*)                    # Convex C1
708                 target_cpu_default=1
709                 use_collect2=yes
710                 fixincludes=Makefile.in
711                 ;;
712         c2-convex-*)                    # Convex C2
713                 target_cpu_default=2
714                 use_collect2=yes
715                 fixincludes=Makefile.in
716                 ;;
717         c32-convex-*)
718                 target_cpu_default=4
719                 use_collect2=yes
720                 fixincludes=Makefile.in
721                 ;;
722         c34-convex-*)
723                 target_cpu_default=8
724                 use_collect2=yes
725                 fixincludes=Makefile.in
726                 ;;
727         c38-convex-*)
728                 target_cpu_default=16           
729                 use_collect2=yes
730                 fixincludes=Makefile.in
731                 ;;
732         c4x-*)
733                 cpu_type=c4x
734                 tmake_file=c4x/t-c4x
735                 ;;
736         clipper-intergraph-clix*)
737                 tm_file="${tm_file} svr3.h clipper/clix.h"
738                 xm_file=clipper/xm-clix.h
739                 xmake_file=clipper/x-clix
740                 extra_headers=va-clipper.h
741                 extra_parts="crtbegin.o crtend.o"
742                 install_headers_dir=install-headers-cpio
743                 ;;
744         dsp16xx-*)
745                 ;;
746         elxsi-elxsi-*)
747                 use_collect2=yes
748                 ;;
749 # This hasn't been upgraded to GCC 2.
750 #       fx80-alliant-*)                 # Alliant FX/80
751 #               ;;
752         h8300-*-*)
753                 float_format=i32
754                 ;;
755         hppa1.1-*-pro*)
756                 tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h"
757                 xm_file=pa/xm-papro.h
758                 tmake_file=pa/t-pro
759                 ;;
760         hppa1.1-*-osf*)
761                 target_cpu_default=1
762                 tm_file="${tm_file} pa/pa-osf.h"
763                 use_collect2=yes
764                 fixincludes=Makefile.in
765                 ;;
766         hppa1.1-*-rtems*)
767                 tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h pa/rtems.h"
768                 xm_file=pa/xm-papro.h
769                 tmake_file=pa/t-pro
770                 ;;
771         hppa1.0-*-osf*)
772                 tm_file="${tm_file} pa/pa-osf.h"
773                 use_collect2=yes
774                 fixincludes=Makefile.in
775                 ;;
776         hppa1.1-*-bsd*)
777                 target_cpu_default=1
778                 use_collect2=yes
779                 fixincludes=Makefile.in
780                 ;;
781         hppa1.0-*-bsd*)
782                 use_collect2=yes
783                 fixincludes=Makefile.in
784                 ;;
785         hppa1.0-*-hpux7*)
786                 tm_file="pa/pa-oldas.h ${tm_file} pa/pa-hpux7.h"
787                 xm_file=pa/xm-pahpux.h
788                 xmake_file=pa/x-pa-hpux
789                 if test x$gas = xyes
790                 then
791                         tm_file="${tm_file} pa/gas.h"
792                 fi
793                 install_headers_dir=install-headers-cpio
794                 use_collect2=yes
795                 ;;
796 changequote(,)dnl
797         hppa1.0-*-hpux8.0[0-2]*)
798 changequote([,])dnl
799                 tm_file="${tm_file} pa/pa-hpux.h"
800                 xm_file=pa/xm-pahpux.h
801                 xmake_file=pa/x-pa-hpux
802                 if test x$gas = xyes
803                 then
804                         tm_file="${tm_file} pa/pa-gas.h"
805                 else
806                         tm_file="pa/pa-oldas.h ${tm_file}"
807                 fi
808                 install_headers_dir=install-headers-cpio
809                 use_collect2=yes
810                 ;;
811 changequote(,)dnl
812         hppa1.1-*-hpux8.0[0-2]*)
813 changequote([,])dnl
814                 target_cpu_default=1
815                 tm_file="${tm_file} pa/pa-hpux.h"
816                 xm_file=pa/xm-pahpux.h
817                 xmake_file=pa/x-pa-hpux
818                 if test x$gas = xyes
819                 then
820                         tm_file="${tm_file} pa/pa-gas.h"
821                 else
822                         tm_file="pa/pa-oldas.h ${tm_file}"
823                 fi
824                 install_headers_dir=install-headers-cpio
825                 use_collect2=yes
826                 ;;
827         hppa1.1-*-hpux8*)
828                 target_cpu_default=1
829                 tm_file="${tm_file} pa/pa-hpux.h"
830                 xm_file=pa/xm-pahpux.h
831                 xmake_file=pa/x-pa-hpux
832                 if test x$gas = xyes
833                 then
834                         tm_file="${tm_file} pa/pa-gas.h"
835                 fi
836                 install_headers_dir=install-headers-cpio
837                 use_collect2=yes
838                 ;;
839         hppa1.0-*-hpux8*)
840                 tm_file="${tm_file} pa/pa-hpux.h"
841                 xm_file=pa/xm-pahpux.h
842                 xmake_file=pa/x-pa-hpux
843                 if test x$gas = xyes
844                 then
845                         tm_file="${tm_file} pa/pa-gas.h"
846                 fi
847                 install_headers_dir=install-headers-cpio
848                 use_collect2=yes
849                 ;;
850         hppa1.1-*-hpux10*)
851                 target_cpu_default=1
852                 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux10.h"
853                 xm_file=pa/xm-pahpux.h
854                 xmake_file=pa/x-pa-hpux
855                 tmake_file=pa/t-pa
856                 if test x$gas = xyes
857                 then
858                         tm_file="${tm_file} pa/pa-gas.h"
859                 fi
860                 if test x$enable_threads = x; then
861                     enable_threads=$have_pthread_h
862                 fi
863                 if test x$enable_threads = xyes; then
864                         thread_file='dce'
865                         tmake_file="${tmake_file} pa/t-dce-thr"
866                 fi
867                 install_headers_dir=install-headers-cpio
868                 use_collect2=yes
869                 ;;
870         hppa1.0-*-hpux10*)
871                 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux10.h"
872                 xm_file=pa/xm-pahpux.h
873                 xmake_file=pa/x-pa-hpux
874                 if test x$gas = xyes
875                 then
876                         tm_file="${tm_file} pa/pa-gas.h"
877                 fi
878                 if test x$enable_threads = x; then
879                     enable_threads=$have_pthread_h
880                 fi
881                 if test x$enable_threads = xyes; then
882                         thread_file='dce'
883                         tmake_file="${tmake_file} pa/t-dce-thr"
884                 fi
885                 install_headers_dir=install-headers-cpio
886                 use_collect2=yes
887                 ;;
888         hppa1.1-*-hpux*)
889                 target_cpu_default=1
890                 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux9.h"
891                 xm_file=pa/xm-pahpux.h
892                 xmake_file=pa/x-pa-hpux
893                 if test x$gas = xyes
894                 then
895                         tm_file="${tm_file} pa/pa-gas.h"
896                 fi
897                 install_headers_dir=install-headers-cpio
898                 use_collect2=yes
899                 ;;
900         hppa1.0-*-hpux*)
901                 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux9.h"
902                 xm_file=pa/xm-pahpux.h
903                 xmake_file=pa/x-pa-hpux
904                 if test x$gas = xyes
905                 then
906                         tm_file="${tm_file} pa/pa-gas.h"
907                 fi
908                 install_headers_dir=install-headers-cpio
909                 use_collect2=yes
910                 ;;
911         hppa1.1-*-hiux*)
912                 target_cpu_default=1
913                 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hiux.h"
914                 xm_file=pa/xm-pahpux.h
915                 xmake_file=pa/x-pa-hpux
916                 if test x$gas = xyes
917                 then
918                         tm_file="${tm_file} pa/pa-gas.h"
919                 fi
920                 install_headers_dir=install-headers-cpio
921                 use_collect2=yes
922                 ;;
923         hppa1.0-*-hiux*)
924                 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hiux.h"
925                 xm_file=pa/xm-pahpux.h
926                 xmake_file=pa/x-pa-hpux
927                 if test x$gas = xyes
928                 then
929                         tm_file="${tm_file} pa/pa-gas.h"
930                 fi
931                 install_headers_dir=install-headers-cpio
932                 use_collect2=yes
933                 ;;
934         hppa*-*-lites*)
935                 target_cpu_default=1
936                 use_collect2=yes
937                 fixincludes=Makefile.in
938                 ;;
939         i370-*-mvs*)
940                 ;;
941 changequote(,)dnl
942         i[34567]86-ibm-aix*)            # IBM PS/2 running AIX
943 changequote([,])dnl
944                 if test x$gas = xyes
945                 then
946                         tm_file=i386/aix386.h
947                         extra_parts="crtbegin.o crtend.o"
948                         tmake_file=i386/t-crtstuff
949                 else
950                         tm_file=i386/aix386ng.h
951                         use_collect2=yes
952                 fi
953                 xm_file="xm-alloca.h i386/xm-aix.h ${xm_file}"
954                 xm_defines=USG
955                 xmake_file=i386/x-aix
956                 ;;
957 changequote(,)dnl
958         i[34567]86-ncr-sysv4*)          # NCR 3000 - ix86 running system V.4
959 changequote([,])dnl
960                 xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
961                 xm_defines="USG POSIX SMALL_ARG_MAX"
962                 xmake_file=i386/x-ncr3000
963                 if test x$stabs = xyes -a x$gas = xyes
964                 then
965                         tm_file=i386/sysv4gdb.h
966                 else
967                         tm_file=i386/sysv4.h
968                 fi
969                 extra_parts="crtbegin.o crtend.o"
970                 tmake_file=i386/t-crtpic
971                 ;;
972 changequote(,)dnl
973         i[34567]86-next-*)
974 changequote([,])dnl
975                 tm_file=i386/next.h
976                 xm_file=i386/xm-next.h
977                 tmake_file=i386/t-next
978                 xmake_file=i386/x-next
979                 extra_objs=nextstep.o
980                 extra_parts="crtbegin.o crtend.o"
981                 if test x$enable_threads = xyes; then
982                         thread_file='mach'
983                 fi
984                 ;;
985 changequote(,)dnl
986         i[34567]86-sequent-bsd*)                # 80386 from Sequent
987 changequote([,])dnl
988                 use_collect2=yes
989                 if test x$gas = xyes
990                 then
991                         tm_file=i386/seq-gas.h
992                 else
993                         tm_file=i386/sequent.h
994                 fi
995                 ;;
996 changequote(,)dnl
997         i[34567]86-sequent-ptx1*)
998 changequote([,])dnl
999                 xm_defines="USG SVR3"
1000                 xmake_file=i386/x-sysv3
1001                 tm_file=i386/seq-sysv3.h
1002                 tmake_file=i386/t-crtstuff
1003                 fixincludes=fixinc.ptx
1004                 extra_parts="crtbegin.o crtend.o"
1005                 install_headers_dir=install-headers-cpio
1006                 ;;
1007 changequote(,)dnl
1008         i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1009 changequote([,])dnl
1010                 xm_defines="USG SVR3"
1011                 xmake_file=i386/x-sysv3
1012                 tm_file=i386/seq2-sysv3.h
1013                 tmake_file=i386/t-crtstuff
1014                 extra_parts="crtbegin.o crtend.o"
1015                 fixincludes=fixinc.ptx
1016                 install_headers_dir=install-headers-cpio
1017                 ;;
1018 changequote(,)dnl
1019         i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1020 changequote([,])dnl
1021                 xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
1022                 xm_defines="USG POSIX SMALL_ARG_MAX"
1023                 xmake_file=x-svr4
1024                 tm_file=i386/ptx4-i.h
1025                 tmake_file=t-svr4
1026                 extra_parts="crtbegin.o crtend.o"
1027                 fixincludes=fixinc.ptx
1028                 install_headers_dir=install-headers-cpio
1029                 ;;
1030         i386-sun-sunos*)                # Sun i386 roadrunner
1031                 xm_defines=USG
1032                 tm_file=i386/sun.h
1033                 use_collect2=yes
1034                 ;;
1035 changequote(,)dnl
1036         i[34567]86-wrs-vxworks*)
1037 changequote([,])dnl
1038                 tm_file=i386/vxi386.h
1039                 tmake_file=i386/t-i386bare
1040                 ;;
1041 changequote(,)dnl
1042         i[34567]86-*-aout*)
1043 changequote([,])dnl
1044                 tm_file=i386/i386-aout.h
1045                 tmake_file=i386/t-i386bare
1046                 ;;
1047 changequote(,)dnl
1048         i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1049 changequote([,])dnl
1050                 tm_file=i386/bsd386.h
1051 #               tmake_file=t-libc-ok
1052                 ;;
1053 changequote(,)dnl
1054         i[34567]86-*-bsd*)
1055 changequote([,])dnl
1056                 tm_file=i386/386bsd.h
1057 #               tmake_file=t-libc-ok
1058 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1059 #               use_collect2=yes
1060                 ;;
1061 changequote(,)dnl
1062         i[34567]86-*-freebsdelf*)
1063 changequote([,])dnl
1064                 tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h"
1065                 # On FreeBSD, the headers are already ok, except for math.h.
1066                 fixincludes=fixinc.wrap
1067                 tmake_file=i386/t-freebsd
1068                 gas=yes
1069                 gnu_ld=yes
1070                 stabs=yes
1071                 ;;
1072 changequote(,)dnl
1073         i[34567]86-*-freebsd*)
1074 changequote([,])dnl
1075                 tm_file=i386/freebsd.h
1076                 # On FreeBSD, the headers are already ok, except for math.h.
1077                 fixincludes=fixinc.wrap
1078                 tmake_file=i386/t-freebsd
1079                 ;;
1080         # We are hoping OpenBSD is still close enough to NetBSD that we can
1081         # share the configurations.
1082 changequote(,)dnl
1083         i[34567]86-*-netbsd* | i[34567]86-*-openbsd*)
1084 changequote([,])dnl
1085                 tm_file=i386/netbsd.h
1086                 # On NetBSD, the headers are already okay, except for math.h.
1087                 fixincludes=fixinc.wrap
1088                 tmake_file=t-netbsd
1089                 ;;
1090 changequote(,)dnl
1091         i[34567]86-*-coff*)
1092 changequote([,])dnl
1093                 tm_file=i386/i386-coff.h
1094                 tmake_file=i386/t-i386bare
1095                 ;;
1096 changequote(,)dnl
1097         i[34567]86-*-isc*)              # 80386 running ISC system
1098 changequote([,])dnl
1099                 xm_file="${xm_file} i386/xm-isc.h"
1100                 xm_defines="USG SVR3"
1101                 case $machine in
1102 changequote(,)dnl
1103                   i[34567]86-*-isc[34]*)
1104 changequote([,])dnl
1105                     xmake_file=i386/x-isc3
1106                     ;;
1107                   *)
1108                     xmake_file=i386/x-isc
1109                     ;;
1110                 esac
1111                 if test x$gas = xyes -a x$stabs = xyes
1112                 then
1113                         tm_file=i386/iscdbx.h
1114                         tmake_file=i386/t-svr3dbx
1115                         extra_parts="svr3.ifile svr3z.ifile"
1116                 else
1117                         tm_file=i386/isccoff.h
1118                         tmake_file=i386/t-crtstuff
1119                         extra_parts="crtbegin.o crtend.o"
1120                 fi
1121                 install_headers_dir=install-headers-cpio
1122                 ;;
1123 changequote(,)dnl
1124         i[34567]86-*-linux-gnuoldld*)   # Intel 80386's running GNU/Linux
1125 changequote([,])dnl                     # with a.out format using
1126                                         # pre BFD linkers
1127                 xmake_file=x-linux-aout
1128                 tmake_file="t-linux-aout i386/t-crtstuff"
1129                 tm_file=i386/linux-oldld.h
1130                 fixincludes=Makefile.in #On Linux, the headers are ok already.
1131                 gnu_ld=yes
1132                 float_format=i386
1133                 ;;
1134 changequote(,)dnl
1135         i[34567]86-*-linux-gnuaout*)    # Intel 80386's running GNU/Linux
1136 changequote([,])dnl                     # with a.out format
1137                 xmake_file=x-linux-aout
1138                 tmake_file="t-linux-aout i386/t-crtstuff"
1139                 tm_file=i386/linux-aout.h
1140                 fixincludes=Makefile.in #On Linux, the headers are ok already.
1141                 gnu_ld=yes
1142                 float_format=i386
1143                 ;;
1144 changequote(,)dnl
1145         i[34567]86-*-linux-gnulibc1)    # Intel 80386's running GNU/Linux
1146 changequote([,])dnl                     # with ELF format using the
1147                                         # GNU/Linux C library 5
1148                 xmake_file=x-linux      
1149                 tm_file=i386/linux.h    
1150                 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
1151                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1152                 fixincludes=Makefile.in #On Linux, the headers are ok already.
1153                 gnu_ld=yes
1154                 float_format=i386
1155                 if test x$enable_threads = xyes; then
1156                         thread_file='single'
1157                 fi
1158                 ;;
1159 changequote(,)dnl
1160         i[34567]86-*-linux-gnu*)        # Intel 80386's running GNU/Linux
1161 changequote([,])dnl                     # with ELF format using glibc 2
1162                                         # aka GNU/Linux C library 6
1163                 xmake_file=x-linux
1164                 tm_file=i386/linux.h
1165                 tmake_file="t-linux i386/t-crtstuff"
1166                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1167                 fixincludes=Makefile.in #On Linux, the headers are ok already.
1168                 gnu_ld=yes
1169                 float_format=i386
1170                 if test x$enable_threads = xyes; then
1171                         thread_file='posix'
1172                 fi
1173                 ;;
1174 changequote(,)dnl
1175         i[34567]86-*-gnu*)
1176 changequote([,])dnl
1177                 ;;
1178 changequote(,)dnl
1179         i[34567]86-go32-msdos | i[34567]86-*-go32*)
1180 changequote([,])dnl
1181                 xm_file=i386/xm-go32.h
1182                 tm_file=i386/go32.h
1183                 tmake_file=i386/t-go32
1184                 ;;
1185 changequote(,)dnl
1186         i[34567]86-pc-msdosdjgpp*)
1187 changequote([,])dnl
1188                 xm_file=i386/xm-go32.h
1189                 tm_file=i386/go32.h
1190                 tmake_file=i386/t-go32
1191                 gnu_ld=yes
1192                 gas=yes
1193                 ;;
1194 changequote(,)dnl
1195         i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1196 changequote([,])dnl
1197                 tm_file=i386/moss.h
1198                 tmake_file=t-libc-ok
1199                 fixincludes=Makefile.in
1200                 gnu_ld=yes
1201                 gas=yes
1202                 ;;
1203 changequote(,)dnl
1204         i[34567]86-*-lynxos*)
1205 changequote([,])dnl
1206                 if test x$gas = xyes
1207                 then
1208                         tm_file=i386/lynx.h
1209                 else
1210                         tm_file=i386/lynx-ng.h
1211                 fi
1212                 xm_file=i386/xm-lynx.h
1213                 tmake_file=i386/t-i386bare
1214                 xmake_file=x-lynx
1215                 ;;
1216 changequote(,)dnl
1217         i[34567]86-*-mach*)
1218 changequote([,])dnl
1219                 tm_file=i386/mach.h
1220 #               tmake_file=t-libc-ok
1221                 use_collect2=yes
1222                 ;;
1223 changequote(,)dnl
1224         i[34567]86-*-osfrose*)          # 386 using OSF/rose
1225 changequote([,])dnl
1226                 if test x$elf = xyes
1227                 then
1228                         tm_file=i386/osfelf.h
1229                         use_collect2=
1230                 else
1231                         tm_file=i386/osfrose.h
1232                         use_collect2=yes
1233                 fi
1234                 xm_file="i386/xm-osf.h ${xm_file}"
1235                 xmake_file=i386/x-osfrose
1236                 tmake_file=i386/t-osf
1237                 extra_objs=halfpic.o
1238                 ;;
1239 changequote(,)dnl
1240         i[34567]86-go32-rtems*)
1241 changequote([,])dnl
1242                 cpu_type=i386
1243                 xm_file=i386/xm-go32.h
1244                 tm_file=i386/go32-rtems.h
1245                 tmake_file="i386/t-go32 t-rtems"
1246                 ;;
1247 changequote(,)dnl
1248         i[34567]86-*-rtemself*)
1249 changequote([,])dnl
1250                 cpu_type=i386
1251                 tm_file=i386/rtemself.h
1252                 tmake_file="i386/t-i386bare t-rtems"
1253                 ;;
1254 changequote(,)dnl
1255         i[34567]86-*-rtems*)
1256 changequote([,])dnl
1257                 cpu_type=i386
1258                 tm_file=i386/rtems.h
1259                 tmake_file="i386/t-i386bare t-rtems"
1260                 ;;
1261 changequote(,)dnl
1262         i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1263 changequote([,])dnl
1264                 xm_file="xm-siglist.h xm-alloca.h ${xm_file} i386/xm-sco5.h"
1265                 xm_defines="USG SVR3"
1266                 xmake_file=i386/x-sco5
1267                 fixincludes=fixinc.sco
1268                 install_headers_dir=install-headers-cpio
1269                 tm_file=i386/sco5.h
1270                 if test x$gas = xyes
1271                 then
1272                         tm_file="i386/sco5gas.h ${tm_file}"
1273                         tmake_file=i386/t-sco5gas
1274                 else
1275                         tmake_file=i386/t-sco5
1276                 fi
1277                 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
1278                 ;;
1279 changequote(,)dnl
1280         i[34567]86-*-sco3.2v4*)         # 80386 running SCO 3.2v4 system
1281 changequote([,])dnl
1282                 xm_file="${xm_file} i386/xm-sco.h"
1283                 xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX NO_SYS_SIGLIST"
1284                 xmake_file=i386/x-sco4
1285                 fixincludes=fixinc.sco
1286                 install_headers_dir=install-headers-cpio
1287                 if test x$stabs = xyes
1288                 then
1289                         tm_file=i386/sco4dbx.h
1290                         tmake_file=i386/t-svr3dbx
1291                         extra_parts="svr3.ifile svr3z.rfile"
1292                 else
1293                         tm_file=i386/sco4.h
1294                         tmake_file=i386/t-crtstuff
1295                         extra_parts="crtbegin.o crtend.o"
1296                 fi
1297                 truncate_target=yes
1298                 ;;
1299 changequote(,)dnl
1300         i[34567]86-*-sco*)              # 80386 running SCO system
1301 changequote([,])dnl
1302                 xm_file=i386/xm-sco.h
1303                 xmake_file=i386/x-sco
1304                 install_headers_dir=install-headers-cpio
1305                 if test x$stabs = xyes
1306                 then
1307                         tm_file=i386/scodbx.h
1308                         tmake_file=i386/t-svr3dbx
1309                         extra_parts="svr3.ifile svr3z.rfile"
1310                 else
1311                         tm_file=i386/sco.h
1312                         extra_parts="crtbegin.o crtend.o"
1313                         tmake_file=i386/t-crtstuff
1314                 fi
1315                 truncate_target=yes
1316                 ;;
1317 changequote(,)dnl
1318         i[34567]86-*-solaris2*)
1319 changequote([,])dnl
1320                 xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
1321                 xm_defines="USG POSIX SMALL_ARG_MAX"
1322                 if test x$stabs = xyes
1323                 then
1324                         tm_file=i386/sol2dbg.h
1325                 else
1326                         tm_file=i386/sol2.h
1327                 fi
1328                 tmake_file=i386/t-sol2
1329                 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1330                 xmake_file=x-svr4
1331                 case $machine in
1332 changequote(,)dnl
1333                 *-*-solaris2.[0-4])
1334 changequote([,])dnl
1335                         fixincludes=fixinc.svr4;;
1336                 *)
1337                         fixincludes=fixinc.wrap;;
1338                 esac
1339                 if test x$enable_threads = xyes; then
1340                         thread_file='solaris'
1341                 fi
1342                 ;;
1343 changequote(,)dnl
1344        i[34567]86-*-sysv5*)           # Intel x86 on System V Release 5
1345 changequote([,])dnl
1346                xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
1347                xm_defines="USG POSIX"
1348                tm_file=i386/sysv4.h
1349                if test x$stabs = xyes
1350                then
1351                        tm_file="${tm_file} dbx.h"
1352                fi
1353                tmake_file=i386/t-crtpic
1354                xmake_file=x-svr4
1355                extra_parts="crtbegin.o crtend.o"
1356                fixincludes=fixinc.svr4
1357                ;;
1358 changequote(,)dnl
1359         i[34567]86-*-sysv4*)            # Intel 80386's running system V.4
1360 changequote([,])dnl
1361                 xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
1362                 xm_defines="USG POSIX SMALL_ARG_MAX"
1363                 tm_file=i386/sysv4.h
1364                 if test x$stabs = xyes
1365                 then
1366                         tm_file="${tm_file} dbx.h"
1367                 fi
1368                 tmake_file=i386/t-crtpic
1369                 xmake_file=x-svr4
1370                 extra_parts="crtbegin.o crtend.o"
1371                 ;;
1372 changequote(,)dnl
1373         i[34567]86-*-udk*)      # Intel x86 on SCO UW/OSR5 Dev Kit
1374 changequote([,])dnl
1375                 xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
1376                 xm_defines="USG POSIX"
1377                 tm_file=i386/udk.h
1378                 tmake_file="i386/t-crtpic i386/t-udk"
1379                 xmake_file=x-svr4
1380                 extra_parts="crtbegin.o crtend.o"
1381                 fixincludes="fixinc.svr4"
1382                 ;;
1383 changequote(,)dnl
1384         i[34567]86-*-osf1*)             # Intel 80386's running OSF/1 1.3+
1385 changequote([,])dnl
1386                 cpu_type=i386
1387                 xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h i386/xm-osf1elf.h"
1388                 xm_defines="USE_C_ALLOCA SMALL_ARG_MAX"
1389                 fixincludes=Makefile.in #Don't do it on OSF/1
1390                 if test x$stabs = xyes
1391                 then
1392                         tm_file=i386/osf1elfgdb.h
1393                 else
1394                         tm_file=i386/osf1elf.h
1395                 fi
1396                 tmake_file=i386/t-osf1elf
1397                 xmake_file=i386/x-osf1elf
1398                 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1399                 ;;
1400 changequote(,)dnl
1401         i[34567]86-*-sysv*)             # Intel 80386's running system V
1402 changequote([,])dnl
1403                 xm_defines="USG SVR3"
1404                 xmake_file=i386/x-sysv3
1405                 if test x$gas = xyes
1406                 then
1407                         if test x$stabs = xyes
1408                         then
1409                                 tm_file=i386/svr3dbx.h
1410                                 tmake_file=i386/t-svr3dbx
1411                                 extra_parts="svr3.ifile svr3z.rfile"
1412                         else
1413                                 tm_file=i386/svr3gas.h
1414                                 extra_parts="crtbegin.o crtend.o"
1415                                 tmake_file=i386/t-crtstuff
1416                         fi
1417                 else
1418                         tm_file=i386/sysv3.h
1419                         extra_parts="crtbegin.o crtend.o"
1420                         tmake_file=i386/t-crtstuff
1421                 fi
1422                 ;;
1423         i386-*-vsta)                    # Intel 80386's running VSTa kernel
1424                 xm_file="${xm_file} i386/xm-vsta.h"
1425                 tm_file=i386/vsta.h
1426                 tmake_file=i386/t-vsta
1427                 xmake_file=i386/x-vsta
1428                 ;;
1429 changequote(,)dnl
1430         i[34567]86-*-win32)
1431 changequote([,])dnl
1432                 xm_file="${xm_file} i386/xm-cygwin32.h"
1433                 tmake_file=i386/t-cygwin32
1434                 tm_file=i386/win32.h
1435                 xmake_file=i386/x-cygwin32
1436                 extra_objs=winnt.o
1437                 fixincludes=Makefile.in
1438                 if test x$enable_threads = xyes; then
1439                         thread_file='win32'
1440                 fi
1441                 exeext=.exe
1442                 ;;
1443 changequote(,)dnl
1444         i[34567]86-*-pe | i[34567]86-*-cygwin32)
1445 changequote([,])dnl
1446                 xm_file="${xm_file} i386/xm-cygwin32.h"
1447                 tmake_file=i386/t-cygwin32
1448                 tm_file=i386/cygwin32.h
1449                 xmake_file=i386/x-cygwin32
1450                 extra_objs=winnt.o
1451                 fixincludes=Makefile.in
1452                 if test x$enable_threads = xyes; then
1453                         thread_file='win32'
1454                 fi
1455                 exeext=.exe
1456                 ;;
1457 changequote(,)dnl
1458         i[34567]86-*-mingw32*)
1459 changequote([,])dnl
1460                 tm_file=i386/mingw32.h
1461                 xm_file="${xm_file} i386/xm-mingw32.h"
1462                 tmake_file="i386/t-cygwin32 i386/t-mingw32"
1463                 extra_objs=winnt.o
1464                 xmake_file=i386/x-cygwin32
1465                 fixincludes=Makefile.in
1466                 if test x$enable_threads = xyes; then
1467                         thread_file='win32'
1468                 fi
1469                 exeext=.exe
1470                 case $machine in
1471                         *mingw32msv*)
1472                                 ;;
1473                         *minwg32crt* | *mingw32*)
1474                                 tm_file="${tm_file} i386/crtdll.h"
1475                                 ;;
1476                 esac
1477                 ;;
1478 changequote(,)dnl
1479         i[34567]86-*-winnt3*)
1480 changequote([,])dnl
1481                 tm_file=i386/win-nt.h
1482                 out_file=i386/i386.c
1483                 xm_file="xm-winnt.h ${xm_file}"
1484                 xmake_file=winnt/x-winnt
1485                 tmake_file=i386/t-winnt
1486                 extra_host_objs="winnt.o oldnames.o"
1487                 extra_gcc_objs="spawnv.o oldnames.o"
1488                 fixincludes=fixinc.winnt
1489                 if test x$gnu_ld != xyes
1490                 then
1491                         extra_programs=ld.exe
1492                 fi
1493                 if test x$enable_threads = xyes; then
1494                         thread_file='win32'
1495                 fi
1496                 ;;
1497 changequote(,)dnl
1498         i[34567]86-dg-dgux*)
1499 changequote([,])dnl
1500                 xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
1501                 xm_defines="USG POSIX"
1502                 out_file=i386/dgux.c
1503                 tm_file=i386/dgux.h
1504                 tmake_file=i386/t-dgux
1505                 xmake_file=i386/x-dgux
1506                 fixincludes=fixinc.dgux
1507                 install_headers_dir=install-headers-cpio
1508               ;;
1509         i860-alliant-*)         # Alliant FX/2800
1510                 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1511                 xm_file="${xm_file}"
1512                 xmake_file=i860/x-fx2800
1513                 tmake_file=i860/t-fx2800
1514                 extra_parts="crtbegin.o crtend.o"
1515                 ;;
1516         i860-*-bsd*)
1517                 tm_file="${tm_file} i860/bsd.h"
1518                 if test x$gas = xyes
1519                 then
1520                         tm_file="${tm_file} i860/bsd-gas.h"
1521                 fi
1522                 use_collect2=yes
1523                 ;;
1524         i860-*-mach*)
1525                 tm_file="${tm_file} i860/mach.h"
1526                 tmake_file=t-libc-ok
1527                 ;;
1528         i860-*-osf*)                    # Intel Paragon XP/S, OSF/1AD
1529                 tm_file="${tm_file} svr3.h i860/paragon.h"
1530                 xm_defines="USG SVR3"
1531                 tmake_file=t-osf
1532                 ;;
1533         i860-*-sysv3*)
1534                 tm_file="${tm_file} svr3.h i860/sysv3.h"
1535                 xm_defines="USG SVR3"
1536                 xmake_file=i860/x-sysv3
1537                 extra_parts="crtbegin.o crtend.o"
1538                 ;;
1539         i860-*-sysv4*)
1540                 tm_file="${tm_file} svr4.h i860/sysv4.h"
1541                 xm_defines="USG SVR3"
1542                 xmake_file=i860/x-sysv4
1543                 tmake_file=t-svr4
1544                 extra_parts="crtbegin.o crtend.o"
1545                 ;;
1546         i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1547                 tm_file="${tm_file} i960/vx960.h"
1548                 tmake_file=i960/t-vxworks960
1549                 use_collect2=yes
1550                 thread_file='vxworks'
1551                 ;;
1552         i960-wrs-vxworks5* | i960-wrs-vxworks)
1553                 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1554                 tmake_file=i960/t-vxworks960
1555                 use_collect2=yes
1556                 thread_file='vxworks'
1557                 ;;
1558         i960-wrs-vxworks*)
1559                 tm_file="${tm_file} i960/vx960.h"
1560                 tmake_file=i960/t-vxworks960
1561                 use_collect2=yes
1562                 thread_file='vxworks'
1563                 ;;
1564         i960-*-coff*)
1565                 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1566                 tmake_file=i960/t-960bare
1567                 use_collect2=yes
1568                 ;;
1569         i960-*-rtems)
1570                 tmake_file="i960/t-960bare t-rtems"
1571                 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
1572                 use_collect2=yes
1573                 ;;
1574         i960-*-*)                       # Default i960 environment.
1575                 use_collect2=yes
1576                 ;;
1577         m32r-*-elf*)
1578                 extra_parts="crtinit.o crtfini.o"
1579                 ;;
1580         m68000-convergent-sysv*)
1581                 tm_file=m68k/ctix.h
1582                 xm_file="m68k/xm-3b1.h ${xm_file}"
1583                 xm_defines=USG
1584                 use_collect2=yes
1585                 extra_headers=math-68881.h
1586                 ;;
1587         m68000-hp-bsd*)                 # HP 9000/200 running BSD
1588                 tm_file=m68k/hp2bsd.h
1589                 xmake_file=m68k/x-hp2bsd
1590                 use_collect2=yes
1591                 extra_headers=math-68881.h
1592                 ;;
1593         m68000-hp-hpux*)                # HP 9000 series 300
1594                 xm_file="xm_alloca.h ${xm_file}"
1595                 xm_defines="USG NO_SYS_SIGLIST"
1596                 if test x$gas = xyes
1597                 then
1598                         xmake_file=m68k/x-hp320g
1599                         tm_file=m68k/hp310g.h
1600                 else
1601                         xmake_file=m68k/x-hp320
1602                         tm_file=m68k/hp310.h
1603                 fi
1604                 install_headers_dir=install-headers-cpio
1605                 use_collect2=yes
1606                 extra_headers=math-68881.h
1607                 ;;
1608         m68000-sun-sunos3*)
1609                 tm_file=m68k/sun2.h
1610                 use_collect2=yes
1611                 extra_headers=math-68881.h
1612                 ;;
1613         m68000-sun-sunos4*)
1614                 tm_file=m68k/sun2o4.h
1615                 use_collect2=yes
1616                 extra_headers=math-68881.h
1617                 ;;
1618         m68000-att-sysv*)
1619                 xm_file="m68k/xm-3b1.h ${xm_file}"
1620                 xm_defines=USG
1621                 if test x$gas = xyes
1622                 then
1623                         tm_file=m68k/3b1g.h
1624                 else
1625                         tm_file=m68k/3b1.h
1626                 fi
1627                 use_collect2=yes
1628                 extra_headers=math-68881.h
1629                 ;;
1630         m68k-apple-aux*)                # Apple Macintosh running A/UX
1631                 xm_defines="USG AUX"
1632                 tmake_file=m68k/t-aux
1633                 install_headers_dir=install-headers-cpio
1634                 extra_headers=math-68881.h
1635                 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
1636                 tm_file=
1637                 if test "$gnu_ld" = yes
1638                 then
1639                         tm_file="${tm_file} m68k/auxgld.h"
1640                 else
1641                         tm_file="${tm_file} m68k/auxld.h"
1642                 fi
1643                 if test "$gas" = yes
1644                 then
1645                         tm_file="${tm_file} m68k/auxgas.h"
1646                 else
1647                         tm_file="${tm_file} m68k/auxas.h"
1648                 fi
1649                 tm_file="${tm_file} m68k/a-ux.h"
1650                 float_format=m68k
1651                 ;;
1652         m68k-apollo-*)
1653                 tm_file=m68k/apollo68.h
1654                 xmake_file=m68k/x-apollo68
1655                 use_collect2=yes
1656                 extra_headers=math-68881.h
1657                 float_format=m68k
1658                 ;;
1659         m68k-altos-sysv*)                  # Altos 3068
1660                 if test x$gas = xyes
1661                 then
1662                         tm_file=m68k/altos3068.h
1663                         xm_defines=USG
1664                 else
1665                         echo "The Altos is supported only with the GNU assembler" 1>&2
1666                         exit 1
1667                 fi
1668                 extra_headers=math-68881.h
1669                 ;;
1670         m68k-bull-sysv*)                # Bull DPX/2
1671                 if test x$gas = xyes
1672                 then
1673                         if test x$stabs = xyes
1674                         then
1675                                 tm_file=m68k/dpx2cdbx.h
1676                         else
1677                                 tm_file=m68k/dpx2g.h
1678                         fi
1679                 else
1680                         tm_file=m68k/dpx2.h
1681                 fi
1682                 xm_file="xm-alloca.h ${xm_file}"
1683                 xm_defines=USG
1684                 xmake_file=m68k/x-dpx2
1685                 use_collect2=yes
1686                 extra_headers=math-68881.h
1687                 ;;
1688         m68k-atari-sysv4*)              # Atari variant of V.4.
1689                 tm_file=m68k/atari.h
1690                 xm_file="xm-alloca.h ${xm_file}"
1691                 xm_defines="USG FULL_PROTOTYPES"
1692                 tmake_file=t-svr4
1693                 extra_parts="crtbegin.o crtend.o"
1694                 extra_headers=math-68881.h
1695                 float_format=m68k
1696                 ;;
1697         m68k-motorola-sysv*)
1698                 tm_file=m68k/mot3300.h
1699                 xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
1700                 xm_defines=NO_SYS_SIGLIST
1701                 if test x$gas = xyes
1702                 then
1703                         xmake_file=m68k/x-mot3300-gas
1704                         if test x$gnu_ld = xyes
1705                         then
1706                                 tmake_file=m68k/t-mot3300-gald
1707                         else
1708                                 tmake_file=m68k/t-mot3300-gas
1709                                 use_collect2=yes
1710                         fi
1711                 else
1712                         xmake_file=m68k/x-mot3300
1713                         if test x$gnu_ld = xyes
1714                         then
1715                                 tmake_file=m68k/t-mot3300-gld
1716                         else
1717                                 tmake_file=m68k/t-mot3300
1718                                 use_collect2=yes
1719                         fi
1720                 fi
1721                 gdb_needs_out_file_path=yes
1722                 extra_parts="crt0.o mcrt0.o"
1723                 extra_headers=math-68881.h
1724                 float_format=m68k
1725                 ;;
1726         m68k-ncr-sysv*)                 # NCR Tower 32 SVR3
1727                 tm_file=m68k/tower-as.h
1728                 xm_defines="USG SVR3"
1729                 xmake_file=m68k/x-tower
1730                 extra_parts="crtbegin.o crtend.o"
1731                 extra_headers=math-68881.h
1732                 ;;
1733         m68k-plexus-sysv*)
1734                 tm_file=m68k/plexus.h
1735                 xm_file="xm-alloca.h m68k/xm-plexus.h ${xm_file}"
1736                 xm_defines=USG
1737                 use_collect2=yes
1738                 extra_headers=math-68881.h
1739                 ;;
1740         m68k-tti-*)
1741                 tm_file=m68k/pbb.h
1742                 xm_file="xm-alloca.h ${xm_file}"
1743                 xm_defines=USG
1744                 extra_headers=math-68881.h
1745                 ;;
1746         m68k-crds-unos*)
1747                 xm_file="xm-alloca.h m68k/xm-crds.h ${xm_file}"
1748                 xm_defines="USG unos"
1749                 xmake_file=m68k/x-crds
1750                 tm_file=m68k/crds.h
1751                 use_collect2=yes
1752                 extra_headers=math-68881.h
1753                 ;;
1754         m68k-cbm-sysv4*)                # Commodore variant of V.4.
1755                 tm_file=m68k/amix.h
1756                 xm_file="xm-alloca.h ${xm_file}"
1757                 xm_defines="USG FULL_PROTOTYPES"
1758                 xmake_file=m68k/x-amix
1759                 tmake_file=t-svr4
1760                 extra_parts="crtbegin.o crtend.o"
1761                 extra_headers=math-68881.h
1762                 float_format=m68k
1763                 ;;
1764         m68k-ccur-rtu)
1765                 tm_file=m68k/ccur-GAS.h
1766                 xmake_file=m68k/x-ccur
1767                 extra_headers=math-68881.h
1768                 use_collect2=yes
1769                 float_format=m68k
1770                 ;;
1771         m68k-hp-bsd4.4*)                # HP 9000/3xx running 4.4bsd
1772                 tm_file=m68k/hp3bsd44.h
1773                 xmake_file=m68k/x-hp3bsd44
1774                 use_collect2=yes
1775                 extra_headers=math-68881.h
1776                 float_format=m68k
1777                 ;;
1778         m68k-hp-bsd*)                   # HP 9000/3xx running Berkeley Unix
1779                 tm_file=m68k/hp3bsd.h
1780                 use_collect2=yes
1781                 extra_headers=math-68881.h
1782                 float_format=m68k
1783                 ;;
1784         m68k-isi-bsd*)
1785                 if test x$with_fp = xno
1786                 then
1787                         tm_file=m68k/isi-nfp.h
1788                 else
1789                         tm_file=m68k/isi.h
1790                         float_format=m68k
1791                 fi
1792                 use_collect2=yes
1793                 extra_headers=math-68881.h
1794                 ;;
1795         m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
1796                 xm_file="xm_alloca.h ${xm_file}"
1797                 xm_defines="USG NO_SYS_SIGLIST"
1798                 if test x$gas = xyes
1799                 then
1800                         xmake_file=m68k/x-hp320g
1801                         tm_file=m68k/hp320g.h
1802                 else
1803                         xmake_file=m68k/x-hp320
1804                         tm_file=m68k/hpux7.h
1805                 fi
1806                 install_headers_dir=install-headers-cpio
1807                 use_collect2=yes
1808                 extra_headers=math-68881.h
1809                 float_format=m68k
1810                 ;;
1811         m68k-hp-hpux*)  # HP 9000 series 300
1812                 xm_file="xm_alloca.h ${xm_file}"
1813                 xm_defines="USG NO_SYS_SIGLIST"
1814                 if test x$gas = xyes
1815                 then
1816                         xmake_file=m68k/x-hp320g
1817                         tm_file=m68k/hp320g.h
1818                 else
1819                         xmake_file=m68k/x-hp320
1820                         tm_file=m68k/hp320.h
1821                 fi
1822                 install_headers_dir=install-headers-cpio
1823                 use_collect2=yes
1824                 extra_headers=math-68881.h
1825                 float_format=m68k
1826                 ;;
1827         m68k-sun-mach*)
1828                 tm_file=m68k/sun3mach.h
1829                 use_collect2=yes
1830                 extra_headers=math-68881.h
1831                 float_format=m68k
1832                 ;;
1833         m68k-sony-newsos3*)
1834                 if test x$gas = xyes
1835                 then
1836                         tm_file=m68k/news3gas.h
1837                 else
1838                         tm_file=m68k/news3.h
1839                 fi
1840                 use_collect2=yes
1841                 extra_headers=math-68881.h
1842                 float_format=m68k
1843                 ;;
1844         m68k-sony-bsd* | m68k-sony-newsos*)
1845                 if test x$gas = xyes
1846                 then
1847                         tm_file=m68k/newsgas.h
1848                 else
1849                         tm_file=m68k/news.h
1850                 fi
1851                 use_collect2=yes
1852                 extra_headers=math-68881.h
1853                 float_format=m68k
1854                 ;;
1855         m68k-next-nextstep2*)
1856                 tm_file=m68k/next21.h
1857                 xm_file="m68k/xm-next.h ${xm_file}"
1858                 tmake_file=m68k/t-next
1859                 xmake_file=m68k/x-next
1860                 extra_objs=nextstep.o
1861                 extra_headers=math-68881.h
1862                 use_collect2=yes
1863                 float_format=m68k
1864                 ;;
1865         m68k-next-nextstep3*)
1866                 tm_file=m68k/next.h
1867                 xm_file="m68k/xm-next.h ${xm_file}"
1868                 tmake_file=m68k/t-next
1869                 xmake_file=m68k/x-next
1870                 extra_objs=nextstep.o
1871                 extra_parts="crtbegin.o crtend.o"
1872                 extra_headers=math-68881.h
1873                 float_format=m68k
1874                 if test x$enable_threads = xyes; then
1875                         thread_file='mach'
1876                 fi
1877                 ;;
1878         m68k-sun-sunos3*)
1879                 if test x$with_fp = xno
1880                 then
1881                         tm_file=m68k/sun3n3.h
1882                 else
1883                         tm_file=m68k/sun3o3.h
1884                         float_format=m68k
1885                 fi
1886                 use_collect2=yes
1887                 extra_headers=math-68881.h
1888                 ;;
1889         m68k-sun-sunos*)                        # For SunOS 4 (the default).
1890                 if test x$with_fp = xno
1891                 then
1892                         tm_file=m68k/sun3n.h
1893                 else
1894                         tm_file=m68k/sun3.h
1895                         float_format=m68k
1896                 fi
1897                 use_collect2=yes
1898                 extra_headers=math-68881.h
1899                 ;;
1900         m68k-wrs-vxworks*)
1901                 tm_file=m68k/vxm68k.h
1902                 tmake_file=m68k/t-vxworks68
1903                 extra_headers=math-68881.h
1904                 thread_file='vxworks'
1905                 float_format=m68k
1906                 ;;
1907         m68k-*-aout*)
1908                 tmake_file=m68k/t-m68kbare
1909                 tm_file="m68k/m68k-aout.h libgloss.h"
1910                 extra_headers=math-68881.h
1911                 float_format=m68k
1912                 ;;
1913         m68k-*-coff*)
1914                 tmake_file=m68k/t-m68kbare
1915                 tm_file="m68k/m68k-coff.h dbx.h libgloss.h"
1916                 extra_headers=math-68881.h
1917                 float_format=m68k
1918                 ;;
1919         m68k-*-lynxos*)
1920                 if test x$gas = xyes
1921                 then
1922                         tm_file=m68k/lynx.h
1923                 else
1924                         tm_file=m68k/lynx-ng.h
1925                 fi
1926                 xm_file=m68k/xm-lynx.h
1927                 xmake_file=x-lynx
1928                 tmake_file=m68k/t-lynx
1929                 extra_headers=math-68881.h
1930                 float_format=m68k
1931                 ;;
1932         m68k*-*-netbsd*)
1933                 tm_file=m68k/netbsd.h
1934                 # On NetBSD, the headers are already okay, except for math.h.
1935                 fixincludes=fixinc.wrap
1936                 tmake_file=t-netbsd
1937                 float_format=m68k
1938                 ;;
1939         m68k-*-sysv3*)                  # Motorola m68k's running system V.3
1940                 xm_file="xm-alloca.h ${xm_file}"
1941                 xm_defines=USG
1942                 xmake_file=m68k/x-m68kv
1943                 extra_parts="crtbegin.o crtend.o"
1944                 extra_headers=math-68881.h
1945                 float_format=m68k
1946                 ;;
1947         m68k-*-sysv4*)                  # Motorola m68k's running system V.4
1948                 tm_file=m68k/m68kv4.h
1949                 xm_file="xm-alloca.h ${xm_file}"
1950                 xm_defines=USG
1951                 tmake_file=t-svr4
1952                 extra_parts="crtbegin.o crtend.o"
1953                 extra_headers=math-68881.h
1954                 float_format=m68k
1955                 ;;
1956         m68k-*-linux-gnuaout*)          # Motorola m68k's running GNU/Linux
1957                                         # with a.out format
1958                 xmake_file=x-linux
1959                 tm_file=m68k/linux-aout.h
1960                 tmake_file="t-linux-aout m68k/t-linux-aout"
1961                 fixincludes=Makefile.in # The headers are ok already.
1962                 extra_headers=math-68881.h
1963                 float_format=m68k
1964                 gnu_ld=yes
1965                 ;;
1966         m68k-*-linux-gnulibc1)          # Motorola m68k's running GNU/Linux
1967                                         # with ELF format using the
1968                                         # GNU/Linux C library 5
1969                 xmake_file=x-linux
1970                 tm_file=m68k/linux.h
1971                 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
1972                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1973                 fixincludes=Makefile.in # The headers are ok already.
1974                 extra_headers=math-68881.h
1975                 float_format=m68k
1976                 gnu_ld=yes
1977                 ;;
1978         m68k-*-linux-gnu*)              # Motorola m68k's running GNU/Linux
1979                                         # with ELF format using glibc 2
1980                                         # aka the GNU/Linux C library 6.
1981                 xmake_file=x-linux
1982                 tm_file=m68k/linux.h
1983                 tmake_file="t-linux m68k/t-linux"
1984                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1985                 fixincludes=Makefile.in # The headers are ok already.
1986                 extra_headers=math-68881.h
1987                 float_format=m68k
1988                 gnu_ld=yes
1989                 if test x$enable_threads = xyes; then
1990                         thread_file='posix'
1991                 fi
1992                 ;;
1993         m68k-*-psos*)
1994                 tmake_file=m68k/t-m68kbare
1995                 tm_file=m68k/m68k-psos.h
1996                 extra_headers=math-68881.h
1997                 float_format=m68k
1998                 ;;
1999         m68k-*-rtems*)
2000                 tmake_file="m68k/t-m68kbare t-rtems"
2001                 tm_file=m68k/rtems.h
2002                 extra_headers=math-68881.h
2003                 float_format=m68k
2004                 ;;
2005
2006         m88k-dg-dgux*)
2007                 case $machine in
2008                   m88k-dg-dguxbcs*)
2009                     tm_file=m88k/dguxbcs.h
2010                     tmake_file=m88k/t-dguxbcs
2011                     ;;
2012                   *)
2013                     tm_file=m88k/dgux.h
2014                     tmake_file=m88k/t-dgux
2015                     ;;
2016                 esac
2017                 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
2018                 xmake_file=m88k/x-dgux
2019                 if test x$gas = xyes
2020                 then
2021                         tmake_file=m88k/t-dgux-gas
2022                 fi
2023                 fixincludes=fixinc.dgux
2024                 ;;
2025         m88k-dolphin-sysv3*)
2026                 tm_file=m88k/dolph.h
2027                 extra_parts="crtbegin.o crtend.o"
2028                 xm_file="m88k/xm-sysv3.h ${xm_file}"
2029                 xmake_file=m88k/x-dolph
2030                 if test x$gas = xyes
2031                 then
2032                         tmake_file=m88k/t-m88k-gas
2033                 fi
2034                 ;;
2035         m88k-tektronix-sysv3)
2036                 tm_file=m88k/tekXD88.h
2037                 extra_parts="crtbegin.o crtend.o"
2038                 xm_file="m88k/xm-sysv3.h ${xm_file}"
2039                 xmake_file=m88k/x-tekXD88
2040                 if test x$gas = xyes
2041                 then
2042                         tmake_file=m88k/t-m88k-gas
2043                 fi
2044                 ;;
2045         m88k-*-aout*)
2046                 tm_file=m88k/m88k-aout.h
2047                 ;;
2048         m88k-*-coff*)
2049                 tm_file=m88k/m88k-coff.h
2050                 tmake_file=m88k/t-bug
2051                 ;;
2052         m88k-*-luna*)
2053                 tm_file=m88k/luna.h
2054                 extra_parts="crtbegin.o crtend.o"
2055                 if test x$gas = xyes
2056                 then
2057                         tmake_file=m88k/t-luna-gas
2058                 else
2059                         tmake_file=m88k/t-luna
2060                 fi
2061                 ;;
2062         m88k-*-sysv3*)
2063                 tm_file=m88k/sysv3.h
2064                 extra_parts="crtbegin.o crtend.o"
2065                 xm_file="m88k/xm-sysv3.h ${xm_file}"
2066                 xmake_file=m88k/x-sysv3
2067                 if test x$gas = xyes
2068                 then
2069                         tmake_file=m88k/t-m88k-gas
2070                 fi
2071                 ;;
2072         m88k-*-sysv4*)
2073                 tm_file=m88k/sysv4.h
2074                 extra_parts="crtbegin.o crtend.o"
2075                 xmake_file=m88k/x-sysv4
2076                 tmake_file=m88k/t-sysv4
2077                 ;;
2078         mips-sgi-irix6*)                # SGI System V.4., IRIX 6
2079                 tm_file=mips/iris6.h
2080                 xm_file=mips/xm-iris6.h
2081                 fixincludes=fixinc.irix
2082                 xmake_file=mips/x-iris6
2083                 tmake_file=mips/t-iris6
2084 #               if test x$enable_threads = xyes; then
2085 #                       thread_file='irix'
2086 #               fi
2087                 ;;
2088         mips-wrs-vxworks)
2089                 tm_file="mips/elf.h libgloss.h"
2090                 tmake_file=mips/t-ecoff
2091                 gas=yes
2092                 gnu_ld=yes
2093                 extra_parts="crtbegin.o crtend.o"
2094 #               thread_file='vxworks'
2095                 ;;
2096         mips-sgi-irix5cross64)          # Irix5 host, Irix 6 target, cross64
2097                 tm_file="mips/iris6.h mips/cross64.h"
2098                 xm_defines=USG
2099                 xm_file="mips/xm-iris5.h"
2100                 fixincludes=Makefile.in
2101                 xmake_file=mips/x-iris
2102                 tmake_file=mips/t-cross64
2103                 # See comment in mips/iris[56].h files.
2104                 use_collect2=yes
2105 #               if test x$enable_threads = xyes; then
2106 #                       thread_file='irix'
2107 #               fi
2108                 ;;
2109         mips-sni-sysv4)
2110                 if test x$gas = xyes
2111                 then
2112                         if test x$stabs = xyes
2113                         then
2114                                 tm_file=mips/iris5gdb.h
2115                         else
2116                                 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2117                         fi
2118                 else
2119                         tm_file=mips/sni-svr4.h
2120                 fi
2121                 xm_defines=USG
2122                 xmake_file=mips/x-sni-svr4
2123                 tmake_file=mips/t-mips-gas
2124                 if test x$gnu_ld != xyes
2125                 then
2126                         use_collect2=yes
2127                 fi
2128                 ;;
2129         mips-sgi-irix5*)                # SGI System V.4., IRIX 5
2130                 if test x$gas = xyes
2131                 then
2132                         tm_file="mips/iris5.h mips/iris5gas.h"
2133                         if test x$stabs = xyes
2134                         then
2135                                 tm_file="${tm_file} dbx.h"
2136                         fi
2137                 else
2138                         tm_file=mips/iris5.h
2139                 fi
2140                 xm_defines=USG
2141                 xm_file="mips/xm-iris5.h"
2142                 fixincludes=fixinc.irix
2143                 xmake_file=mips/x-iris
2144                 # mips-tfile doesn't work yet
2145                 tmake_file=mips/t-mips-gas
2146                 # See comment in mips/iris5.h file.
2147                 use_collect2=yes
2148 #               if test x$enable_threads = xyes; then
2149 #                       thread_file='irix'
2150 #               fi
2151                 ;;
2152         mips-sgi-irix4loser*)           # Mostly like a MIPS.
2153                 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2154                 if test x$stabs = xyes; then
2155                         tm_file="${tm_file} dbx.h"
2156                 fi
2157                 xm_defines=USG
2158                 xmake_file=mips/x-iris
2159                 if test x$gas = xyes
2160                 then
2161                         tmake_file=mips/t-mips-gas
2162                 else
2163                         extra_passes="mips-tfile mips-tdump"
2164                 fi
2165                 if test x$gnu_ld != xyes
2166                 then
2167                         use_collect2=yes
2168                 fi
2169 #               if test x$enable_threads = xyes; then
2170 #                       thread_file='irix'
2171 #               fi
2172                 ;;
2173         mips-sgi-irix4*)                # Mostly like a MIPS.
2174                 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2175                 if test x$stabs = xyes; then
2176                         tm_file="${tm_file} dbx.h"
2177                 fi
2178                 xm_defines=USG
2179                 xmake_file=mips/x-iris
2180                 if test x$gas = xyes
2181                 then
2182                         tmake_file=mips/t-mips-gas
2183                 else
2184                         extra_passes="mips-tfile mips-tdump"
2185                 fi
2186                 if test x$gnu_ld != xyes
2187                 then
2188                         use_collect2=yes
2189                 fi
2190 #               if test x$enable_threads = xyes; then
2191 #                       thread_file='irix'
2192 #               fi
2193                 ;;
2194         mips-sgi-*)                     # Mostly like a MIPS.
2195                 tm_file="mips/iris3.h ${tm_file}"
2196                 if test x$stabs = xyes; then
2197                         tm_file="${tm_file} dbx.h"
2198                 fi
2199                 xm_defines=USG
2200                 xmake_file=mips/x-iris3
2201                 if test x$gas = xyes
2202                 then
2203                         tmake_file=mips/t-mips-gas
2204                 else
2205                         extra_passes="mips-tfile mips-tdump"
2206                 fi
2207                 if test x$gnu_ld != xyes
2208                 then
2209                         use_collect2=yes
2210                 fi
2211                 ;;
2212         mips-dec-osfrose*)              # Decstation running OSF/1 reference port with OSF/rose.
2213                 tm_file="mips/osfrose.h ${tm_file}"
2214                 xmake_file=mips/x-osfrose
2215                 tmake_file=mips/t-osfrose
2216                 extra_objs=halfpic.o
2217                 use_collect2=yes
2218                 ;;
2219         mips-dec-osf*)                  # Decstation running OSF/1 as shipped by DIGITAL
2220                 tm_file=mips/dec-osf1.h
2221                 if test x$stabs = xyes; then
2222                         tm_file="${tm_file} dbx.h"
2223                 fi
2224                 xmake_file=mips/x-dec-osf1
2225                 if test x$gas = xyes
2226                 then
2227                         tmake_file=mips/t-mips-gas
2228                 else
2229                         tmake_file=mips/t-ultrix
2230                         extra_passes="mips-tfile mips-tdump"
2231                 fi
2232                 if test x$gnu_ld != xyes
2233                 then
2234                         use_collect2=yes
2235                 fi
2236                 ;;
2237         mips-dec-bsd*)                  # Decstation running 4.4 BSD
2238               tm_file=mips/dec-bsd.h
2239               fixincludes=
2240               if test x$gas = xyes
2241               then
2242                         tmake_file=mips/t-mips-gas
2243               else
2244                         tmake_file=mips/t-ultrix
2245                         extra_passes="mips-tfile mips-tdump"
2246               fi
2247               if test x$gnu_ld != xyes
2248               then
2249                         use_collect2=yes
2250               fi
2251               ;;
2252         mipsel-*-netbsd* | mips-dec-netbsd*)    # Decstation running NetBSD
2253                 tm_file=mips/netbsd.h
2254                 # On NetBSD, the headers are already okay, except for math.h.
2255                 fixincludes=fixinc.wrap
2256                 tmake_file=t-netbsd
2257                 ;;
2258         mips-sony-bsd* | mips-sony-newsos*)     # Sony NEWS 3600 or risc/news.
2259                 tm_file="mips/news4.h ${tm_file}"
2260                 if test x$stabs = xyes; then
2261                         tm_file="${tm_file} dbx.h"
2262                 fi
2263                 if test x$gas = xyes
2264                 then
2265                         tmake_file=mips/t-mips-gas
2266                 else
2267                         extra_passes="mips-tfile mips-tdump"
2268                 fi
2269                 if test x$gnu_ld != xyes
2270                 then
2271                         use_collect2=yes
2272                 fi
2273                 xmake_file=mips/x-sony
2274                 ;;
2275         mips-sony-sysv*)                # Sony NEWS 3800 with NEWSOS5.0.
2276                                         # That is based on svr4.
2277                 # t-svr4 is not right because this system doesn't use ELF.
2278                 tm_file="mips/news5.h ${tm_file}"
2279                 if test x$stabs = xyes; then
2280                         tm_file="${tm_file} dbx.h"
2281                 fi
2282                 xm_file="xm-siglist.h ${xm_file}"
2283                 xm_defines=USG
2284                 if test x$gas = xyes
2285                 then
2286                         tmake_file=mips/t-mips-gas
2287                 else
2288                         extra_passes="mips-tfile mips-tdump"
2289                 fi
2290                 if test x$gnu_ld != xyes
2291                 then
2292                         use_collect2=yes
2293                 fi
2294                 ;;
2295         mips-tandem-sysv4*)             # Tandem S2 running NonStop UX
2296                 tm_file="mips/svr4-5.h mips/svr4-t.h"
2297                 if test x$stabs = xyes; then
2298                         tm_file="${tm_file} dbx.h"
2299                 fi
2300                 xm_file="xm-siglist.h ${xm_file}"
2301                 xm_defines=USG
2302                 xmake_file=mips/x-sysv
2303                 if test x$gas = xyes
2304                 then
2305                         tmake_file=mips/t-mips-gas
2306                         extra_parts="crtbegin.o crtend.o"
2307                 else
2308                         tmake_file=mips/t-mips
2309                         extra_passes="mips-tfile mips-tdump"
2310                 fi
2311                 if test x$gnu_ld != xyes
2312                 then
2313                         use_collect2=yes
2314                 fi
2315                 ;;
2316         mips-*-ultrix* | mips-dec-mach3)        # Decstation.
2317                 tm_file="mips/ultrix.h ${tm_file}"
2318                 if test x$stabs = xyes; then
2319                         tm_file="${tm_file} dbx.h"
2320                 fi
2321                 xmake_file=mips/x-ultrix
2322                 if test x$gas = xyes
2323                 then
2324                         tmake_file=mips/t-mips-gas
2325                 else
2326                         tmake_file=mips/t-ultrix
2327                         extra_passes="mips-tfile mips-tdump"
2328                 fi
2329                 if test x$gnu_ld != xyes
2330                 then
2331                         use_collect2=yes
2332                 fi
2333                 ;;
2334 changequote(,)dnl
2335         mips-*-riscos[56789]bsd*)
2336 changequote([,])dnl
2337                 tm_file=mips/bsd-5.h    # MIPS BSD 4.3, RISC-OS 5.0
2338                 if test x$stabs = xyes; then
2339                         tm_file="${tm_file} dbx.h"
2340                 fi
2341                 if test x$gas = xyes
2342                 then
2343                         tmake_file=mips/t-bsd-gas
2344                 else
2345                         tmake_file=mips/t-bsd
2346                         extra_passes="mips-tfile mips-tdump"
2347                 fi
2348                 if test x$gnu_ld != xyes
2349                 then
2350                         use_collect2=yes
2351                 fi
2352                 ;;
2353 changequote(,)dnl
2354         mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2355 changequote([,])dnl
2356                 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2357                 if test x$stabs = xyes; then
2358                         tm_file="${tm_file} dbx.h"
2359                 fi
2360                 if test x$gas = xyes
2361                 then
2362                         tmake_file=mips/t-bsd-gas
2363                 else
2364                         tmake_file=mips/t-bsd
2365                         extra_passes="mips-tfile mips-tdump"
2366                 fi
2367                 if test x$gnu_ld != xyes
2368                 then
2369                         use_collect2=yes
2370                 fi
2371                 ;;
2372 changequote(,)dnl
2373         mips-*-riscos[56789]sysv4*)
2374 changequote([,])dnl
2375                 tm_file=mips/svr4-5.h   # MIPS System V.4., RISC-OS 5.0
2376                 if test x$stabs = xyes; then
2377                         tm_file="${tm_file} dbx.h"
2378                 fi
2379                 xm_file="xm-siglist.h ${xm_file}"
2380                 xmake_file=mips/x-sysv
2381                 if test x$gas = xyes
2382                 then
2383                         tmake_file=mips/t-svr4-gas
2384                 else
2385                         tmake_file=mips/t-svr4
2386                         extra_passes="mips-tfile mips-tdump"
2387                 fi
2388                 if test x$gnu_ld != xyes
2389                 then
2390                         use_collect2=yes
2391                 fi
2392                 ;;
2393 changequote(,)dnl
2394         mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2395 changequote([,])dnl
2396                 tm_file="mips/svr4-4.h ${tm_file}"
2397                 if test x$stabs = xyes; then
2398                         tm_file="${tm_file} dbx.h"
2399                 fi
2400                 xm_defines=USG
2401                 xmake_file=mips/x-sysv
2402                 if test x$gas = xyes
2403                 then
2404                         tmake_file=mips/t-svr4-gas
2405                 else
2406                         tmake_file=mips/t-svr4
2407                         extra_passes="mips-tfile mips-tdump"
2408                 fi
2409                 if test x$gnu_ld != xyes
2410                 then
2411                         use_collect2=yes
2412                 fi
2413                 ;;
2414 changequote(,)dnl
2415         mips-*-riscos[56789]sysv*)
2416 changequote([,])dnl
2417                 tm_file=mips/svr3-5.h   # MIPS System V.3, RISC-OS 5.0
2418                 if test x$stabs = xyes; then
2419                         tm_file="${tm_file} dbx.h"
2420                 fi
2421                 xm_defines=USG
2422                 xmake_file=mips/x-sysv
2423                 if test x$gas = xyes
2424                 then
2425                         tmake_file=mips/t-svr3-gas
2426                 else
2427                         tmake_file=mips/t-svr3
2428                         extra_passes="mips-tfile mips-tdump"
2429                 fi
2430                 if test x$gnu_ld != xyes
2431                 then
2432                         use_collect2=yes
2433                 fi
2434                 ;;
2435         mips-*-sysv* | mips-*-riscos*sysv*)
2436                 tm_file="mips/svr3-4.h ${tm_file}"
2437                 if test x$stabs = xyes; then
2438                         tm_file="${tm_file} dbx.h"
2439                 fi
2440                 xm_defines=USG
2441                 xmake_file=mips/x-sysv
2442                 if test x$gas = xyes
2443                 then
2444                         tmake_file=mips/t-svr3-gas
2445                 else
2446                         tmake_file=mips/t-svr3
2447                         extra_passes="mips-tfile mips-tdump"
2448                 fi
2449                 if test x$gnu_ld != xyes
2450                 then
2451                         use_collect2=yes
2452                 fi
2453                 ;;
2454 changequote(,)dnl
2455         mips-*-riscos[56789]*)          # Default MIPS RISC-OS 5.0.
2456 changequote([,])dnl
2457                 tm_file=mips/mips-5.h
2458                 if test x$stabs = xyes; then
2459                         tm_file="${tm_file} dbx.h"
2460                 fi
2461                 if test x$gas = xyes
2462                 then
2463                         tmake_file=mips/t-mips-gas
2464                 else
2465                         extra_passes="mips-tfile mips-tdump"
2466                 fi
2467                 if test x$gnu_ld != xyes
2468                 then
2469                         use_collect2=yes
2470                 fi
2471                 ;;
2472         mips-*-gnu*)
2473                 ;;
2474         mipsel-*-ecoff*)
2475                 tm_file=mips/ecoffl.h
2476                 if test x$stabs = xyes; then
2477                         tm_file="${tm_file} dbx.h"
2478                 fi
2479                 tmake_file=mips/t-ecoff
2480                 ;;
2481         mips-*-ecoff*)
2482                 tm_file="gofast.h mips/ecoff.h"
2483                 if test x$stabs = xyes; then
2484                         tm_file="${tm_file} dbx.h"
2485                 fi
2486                 tmake_file=mips/t-ecoff
2487                 ;;
2488         mipsel-*-elf*)
2489                 tm_file="mips/elfl.h libgloss.h"
2490                 tmake_file=mips/t-ecoff
2491                 ;;
2492         mips-*-elf*)
2493                 tm_file="mips/elf.h libgloss.h"
2494                 tmake_file=mips/t-ecoff
2495                 ;;
2496         mips64el-*-elf*)
2497                 tm_file="mips/elfl64.h libgloss.h"
2498                 tmake_file=mips/t-ecoff
2499                 ;;
2500         mips64orionel-*-elf*)
2501                 tm_file="mips/elforion.h mips/elfl64.h libgloss.h"
2502                 tmake_file=mips/t-ecoff
2503                 ;;
2504         mips64-*-elf*)
2505                 tm_file="mips/elf64.h libgloss.h"
2506                 tmake_file=mips/t-ecoff
2507                 ;;
2508         mips64orion-*-elf*)
2509                 tm_file="mips/elforion.h mips/elf64.h libgloss.h"
2510                 tmake_file=mips/t-ecoff
2511                 ;;
2512         mips64orion-*-rtems*)
2513                 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
2514                 tmake_file="mips/t-ecoff t-rtems"
2515                 ;;
2516         mipstx39el-*-elf*)
2517                 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h libgloss.h"
2518                 tmake_file=mips/t-r3900
2519                 ;;
2520         mipstx39-*-elf*)
2521                 tm_file="mips/r3900.h mips/elf.h mips/abi64.h libgloss.h"
2522                 tmake_file=mips/t-r3900
2523                 # FIXME mips-elf should be fixed to use crtstuff.
2524                 use_collect2=yes
2525                 ;;
2526         mips-*-*)                               # Default MIPS RISC-OS 4.0.
2527                 if test x$stabs = xyes; then
2528                         tm_file="${tm_file} dbx.h"
2529                 fi
2530                 if test x$gas = xyes
2531                 then
2532                         tmake_file=mips/t-mips-gas
2533                 else
2534                         extra_passes="mips-tfile mips-tdump"
2535                 fi
2536                 if test x$gnu_ld != xyes
2537                 then
2538                         use_collect2=yes
2539                 fi
2540                 ;;
2541         mn10200-*-*)
2542                 cpu_type=mn10200
2543                 tm_file="mn10200/mn10200.h"
2544                 if test x$stabs = xyes
2545                 then
2546                         tm_file="${tm_file} dbx.h"
2547                 fi
2548                 use_collect2=no
2549                 ;;
2550         mn10300-*-*)
2551                 cpu_type=mn10300
2552                 tm_file="mn10300/mn10300.h"
2553                 if test x$stabs = xyes
2554                 then
2555                         tm_file="${tm_file} dbx.h"
2556                 fi
2557                 use_collect2=no
2558                 ;;
2559         ns32k-encore-bsd*)
2560                 tm_file=ns32k/encore.h
2561                 use_collect2=yes
2562                 ;;
2563         ns32k-sequent-bsd*)
2564                 tm_file=ns32k/sequent.h
2565                 use_collect2=yes
2566                 ;;
2567         ns32k-tek6100-bsd*)
2568                 tm_file=ns32k/tek6100.h
2569                 use_collect2=yes
2570                 ;;
2571         ns32k-tek6200-bsd*)
2572                 tm_file=ns32k/tek6200.h
2573                 use_collect2=yes
2574                 ;;
2575 # This has not been updated to GCC 2.
2576 #       ns32k-ns-genix*)
2577 #               xm_defines=USG
2578 #               xmake_file=ns32k/x-genix
2579 #               tm_file=ns32k/genix.h
2580 #               use_collect2=yes
2581 #               ;;
2582         ns32k-merlin-*)
2583                 tm_file=ns32k/merlin.h
2584                 use_collect2=yes
2585                 ;;
2586         ns32k-pc532-mach*)
2587                 tm_file=ns32k/pc532-mach.h
2588                 use_collect2=yes
2589                 ;;
2590         ns32k-pc532-minix*)
2591                 tm_file=ns32k/pc532-min.h
2592                 xm_file="ns32k/xm-pc532-min.h ${xm-file}"
2593                 xm_defines=USG
2594                 use_collect2=yes
2595                 ;;
2596         ns32k-*-netbsd*)
2597                 tm_file=ns32k/netbsd.h
2598                 xm_file="ns32k/xm-netbsd.h ${xm_file}"
2599                 # On NetBSD, the headers are already okay, except for math.h.
2600                 fixincludes=fixinc.wrap
2601                 tmake_file=t-netbsd
2602                 ;;
2603         pdp11-*-bsd)
2604                 tm_file="${tm_file} pdp11/2bsd.h"
2605                 ;;
2606         pdp11-*-*)
2607                 ;;
2608         pyramid-*-*)
2609                 cpu_type=pyr
2610                 xmake_file=pyr/x-pyr
2611                 use_collect2=yes
2612                 ;;
2613         romp-*-aos*)
2614                 use_collect2=yes
2615                 ;;
2616         romp-*-mach*)
2617                 xmake_file=romp/x-mach
2618                 use_collect2=yes
2619                 ;;
2620         powerpc-*-beos*)
2621                 cpu_type=rs6000
2622                 tm_file=rs6000/beos.h
2623                 xm_file=rs6000/xm-beos.h
2624                 tmake_file=rs6000/t-beos
2625                 xmake_file=rs6000/x-beos
2626                 ;;
2627         powerpc-*-sysv* | powerpc-*-elf*)
2628                 tm_file=rs6000/sysv4.h
2629                 xm_file="xm-siglist.h rs6000/xm-sysv4.h"
2630                 xm_defines="USG POSIX"
2631                 extra_headers=ppc-asm.h
2632                 if test x$gas = xyes
2633                 then
2634                         tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2635                 else
2636                         tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2637                 fi
2638                 xmake_file=rs6000/x-sysv4
2639                 ;;
2640         powerpc-*-eabiaix*)
2641                 tm_file=rs6000/eabiaix.h
2642                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2643                 fixincludes=Makefile.in
2644                 extra_headers=ppc-asm.h
2645                 ;;
2646         powerpc-*-eabisim*)
2647                 tm_file=rs6000/eabisim.h
2648                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2649                 fixincludes=Makefile.in
2650                 extra_headers=ppc-asm.h
2651                 ;;
2652         powerpc-*-eabi*)
2653                 tm_file=rs6000/eabi.h
2654                 if test x$gas = xyes
2655                 then
2656                         tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2657                 else
2658                         tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2659                 fi
2660                 fixincludes=Makefile.in
2661                 extra_headers=ppc-asm.h
2662                 ;;
2663         powerpc-*-rtems*)
2664                 tm_file=rs6000/rtems.h
2665                 if test x$gas = xyes
2666                 then
2667                      tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
2668                 else
2669                      tmake_file="rs6000/t-ppc t-rtems rs6000/t-ppccomm"
2670                 fi
2671                 fixincludes=Makefile.in
2672                 extra_headers=ppc-asm.h
2673                 ;;
2674         powerpc-*-linux-gnulibc1)
2675                 tm_file=rs6000/linux.h
2676                 xm_file=rs6000/xm-sysv4.h
2677                 out_file=rs6000/rs6000.c
2678                 if test x$gas = xyes
2679                 then
2680                         tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
2681                 else
2682                         tmake_file="rs6000/t-ppc t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
2683                 fi
2684                 xmake_file=x-linux
2685                 fixincludes=Makefile.in
2686                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2687                 extra_headers=ppc-asm.h
2688                 if test x$enable_threads = xyes; then
2689                         thread_file='posix'
2690                 fi
2691                 ;;
2692         powerpc-*-linux-gnu*)
2693                 tm_file=rs6000/linux.h
2694                 xm_file="xm-siglist.h rs6000/xm-sysv4.h"
2695                 xm_defines="USG ${xm_defines}"
2696                 out_file=rs6000/rs6000.c
2697                 if test x$gas = xyes
2698                 then
2699                         tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
2700                 else
2701                         tmake_file="rs6000/t-ppc t-linux rs6000/t-ppccomm"
2702                 fi
2703                 xmake_file=x-linux
2704                 fixincludes=Makefile.in
2705                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2706                 extra_headers=ppc-asm.h
2707                 if test x$enable_threads = xyes; then
2708                         thread_file='posix'
2709                 fi
2710                 ;;
2711         powerpc-wrs-vxworks*)
2712                 cpu_type=rs6000
2713                 xm_file="xm-siglist.h rs6000/xm-sysv4.h"
2714                 xm_defines="USG POSIX"
2715                 tm_file=rs6000/vxppc.h
2716                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2717                 extra_headers=ppc-asm.h
2718                 thread_file='vxworks'
2719                 ;;
2720         powerpcle-*-sysv* | powerpcle-*-elf*)
2721                 tm_file=rs6000/sysv4le.h
2722                 xm_file="xm-siglist.h rs6000/xm-sysv4.h"
2723                 xm_defines="USG POSIX"
2724                 if test x$gas = xyes
2725                 then
2726                         tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2727                 else
2728                         tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2729                 fi
2730                 xmake_file=rs6000/x-sysv4
2731                 extra_headers=ppc-asm.h
2732                 ;;
2733         powerpcle-*-eabisim*)
2734                 tm_file=rs6000/eabilesim.h
2735                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2736                 fixincludes=Makefile.in
2737                 extra_headers=ppc-asm.h
2738                 ;;
2739         powerpcle-*-eabi*)
2740                 tm_file=rs6000/eabile.h
2741                 if test x$gas = xyes
2742                 then
2743                         tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2744                 else
2745                         tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2746                 fi
2747                 fixincludes=Makefile.in
2748                 extra_headers=ppc-asm.h
2749                 ;;
2750         powerpcle-*-winnt* )
2751                 tm_file=rs6000/win-nt.h
2752                 tmake_file=rs6000/t-winnt
2753 #               extra_objs=pe.o
2754                 fixincludes=Makefile.in
2755                 if test x$enable_threads = xyes; then
2756                         thread_file='win32'
2757                 fi
2758                 extra_headers=ppc-asm.h
2759                 ;;
2760         powerpcle-*-pe | powerpcle-*-cygwin32)
2761                 tm_file=rs6000/cygwin32.h
2762                 xm_file="rs6000/xm-cygwin32.h ${xm_file}"
2763                 tmake_file=rs6000/t-winnt
2764                 xmake_file=rs6000/x-cygwin32
2765 #               extra_objs=pe.o
2766                 fixincludes=Makefile.in
2767                 if test x$enable_threads = xyes; then
2768                         thread_file='win32'
2769                 fi
2770                 exeext=.exe
2771                 extra_headers=ppc-asm.h
2772                 ;;
2773         powerpcle-*-solaris2*)
2774                 tm_file=rs6000/sol2.h
2775                 xm_file="xm-siglist.h rs6000/xm-sysv4.h"
2776                 xm_defines="USG POSIX"
2777                 if test x$gas = xyes
2778                 then
2779                         tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2780                 else
2781                         tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2782                 fi
2783                 xmake_file=rs6000/x-sysv4
2784                 case $machine in
2785 changequote(,)dnl
2786                 *-*-solaris2.[0-4])
2787 changequote([,])dnl
2788                         fixincludes=fixinc.svr4;;
2789                 *)
2790                         fixincludes=fixinc.wrap;;
2791                 esac
2792                 extra_headers=ppc-asm.h
2793                 ;;
2794 changequote(,)dnl
2795         rs6000-ibm-aix3.[01]*)
2796 changequote([,])dnl
2797                 tm_file=rs6000/aix31.h
2798                 xmake_file=rs6000/x-aix31
2799                 use_collect2=yes
2800                 ;;
2801 changequote(,)dnl
2802         rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
2803 changequote([,])dnl
2804                 tm_file=rs6000/aix3newas.h
2805                 if test x$host != x$target
2806                 then
2807                         tmake_file=rs6000/t-xnewas
2808                 else
2809                         tmake_file=rs6000/t-newas
2810                 fi
2811                 use_collect2=yes
2812                 ;;
2813 changequote(,)dnl
2814         rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
2815 changequote([,])dnl
2816                 tm_file=rs6000/aix41.h
2817                 if test x$host != x$target
2818                 then
2819                         tmake_file=rs6000/t-xnewas
2820                 else
2821                         tmake_file=rs6000/t-newas
2822                 fi
2823                 xmake_file=rs6000/x-aix41
2824                 use_collect2=yes
2825                 ;;
2826 changequote(,)dnl
2827         rs6000-ibm-aix4.[3456789].* | powerpc-ibm-aix4.[3456789].*)
2828 changequote([,])dnl
2829                 tm_file=rs6000/aix43.h
2830                 if test x$host != x$target
2831                 then
2832                         tmake_file=rs6000/t-xaix43
2833                 else
2834                         tmake_file=rs6000/t-aix43
2835                 fi
2836                 xmake_file=rs6000/x-aix43
2837                 use_collect2=yes
2838                 ;;
2839 changequote(,)dnl
2840         rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
2841 changequote([,])dnl
2842                 tm_file=rs6000/aix43.h
2843                 if test x$host != x$target
2844                 then
2845                         tmake_file=rs6000/t-xaix43
2846                 else
2847                         tmake_file=rs6000/t-aix43
2848                 fi
2849                 xmake_file=rs6000/x-aix43
2850                 use_collect2=yes
2851                 ;;
2852         rs6000-ibm-aix*)
2853                 use_collect2=yes
2854                 ;;
2855         rs6000-bull-bosx)
2856                 use_collect2=yes
2857                 ;;
2858         rs6000-*-mach*)
2859                 tm_file=rs6000/mach.h
2860                 xm_file="${xm_file} rs6000/xm-mach.h"
2861                 xmake_file=rs6000/x-mach
2862                 use_collect2=yes
2863                 ;;
2864         rs6000-*-lynxos*)
2865                 tm_file=rs6000/lynx.h
2866                 xm_file=rs6000/xm-lynx.h
2867                 tmake_file=rs6000/t-rs6000
2868                 xmake_file=rs6000/x-lynx
2869                 use_collect2=yes
2870                 ;;
2871         sh-*-elf*)
2872                 tm_file=sh/elf.h
2873                 float_format=sh
2874                 ;;
2875         sh-*-rtemself*)
2876                 tmake_file="sh/t-sh t-rtems"
2877                 tm_file=sh/rtemself.h
2878                 float_format=sh
2879                 ;;
2880         sh-*-rtems*)
2881                 tmake_file="sh/t-sh t-rtems"
2882                 tm_file=sh/rtems.h
2883                 float_format=sh
2884                 ;;
2885         sh-*-*)
2886                 float_format=sh
2887                 ;;
2888         sparc-tti-*)
2889                 tm_file=sparc/pbd.h
2890                 xm_file="xm-alloca.h ${xm_file}"
2891                 xm_defines=USG
2892                 ;;
2893         sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
2894                 tm_file=sparc/vxsparc.h
2895                 tmake_file=sparc/t-vxsparc
2896                 use_collect2=yes
2897                 thread_file='vxworks'
2898                 ;;
2899         sparc-*-aout*)
2900                 tmake_file=sparc/t-sparcbare
2901                 tm_file="sparc/aout.h libgloss.h"
2902                 ;;
2903         sparc-*-netbsd*)
2904                 tm_file=sparc/netbsd.h
2905                 # On NetBSD, the headers are already okay, except for math.h.
2906                 fixincludes=fixinc.wrap
2907                 tmake_file=t-netbsd
2908                 ;;
2909         sparc-*-bsd*)
2910                 tm_file=sparc/bsd.h
2911                 ;;
2912         sparc-*-elf*)
2913                 tm_file=sparc/elf.h
2914                 tmake_file=sparc/t-elf
2915                 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2916                 #float_format=i128
2917                 float_format=i64
2918                 ;;
2919         sparc-*-linux-gnuaout*)         # Sparc's running GNU/Linux, a.out
2920                 xm_file="${xm_file} sparc/xm-linux.h"
2921                 tm_file=sparc/linux-aout.h
2922                 xmake_file=x-linux
2923                 fixincludes=Makefile.in #On Linux, the headers are ok already.
2924                 gnu_ld=yes
2925                 ;;
2926         sparc-*-linux-gnulibc1*)        # Sparc's running GNU/Linux, libc5
2927                 xm_file="${xm_file} sparc/xm-linux.h"
2928                 xmake_file=x-linux
2929                 tm_file=sparc/linux.h
2930                 tmake_file="t-linux t-linux-gnulibc1"
2931                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2932                 fixincludes=Makefile.in #On Linux, the headers are ok already.
2933                 gnu_ld=yes
2934                 ;;
2935         sparc-*-linux-gnu*)             # Sparc's running GNU/Linux, libc6
2936                 xm_file="${xm_file} sparc/xm-linux.h"
2937                 xmake_file=x-linux
2938                 tm_file=sparc/linux.h
2939                 tmake_file="t-linux"
2940                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2941                 fixincludes=Makefile.in #On Linux, the headers are ok already.
2942                 gnu_ld=yes
2943                 if test x$enable_threads = xyes; then
2944                         thread_file='posix'
2945                 fi
2946                 ;;
2947         sparc-*-lynxos*)
2948                 if test x$gas = xyes
2949                 then
2950                         tm_file=sparc/lynx.h
2951                 else
2952                         tm_file=sparc/lynx-ng.h
2953                 fi
2954                 xm_file=sparc/xm-lynx.h
2955                 tmake_file=sparc/t-sunos41
2956                 xmake_file=x-lynx
2957                 ;;
2958         sparc-*-rtems*)
2959                 tmake_file="sparc/t-sparcbare t-rtems"
2960                 tm_file=sparc/rtems.h
2961                 ;;
2962         sparcv9-*-solaris2*)
2963                 tm_file=sparc/sol2-sld-64.h
2964                 xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
2965                 xm_defines="USG POSIX"
2966                 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
2967                 xmake_file=sparc/x-sysv4
2968                 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
2969                 fixincludes=fixinc.wrap
2970                 float_format=i128
2971                 if test x${enable_threads} = x ; then
2972                     enable_threads=$have_pthread_h
2973                     if test x${enable_threads} = x ; then
2974                         enable_threads=$have_thread_h
2975                     fi
2976                 fi
2977                 if test x${enable_threads} = xyes ; then
2978                     if test x${have_pthread_h} = xyes ; then
2979                         thread_file='posix'
2980                     else
2981                         thread_file='solaris'
2982                     fi
2983                 fi
2984                 ;;
2985         sparc-*-solaris2*)
2986                 if test x$gnu_ld = xyes
2987                 then
2988                         tm_file=sparc/sol2.h
2989                 else
2990                         tm_file=sparc/sol2-sld.h
2991                 fi
2992                 xm_file="xm-siglist.h sparc/xm-sysv4.h sparc/xm-sol2.h"
2993                 xm_defines="USG POSIX"
2994                 tmake_file=sparc/t-sol2
2995                 xmake_file=sparc/x-sysv4
2996                 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
2997                 case $machine in
2998 changequote(,)dnl
2999                 *-*-solaris2.[0-4])
3000 changequote([,])dnl
3001                         fixincludes=fixinc.svr4;;
3002                 *)
3003                         fixincludes=fixinc.wrap;;
3004                 esac
3005                 float_format=i128
3006                 if test x${enable_threads} = x; then
3007                     enable_threads=$have_pthread_h
3008                     if test x${enable_threads} = x; then
3009                         enable_threads=$have_thread_h
3010                     fi
3011                 fi
3012                 if test x${enable_threads} = xyes; then
3013                     if test x${have_pthread_h} = xyes; then
3014                         thread_file='posix'
3015                     else
3016                         thread_file='solaris'
3017                     fi
3018                 fi
3019                 ;;
3020         sparc-*-sunos4.0*)
3021                 tm_file=sparc/sunos4.h
3022                 tmake_file=sparc/t-sunos40
3023                 use_collect2=yes
3024                 ;;
3025         sparc-*-sunos4*)
3026                 tm_file=sparc/sunos4.h
3027                 tmake_file=sparc/t-sunos41
3028                 use_collect2=yes
3029                 if test x$gas = xyes; then
3030                         tm_file="${tm_file} sparc/sun4gas.h"
3031                 fi
3032                 ;;
3033         sparc-*-sunos3*)
3034                 tm_file=sparc/sun4o3.h
3035                 use_collect2=yes
3036                 ;;
3037         sparc-*-sysv4*)
3038                 tm_file=sparc/sysv4.h
3039                 xm_file="xm-siglist.h sparc/xm-sysv4.h"
3040                 xm_defines="USG POSIX"
3041                 tmake_file=t-svr4
3042                 xmake_file=sparc/x-sysv4
3043                 extra_parts="crtbegin.o crtend.o"
3044                 ;;
3045         sparc-*-vxsim*)
3046                 xm_file="xm-siglist.h sparc/xm-sysv4.h sparc/xm-sol2.h"
3047                 xm_defines="USG POSIX"
3048                 tm_file=sparc/vxsim.h
3049                 tmake_file=sparc/t-vxsparc
3050                 xmake_file=sparc/x-sysv4
3051                 ;;
3052         sparclet-*-aout*)
3053                 tm_file="sparc/splet.h libgloss.h"
3054                 tmake_file=sparc/t-splet
3055                 ;;
3056         sparclite-*-coff*)
3057                 tm_file="sparc/litecoff.h libgloss.h"
3058                 tmake_file=sparc/t-sparclite
3059                 ;;
3060         sparclite-*-aout*)
3061                 tm_file="sparc/lite.h aoutos.h libgloss.h"
3062                 tmake_file=sparc/t-sparclite
3063                 ;;
3064         sparc64-*-aout*)
3065                 tmake_file=sparc/t-sp64
3066                 tm_file=sparc/sp64-aout.h
3067                 ;;
3068         sparc64-*-elf*)
3069                 tmake_file=sparc/t-sp64
3070                 tm_file=sparc/sp64-elf.h
3071                 extra_parts="crtbegin.o crtend.o"
3072                 ;;
3073         sparc64-*-linux*)               # 64-bit Sparc's running GNU/Linux
3074                 tmake_file="t-linux sparc/t-linux64"
3075                 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
3076                 tm_file=sparc/linux64.h
3077                 xmake_file=x-linux
3078                 fixincludes=Makefile.in # The headers are ok already.
3079                 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3080                 gnu_ld=yes
3081                 ;;
3082 # This hasn't been upgraded to GCC 2.
3083 #       tahoe-harris-*)                 # Harris tahoe, using COFF.
3084 #               tm_file=tahoe/harris.h
3085 #               ;;
3086 #       tahoe-*-bsd*)                   # tahoe running BSD
3087 #               ;;
3088         thumb-*-coff* | thumbel-*-coff*)
3089                 tm_file=arm/tcoff.h
3090                 out_file=arm/thumb.c
3091                 xm_file=arm/xm-thumb.h
3092                 md_file=arm/thumb.md
3093                 tmake_file=arm/t-thumb
3094                 fixincludes=Makefile.in # There is nothing to fix
3095                 ;;
3096 # This hasn't been upgraded to GCC 2.
3097 #       tron-*-*)
3098 #               cpu_type=gmicro
3099 #               use_collect2=yes
3100 #               ;;
3101         v850-*-*)
3102                 cpu_type=v850
3103                 tm_file="v850/v850.h"
3104                 xm_file="v850/xm-v850.h"
3105                 tmake_file=v850/t-v850
3106                 if test x$stabs = xyes
3107                 then
3108                         tm_file="${tm_file} dbx.h"
3109                 fi
3110                 use_collect2=no
3111                 ;;
3112         vax-*-bsd*)                     # vaxen running BSD
3113                 use_collect2=yes
3114                 float_format=vax
3115                 ;;
3116         vax-*-sysv*)                    # vaxen running system V
3117                 tm_file="${tm_file} vax/vaxv.h"
3118                 xm_defines=USG
3119                 float_format=vax
3120                 ;;
3121         vax-*-netbsd*)
3122                 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3123                 # On NetBSD, the headers are already okay, except for math.h.
3124                 fixincludes=fixinc.wrap
3125                 tmake_file=t-netbsd
3126                 float_format=vax
3127                 ;;
3128         vax-*-ultrix*)                  # vaxen running ultrix
3129                 tm_file="${tm_file} vax/ultrix.h"
3130                 use_collect2=yes
3131                 float_format=vax
3132                 ;;
3133         vax-*-vms*)                     # vaxen running VMS
3134                 xm_file=vax/xm-vms.h
3135                 tm_file=vax/vms.h
3136                 float_format=vax
3137                 ;;
3138         vax-*-*)                        # vax default entry
3139                 float_format=vax
3140                 ;;
3141         we32k-att-sysv*)
3142                 xm_file="${xm_file} xm-svr3"
3143                 use_collect2=yes
3144                 ;;
3145         *)
3146                 echo "Configuration $machine not supported" 1>&2
3147                 exit 1
3148                 ;;
3149         esac
3150
3151         case $machine in
3152         *-*-linux-gnu*)
3153                 ;; # Existing GNU/Linux systems do not use the GNU setup.
3154         *-*-gnu*)
3155                 # On the GNU system, the setup is just about the same on
3156                 # each different CPU.  The specific machines that GNU
3157                 # supports are matched above and just set $cpu_type.
3158                 xm_file="xm-gnu.h ${xm_file}"
3159                 tm_file=${cpu_type}/gnu.h
3160                 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
3161                 # GNU always uses ELF.
3162                 elf=yes
3163                 # GNU tools are the only tools.
3164                 gnu_ld=yes
3165                 gas=yes
3166                 # On GNU, the headers are already okay.
3167                 fixincludes=Makefile.in
3168                 xmake_file=x-linux      # These details are the same as Linux.
3169                 tmake_file=t-gnu        # These are not.
3170                 ;;
3171         *-*-sysv4*)
3172                 fixincludes=fixinc.svr4
3173                 xmake_try_sysv=x-sysv
3174                 install_headers_dir=install-headers-cpio
3175                 ;;
3176         *-*-sysv*)
3177                 install_headers_dir=install-headers-cpio
3178                 ;;
3179         esac
3180
3181         # Distinguish i[34567]86
3182         # Also, do not run mips-tfile on MIPS if using gas.
3183         # Process --with-cpu= for PowerPC/rs6000
3184         target_cpu_default2=
3185         case $machine in
3186         i486-*-*)
3187                 target_cpu_default2=1
3188                 ;;
3189         i586-*-*)
3190                 target_cpu_default2=2
3191                 ;;
3192         i686-*-* | i786-*-*)
3193                 target_cpu_default2=3
3194                 ;;
3195         alpha*-*-*)
3196                 case $machine in
3197                         alphaev6*)
3198                                 target_cpu_default2="MASK_CPU_EV6|MASK_BXW|MASK_CIX|MASK_MAX"
3199                                 ;;
3200                         alphapca56*)
3201                                 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3202                                 ;;
3203                         alphaev56*)
3204                                 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3205                                 ;;
3206                         alphaev5*)
3207                                 target_cpu_default2="MASK_CPU_EV5"
3208                                 ;;
3209                 esac
3210                                 
3211                 if test x$gas = xyes
3212                 then
3213                         if test "$target_cpu_default2" = ""
3214                         then
3215                                 target_cpu_default2="MASK_GAS"
3216                         else
3217                                 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3218                         fi
3219                 fi
3220                 ;;
3221         arm*-*-*)
3222                 case "x$with_cpu" in
3223                         x)
3224                                 # The most generic
3225                                 target_cpu_default2="TARGET_CPU_generic"
3226                                 ;;
3227
3228                         # Distinguish cores, and major variants
3229                         # arm7m doesn't exist, but D & I don't affect code
3230                         xarm[23678] | xarm250 | xarm[67][01]0 \
3231                         | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
3232                         | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3233                         | xstrongarm | xstrongarm110)
3234                                 target_cpu_default2="TARGET_CPU_$with_cpu"
3235                                 ;;
3236
3237                         xyes | xno)
3238                                 echo "--with-cpu must be passed a value" 1>&2
3239                                 exit 1
3240                                 ;;
3241
3242                         *)
3243                                 if test x$pass2done = xyes
3244                                 then
3245                                         echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3246                                         exit 1
3247                                 fi
3248                                 ;;
3249                 esac
3250                 ;;
3251
3252         mips*-*-ecoff* | mips*-*-elf*)
3253                 if test x$gas = xyes
3254                 then
3255                         if test x$gnu_ld = xyes
3256                         then
3257                                 target_cpu_default2=20
3258                         else
3259                                 target_cpu_default2=16
3260                         fi
3261                 fi
3262                 ;;
3263         mips*-*-*)
3264                 if test x$gas = xyes
3265                 then
3266                         target_cpu_default2=16
3267                 fi
3268                 ;;
3269         powerpc*-*-* | rs6000-*-*)
3270                 case "x$with_cpu" in
3271                         x)
3272                                 ;;
3273
3274                         xcommon | xpower | xpower2 | xpowerpc | xrios \
3275                           | xrios1 | xrios2 | xrsc | xrsc1 \
3276                           | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3277                           | x403 | x505 | x801 | x821 | x823 | x860)
3278                                 target_cpu_default2="\"$with_cpu\""
3279                                 ;;
3280
3281                         xyes | xno)
3282                                 echo "--with-cpu must be passed a value" 1>&2
3283                                 exit 1
3284                                 ;;
3285
3286                         *)
3287                                 if test x$pass2done = xyes
3288                                 then
3289                                         echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3290                                         exit 1
3291                                 fi
3292                                 ;;
3293                 esac
3294                 ;;
3295         sparc*-*-*)
3296                 case ".$with_cpu" in
3297                         .)
3298                                 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3299                                 ;;
3300                         .supersparc | .ultrasparc | .v7 | .v8 | .v9)
3301                                 target_cpu_default2="TARGET_CPU_$with_cpu"
3302                                 ;;
3303                         *)
3304                                 if test x$pass2done = xyes
3305                                 then
3306                                         echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3307                                         exit 1
3308                                 fi
3309                                 ;;
3310                 esac
3311                 ;;
3312         esac
3313
3314         if test "$target_cpu_default2" != ""
3315         then
3316                 if test "$target_cpu_default" != ""
3317                 then
3318                         target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3319                 else
3320                         target_cpu_default=$target_cpu_default2
3321                 fi
3322         fi
3323
3324         # No need for collect2 if we have the GNU linker.
3325         # Actually, there is now; GNU ld doesn't handle the EH info or
3326         # collecting for shared libraries.
3327         #case x$gnu_ld in
3328         #xyes)
3329         #       use_collect2=
3330         #       ;;
3331         #esac
3332
3333 # Save data on machine being used to compile GCC in build_xm_file.
3334 # Save data on host machine in vars host_xm_file and host_xmake_file.
3335         if test x$pass1done = x
3336         then
3337                 if test x"$xm_file" = x
3338                 then build_xm_file=$cpu_type/xm-$cpu_type.h
3339                 else build_xm_file=$xm_file
3340                 fi
3341                 build_xm_defines=$xm_defines
3342                 build_install_headers_dir=$install_headers_dir
3343                 build_exeext=$exeext
3344                 pass1done=yes
3345         else
3346                 if test x$pass2done = x
3347                 then
3348                         if test x"$xm_file" = x
3349                         then host_xm_file=$cpu_type/xm-$cpu_type.h
3350                         else host_xm_file=$xm_file
3351                         fi
3352                         host_xm_defines=$xm_defines
3353                         if test x"$xmake_file" = x
3354                         then xmake_file=$cpu_type/x-$cpu_type
3355                         fi
3356                         host_xmake_file="$xmake_file"
3357                         host_truncate_target=$truncate_target
3358                         host_extra_gcc_objs=$extra_gcc_objs
3359                         host_extra_objs=$extra_host_objs
3360                         host_exeext=$exeext
3361                         pass2done=yes
3362                 fi
3363         fi
3364 done
3365
3366 extra_objs="${host_extra_objs} ${extra_objs}"
3367
3368 # Default the target-machine variables that were not explicitly set.
3369 if test x"$tm_file" = x
3370 then tm_file=$cpu_type/$cpu_type.h; fi
3371
3372 if test x$extra_headers = x
3373 then extra_headers=; fi
3374
3375 if test x"$xm_file" = x
3376 then xm_file=$cpu_type/xm-$cpu_type.h; fi
3377
3378 if test x$md_file = x
3379 then md_file=$cpu_type/$cpu_type.md; fi
3380
3381 if test x$out_file = x
3382 then out_file=$cpu_type/$cpu_type.c; fi
3383
3384 if test x"$tmake_file" = x
3385 then tmake_file=$cpu_type/t-$cpu_type
3386 fi
3387
3388 if test x$float_format = x
3389 then float_format=i64
3390 fi
3391
3392 if test x$enable_haifa = x
3393 then
3394   case $target in
3395     alpha*-* | hppa1.?-* | powerpc*-* | rs6000-* | *sparc*-* | m32r*-*)
3396       enable_haifa=yes;;
3397   esac
3398 fi
3399
3400 # Say what files are being used for the output code and MD file.
3401 echo "Using \`$srcdir/config/$out_file' to output insns."
3402 echo "Using \`$srcdir/config/$md_file' as machine description file."
3403
3404 count=a
3405 for f in $tm_file; do
3406         count=${count}x
3407 done
3408 if test $count = ax; then
3409         echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
3410 else
3411         echo "Using the following target machine macro files:"
3412         for f in $tm_file; do
3413                 echo "  $srcdir/config/$f"
3414         done
3415 fi
3416
3417 count=a
3418 for f in $host_xm_file; do
3419         count=${count}x
3420 done
3421 if test $count = ax; then
3422         echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
3423 else
3424         echo "Using the following host machine macro files:"
3425         for f in $host_xm_file; do
3426                 echo "  $srcdir/config/$f"
3427         done
3428 fi
3429
3430 if test "$host_xm_file" != "$build_xm_file"; then
3431         count=a
3432         for f in $build_xm_file; do
3433                 count=${count}x
3434         done
3435         if test $count = ax; then
3436                 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
3437         else
3438                 echo "Using the following build machine macro files:"
3439                 for f in $build_xm_file; do
3440                         echo "  $srcdir/config/$f"
3441                 done
3442         fi
3443 fi
3444
3445 if test x$thread_file = x; then
3446         if test x$target_thread_file != x; then
3447                 thread_file=$target_thread_file
3448         else
3449                 thread_file='single'
3450         fi
3451 fi
3452
3453 # Set up the header files.
3454 # $links is the list of header files to create.
3455 # $vars is the list of shell variables with file names to include.
3456 # auto-host.h is the file containing items generated by autoconf and is
3457 # the first file included by config.h.
3458 null_defines=
3459 host_xm_file="auto-host.h ${host_xm_file}"
3460
3461 # If host=build, it is correct to have hconfig include auto-host.h
3462 # as well.  If host!=build, we are in error and need to do more 
3463 # work to find out the build config parameters.
3464 if test x$host = x$build
3465 then
3466         build_xm_file="auto-host.h ${build_xm_file}"
3467 else
3468         # We create a subdir, then run autoconf in the subdir.
3469         # To prevent recursion we set host and build for the new
3470         # invocation of configure to the build for this invocation
3471         # of configure. 
3472         tempdir=build.$$
3473         rm -rf $tempdir
3474         mkdir $tempdir
3475         cd $tempdir
3476         case ${srcdir} in
3477         /*) realsrcdir=${srcdir};;
3478         *) realsrcdir=../${srcdir};;
3479         esac
3480         CC=${CC_FOR_BUILD} ${realsrcdir}/configure \
3481                 --target=$target --host=$build --build=$build
3482
3483         # We just finished tests for the build machine, so rename
3484         # the file auto-build.h in the gcc directory.
3485         mv auto-host.h ../auto-build.h
3486         cd ..
3487         rm -rf $tempdir
3488         build_xm_file="auto-build.h ${build_xm_file}"
3489 fi
3490
3491 vars="host_xm_file tm_file xm_file build_xm_file"
3492 links="config.h tm.h tconfig.h hconfig.h"
3493 defines="host_xm_defines null_defines xm_defines build_xm_defines"
3494
3495 rm -f config.bak
3496 if test -f config.status; then mv -f config.status config.bak; fi
3497
3498 # Make the links.
3499 while test -n "$vars"
3500 do
3501         set $vars; var=$1; shift; vars=$*
3502         set $links; link=$1; shift; links=$*
3503         set $defines; define=$1; shift; defines=$*
3504
3505         rm -f $link
3506
3507         # Define TARGET_CPU_DEFAULT if the system wants one.
3508         # This substitutes for lots of *.h files.
3509         if test "$target_cpu_default" != "" -a $link = tm.h
3510         then
3511                 echo "#define TARGET_CPU_DEFAULT ($target_cpu_default)" >>$link
3512         fi
3513
3514         for file in `eval echo '$'$var`; do
3515                 echo "#include \"$file\"" >>$link
3516         done
3517
3518         for def in `eval echo '$'$define`; do
3519                 echo "#ifndef $def" >>$link
3520                 echo "#define $def" >>$link
3521                 echo "#endif" >>$link
3522         done
3523 done
3524
3525 # Truncate the target if necessary
3526 if test x$host_truncate_target != x; then
3527         target=`echo $target | sed -e 's/\(..............\).*/\1/'`
3528 fi
3529
3530 # Get the version trigger filename from the toplevel
3531 if test "${with_gcc_version_trigger+set}" = set; then
3532         gcc_version_trigger=$with_gcc_version_trigger
3533 else
3534         gcc_version_trigger=${srcdir}/version.c
3535 fi
3536 changequote(,)dnl
3537 gcc_version=`sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/' < ${gcc_version_trigger}`
3538 changequote([,])dnl
3539
3540 # Get an absolute path to the GCC top-level source directory
3541 holddir=`pwd`
3542 cd $srcdir
3543 topdir=`pwd`
3544 cd $holddir
3545
3546 # Conditionalize the makefile for this host machine.
3547 # Make-host contains the concatenation of all host makefile fragments
3548 # [there can be more than one].  This file is built by configure.frag.
3549 host_overrides=Make-host
3550 dep_host_xmake_file=
3551 for f in .. ${host_xmake_file}
3552 do
3553         if test -f ${srcdir}/config/$f
3554         then
3555                 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
3556         fi
3557 done
3558
3559 # Conditionalize the makefile for this target machine.
3560 # Make-target contains the concatenation of all host makefile fragments
3561 # [there can be more than one].  This file is built by configure.frag.
3562 target_overrides=Make-target
3563 dep_tmake_file=
3564 for f in .. ${tmake_file}
3565 do
3566         if test -f ${srcdir}/config/$f
3567         then
3568                 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
3569         fi
3570 done
3571
3572 # If the host doesn't support symlinks, modify CC in
3573 # FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
3574 # Otherwise, we can use "CC=$(CC)".
3575 rm -f symtest.tem
3576 if $symbolic_link $srcdir/gcc.c symtest.tem 2>/dev/null
3577 then
3578         cc_set_by_configure="\$(CC)"
3579         stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
3580 else
3581         rm -f symtest.tem
3582         if cp -p $srcdir/gcc.c symtest.tem 2>/dev/null
3583         then
3584                 symbolic_link="cp -p"
3585         else
3586                 symbolic_link="cp"
3587         fi
3588         cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
3589         stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
3590 fi
3591 rm -f symtest.tem
3592
3593 out_object_file=`basename $out_file .c`.o
3594
3595 tm_file_list=
3596 for f in $tm_file; do
3597         tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
3598 done
3599
3600 host_xm_file_list=
3601 for f in $host_xm_file; do
3602         if test $f != "auto-host.h"; then
3603                 host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f"
3604         else
3605                 host_xm_file_list="${host_xm_file_list} auto-host.h"
3606         fi
3607 done
3608
3609 build_xm_file_list=
3610 for f in $build_xm_file; do
3611         if test $f != "auto-build.h"; then
3612                 if test $f != "auto-host.h"; then
3613                         build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f"
3614                 else
3615                         build_xm_file_list="${build_xm_file_list} auto-host.h"
3616                 fi
3617         else
3618                 build_xm_file_list="${build_xm_file_list} auto-build.h"
3619         fi
3620 done
3621
3622 # Define macro CROSS_COMPILE in compilation
3623 # if this is a cross-compiler.
3624 # Also use all.cross instead of all.internal
3625 # and add cross-make to Makefile.
3626 cross_overrides="/dev/null"
3627 if test x$host != x$target
3628 then
3629         cross_defines="CROSS=-DCROSS_COMPILE"
3630         cross_overrides="${topdir}/cross-make"
3631 fi
3632
3633 # When building gcc with a cross-compiler, we need to fix a few things.
3634 # This must come after cross-make as we want all.build to override
3635 # all.cross.
3636 build_overrides="/dev/null"
3637 if test x$build != x$host
3638 then
3639         build_overrides="${topdir}/build-make"
3640 fi
3641
3642 # Expand extra_headers to include complete path.
3643 # This substitutes for lots of t-* files.
3644 extra_headers_list=
3645 if test "x$extra_headers" = x
3646 then true
3647 else
3648         # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
3649         for file in $extra_headers;
3650         do
3651                 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
3652         done
3653 fi
3654
3655 if test x$use_collect2 = xno; then
3656         use_collect2=
3657 fi
3658
3659 # Add a definition of USE_COLLECT2 if system wants one.
3660 # Also tell toplev.c what to do.
3661 # This substitutes for lots of t-* files.
3662 if test x$use_collect2 = x
3663 then
3664         will_use_collect2=
3665         maybe_use_collect2=
3666 else
3667         will_use_collect2="collect2"
3668         maybe_use_collect2="-DUSE_COLLECT2"
3669 fi
3670
3671 # NEED TO CONVERT
3672 # Set MD_DEPS if the real md file is in md.pre-cpp.
3673 # Set MD_CPP to the cpp to pass the md file through.  Md files use ';'
3674 # for line oriented comments, so we must always use a GNU cpp.  If
3675 # building gcc with a cross compiler, use the cross compiler just
3676 # built.  Otherwise, we can use the cpp just built.
3677 md_file_sub=
3678 if test "x$md_cppflags" = x
3679 then
3680         md_file_sub=$srcdir/config/$md_file
3681 else
3682         md_file=md
3683 fi
3684
3685 # If we have gas in the build tree, make a link to it.
3686 if test -f ../gas/Makefile; then
3687         rm -f as; $symbolic_link ../gas/as-new$host_exeext as$host_exeext 2>/dev/null
3688 fi
3689
3690 # If we have nm in the build tree, make a link to it.
3691 if test -f ../binutils/Makefile; then
3692         rm -f nm; $symbolic_link ../binutils/nm-new$host_exeext nm$host_exeext 2>/dev/null
3693 fi
3694
3695 # If we have ld in the build tree, make a link to it.
3696 if test -f ../ld/Makefile; then
3697 #       if test x$use_collect2 = x; then
3698 #               rm -f ld; $symbolic_link ../ld/ld-new$host_exeext ld$host_exeext 2>/dev/null
3699 #       else
3700                 rm -f collect-ld; $symbolic_link ../ld/ld-new$host_exeext collect-ld$host_exeext 2>/dev/null
3701 #       fi
3702 fi
3703
3704 # Figure out what assembler alignment features are present.
3705 AC_MSG_CHECKING(assembler alignment features)
3706 gcc_cv_as=
3707 gcc_cv_as_alignment_features=
3708 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
3709 if test -x "$AS"; then
3710         gcc_cv_as=$AS
3711 elif test -x as$host_exeext; then
3712         # Build using assembler in the current directory.
3713         gcc_cv_as=./as$host_exeext
3714 elif test -f $gcc_cv_as_gas_srcdir/configure.in; then
3715         # Single tree build which includes gas.
3716         for f in $gcc_cv_as_gas_srcdir/configure $gcc_cv_as_gas_srcdir/configure.in $gcc_cv_as_gas_srcdir/Makefile.in
3717         do
3718 changequote(,)dnl
3719                 gcc_cv_gas_version=`grep '^VERSION=[0-9]*\.[0-9]*' $f`
3720 changequote([,])dnl
3721                 if test x$gcc_cv_gas_version != x; then
3722                         break
3723                 fi
3724         done
3725 changequote(,)dnl
3726         gcc_cv_gas_major_version=`expr "$gcc_cv_gas_version" : "VERSION=\([0-9]*\)"`
3727         gcc_cv_gas_minor_version=`expr "$gcc_cv_gas_version" : "VERSION=[0-9]*\.\([0-9]*\)"`
3728 changequote([,])dnl
3729         if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
3730                 # Gas version 2.6 and later support for .balign and .p2align.
3731                 # bytes to skip when using .p2align.
3732                 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
3733                         gcc_cv_as_alignment_features=".balign and .p2align"
3734                         AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
3735                 fi
3736                 # Gas version 2.8 and later support specifying the maximum
3737                 # bytes to skip when using .p2align.
3738                 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
3739                         gcc_cv_as_alignment_features=".p2align including maximum skip"
3740                         AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
3741                 fi
3742         fi
3743 elif test x$host = x$target; then
3744         # Native build.
3745         gcc_cv_as=as$host_exeext
3746 fi
3747 if test x$gcc_cv_as != x; then
3748         # Check if we have .balign and .p2align
3749         echo ".balign  4" > conftest.s
3750         echo ".p2align  2" >> conftest.s
3751         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
3752                 gcc_cv_as_alignment_features=".balign and .p2align"
3753                 AC_DEFINE(HAVE_GAS_BALIGN_AND_P2ALIGN)
3754         fi
3755         rm -f conftest.s conftest.o
3756         # Check if specifying the maximum bytes to skip when
3757         # using .p2align is supported.
3758         echo ".p2align 4,,7" > conftest.s
3759         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
3760                 gcc_cv_as_alignment_features=".p2align including maximum skip"
3761                 AC_DEFINE(HAVE_GAS_MAX_SKIP_P2ALIGN)
3762         fi
3763         rm -f conftest.s conftest.o
3764 fi
3765 AC_MSG_RESULT($gcc_cv_as_alignment_features)
3766
3767 AC_MSG_CHECKING(assembler subsection support)
3768 gcc_cv_as_subsections=
3769 if test x$gcc_cv_as != x; then
3770         # Check if we have .subsection
3771         echo ".subsection 1" > conftest.s
3772         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
3773                 gcc_cv_as_subsections=".subsection"
3774                 if test -x nm$host_exeext; then
3775                         gcc_cv_nm=./nm$host_exeext
3776                 elif test x$host = x$target; then
3777                         # Native build.
3778                         gcc_cv_nm=nm$host_exeext
3779                 fi
3780                 if test x$gcc_cv_nm != x; then
3781                         cat > conftest.s <<EOF
3782 conftest_label1: .word 0
3783 .subsection -1
3784 conftest_label2: .word 0
3785 .previous
3786 EOF
3787                         if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
3788                                 $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1
3789                                 $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2
3790                                 if cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then
3791                                         :
3792                                 else
3793                                         gcc_cv_as_subsections="working .subsection -1"
3794                                         AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING)
3795                                 fi
3796                         fi
3797                 fi
3798         fi
3799         rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
3800 fi
3801 AC_MSG_RESULT($gcc_cv_as_subsections)
3802
3803 # Figure out what language subdirectories are present.
3804 subdirs=
3805 for lang in ${srcdir}/*/config-lang.in ..
3806 do
3807         case $lang in
3808         ..) ;;
3809         # The odd quoting in the next line works around
3810         # an apparent bug in bash 1.12 on linux.
3811 changequote(,)dnl
3812         ${srcdir}/ada/config-lang.in)
3813           if test x$gnat = xyes ; then
3814                 subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`"
3815           fi
3816         ;;
3817         ${srcdir}/[*]/config-lang.in) ;;
3818         *) subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([^/]*\)/config-lang.in$,\1,'`" ;;
3819 changequote([,])dnl
3820         esac
3821 done
3822
3823 # Make gthr-default.h if we have a thread file.
3824 gthread_flags=
3825 if test $thread_file != single; then
3826     rm -f gthr-default.h
3827     echo "#include \"gthr-${thread_file}.h\"" > gthr-default.h
3828     gthread_flags=-DHAVE_GTHR_DEFAULT
3829 fi
3830 AC_SUBST(gthread_flags)
3831
3832 # Make empty files to contain the specs and options for each language.
3833 # Then add #include lines to for a compiler that has specs and/or options.
3834
3835 lang_specs_files=
3836 lang_options_files=
3837 lang_tree_files=
3838 rm -f specs.h options.h gencheck.h
3839 touch specs.h options.h gencheck.h
3840 for subdir in . $subdirs
3841 do
3842         if test -f $srcdir/$subdir/lang-specs.h; then
3843                 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
3844                 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
3845         fi
3846         if test -f $srcdir/$subdir/lang-options.h; then
3847                 echo "#include \"$subdir/lang-options.h\"" >>options.h
3848                 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
3849         fi
3850         if test -f $srcdir/$subdir/$subdir-tree.def; then
3851                 echo "#include \"$subdir/$subdir-tree.def\"" >>gencheck.h
3852                 lang_tree_files="$lang_tree_files $srcdir/$subdir/$subdir-tree.def"
3853         fi
3854 done
3855
3856 # These (without "all_") are set in each config-lang.in.
3857 # `language' must be a single word so is spelled singularly.
3858 all_languages=
3859 all_boot_languages=
3860 all_compilers=
3861 all_stagestuff=
3862 all_diff_excludes=
3863 all_outputs=Makefile
3864 # List of language makefile fragments.
3865 all_lang_makefiles=
3866 all_headers=
3867 all_lib2funcs=
3868
3869 # Add the language fragments.
3870 # Languages are added via two mechanisms.  Some information must be
3871 # recorded in makefile variables, these are defined in config-lang.in.
3872 # We accumulate them and plug them into the main Makefile.
3873 # The other mechanism is a set of hooks for each of the main targets
3874 # like `clean', `install', etc.
3875
3876 language_fragments="Make-lang"
3877 language_hooks="Make-hooks"
3878 oldstyle_subdirs=
3879
3880 for s in .. $subdirs
3881 do
3882         if test $s != ".."
3883         then
3884                 language=
3885                 boot_language=
3886                 compilers=
3887                 stagestuff=
3888                 diff_excludes=
3889                 headers=
3890                 outputs=
3891                 lib2funcs=
3892                 . ${srcdir}/$s/config-lang.in
3893                 if test "x$language" = x
3894                 then
3895                         echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
3896                         exit 1
3897                 fi
3898                 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in ${srcdir}/$s/Makefile.in"
3899                 all_languages="$all_languages $language"
3900                 if test "x$boot_language" = xyes
3901                 then
3902                         all_boot_languages="$all_boot_languages $language"
3903                 fi
3904                 all_compilers="$all_compilers $compilers"
3905                 all_stagestuff="$all_stagestuff $stagestuff"
3906                 all_diff_excludes="$all_diff_excludes $diff_excludes"
3907                 all_headers="$all_headers $headers"
3908                 all_outputs="$all_outputs $outputs"
3909                 if test x$outputs = x
3910                 then
3911                         oldstyle_subdirs="$oldstyle_subdirs $s"
3912                 fi
3913                 all_lib2funcs="$all_lib2funcs $lib2funcs"
3914         fi
3915 done
3916
3917 # Since we can't use `::' targets, we link each language in
3918 # with a set of hooks, reached indirectly via lang.${target}.
3919
3920 rm -f Make-hooks
3921 touch Make-hooks
3922 target_list="all.build all.cross start.encap rest.encap \
3923         info dvi \
3924         install-normal install-common install-info install-man \
3925         uninstall distdir \
3926         mostlyclean clean distclean extraclean maintainer-clean \
3927         stage1 stage2 stage3 stage4"
3928 for t in $target_list
3929 do
3930         x=
3931         for l in .. $all_languages
3932         do
3933                 if test $l != ".."; then
3934                         x="$x $l.$t"
3935                 fi
3936         done
3937         echo "lang.$t: $x" >> Make-hooks
3938 done
3939
3940 # If we're not building in srcdir, create .gdbinit.
3941
3942 if test ! -f Makefile.in; then
3943         echo "dir ." > .gdbinit
3944         echo "dir ${srcdir}" >> .gdbinit
3945         if test x$gdb_needs_out_file_path = xyes
3946         then
3947                 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
3948         fi
3949         if test "x$subdirs" != x; then
3950                 for s in $subdirs
3951                 do
3952                         echo "dir ${srcdir}/$s" >> .gdbinit
3953                 done
3954         fi
3955         echo "source ${srcdir}/.gdbinit" >> .gdbinit
3956 fi
3957
3958 # Define variables host_canonical and build_canonical
3959 # because some Cygnus local changes in the Makefile depend on them.
3960 build_canonical=${build}
3961 host_canonical=${host}
3962 target_subdir=
3963 if test "${host}" != "${target}" ; then
3964     target_subdir=${target}/
3965 fi
3966 AC_SUBST(build_canonical)
3967 AC_SUBST(host_canonical)
3968 AC_SUBST(target_subdir)
3969         
3970 # If this is using newlib, then define inhibit_libc in
3971 # LIBGCC2_CFLAGS.  This will cause __eprintf to be left out of
3972 # libgcc.a, but that's OK because newib should have its own version of
3973 # assert.h.
3974 inhibit_libc=
3975 if test x$with_newlib = xyes; then
3976         inhibit_libc=-Dinhibit_libc
3977 fi
3978 AC_SUBST(inhibit_libc)
3979
3980 # Override SCHED_OBJ and SCHED_CFLAGS to enable the Haifa scheduler.
3981 sched_prefix=
3982 sched_cflags=
3983 if test x$enable_haifa = xyes; then
3984     echo "Using the Haifa scheduler."
3985     sched_prefix=haifa-
3986     sched_cflags=-DHAIFA
3987 fi
3988 AC_SUBST(sched_prefix)
3989 AC_SUBST(sched_cflags)
3990 if test x$enable_haifa != x; then
3991     # Explicitly remove files that need to be recompiled for the Haifa scheduler.
3992     for x in genattrtab.o toplev.o loop.o unroll.o *sched.o; do
3993         if test -f $x; then
3994             echo "Removing $x"
3995             rm -f $x
3996         fi
3997     done
3998 fi
3999
4000 # Warn if using init_priority.
4001 AC_MSG_CHECKING(whether to enable init_priority by default)
4002 if test x$enable_init_priority != xyes; then
4003   enable_init_priority=no
4004 fi
4005 AC_MSG_RESULT($enable_init_priority)
4006
4007 # Nothing to do for FLOAT_H, float_format already handled.
4008 objdir=`pwd`
4009 AC_SUBST(objdir)
4010
4011 # Process the language and host/target makefile fragments.
4012 ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
4013
4014 # Substitute configuration variables
4015 AC_SUBST(subdirs)
4016 AC_SUBST(all_languages)
4017 AC_SUBST(all_boot_languages)
4018 AC_SUBST(all_compilers)
4019 AC_SUBST(all_lang_makefiles)
4020 AC_SUBST(all_stagestuff)
4021 AC_SUBST(all_diff_excludes)
4022 AC_SUBST(all_lib2funcs)
4023 AC_SUBST(all_headers)
4024 AC_SUBST(cpp_main)
4025 AC_SUBST(extra_passes)
4026 AC_SUBST(extra_programs)
4027 AC_SUBST(extra_parts)
4028 AC_SUBST(extra_c_objs)
4029 AC_SUBST(extra_cxx_objs)
4030 AC_SUBST(extra_cpp_objs)
4031 AC_SUBST(extra_c_flags)
4032 AC_SUBST(extra_objs)
4033 AC_SUBST(host_extra_gcc_objs)
4034 AC_SUBST(extra_headers_list)
4035 AC_SUBST(dep_host_xmake_file)
4036 AC_SUBST(dep_tmake_file)
4037 AC_SUBST(out_file)
4038 AC_SUBST(out_object_file)
4039 AC_SUBST(md_file)
4040 AC_SUBST(tm_file_list)
4041 AC_SUBST(build_xm_file_list)
4042 AC_SUBST(host_xm_file_list)
4043 AC_SUBST(lang_specs_files)
4044 AC_SUBST(lang_options_files)
4045 AC_SUBST(lang_tree_files)
4046 AC_SUBST(thread_file)
4047 AC_SUBST(objc_boehm_gc)
4048 AC_SUBST(gcc_version)
4049 AC_SUBST(gcc_version_trigger)
4050 AC_SUBST(local_prefix)
4051 AC_SUBST(gxx_include_dir)
4052 AC_SUBST(fixincludes)
4053 AC_SUBST(build_install_headers_dir)
4054 AC_SUBST(build_exeext)
4055 AC_SUBST(host_exeext)
4056 AC_SUBST(float_format)
4057 AC_SUBST(will_use_collect2)
4058 AC_SUBST(maybe_use_collect2)
4059 AC_SUBST(cc_set_by_configure)
4060 AC_SUBST(stage_prefix_set_by_configure)
4061 AC_SUBST(install)
4062 AC_SUBST(symbolic_link)
4063
4064 AC_SUBST_FILE(target_overrides)
4065 AC_SUBST_FILE(host_overrides)
4066 AC_SUBST(cross_defines)
4067 AC_SUBST_FILE(cross_overrides)
4068 AC_SUBST_FILE(build_overrides)
4069 AC_SUBST_FILE(language_fragments)
4070 AC_SUBST_FILE(language_hooks)
4071
4072 # Echo that links are built
4073 if test x$host = x$target
4074 then
4075         str1="native "
4076 else
4077         str1="cross-"
4078         str2=" from $host"
4079 fi
4080
4081 if test x$host != x$build
4082 then
4083         str3=" on a $build system"
4084 fi
4085
4086 if test "x$str2" != x || test "x$str3" != x
4087 then
4088         str4=
4089 fi
4090
4091 echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
4092
4093 if test "x$str2" != x || test "x$str3" != x
4094 then
4095         echo " ${str2}${str3}." 1>&2
4096 fi
4097
4098 # Truncate the target if necessary
4099 if test x$host_truncate_target != x; then
4100         target=`echo $target | sed -e 's/\(..............\).*/\1/'`
4101 fi
4102
4103 # Configure the subdirectories
4104 # AC_CONFIG_SUBDIRS($subdirs)
4105
4106 # Create the Makefile
4107 # and configure language subdirectories
4108 AC_OUTPUT($all_outputs,
4109 [
4110 . $srcdir/configure.lang
4111 case x$CONFIG_HEADERS in
4112 xauto-host.h:config.in)
4113 echo > cstamp-h ;;
4114 esac
4115 # If the host supports symlinks, point stage[1234] at ../stage[1234] so
4116 # bootstrapping and the installation procedure can still use
4117 # CC="stage1/xgcc -Bstage1/".  If the host doesn't support symlinks,
4118 # FLAGS_TO_PASS has been modified to solve the problem there.
4119 # This is virtually a duplicate of what happens in configure.lang; we do
4120 # an extra check to make sure this only happens if ln -s can be used.
4121 if test "$symbolic_link" = "ln -s"; then
4122  for d in .. ${subdirs} ; do
4123    if test $d != ..; then
4124         STARTDIR=`pwd`
4125         cd $d
4126         for t in stage1 stage2 stage3 stage4 include
4127         do
4128                 rm -f $t
4129                 $symbolic_link ../$t $t 2>/dev/null
4130         done
4131         cd $STARTDIR
4132    fi
4133  done
4134 else true ; fi
4135 ],
4136 [
4137 host='${host}'
4138 build='${build}'
4139 target='${target}'
4140 target_alias='${target_alias}'
4141 srcdir='${srcdir}'
4142 subdirs='${subdirs}'
4143 oldstyle_subdirs='${oldstyle_subdirs}'
4144 symbolic_link='${symbolic_link}'
4145 program_transform_set='${program_transform_set}'
4146 program_transform_name='${program_transform_name}'
4147 dep_host_xmake_file='${dep_host_xmake_file}'
4148 host_xmake_file='${host_xmake_file}'
4149 dep_tmake_file='${dep_tmake_file}'
4150 tmake_file='${tmake_file}'
4151 thread_file='${thread_file}'
4152 gcc_version='${gcc_version}'
4153 gcc_version_trigger='${gcc_version_trigger}'
4154 local_prefix='${local_prefix}'
4155 build_install_headers_dir='${build_install_headers_dir}'
4156 build_exeext='${build_exeext}'
4157 host_exeext='${host_exeext}'
4158 out_file='${out_file}'
4159 gdb_needs_out_file_path='${gdb_needs_out_file_path}'
4160 SET_MAKE='${SET_MAKE}'
4161 target_list='${target_list}'
4162 target_overrides='${target_overrides}'
4163 host_overrides='${host_overrides}'
4164 cross_defines='${cross_defines}'
4165 cross_overrides='${cross_overrides}'
4166 build_overrides='${build_overrides}'
4167 ])