OSDN Git Service

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