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