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