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