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