]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/configure.in
Move test from execute to compile.
[thirdparty/gcc.git] / gcc / configure.in
CommitLineData
46f18e7b
RK
1# configure.in for GNU CC
2# Process this file with autoconf to generate a configuration script.
3
4# Copyright (C) 1997 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
24AC_INIT(tree.c)
e9a25f70 25AC_CONFIG_HEADER(auto-config.h:config.in)
cdcc6a01 26
46f18e7b
RK
27remove=rm
28hard_link=ln
29symbolic_link='ln -s'
30copy=cp
31
32# Check for additional parameters
33
34# With GNU ld
35AC_ARG_WITH(gnu-ld,
36[ --with-gnu-ld arrange to work with GNU ld.],
37gnu_ld=yes,
38gnu_ld=no)
39
40# With GNU as
41AC_ARG_WITH(gnu-as,
4d8392b7 42[ --with-gnu-as arrange to work with GNU as.],
46f18e7b
RK
43gas=yes,
44gas=no)
45
46# With stabs
47AC_ARG_WITH(stabs,
48[ --with-stabs arrange to use stabs instead of host debug format.],
49stabs=yes,
50stabs=no)
51
52# With ELF
53AC_ARG_WITH(elf,
54[ --with-elf arrange to use ELF instead of host debug format.],
55elf=yes,
56elf=no)
57
4d8392b7
RK
58# Specify the local prefix
59AC_ARG_WITH(local-prefix,
60[ --with-local-prefix=DIR specifies directory to put local include.],
61local_prefix=$with_local_prefix,
62local_prefix=/usr/local)
63
64# Default local prefix if it is empty
65if [[ x$local_prefix = x ]]; then
66 local_prefix=/usr/local
67fi
68
9514f0d1
RK
69# Specify the g++ header file directory
70AC_ARG_WITH(gxx-include-dir,
71[ --with-gxx-include-dir=DIR
72 specifies directory to put g++ header files.],
73gxx_include_dir=$with_gxx_include_dir,
74gxx_include_dir='${prefix}/include/g++')
75
76# Default g++ header file directory if it is empty
77if [[ x$gxx_include_dir = x ]]; then
78 gxx_include_dir='${prefix}/include/g++'
79fi
46f18e7b 80
b4294351
PB
81# Enable use of cpplib for C.
82AC_ARG_ENABLE(c-cpplib,
83[ --enable-c-cpplib Use cpplib for C.],
84if [[[ x$enable_c_cpplib != xno ]]]; then
85 extra_c_objs="${extra_c_objs} cpplib.o cppexp.o cpphash.o cpperror.o"
86 extra_c_flags=-DUSE_CPPLIB=1
87fi)
88
0bbb1697
RK
89# Enable threads
90# Pass with no value to take the default
91# Pass with a value to specify a thread package
92AC_ARG_ENABLE(threads,
93[ --enable-threads enable thread usage for target GCC.
94 --enable-threads=LIB use LIB thread package for target GCC.],
95if [[[ x$enable_threads = xno ]]]; then
96 enable_threads=''
97fi,
98enable_threads='')
99
100# Check if a valid thread package
101case x${enable_threads} in
102 x | xno)
103 # No threads
104 thread_file='single'
105 ;;
106 xyes)
107 # default
108 thread_file=''
109 ;;
110 xdecosf1 | xirix | xmach | xos2 | xposix | xpthreads | xsingle | \
111 xsolaris | xwin32)
112 thread_file=$enable_threads
113 ;;
114 *)
115 echo "$enable_threads is an unknown thread package" 1>&2
116 exit 1
117 ;;
118esac
119
46f18e7b
RK
120# Determine the host, build, and target systems
121AC_CANONICAL_SYSTEM
122
e9a25f70
JL
123# Find the native compiler
124AC_PROG_CC
125AC_PROG_MAKE_SET
126
46f18e7b
RK
127# Find some useful tools
128AC_PROG_AWK
129AC_PROG_LEX
ac64120e
JW
130GCC_PROG_LN
131GCC_PROG_LN_S
46f18e7b
RK
132AC_PROG_RANLIB
133AC_PROG_YACC
76143254 134EGCS_PROG_INSTALL
46f18e7b
RK
135
136# Find the native compiler
137AC_PROG_CC
138AC_PROG_MAKE_SET
139
e9a25f70 140AC_CHECK_HEADERS(inttypes.h limits.h stddef.h string.h strings.h stdlib.h time.h unistd.h varargs.h sys/varargs.h)
cdcc6a01
DE
141
142GCC_NEED_DECLARATION(malloc)
143GCC_NEED_DECLARATION(realloc)
19372aa1 144GCC_NEED_DECLARATION(calloc)
cdcc6a01
DE
145GCC_NEED_DECLARATION(free)
146
e3512ac2
JL
147AC_DECL_SYS_SIGLIST
148
1e467e19 149AC_CHECK_FUNCS(strerror strtoul bsearch)
a63d08e6 150
46f18e7b
RK
151# File extensions
152manext='.1'
153objext='.o'
46f18e7b
RK
154AC_SUBST(manext)
155AC_SUBST(objext)
46f18e7b
RK
156
157build_xm_file=
46f18e7b
RK
158build_install_headers_dir=install-headers-tar
159build_exeext=
160host_xm_file=
161host_xmake_file=
162host_truncate_target=
163
164# Decode the host machine, then the target machine.
165# For the host machine, we save the xm_file variable as host_xm_file;
166# then we decode the target machine and forget everything else
167# that came from the host machine.
168for machine in $build $host $target; do
169
170 out_file=
171 xmake_file=
172 tmake_file=
173 extra_headers=
174 extra_passes=
175 extra_parts=
176 extra_programs=
177 extra_objs=
178 extra_host_objs=
179 extra_gcc_objs=
180 float_format=
181 # Set this to force installation and use of collect2.
182 use_collect2=
183 # Set this to override the default target model.
184 target_cpu_default=
46f18e7b
RK
185 # Set this to control which fixincludes program to use.
186 fixincludes=fixincludes
187 # Set this to control how the header file directory is installed.
188 install_headers_dir=install-headers-tar
189 # Set this to a non-empty list of args to pass to cpp if the target
190 # wants its .md file passed through cpp.
191 md_cppflags=
192 # Set this if directory names should be truncated to 14 characters.
193 truncate_target=
194 # Set this if gdb needs a dir command with `dirname $out_file`
195 gdb_needs_out_file_path=
46f18e7b
RK
196 # Set this if the build machine requires executables to have a
197 # file name suffix.
198 exeext=
199
200 # Set default cpu_type, tm_file and xm_file so it can be updated in
201 # each machine entry.
202 cpu_type=`echo $machine | sed 's/-.*$//'`
203 case $machine in
08fc0184
RK
204 alpha*-*-*)
205 cpu_type=alpha
206 ;;
46f18e7b
RK
207 arm*-*-*)
208 cpu_type=arm
209 ;;
210 c*-convex-*)
211 cpu_type=convex
212 ;;
213 i[[3456]]86-*-*)
214 cpu_type=i386
215 ;;
216 hppa*-*-*)
217 cpu_type=pa
218 ;;
219 m68000-*-*)
220 cpu_type=m68k
221 ;;
222 mips*-*-*)
223 cpu_type=mips
224 ;;
225 powerpc*-*-*)
226 cpu_type=rs6000
227 ;;
228 pyramid-*-*)
229 cpu_type=pyr
230 ;;
231 sparc*-*-*)
232 cpu_type=sparc
233 ;;
234 esac
235
236 tm_file=${cpu_type}/${cpu_type}.h
237 xm_file=${cpu_type}/xm-${cpu_type}.h
238
239 case $machine in
240 # Support site-specific machine types.
241 *local*)
242 cpu_type=`echo $machine | sed -e 's/-.*//'`
243 rest=`echo $machine | sed -e "s/$cpu_type-//"`
244 xm_file=${cpu_type}/xm-$rest.h
245 tm_file=${cpu_type}/$rest.h
246 if [[ -f $srcdir/config/${cpu_type}/x-$rest ]] ; \
247 then xmake_file=${cpu_type}/x-$rest; \
248 else true; \
249 fi
250 if [[ -f $srcdir/config/${cpu_type}/t-$rest ]] ; \
251 then tmake_file=${cpu_type}/t-$rest; \
252 else true; \
253 fi
254 ;;
255 1750a-*-*)
256 ;;
257 a29k-*-bsd* | a29k-*-sym1*)
258 tm_file="${tm_file} a29k/unix.h"
259 xm_file=a29k/xm-unix.h
260 xmake_file=a29k/x-unix
261 use_collect2=yes
262 ;;
263 a29k-*-udi | a29k-*-coff)
264 tm_file="${tm_file} dbxcoff.h a29k/udi.h"
265 tmake_file=a29k/t-a29kbare
266 ;;
267 a29k-*-vxworks*)
268 tm_file="${tm_file} dbxcoff.h a29k/udi.h a29k/vx29k.h"
269 tmake_file=a29k/t-vx29k
270 extra_parts="crtbegin.o crtend.o"
271 ;;
272 a29k-*-*) # Default a29k environment.
273 use_collect2=yes
274 ;;
08fc0184 275 alpha*-*-linux-gnuecoff*)
46f18e7b
RK
276 tm_file="${tm_file} alpha/linux.h"
277 xm_file="${xm_file} alpha/xm-linux.h"
e71c3bb0
RK
278 target_cpu_default="MASK_GAS"
279 gas=no
46f18e7b
RK
280 xmake_file=none
281 fixincludes=Makefile.in
282 gas=yes gnu_ld=yes
283 ;;
704a6306
RH
284 alpha*-*-linux-gnulibc1*)
285 tm_file="${tm_file} alpha/linux.h alpha/elf.h"
286 xm_file="${xm_file} alpha/xm-linux.h"
287 target_cpu_default="MASK_GAS"
288 tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux"
289 xmake_file=none
290 fixincludes=Makefile.in
291 gas=yes gnu_ld=yes
292 if [[ x$enable_threads = xyes ]]; then
293 thread_file='posix'
294 fi
295 ;;
08fc0184 296 alpha*-*-linux-gnu*)
46f18e7b
RK
297 tm_file="${tm_file} alpha/linux.h alpha/elf.h"
298 xm_file="${xm_file} alpha/xm-linux.h"
e71c3bb0 299 target_cpu_default="MASK_GAS"
1c988fb7 300 tmake_file="t-linux alpha/t-linux"
46f18e7b
RK
301 xmake_file=none
302 fixincludes=Makefile.in
46f18e7b 303 gas=yes gnu_ld=yes
d1054723 304 if [[ x$enable_threads = xyes ]]; then
c811d261
RK
305 thread_file='posix'
306 fi
46f18e7b 307 ;;
e9a25f70 308 alpha*-dec-osf*)
dec3e070
JW
309 if [[ x$stabs = xyes ]]
310 then
311 tm_file="${tm_file} dbx.h"
312 fi
313 if [[ x$gas != xyes ]]
314 then
315 extra_passes="mips-tfile mips-tdump"
316 fi
dec3e070 317 use_collect2=yes
dec3e070 318 case $machine in
e9a25f70
JL
319 *-*-osf1.2)
320 tm_file="${tm_file} alpha/osf12.h alpha/osf2or3.h"
321 ;;
322 *-*-osf[[23]]*)
323 tm_file="${tm_file} alpha/osf2or3.h"
324 ;;
325 *-*-osf4*)
326 # Some versions of OSF4 (specifically X4.0-9 296.7) have
327 # a broken tar, so we use cpio instead.
dec3e070
JW
328 install_headers_dir=install-headers-cpio
329 ;;
330 esac
e9a25f70
JL
331 case $machine in
332 *-*-osf4.0[[b-z]] | *-*-osf4.[[1-9]]*)
333 target_cpu_default=MASK_SUPPORT_ARCH
334 ;;
335 esac
46f18e7b 336 ;;
08fc0184 337 alpha*-*-winnt3*)
46f18e7b 338 tm_file="${tm_file} alpha/win-nt.h"
08fc0184 339 target_cpu_default=MASK_WINDOWS_NT
46f18e7b
RK
340 xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
341 tmake_file=t-libc-ok
342 xmake_file=winnt/x-winnt
343 extra_host_objs=oldnames.o
344 extra_gcc_objs="spawnv.o oldnames.o"
345 fixincludes=fixinc.winnt
346 if [[ x$gnu_ld != xyes ]]
347 then
348 extra_programs=ld.exe
349 fi
434332b5 350 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
351 thread_file='win32'
352 fi
46f18e7b 353 ;;
08fc0184 354 alpha*-dec-vms*)
46f18e7b
RK
355 tm_file=alpha/vms.h
356 xm_file="${xm_file} alpha/xm-vms.h"
357 tmake_file=alpha/t-vms
358 fixincludes=Makefile.in
359 ;;
66ed0683
JL
360 arc-*-elf*)
361 extra_parts="crtinit.o crtfini.o"
362 ;;
46f18e7b
RK
363 arm-*-coff* | armel-*-coff*)
364 tm_file=arm/coff.h
365 tmake_file=arm/t-bare
366 ;;
367 arm-*-riscix1.[[01]]*) # Acorn RISC machine (early versions)
368 tm_file=arm/riscix1-1.h
369 use_collect2=yes
370 ;;
371 arm-*-riscix*) # Acorn RISC machine
372 if [[ x$gas = xyes ]]
373 then
374 tm_file=arm/rix-gas.h
375 else
376 tm_file=arm/riscix.h
377 fi
378 xmake_file=arm/x-riscix
379 tmake_file=arm/t-riscix
380 use_collect2=yes
381 ;;
382 arm-semi-aout | armel-semi-aout)
383 tm_file=arm/semi.h
384 tmake_file=arm/t-semi
385 fixincludes=Makefile.in # There is nothing to fix
386 ;;
387 arm-semi-aof | armel-semi-aof)
388 tm_file=arm/semiaof.h
389 tmake_file=arm/t-semiaof
390 fixincludes=Makefile.in # There is nothing to fix
391 ;;
d23f4158
RE
392 arm-*-netbsd*)
393 tm_file=arm/netbsd.h
394 xm_file=arm/xm-netbsd.h
e9a25f70 395 tmake_file="t-netbsd arm/t-netbsd"
be1ed94f
JL
396 # On NetBSD, the headers are already okay, except for math.h.
397 fixincludes=fixinc.math
d23f4158
RE
398 use_collect2=yes
399 ;;
844dadc7 400 arm-*-linux-gnuaout*) # ARM Linux
618d2e70
RK
401 cpu_type=arm
402 xm_file=arm/xm-linux.h
403 xmake_file=x-linux
404 tm_file=arm/linux-gas.h
405 tmake_file=arm/t-linux
406 fixincludes=Makefile.in
618d2e70
RK
407 gnu_ld=yes
408 ;;
f5967c59
RE
409 arm-*-aout)
410 tm_file=arm/aout.h
e9a25f70 411 tmake_file=arm/t-bare
46f18e7b
RK
412 ;;
413 c1-convex-*) # Convex C1
414 target_cpu_default=1
415 use_collect2=yes
416 fixincludes=Makefile.in
417 ;;
418 c2-convex-*) # Convex C2
419 target_cpu_default=2
420 use_collect2=yes
421 fixincludes=Makefile.in
422 ;;
423 c32-convex-*)
424 target_cpu_default=4
425 use_collect2=yes
426 fixincludes=Makefile.in
427 ;;
428 c34-convex-*)
429 target_cpu_default=8
430 use_collect2=yes
431 fixincludes=Makefile.in
432 ;;
433 c38-convex-*)
434 target_cpu_default=16
435 use_collect2=yes
436 fixincludes=Makefile.in
437 ;;
438 clipper-intergraph-clix*)
439 tm_file="${tm_file} svr3.h clipper/clix.h"
440 xm_file=clipper/xm-clix.h
441 xmake_file=clipper/x-clix
442 extra_headers=va-clipper.h
443 extra_parts="crtbegin.o crtend.o"
444 install_headers_dir=install-headers-cpio
46f18e7b
RK
445 ;;
446 dsp16xx-*)
447 ;;
448 elxsi-elxsi-*)
449 use_collect2=yes
450 ;;
451# This hasn't been upgraded to GCC 2.
452# fx80-alliant-*) # Alliant FX/80
453# ;;
454 h8300-*-*)
455 float_format=i32
456 ;;
457 hppa1.1-*-pro*)
2da05a5b
JL
458 if [[ x$enable_haifa != xno ]]; then
459 enable_haifa=yes
460 fi
46f18e7b
RK
461 tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h"
462 xm_file=pa/xm-papro.h
463 tmake_file=pa/t-pro
464 ;;
465 hppa1.1-*-osf*)
2da05a5b
JL
466 if [[ x$enable_haifa != xno ]]; then
467 enable_haifa=yes
468 fi
46f18e7b
RK
469 target_cpu_default=1
470 tm_file="${tm_file} pa/pa-osf.h"
471 use_collect2=yes
472 fixincludes=Makefile.in
473 ;;
dec3e070 474 hppa1.1-*-rtems*)
2da05a5b
JL
475 if [[ x$enable_haifa != xno ]]; then
476 enable_haifa=yes
477 fi
dec3e070
JW
478 tm_file="pa/pa-pro.h ${tm_file} pa/pa-pro-end.h libgloss.h pa/rtems.h"
479 xm_file=pa/xm-papro.h
480 tmake_file=pa/t-pro
481 ;;
46f18e7b 482 hppa1.0-*-osf*)
2da05a5b
JL
483 if [[ x$enable_haifa != xno ]]; then
484 enable_haifa=yes
485 fi
46f18e7b
RK
486 tm_file="${tm_file} pa/pa-osf.h"
487 use_collect2=yes
488 fixincludes=Makefile.in
489 ;;
490 hppa1.1-*-bsd*)
2da05a5b
JL
491 if [[ x$enable_haifa != xno ]]; then
492 enable_haifa=yes
493 fi
46f18e7b
RK
494 target_cpu_default=1
495 use_collect2=yes
496 fixincludes=Makefile.in
497 ;;
498 hppa1.0-*-bsd*)
2da05a5b
JL
499 if [[ x$enable_haifa != xno ]]; then
500 enable_haifa=yes
501 fi
46f18e7b
RK
502 use_collect2=yes
503 fixincludes=Makefile.in
504 ;;
505 hppa1.0-*-hpux7*)
2da05a5b
JL
506 if [[ x$enable_haifa != xno ]]; then
507 enable_haifa=yes
508 fi
46f18e7b
RK
509 tm_file="pa/pa-oldas.h ${tm_file} pa/pa-hpux7.h"
510 xm_file=pa/xm-pahpux.h
511 xmake_file=pa/x-pa-hpux
512 if [[ x$gas = xyes ]]
513 then
514 tm_file="${tm_file} pa/gas.h"
515 fi
46f18e7b
RK
516 install_headers_dir=install-headers-cpio
517 use_collect2=yes
518 ;;
519 hppa1.0-*-hpux8.0[[0-2]]*)
2da05a5b
JL
520 if [[ x$enable_haifa != xno ]]; then
521 enable_haifa=yes
522 fi
46f18e7b
RK
523 tm_file="${tm_file} pa/pa-hpux.h"
524 xm_file=pa/xm-pahpux.h
525 xmake_file=pa/x-pa-hpux
526 if [[ x$gas = xyes ]]
527 then
528 tm_file="${tm_file} pa/pa-gas.h"
529 else
530 tm_file="pa/pa-oldas.h ${tm_file}"
531 fi
46f18e7b
RK
532 install_headers_dir=install-headers-cpio
533 use_collect2=yes
534 ;;
535 hppa1.1-*-hpux8.0[[0-2]]*)
2da05a5b
JL
536 if [[ x$enable_haifa != xno ]]; then
537 enable_haifa=yes
538 fi
46f18e7b
RK
539 target_cpu_default=1
540 tm_file="${tm_file} pa/pa-hpux.h"
541 xm_file=pa/xm-pahpux.h
542 xmake_file=pa/x-pa-hpux
543 if [[ x$gas = xyes ]]
544 then
545 tm_file="${tm_file} pa/pa-gas.h"
546 else
547 tm_file="pa/pa-oldas.h ${tm_file}"
548 fi
46f18e7b
RK
549 install_headers_dir=install-headers-cpio
550 use_collect2=yes
551 ;;
552 hppa1.1-*-hpux8*)
2da05a5b
JL
553 if [[ x$enable_haifa != xno ]]; then
554 enable_haifa=yes
555 fi
46f18e7b
RK
556 target_cpu_default=1
557 tm_file="${tm_file} pa/pa-hpux.h"
558 xm_file=pa/xm-pahpux.h
559 xmake_file=pa/x-pa-hpux
560 if [[ x$gas = xyes ]]
561 then
562 tm_file="${tm_file} pa/pa-gas.h"
563 fi
46f18e7b
RK
564 install_headers_dir=install-headers-cpio
565 use_collect2=yes
566 ;;
567 hppa1.0-*-hpux8*)
2da05a5b
JL
568 if [[ x$enable_haifa != xno ]]; then
569 enable_haifa=yes
570 fi
46f18e7b
RK
571 tm_file="${tm_file} pa/pa-hpux.h"
572 xm_file=pa/xm-pahpux.h
573 xmake_file=pa/x-pa-hpux
574 if [[ x$gas = xyes ]]
575 then
576 tm_file="${tm_file} pa/pa-gas.h"
577 fi
46f18e7b
RK
578 install_headers_dir=install-headers-cpio
579 use_collect2=yes
580 ;;
581 hppa1.1-*-hpux10*)
2da05a5b
JL
582 if [[ x$enable_haifa != xno ]]; then
583 enable_haifa=yes
584 fi
46f18e7b
RK
585 target_cpu_default=1
586 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux10.h"
587 xm_file=pa/xm-pahpux.h
588 xmake_file=pa/x-pa-hpux
589 if [[ x$gas = xyes ]]
590 then
591 tm_file="${tm_file} pa/pa-gas.h"
592 fi
46f18e7b
RK
593 install_headers_dir=install-headers-cpio
594 use_collect2=yes
595 ;;
596 hppa1.0-*-hpux10*)
2da05a5b
JL
597 if [[ x$enable_haifa != xno ]]; then
598 enable_haifa=yes
599 fi
46f18e7b
RK
600 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux10.h"
601 xm_file=pa/xm-pahpux.h
602 xmake_file=pa/x-pa-hpux
603 if [[ x$gas = xyes ]]
604 then
605 tm_file="${tm_file} pa/pa-gas.h"
606 fi
46f18e7b
RK
607 install_headers_dir=install-headers-cpio
608 use_collect2=yes
609 ;;
610 hppa1.1-*-hpux*)
2da05a5b
JL
611 if [[ x$enable_haifa != xno ]]; then
612 enable_haifa=yes
613 fi
46f18e7b
RK
614 target_cpu_default=1
615 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux9.h"
616 xm_file=pa/xm-pahpux.h
617 xmake_file=pa/x-pa-hpux
618 if [[ x$gas = xyes ]]
619 then
620 tm_file="${tm_file} pa/pa-gas.h"
621 fi
46f18e7b
RK
622 install_headers_dir=install-headers-cpio
623 use_collect2=yes
624 ;;
625 hppa1.0-*-hpux*)
2da05a5b
JL
626 if [[ x$enable_haifa != xno ]]; then
627 enable_haifa=yes
628 fi
46f18e7b
RK
629 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hpux9.h"
630 xm_file=pa/xm-pahpux.h
631 xmake_file=pa/x-pa-hpux
632 if [[ x$gas = xyes ]]
633 then
634 tm_file="${tm_file} pa/pa-gas.h"
635 fi
46f18e7b
RK
636 install_headers_dir=install-headers-cpio
637 use_collect2=yes
638 ;;
639 hppa1.1-*-hiux*)
2da05a5b
JL
640 if [[ x$enable_haifa != xno ]]; then
641 enable_haifa=yes
642 fi
46f18e7b
RK
643 target_cpu_default=1
644 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hiux.h"
645 xm_file=pa/xm-pahpux.h
646 xmake_file=pa/x-pa-hpux
647 if [[ x$gas = xyes ]]
648 then
649 tm_file="${tm_file} pa/pa-gas.h"
650 fi
46f18e7b
RK
651 install_headers_dir=install-headers-cpio
652 use_collect2=yes
653 ;;
654 hppa1.0-*-hiux*)
2da05a5b
JL
655 if [[ x$enable_haifa != xno ]]; then
656 enable_haifa=yes
657 fi
46f18e7b
RK
658 tm_file="${tm_file} pa/pa-hpux.h pa/pa-hiux.h"
659 xm_file=pa/xm-pahpux.h
660 xmake_file=pa/x-pa-hpux
661 if [[ x$gas = xyes ]]
662 then
663 tm_file="${tm_file} pa/pa-gas.h"
664 fi
46f18e7b
RK
665 install_headers_dir=install-headers-cpio
666 use_collect2=yes
667 ;;
668 hppa*-*-lites*)
2da05a5b
JL
669 if [[ x$enable_haifa != xno ]]; then
670 enable_haifa=yes
671 fi
46f18e7b
RK
672 target_cpu_default=1
673 use_collect2=yes
674 fixincludes=Makefile.in
675 ;;
676 i370-*-mvs*)
677 ;;
678 i[[3456]]86-ibm-aix*) # IBM PS/2 running AIX
679 if [[ x$gas = xyes ]]
680 then
681 tm_file=i386/aix386.h
682 extra_parts="crtbegin.o crtend.o"
683 tmake_file=i386/t-crtstuff
684 else
685 tm_file=i386/aix386ng.h
686 use_collect2=yes
687 fi
688 xm_file=i386/xm-aix.h
689 xmake_file=i386/x-aix
46f18e7b
RK
690 ;;
691 i486-ncr-sysv4*) # NCR 3000 - i486 running system V.4
692 xm_file=i386/xm-sysv4.h
693 xmake_file=i386/x-ncr3000
694 if [[ x$stabs = xyes -a x$gas = xyes ]]
695 then
696 tm_file=i386/sysv4gdb.h
697 else
698 tm_file=i386/sysv4.h
699 fi
700 extra_parts="crtbegin.o crtend.o"
701 tmake_file=i386/t-crtpic
702 ;;
703 i[[3456]]86-next-*)
704 tm_file=i386/next.h
705 xm_file=i386/xm-next.h
706 tmake_file=i386/t-next
707 xmake_file=i386/x-next
708 extra_objs=nextstep.o
434332b5 709 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
710 thread_file='mach'
711 fi
46f18e7b
RK
712 ;;
713 i[[3456]]86-sequent-bsd*) # 80386 from Sequent
714 use_collect2=yes
715 if [[ x$gas = xyes ]]
716 then
717 tm_file=i386/seq-gas.h
718 else
719 tm_file=i386/sequent.h
720 fi
721 ;;
722 i[[3456]]86-sequent-ptx1*)
723 xm_file=i386/xm-sysv3.h
724 xmake_file=i386/x-sysv3
725 tm_file=i386/seq-sysv3.h
726 tmake_file=i386/t-crtstuff
727 fixincludes=fixinc.ptx
728 extra_parts="crtbegin.o crtend.o"
729 install_headers_dir=install-headers-cpio
46f18e7b
RK
730 ;;
731 i[[3456]]86-sequent-ptx2* | i[[3456]]86-sequent-sysv3*)
732 xm_file=i386/xm-sysv3.h
733 xmake_file=i386/x-sysv3
734 tm_file=i386/seq2-sysv3.h
735 tmake_file=i386/t-crtstuff
736 extra_parts="crtbegin.o crtend.o"
737 fixincludes=fixinc.ptx
738 install_headers_dir=install-headers-cpio
46f18e7b
RK
739 ;;
740 i[[3456]]86-sequent-ptx4* | i[[3456]]86-sequent-sysv4*)
741 xm_file=i386/xm-sysv4.h
742 xmake_file=x-svr4
743 tm_file=i386/ptx4-i.h
744 tmake_file=t-svr4
745 extra_parts="crtbegin.o crtend.o"
746 fixincludes=fixinc.ptx
747 install_headers_dir=install-headers-cpio
46f18e7b
RK
748 ;;
749 i386-sun-sunos*) # Sun i386 roadrunner
750 xm_file=i386/xm-sun.h
751 tm_file=i386/sun.h
752 use_collect2=yes
753 ;;
754 i[[3456]]86-*-aout*)
755 tm_file=i386/i386-aout.h
756 tmake_file=i386/t-i386bare
757 ;;
758 i[[3456]]86-*-bsdi* | i[[345]]86-*-bsd386*)
759 tm_file=i386/bsd386.h
760 xm_file=i386/xm-bsd386.h
761# tmake_file=t-libc-ok
762 ;;
763 i[[3456]]86-*-bsd*)
764 tm_file=i386/386bsd.h
765 xm_file=i386/xm-bsd386.h
766# tmake_file=t-libc-ok
767# Next line turned off because both 386BSD and BSD/386 use GNU ld.
768# use_collect2=yes
769 ;;
770 i[[3456]]86-*-freebsdelf*)
771 tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h"
772 xm_file=i386/xm-freebsd.h
be1ed94f
JL
773 # On FreeBSD, the headers are already ok, except for math.h.
774 fixincludes=fixinc.math
46f18e7b
RK
775 tmake_file=i386/t-freebsd
776 gas=yes
777 gnu_ld=yes
778 stabs=yes
779 ;;
780 i[[3456]]86-*-freebsd*)
781 tm_file=i386/freebsd.h
782 xm_file=i386/xm-freebsd.h
be1ed94f
JL
783 # On FreeBSD, the headers are already ok, except for math.h.
784 fixincludes=fixinc.math
46f18e7b
RK
785 tmake_file=i386/t-freebsd
786 ;;
787 i[[3456]]86-*-netbsd*)
788 tm_file=i386/netbsd.h
789 xm_file=i386/xm-netbsd.h
be1ed94f
JL
790 # On NetBSD, the headers are already okay, except for math.h.
791 fixincludes=fixinc.math
e47f44f4 792 tmake_file=t-netbsd
46f18e7b
RK
793 ;;
794 i[[3456]]86-*-coff*)
795 tm_file=i386/i386-coff.h
796 tmake_file=i386/t-i386bare
797 ;;
798 i[[3456]]86-*-isc*) # 80386 running ISC system
799 xm_file=i386/xm-isc.h
800 case $machine in
801 i[[345]]86-*-isc[[34]]*)
802 xmake_file=i386/x-isc3
803 ;;
804 *)
805 xmake_file=i386/x-isc
806 ;;
807 esac
808 if [[ x$gas = xyes -a x$stabs = xyes ]]
809 then
810 tm_file=i386/iscdbx.h
811 tmake_file=i386/t-svr3dbx
812 extra_parts="svr3.ifile svr3z.ifile"
813 else
814 tm_file=i386/isccoff.h
815 tmake_file=i386/t-crtstuff
816 extra_parts="crtbegin.o crtend.o"
817 fi
818 install_headers_dir=install-headers-cpio
46f18e7b 819 ;;
844dadc7 820 i[[3456]]86-*-linux-gnuoldld*) # Intel 80386's running Linux
46f18e7b
RK
821 xm_file=i386/xm-linux.h # with a.out format using pre BFD linkers
822 xmake_file=x-linux-aout
823 tmake_file="t-linux-aout i386/t-crtstuff"
824 tm_file=i386/linux-oldld.h
825 fixincludes=Makefile.in #On Linux, the headers are ok already.
46f18e7b 826 gnu_ld=yes
46f18e7b 827 ;;
844dadc7 828 i[[3456]]86-*-linux-gnuaout*) # Intel 80386's running Linux
46f18e7b
RK
829 xm_file=i386/xm-linux.h # with a.out format
830 xmake_file=x-linux-aout
831 tmake_file="t-linux-aout i386/t-crtstuff"
832 tm_file=i386/linux-aout.h
833 fixincludes=Makefile.in #On Linux, the headers are ok already.
46f18e7b 834 gnu_ld=yes
46f18e7b 835 ;;
844dadc7 836 i[[3456]]86-*-linux-gnulibc1)
78b9f8df
RK
837 xm_file=i386/xm-linux.h # Intel 80386's running Linux
838 xmake_file=x-linux # with ELF format using the
839 tm_file=i386/linux.h # Linux C library 5
840 tmake_file="t-linux t-linux-gnulibc1 i386/t-crtstuff"
841 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
842 fixincludes=Makefile.in #On Linux, the headers are ok already.
78b9f8df 843 gnu_ld=yes
434332b5 844 if [[ x$enable_threads = xyes ]]; then
78b9f8df
RK
845 thread_file='single'
846 fi
847 ;;
844dadc7 848 i[[3456]]86-*-linux-gnu*) # Intel 80386's running Linux
78b9f8df
RK
849 xm_file=i386/xm-linux.h # with ELF format using glibc 2
850 xmake_file=x-linux # aka Linux C library 6
46f18e7b
RK
851 tm_file=i386/linux.h
852 tmake_file="t-linux i386/t-crtstuff"
853 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
854 fixincludes=Makefile.in #On Linux, the headers are ok already.
46f18e7b 855 gnu_ld=yes
434332b5 856 if [[ x$enable_threads = xyes ]]; then
78b9f8df
RK
857 thread_file='posix'
858 fi
46f18e7b
RK
859 ;;
860 i[[3456]]86-*-gnu*)
861 ;;
862 i[[3456]]86-go32-msdos | i[[3456]]86-*-go32*)
863 xm_file=i386/xm-go32.h
864 tm_file=i386/go32.h
865 tmake_file=i386/t-go32
866 ;;
867 i[[3456]]86-moss-msdos* | i[[3456]]86-*-moss*)
868 tm_file=i386/moss.h
869 tmake_file=t-libc-ok
870 fixincludes=Makefile.in
871 gnu_ld=yes
872 gas=yes
873 ;;
874 i[[3456]]86-*-lynxos*)
875 if [[ x$gas = xyes ]]
876 then
877 tm_file=i386/lynx.h
878 else
879 tm_file=i386/lynx-ng.h
880 fi
881 xm_file=i386/xm-lynx.h
882 tmake_file=i386/t-i386bare
883 xmake_file=x-lynx
884 ;;
885 i[[3456]]86-*-mach*)
886 tm_file=i386/mach.h
887# tmake_file=t-libc-ok
888 use_collect2=yes
889 ;;
890 i[[3456]]86-*-osfrose*) # 386 using OSF/rose
891 if [[ x$elf = xyes ]]
892 then
893 tm_file=i386/osfelf.h
894 use_collect2=
895 else
896 tm_file=i386/osfrose.h
897 use_collect2=yes
898 fi
899 xm_file=i386/xm-osf.h
900 xmake_file=i386/x-osfrose
901 tmake_file=i386/t-osf
902 extra_objs=halfpic.o
903 ;;
904 i[[345]]86-go32-rtems*)
905 cpu_type=i386
906 xm_file=i386/xm-go32.h
907 tm_file=i386/go32-rtems.h
908 tmake_file="i386/t-go32 t-rtems"
909 ;;
910 i[[345]]86-*-rtems*)
911 cpu_type=i386
912 tm_file=i386/rtems.h
913 tmake_file="i386/t-i386bare t-rtems"
914 ;;
915 i[[3456]]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
916 xm_file=i386/xm-sco5.h
917 xmake_file=i386/x-sco5
918 fixincludes=fixinc.sco
f6857708 919 install_headers_dir=install-headers-cpio
46f18e7b
RK
920 tm_file=i386/sco5.h
921 tmake_file=i386/t-sco5
922 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
923 ;;
924 i[[3456]]86-*-sco3.2v4*) # 80386 running SCO 3.2v4 system
925 xm_file=i386/xm-sco.h
926 xmake_file=i386/x-sco4
927 fixincludes=fixinc.sco
46f18e7b
RK
928 install_headers_dir=install-headers-cpio
929 if [[ x$stabs = xyes ]]
930 then
931 tm_file=i386/sco4dbx.h
932 tmake_file=i386/t-svr3dbx
933 extra_parts="svr3.ifile svr3z.rfile"
934 else
935 tm_file=i386/sco4.h
936 tmake_file=i386/t-crtstuff
937 extra_parts="crtbegin.o crtend.o"
938 fi
939 truncate_target=yes
940 ;;
941 i[[3456]]86-*-sco*) # 80386 running SCO system
942 xm_file=i386/xm-sco.h
943 xmake_file=i386/x-sco
46f18e7b
RK
944 install_headers_dir=install-headers-cpio
945 if [[ x$stabs = xyes ]]
946 then
947 tm_file=i386/scodbx.h
948 tmake_file=i386/t-svr3dbx
949 extra_parts="svr3.ifile svr3z.rfile"
950 else
951 tm_file=i386/sco.h
952 extra_parts="crtbegin.o crtend.o"
953 tmake_file=i386/t-crtstuff
954 fi
955 truncate_target=yes
956 ;;
957 i[[3456]]86-*-solaris2*)
958 xm_file=i386/xm-sysv4.h
959 if [[ x$stabs = xyes ]]
960 then
dec3e070 961 tm_file=i386/sol2dbg.h
46f18e7b
RK
962 else
963 tm_file=i386/sol2.h
964 fi
965 tmake_file=i386/t-sol2
966 extra_parts="crt1.o crti.o crtn.o crtbegin.o crtend.o"
967 xmake_file=x-svr4
968 fixincludes=fixinc.svr4
e9a25f70 969 broken_install=yes
434332b5 970 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
971 thread_file='solaris'
972 fi
46f18e7b
RK
973 ;;
974 i[[3456]]86-*-sysv4*) # Intel 80386's running system V.4
975 xm_file=i386/xm-sysv4.h
976 tm_file=i386/sysv4.h
977 if [[ x$stabs = xyes ]]
978 then
979 tm_file="${tm_file} dbx.h"
980 fi
981 tmake_file=i386/t-crtpic
982 xmake_file=x-svr4
983 extra_parts="crtbegin.o crtend.o"
984 ;;
985 i[[3456]]86-*-sysv*) # Intel 80386's running system V
986 xm_file=i386/xm-sysv3.h
987 xmake_file=i386/x-sysv3
988 if [[ x$gas = xyes ]]
989 then
990 if [[ x$stabs = xyes ]]
991 then
992 tm_file=i386/svr3dbx.h
993 tmake_file=i386/t-svr3dbx
994 extra_parts="svr3.ifile svr3z.rfile"
995 else
996 tm_file=i386/svr3gas.h
997 extra_parts="crtbegin.o crtend.o"
998 tmake_file=i386/t-crtstuff
999 fi
1000 else
1001 tm_file=i386/sysv3.h
1002 extra_parts="crtbegin.o crtend.o"
1003 tmake_file=i386/t-crtstuff
1004 fi
1005 ;;
1006 i386-*-vsta) # Intel 80386's running VSTa kernel
1007 xm_file=i386/xm-vsta.h
1008 tm_file=i386/vsta.h
1009 tmake_file=i386/t-vsta
1010 xmake_file=i386/x-vsta
1011 ;;
1012 i[[3456]]86-*-pe | i[[3456]]86-*-cygwin32)
1013 xm_file="${xm_file} i386/xm-cygwin32.h"
1014 tmake_file=i386/t-cygwin32
1015 tm_file=i386/cygwin32.h
1016 xmake_file=i386/x-cygwin32
1017 extra_objs=winnt.o
1018 fixincludes=Makefile.in
434332b5 1019 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1020 thread_file='win32'
1021 fi
46f18e7b
RK
1022 exeext=.exe
1023 ;;
5dfe8508
RK
1024 i[[3456]]86-*-mingw32)
1025 tm_file=i386/mingw32.h
1026 xm_file="${xm_file} i386/xm-mingw32.h"
1027 tmake_file=i386/t-cygwin32
1028 extra_objs=winnt.o
1029 xmake_file=i386/x-cygwin32
1030 fixincludes=Makefile.in
434332b5 1031 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1032 thread_file='win32'
1033 fi
5dfe8508
RK
1034 exeext=.exe
1035 ;;
46f18e7b
RK
1036 i[[3456]]86-*-winnt3*)
1037 tm_file=i386/win-nt.h
1038 out_file=i386/i386.c
1039 xm_file=i386/xm-winnt.h
1040 xmake_file=winnt/x-winnt
1041 tmake_file=i386/t-winnt
1042 extra_host_objs="winnt.o oldnames.o"
1043 extra_gcc_objs="spawnv.o oldnames.o"
1044 fixincludes=fixinc.winnt
1045 if [[ x$gnu_ld != xyes ]]
1046 then
1047 extra_programs=ld.exe
1048 fi
434332b5 1049 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1050 thread_file='win32'
1051 fi
46f18e7b
RK
1052 ;;
1053 i[[3456]]86-dg-dgux)
1054 xm_file=i386/xm-dgux.h
1055 out_file=i386/dgux.c
1056 tm_file=i386/dgux.h
1057 tmake_file=i386/t-dgux
1058 xmake_file=i386/x-dgux
1059 fixincludes=fixinc.dgux
1060 install_headers_dir=install-headers-cpio
1061 ;;
1062 i860-alliant-*) # Alliant FX/2800
1063 tm_file="${tm_file} svr4.h i860/sysv4.h i860/fx2800.h"
1064 xm_file="${xm_file} i860/xm-fx2800.h"
1065 xmake_file=i860/x-fx2800
1066 tmake_file=i860/t-fx2800
1067 extra_parts="crtbegin.o crtend.o"
1068 ;;
1069 i860-*-bsd*)
1070 tm_file="${tm_file} i860/bsd.h"
1071 if [[ x$gas = xyes ]]
1072 then
1073 tm_file="${tm_file} i860/bsd-gas.h"
1074 fi
1075 use_collect2=yes
1076 ;;
1077 i860-*-mach*)
1078 tm_file="${tm_file} i860/mach.h"
1079 tmake_file=t-libc-ok
1080 ;;
1081 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1082 tm_file="${tm_file} svr3.h i860/paragon.h"
1083 xm_file="${xm_file} xm-svr3.h"
1084 tmake_file=t-osf
46f18e7b
RK
1085 ;;
1086 i860-*-sysv3*)
1087 tm_file="${tm_file} svr3.h i860/sysv3.h"
1088 xm_file="${tm_file} xm-svr3.h"
1089 xmake_file=i860/x-sysv3
1090 extra_parts="crtbegin.o crtend.o"
1091 ;;
1092 i860-*-sysv4*)
1093 tm_file="${tm_file} svr4.h i860/sysv4.h"
1094 xm_file="${xm_file} xm-svr3.h"
1095 xmake_file=i860/x-sysv4
1096 tmake_file=t-svr4
1097 extra_parts="crtbegin.o crtend.o"
1098 ;;
1099 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1100 tm_file="${tm_file} i960/vx960.h"
1101 tmake_file=i960/t-vxworks960
1102 use_collect2=yes
1103 ;;
1104 i960-wrs-vxworks5*)
1105 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1106 tmake_file=i960/t-vxworks960
1107 use_collect2=yes
1108 ;;
1109 i960-wrs-vxworks*)
1110 tm_file="${tm_file} i960/vx960.h"
1111 tmake_file=i960/t-vxworks960
1112 use_collect2=yes
1113 ;;
1114 i960-*-coff*)
1115 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1116 tmake_file=i960/t-960bare
1117 use_collect2=yes
1118 ;;
1119 i960-*-rtems)
1120 tmake_file="i960/t-960bare t-rtems"
1121 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
1122 use_collect2=yes
1123 ;;
1124 i960-*-*) # Default i960 environment.
1125 use_collect2=yes
1126 ;;
dec3e070
JW
1127 m32r-*-elf*)
1128 extra_parts="crtinit.o crtfini.o"
1129 ;;
46f18e7b
RK
1130 m68000-convergent-sysv*)
1131 tm_file=m68k/ctix.h
1132 xm_file=m68k/xm-3b1.h
1133 use_collect2=yes
1134 extra_headers=math-68881.h
1135 ;;
1136 m68000-hp-bsd*) # HP 9000/200 running BSD
1137 tm_file=m68k/hp2bsd.h
1138 xmake_file=m68k/x-hp2bsd
1139 use_collect2=yes
1140 extra_headers=math-68881.h
1141 ;;
1142 m68000-hp-hpux*) # HP 9000 series 300
1143 xm_file=m68k/xm-hp320.h
1144 if [[ x$gas = xyes ]]
1145 then
1146 xmake_file=m68k/x-hp320g
1147 tm_file=m68k/hp310g.h
1148 else
1149 xmake_file=m68k/x-hp320
1150 tm_file=m68k/hp310.h
1151 fi
46f18e7b
RK
1152 install_headers_dir=install-headers-cpio
1153 use_collect2=yes
1154 extra_headers=math-68881.h
1155 ;;
1156 m68000-sun-sunos3*)
1157 tm_file=m68k/sun2.h
1158 use_collect2=yes
1159 extra_headers=math-68881.h
1160 ;;
1161 m68000-sun-sunos4*)
1162 tm_file=m68k/sun2o4.h
1163 use_collect2=yes
1164 extra_headers=math-68881.h
1165 ;;
1166 m68000-att-sysv*)
1167 xm_file=m68k/xm-3b1.h
1168 if [[ x$gas = xyes ]]
1169 then
1170 tm_file=m68k/3b1g.h
1171 else
1172 tm_file=m68k/3b1.h
1173 fi
1174 use_collect2=yes
1175 extra_headers=math-68881.h
1176 ;;
1177 m68k-apple-aux*) # Apple Macintosh running A/UX
1178 xm_file=m68k/xm-aux.h
1179 tmake_file=m68k/t-aux
46f18e7b
RK
1180 install_headers_dir=install-headers-cpio
1181 extra_headers=math-68881.h
1182 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
1183 tm_file=
1184 if [[ "$gnu_ld" = yes ]]
1185 then
1186 tm_file="${tm_file} m68k/auxgld.h"
1187 else
1188 tm_file="${tm_file} m68k/auxld.h"
1189 fi
1190 if [[ "$gas" = yes ]]
1191 then
1192 tm_file="${tm_file} m68k/auxgas.h"
1193 else
1194 tm_file="${tm_file} m68k/auxas.h"
1195 fi
1196 tm_file="${tm_file} m68k/a-ux.h"
1197 ;;
1198 m68k-apollo-*)
1199 tm_file=m68k/apollo68.h
1200 xmake_file=m68k/x-apollo68
1201 use_collect2=yes
1202 extra_headers=math-68881.h
1203 ;;
1204 m68k-altos-sysv*) # Altos 3068
1205 if [[ x$gas = xyes ]]
1206 then
1207 tm_file=m68k/altos3068.h
1208 xm_file=m68k/xm-altos3068.h
1209 else
1210 echo "The Altos is supported only with the GNU assembler" 1>&2
1211 exit 1
1212 fi
1213 extra_headers=math-68881.h
1214 ;;
1215 m68k-bull-sysv*) # Bull DPX/2
1216 if [[ x$gas = xyes ]]
1217 then
1218 if [[ x$stabs = xyes ]]
1219 then
1220 tm_file=m68k/dpx2cdbx.h
1221 else
1222 tm_file=m68k/dpx2g.h
1223 fi
1224 else
1225 tm_file=m68k/dpx2.h
1226 fi
1227 xm_file=m68k/xm-m68kv.h
1228 xmake_file=m68k/x-dpx2
1229 use_collect2=yes
1230 extra_headers=math-68881.h
1231 ;;
1232 m68k-atari-sysv4*) # Atari variant of V.4.
1233 tm_file=m68k/atari.h
1234 xm_file=m68k/xm-atari.h
1235 tmake_file=t-svr4
1236 extra_parts="crtbegin.o crtend.o"
1237 extra_headers=math-68881.h
1238 ;;
1239 m68k-motorola-sysv*)
1240 tm_file=m68k/mot3300.h
1241 xm_file=m68k/xm-mot3300.h
1242 if [[ x$gas = xyes ]]
1243 then
1244 xmake_file=m68k/x-mot3300-gas
1245 if [[ x$gnu_ld = xyes ]]
1246 then
1247 tmake_file=m68k/t-mot3300-gald
1248 else
1249 tmake_file=m68k/t-mot3300-gas
1250 use_collect2=yes
1251 fi
1252 else
1253 xmake_file=m68k/x-mot3300
1254 if [[ x$gnu_ld = xyes ]]
1255 then
1256 tmake_file=m68k/t-mot3300-gld
1257 else
1258 tmake_file=m68k/t-mot3300
1259 use_collect2=yes
1260 fi
1261 fi
1262 gdb_needs_out_file_path=yes
1263 extra_parts="crt0.o mcrt0.o"
1264 extra_headers=math-68881.h
1265 ;;
1266 m68k-ncr-sysv*) # NCR Tower 32 SVR3
1267 tm_file=m68k/tower-as.h
1268 xm_file=m68k/xm-tower.h
1269 xmake_file=m68k/x-tower
1270 extra_parts="crtbegin.o crtend.o"
1271 extra_headers=math-68881.h
1272 ;;
1273 m68k-plexus-sysv*)
1274 tm_file=m68k/plexus.h
1275 xm_file=m68k/xm-plexus.h
1276 use_collect2=yes
1277 extra_headers=math-68881.h
1278 ;;
1279 m68k-tti-*)
1280 tm_file=m68k/pbb.h
1281 xm_file=m68k/xm-m68kv.h
1282 extra_headers=math-68881.h
1283 ;;
1284 m68k-crds-unos*)
1285 xm_file=m68k/xm-crds.h
1286 xmake_file=m68k/x-crds
1287 tm_file=m68k/crds.h
46f18e7b
RK
1288 use_collect2=yes
1289 extra_headers=math-68881.h
1290 ;;
1291 m68k-cbm-sysv4*) # Commodore variant of V.4.
1292 tm_file=m68k/amix.h
1293 xm_file=m68k/xm-amix.h
1294 xmake_file=m68k/x-amix
1295 tmake_file=t-svr4
1296 extra_parts="crtbegin.o crtend.o"
1297 extra_headers=math-68881.h
1298 ;;
1299 m68k-ccur-rtu)
1300 tm_file=m68k/ccur-GAS.h
1301 xmake_file=m68k/x-ccur
1302 extra_headers=math-68881.h
1303 use_collect2=yes
46f18e7b
RK
1304 ;;
1305 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
1306 tm_file=m68k/hp3bsd44.h
1307 xmake_file=m68k/x-hp3bsd44
1308 use_collect2=yes
1309 extra_headers=math-68881.h
1310 ;;
1311 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
1312 tm_file=m68k/hp3bsd.h
1313 use_collect2=yes
1314 extra_headers=math-68881.h
1315 ;;
1316 m68k-isi-bsd*)
1317 if [[ x$with_fp = xno ]]
1318 then
1319 tm_file=m68k/isi-nfp.h
1320 else
1321 tm_file=m68k/isi.h
1322 fi
1323 use_collect2=yes
1324 extra_headers=math-68881.h
1325 ;;
1326 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
1327 xm_file=m68k/xm-hp320.h
1328 if [[ x$gas = xyes ]]
1329 then
1330 xmake_file=m68k/x-hp320g
1331 tm_file=m68k/hp320g.h
1332 else
1333 xmake_file=m68k/x-hp320
1334 tm_file=m68k/hpux7.h
1335 fi
46f18e7b
RK
1336 install_headers_dir=install-headers-cpio
1337 use_collect2=yes
1338 extra_headers=math-68881.h
1339 ;;
1340 m68k-hp-hpux*) # HP 9000 series 300
1341 xm_file=m68k/xm-hp320.h
1342 if [[ x$gas = xyes ]]
1343 then
1344 xmake_file=m68k/x-hp320g
1345 tm_file=m68k/hp320g.h
1346 else
1347 xmake_file=m68k/x-hp320
1348 tm_file=m68k/hp320.h
1349 fi
46f18e7b
RK
1350 install_headers_dir=install-headers-cpio
1351 use_collect2=yes
1352 extra_headers=math-68881.h
1353 ;;
1354 m68k-sun-mach*)
1355 tm_file=m68k/sun3mach.h
1356 use_collect2=yes
1357 extra_headers=math-68881.h
1358 ;;
1359 m68k-sony-newsos3*)
1360 if [[ x$gas = xyes ]]
1361 then
1362 tm_file=m68k/news3gas.h
1363 else
1364 tm_file=m68k/news3.h
1365 fi
1366 use_collect2=yes
1367 extra_headers=math-68881.h
1368 ;;
1369 m68k-sony-bsd* | m68k-sony-newsos*)
1370 if [[ x$gas = xyes ]]
1371 then
1372 tm_file=m68k/newsgas.h
1373 else
1374 tm_file=m68k/news.h
1375 fi
1376 use_collect2=yes
1377 extra_headers=math-68881.h
1378 ;;
1379 m68k-next-nextstep2*)
1380 tm_file=m68k/next21.h
1381 xm_file=m68k/xm-next.h
1382 tmake_file=m68k/t-next
1383 xmake_file=m68k/x-next
1384 extra_objs=nextstep.o
1385 extra_headers=math-68881.h
1386 use_collect2=yes
1387 ;;
1388 m68k-next-nextstep3*)
1389 tm_file=m68k/next.h
1390 xm_file=m68k/xm-next.h
1391 tmake_file=m68k/t-next
1392 xmake_file=m68k/x-next
1393 extra_objs=nextstep.o
1394 extra_headers=math-68881.h
434332b5 1395 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1396 thread_file='mach'
1397 fi
46f18e7b
RK
1398 ;;
1399 m68k-sun-sunos3*)
1400 if [[ x$with_fp = xno ]]
1401 then
1402 tm_file=m68k/sun3n3.h
1403 else
1404 tm_file=m68k/sun3o3.h
1405 fi
1406 use_collect2=yes
1407 extra_headers=math-68881.h
1408 ;;
1409 m68k-sun-sunos*) # For SunOS 4 (the default).
1410 if [[ x$with_fp = xno ]]
1411 then
1412 tm_file=m68k/sun3n.h
1413 else
1414 tm_file=m68k/sun3.h
1415 fi
1416 xm_file=m68k/xm-sun3.h
1417 use_collect2=yes
1418 extra_headers=math-68881.h
1419 ;;
1420 m68k-wrs-vxworks*)
1421 tm_file=m68k/vxm68k.h
1422 tmake_file=m68k/t-vxworks68
1423 extra_headers=math-68881.h
1424 ;;
1425 m68k-*-aout*)
1426 tmake_file=m68k/t-m68kbare
1427 tm_file="m68k/m68k-aout.h libgloss.h"
1428 extra_headers=math-68881.h
1429 ;;
1430 m68k-*-coff*)
1431 tmake_file=m68k/t-m68kbare
1432 tm_file="m68k/m68k-coff.h dbx.h libgloss.h"
1433 extra_headers=math-68881.h
1434 ;;
1435 m68k-*-lynxos*)
1436 if [[ x$gas = xyes ]]
1437 then
1438 tm_file=m68k/lynx.h
1439 else
1440 tm_file=m68k/lynx-ng.h
1441 fi
1442 xm_file=m68k/xm-lynx.h
1443 xmake_file=x-lynx
1444 tmake_file=m68k/t-lynx
1445 extra_headers=math-68881.h
1446 ;;
1447 m68k-*-netbsd*)
1448 tm_file=m68k/netbsd.h
1449 xm_file=m68k/xm-netbsd.h
be1ed94f
JL
1450 # On NetBSD, the headers are already okay, except for math.h.
1451 fixincludes=fixinc.math
e47f44f4 1452 tmake_file=t-netbsd
46f18e7b
RK
1453 ;;
1454 m68k-*-sysv3*) # Motorola m68k's running system V.3
1455 xm_file=m68k/xm-m68kv.h
1456 xmake_file=m68k/x-m68kv
1457 extra_parts="crtbegin.o crtend.o"
1458 extra_headers=math-68881.h
1459 ;;
1460 m68k-*-sysv4*) # Motorola m68k's running system V.4
1461 tm_file=m68k/m68kv4.h
1462 xm_file=m68k/xm-m68kv.h
1463 tmake_file=t-svr4
1464 extra_parts="crtbegin.o crtend.o"
1465 extra_headers=math-68881.h
1466 ;;
844dadc7 1467 m68k-*-linux-gnuaout*) # Motorola m68k's running Linux
46f18e7b
RK
1468 xm_file=m68k/xm-linux.h # with a.out format
1469 xmake_file=x-linux
1470 tm_file=m68k/linux-aout.h
1471 tmake_file="t-linux-aout m68k/t-linux-aout"
1472 fixincludes=Makefile.in #On Linux, the headers are ok already.
1473 extra_headers=math-68881.h
1474 gnu_ld=yes
46f18e7b 1475 ;;
95fd3981
RK
1476 m68k-*-linux-gnulibc1) # Motorola m68k's running Linux
1477 xm_file=m68k/xm-linux.h # with ELF format using the
1478 xmake_file=x-linux # Linux C library 5
1479 tm_file=m68k/linux.h
1480 tmake_file="t-linux t-linux-gnulibc1 m68k/t-linux"
1481 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1482 fixincludes=Makefile.in #On Linux, the headers are ok already.
1483 extra_headers=math-68881.h
1484 gnu_ld=yes
1485 ;;
844dadc7 1486 m68k-*-linux-gnu*) # Motorola m68k's running Linux
95fd3981
RK
1487 xm_file=m68k/xm-linux.h # with ELF format using glibc 2
1488 xmake_file=x-linux # aka the Linux C library 6.
46f18e7b
RK
1489 tm_file=m68k/linux.h
1490 tmake_file="t-linux m68k/t-linux"
1491 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1492 fixincludes=Makefile.in #On Linux, the headers are ok already.
1493 extra_headers=math-68881.h
1494 gnu_ld=yes
d1054723 1495 if [[ x$enable_threads = xyes ]]; then
95fd3981
RK
1496 thread_file='posix'
1497 fi
46f18e7b
RK
1498 ;;
1499 m68k-*-psos*)
1500 tmake_file=m68k/t-m68kbare
1501 tm_file=m68k/m68k-psos.h
1502 extra_headers=math-68881.h
1503 ;;
1504 m68k-*-rtems*)
1505 tmake_file="m68k/t-m68kbare t-rtems"
1506 tm_file=m68k/rtems.h
1507 extra_headers=math-68881.h
1508 ;;
1509
1510 m88k-dg-dgux*)
1511 case $machine in
1512 m88k-dg-dguxbcs*)
1513 tm_file=m88k/dguxbcs.h
1514 tmake_file=m88k/t-dguxbcs
1515 ;;
1516 *)
1517 tm_file=m88k/dgux.h
1518 tmake_file=m88k/t-dgux
1519 ;;
1520 esac
1521 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
46f18e7b
RK
1522 xmake_file=m88k/x-dgux
1523 if [[ x$gas = xyes ]]
1524 then
1525 tmake_file=m88k/t-dgux-gas
1526 fi
1527 fixincludes=fixinc.dgux
1528 ;;
1529 m88k-dolphin-sysv3*)
1530 tm_file=m88k/dolph.h
1531 extra_parts="crtbegin.o crtend.o"
1532 xm_file=m88k/xm-sysv3.h
1533 xmake_file=m88k/x-dolph
1534 if [[ x$gas = xyes ]]
1535 then
1536 tmake_file=m88k/t-m88k-gas
1537 fi
1538 ;;
1539 m88k-tektronix-sysv3)
1540 tm_file=m88k/tekXD88.h
1541 extra_parts="crtbegin.o crtend.o"
1542 xm_file=m88k/xm-sysv3.h
1543 xmake_file=m88k/x-tekXD88
1544 if [[ x$gas = xyes ]]
1545 then
1546 tmake_file=m88k/t-m88k-gas
1547 fi
1548 ;;
1549 m88k-*-aout*)
1550 tm_file=m88k/m88k-aout.h
1551 ;;
1552 m88k-*-coff*)
1553 tm_file=m88k/m88k-coff.h
1554 tmake_file=m88k/t-bug
1555 ;;
1556 m88k-*-luna*)
1557 tm_file=m88k/luna.h
1558 extra_parts="crtbegin.o crtend.o"
1559 if [[ x$gas = xyes ]]
1560 then
1561 tmake_file=m88k/t-luna-gas
1562 else
1563 tmake_file=m88k/t-luna
1564 fi
1565 ;;
1566 m88k-*-sysv3*)
1567 tm_file=m88k/sysv3.h
1568 extra_parts="crtbegin.o crtend.o"
1569 xm_file=m88k/xm-sysv3.h
1570 xmake_file=m88k/x-sysv3
1571 if [[ x$gas = xyes ]]
1572 then
1573 tmake_file=m88k/t-m88k-gas
1574 fi
1575 ;;
1576 m88k-*-sysv4*)
1577 tm_file=m88k/sysv4.h
1578 extra_parts="crtbegin.o crtend.o"
1579 xmake_file=m88k/x-sysv4
1580 tmake_file=m88k/t-sysv4
1581 ;;
1582 mips-sgi-irix6*) # SGI System V.4., IRIX 6
1583 tm_file=mips/iris6.h
1584 xm_file=mips/xm-iris6.h
46f18e7b
RK
1585 fixincludes=fixinc.irix
1586 xmake_file=mips/x-iris6
1587 tmake_file=mips/t-iris6
434332b5 1588 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1589 thread_file='irix'
1590 fi
46f18e7b
RK
1591 ;;
1592 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
1593 tm_file=mips/cross64.h
1594 xm_file=mips/xm-iris5.h
46f18e7b
RK
1595 fixincludes=Makefile.in
1596 xmake_file=mips/x-iris
1597 tmake_file=mips/t-cross64
1598 # See comment in mips/iris[56].h files.
1599 use_collect2=yes
434332b5 1600 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1601 thread_file='irix'
1602 fi
46f18e7b
RK
1603 ;;
1604 mips-sni-sysv4)
1605 if [[ x$gas = xyes ]]
1606 then
1607 if [[ x$stabs = xyes ]]
1608 then
1609 tm_file=mips/iris5gdb.h
1610 else
1611 tm_file=mips/sni-gas.h
1612 fi
1613 else
1614 tm_file=mips/sni-svr4.h
1615 fi
1616 xm_file=mips/xm-sysv.h
1617 xmake_file=mips/x-sni-svr4
1618 tmake_file=mips/t-mips-gas
1619 if [[ x$gnu_ld != xyes ]]
1620 then
1621 use_collect2=yes
1622 fi
46f18e7b
RK
1623 ;;
1624 mips-sgi-irix5*) # SGI System V.4., IRIX 5
1625 if [[ x$gas = xyes ]]
1626 then
1627 tm_file=mips/iris5gas.h
1628 if [[ x$stabs = xyes ]]
1629 then
1630 tm_file="${tm_file} dbx.h"
1631 fi
1632 else
1633 tm_file=mips/iris5.h
1634 fi
1635 xm_file=mips/xm-iris5.h
46f18e7b
RK
1636 fixincludes=fixinc.irix
1637 xmake_file=mips/x-iris
1638 # mips-tfile doesn't work yet
1639 tmake_file=mips/t-mips-gas
1640 # See comment in mips/iris5.h file.
1641 use_collect2=yes
434332b5 1642 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1643 thread_file='irix'
1644 fi
46f18e7b
RK
1645 ;;
1646 mips-sgi-irix4loser*) # Mostly like a MIPS.
1647 tm_file=mips/iris4loser.h
1648 if [[ x$stabs = xyes ]]; then
1649 tm_file="${tm_file} dbx.h"
1650 fi
1651 xm_file=mips/xm-iris4.h
46f18e7b
RK
1652 xmake_file=mips/x-iris
1653 if [[ x$gas = xyes ]]
1654 then
1655 tmake_file=mips/t-mips-gas
1656 else
1657 extra_passes="mips-tfile mips-tdump"
1658 fi
1659 if [[ x$gnu_ld != xyes ]]
1660 then
1661 use_collect2=yes
1662 fi
434332b5 1663 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1664 thread_file='irix'
1665 fi
46f18e7b
RK
1666 ;;
1667 mips-sgi-irix4*) # Mostly like a MIPS.
1668 tm_file=mips/iris4.h
1669 if [[ x$stabs = xyes ]]; then
1670 tm_file="${tm_file} dbx.h"
1671 fi
1672 xm_file=mips/xm-iris4.h
46f18e7b
RK
1673 xmake_file=mips/x-iris
1674 if [[ x$gas = xyes ]]
1675 then
1676 tmake_file=mips/t-mips-gas
1677 else
1678 extra_passes="mips-tfile mips-tdump"
1679 fi
1680 if [[ x$gnu_ld != xyes ]]
1681 then
1682 use_collect2=yes
1683 fi
434332b5 1684 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
1685 thread_file='irix'
1686 fi
46f18e7b
RK
1687 ;;
1688 mips-sgi-*) # Mostly like a MIPS.
1689 tm_file=mips/iris3.h
1690 if [[ x$stabs = xyes ]]; then
1691 tm_file="${tm_file} dbx.h"
1692 fi
1693 xm_file=mips/xm-iris3.h
46f18e7b
RK
1694 xmake_file=mips/x-iris3
1695 if [[ x$gas = xyes ]]
1696 then
1697 tmake_file=mips/t-mips-gas
1698 else
1699 extra_passes="mips-tfile mips-tdump"
1700 fi
1701 if [[ x$gnu_ld != xyes ]]
1702 then
1703 use_collect2=yes
1704 fi
1705 ;;
1706 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
1707 tm_file=mips/osfrose.h
1708 xmake_file=mips/x-osfrose
1709 tmake_file=mips/t-osfrose
1710 extra_objs=halfpic.o
1711 use_collect2=yes
1712 ;;
1713 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
1714 tm_file=mips/dec-osf1.h
1715 if [[ x$stabs = xyes ]]; then
1716 tm_file="${tm_file} dbx.h"
1717 fi
1718 xmake_file=mips/x-dec-osf1
1719 if [[ x$gas = xyes ]]
1720 then
1721 tmake_file=mips/t-mips-gas
1722 else
1723 tmake_file=mips/t-ultrix
1724 extra_passes="mips-tfile mips-tdump"
1725 fi
1726 if [[ x$gnu_ld != xyes ]]
1727 then
1728 use_collect2=yes
1729 fi
1730 ;;
1731 mips-dec-bsd*) # Decstation running 4.4 BSD
1732 tm_file=mips/dec-bsd.h
1733 fixincludes=
1734 if [[ x$gas = xyes ]]
1735 then
1736 tmake_file=mips/t-mips-gas
1737 else
1738 tmake_file=mips/t-ultrix
1739 extra_passes="mips-tfile mips-tdump"
1740 fi
1741 if [[ x$gnu_ld != xyes ]]
1742 then
1743 use_collect2=yes
1744 fi
1745 ;;
1746 mips-dec-netbsd*) # Decstation running NetBSD
1747 tm_file=mips/netbsd.h
1748 xm_file=mips/xm-netbsd.h
be1ed94f
JL
1749 # On NetBSD, the headers are already okay, except for math.h.
1750 fixincludes=fixinc.math
e47f44f4 1751 tmake_file=t-netbsd
46f18e7b
RK
1752 ;;
1753 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
1754 tm_file=mips/news4.h
1755 if [[ x$stabs = xyes ]]; then
1756 tm_file="${tm_file} dbx.h"
1757 fi
1758 if [[ x$gas = xyes ]]
1759 then
1760 tmake_file=mips/t-mips-gas
1761 else
1762 extra_passes="mips-tfile mips-tdump"
1763 fi
1764 if [[ x$gnu_ld != xyes ]]
1765 then
1766 use_collect2=yes
1767 fi
1768 xmake_file=mips/x-sony
1769 ;;
1770 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
1771 # That is based on svr4.
1772 # t-svr4 is not right because this system doesn't use ELF.
1773 tm_file=mips/news5.h
1774 if [[ x$stabs = xyes ]]; then
1775 tm_file="${tm_file} dbx.h"
1776 fi
1777 xm_file=mips/xm-news.h
1778 if [[ x$gas = xyes ]]
1779 then
1780 tmake_file=mips/t-mips-gas
1781 else
1782 extra_passes="mips-tfile mips-tdump"
1783 fi
1784 if [[ x$gnu_ld != xyes ]]
1785 then
1786 use_collect2=yes
1787 fi
1788 ;;
1789 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
1790 tm_file=mips/svr4-t.h
1791 if [[ x$stabs = xyes ]]; then
1792 tm_file="${tm_file} dbx.h"
1793 fi
1794 xm_file=mips/xm-sysv4.h
1795 xmake_file=mips/x-sysv
1796 if [[ x$gas = xyes ]]
1797 then
1798 tmake_file=mips/t-mips-gas
1799 extra_parts="crtbegin.o crtend.o"
1800 else
1801 tmake_file=mips/t-mips
1802 extra_passes="mips-tfile mips-tdump"
1803 fi
1804 if [[ x$gnu_ld != xyes ]]
1805 then
1806 use_collect2=yes
1807 fi
46f18e7b
RK
1808 ;;
1809 mips-*-ultrix* | mips-dec-mach3) # Decstation.
1810 tm_file=mips/ultrix.h
1811 if [[ x$stabs = xyes ]]; then
1812 tm_file="${tm_file} dbx.h"
1813 fi
1814 xmake_file=mips/x-ultrix
1815 if [[ x$gas = xyes ]]
1816 then
1817 tmake_file=mips/t-mips-gas
1818 else
1819 tmake_file=mips/t-ultrix
1820 extra_passes="mips-tfile mips-tdump"
1821 fi
1822 if [[ x$gnu_ld != xyes ]]
1823 then
1824 use_collect2=yes
1825 fi
1826 ;;
1827 mips-*-riscos[[56789]]bsd*)
1828 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
1829 if [[ x$stabs = xyes ]]; then
1830 tm_file="${tm_file} dbx.h"
1831 fi
1832 if [[ x$gas = xyes ]]
1833 then
1834 tmake_file=mips/t-bsd-gas
1835 else
1836 tmake_file=mips/t-bsd
1837 extra_passes="mips-tfile mips-tdump"
1838 fi
1839 if [[ x$gnu_ld != xyes ]]
1840 then
1841 use_collect2=yes
1842 fi
46f18e7b
RK
1843 ;;
1844 mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[[1234]]bsd*)
1845 tm_file=mips/bsd-4.h # MIPS BSD 4.3, RISC-OS 4.0
1846 if [[ x$stabs = xyes ]]; then
1847 tm_file="${tm_file} dbx.h"
1848 fi
1849 if [[ x$gas = xyes ]]
1850 then
1851 tmake_file=mips/t-bsd-gas
1852 else
1853 tmake_file=mips/t-bsd
1854 extra_passes="mips-tfile mips-tdump"
1855 fi
1856 if [[ x$gnu_ld != xyes ]]
1857 then
1858 use_collect2=yes
1859 fi
46f18e7b
RK
1860 ;;
1861 mips-*-riscos[[56789]]sysv4*)
1862 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
1863 if [[ x$stabs = xyes ]]; then
1864 tm_file="${tm_file} dbx.h"
1865 fi
1866 xm_file=mips/xm-sysv4.h
1867 xmake_file=mips/x-sysv
1868 if [[ x$gas = xyes ]]
1869 then
1870 tmake_file=mips/t-svr4-gas
1871 else
1872 tmake_file=mips/t-svr4
1873 extra_passes="mips-tfile mips-tdump"
1874 fi
1875 if [[ x$gnu_ld != xyes ]]
1876 then
1877 use_collect2=yes
1878 fi
46f18e7b
RK
1879 ;;
1880 mips-*-sysv4* | mips-*-riscos[[1234]]sysv4* | mips-*-riscossysv4*)
1881 tm_file=mips/svr4-4.h # MIPS System V.4. RISC-OS 4.0
1882 if [[ x$stabs = xyes ]]; then
1883 tm_file="${tm_file} dbx.h"
1884 fi
1885 xm_file=mips/xm-sysv.h
1886 xmake_file=mips/x-sysv
1887 if [[ x$gas = xyes ]]
1888 then
1889 tmake_file=mips/t-svr4-gas
1890 else
1891 tmake_file=mips/t-svr4
1892 extra_passes="mips-tfile mips-tdump"
1893 fi
1894 if [[ x$gnu_ld != xyes ]]
1895 then
1896 use_collect2=yes
1897 fi
46f18e7b
RK
1898 ;;
1899 mips-*-riscos[[56789]]sysv*)
1900 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
1901 if [[ x$stabs = xyes ]]; then
1902 tm_file="${tm_file} dbx.h"
1903 fi
1904 xm_file=mips/xm-sysv.h
1905 xmake_file=mips/x-sysv
1906 if [[ x$gas = xyes ]]
1907 then
1908 tmake_file=mips/t-svr3-gas
1909 else
1910 tmake_file=mips/t-svr3
1911 extra_passes="mips-tfile mips-tdump"
1912 fi
1913 if [[ x$gnu_ld != xyes ]]
1914 then
1915 use_collect2=yes
1916 fi
46f18e7b
RK
1917 ;;
1918 mips-*-sysv* | mips-*-riscos*sysv*)
1919 tm_file=mips/svr3-4.h # MIPS System V.3, RISC-OS 4.0
1920 if [[ x$stabs = xyes ]]; then
1921 tm_file="${tm_file} dbx.h"
1922 fi
1923 xm_file=mips/xm-sysv.h
1924 xmake_file=mips/x-sysv
1925 if [[ x$gas = xyes ]]
1926 then
1927 tmake_file=mips/t-svr3-gas
1928 else
1929 tmake_file=mips/t-svr3
1930 extra_passes="mips-tfile mips-tdump"
1931 fi
1932 if [[ x$gnu_ld != xyes ]]
1933 then
1934 use_collect2=yes
1935 fi
46f18e7b
RK
1936 ;;
1937 mips-*-riscos[[56789]]*) # Default MIPS RISC-OS 5.0.
1938 tm_file=mips/mips-5.h
1939 if [[ x$stabs = xyes ]]; then
1940 tm_file="${tm_file} dbx.h"
1941 fi
1942 if [[ x$gas = xyes ]]
1943 then
1944 tmake_file=mips/t-mips-gas
1945 else
1946 extra_passes="mips-tfile mips-tdump"
1947 fi
1948 if [[ x$gnu_ld != xyes ]]
1949 then
1950 use_collect2=yes
1951 fi
46f18e7b
RK
1952 ;;
1953 mips-*-gnu*)
1954 ;;
1955 mipsel-*-ecoff*)
1956 tm_file=mips/ecoffl.h
1957 if [[ x$stabs = xyes ]]; then
1958 tm_file="${tm_file} dbx.h"
1959 fi
1960 tmake_file=mips/t-ecoff
1961 ;;
1962 mips-*-ecoff*)
1963 tm_file=mips/ecoff.h
1964 if [[ x$stabs = xyes ]]; then
1965 tm_file="${tm_file} dbx.h"
1966 fi
1967 tmake_file=mips/t-ecoff
46f18e7b
RK
1968 ;;
1969 mipsel-*-elf*)
1970 tm_file="mips/elfl.h libgloss.h"
1971 tmake_file=mips/t-ecoff
1972 ;;
1973 mips-*-elf*)
1974 tm_file="mips/elf.h libgloss.h"
1975 tmake_file=mips/t-ecoff
1976 ;;
1977 mips64el-*-elf*)
1978 tm_file="mips/elfl64.h libgloss.h"
1979 tmake_file=mips/t-ecoff
1980 ;;
1981 mips64orionel-*-elf*)
1982 tm_file="mips/elflorion.h libgloss.h"
1983 tmake_file=mips/t-ecoff
1984 ;;
1985 mips64-*-elf*)
1986 tm_file="mips/elf64.h libgloss.h"
1987 tmake_file=mips/t-ecoff
1988 ;;
1989 mips64orion-*-elf*)
1990 tm_file="mips/elforion.h libgloss.h"
1991 tmake_file=mips/t-ecoff
1992 ;;
1993 mips64orion-*-rtems*)
1994 tm_file=mips/rtems64.h
1995 tmake_file="mips/t-ecoff t-rtems"
1996 ;;
e9a25f70
JL
1997 mipstx39el-*-elf*)
1998 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h libgloss.h"
1999 tmake_file=mips/t-ecoff
2000 ;;
2001 mipstx39-*-elf*)
2002 tm_file="mips/r3900.h mips/elf.h mips/abi64.h libgloss.h"
2003 tmake_file=mips/t-ecoff
2004 ;;
46f18e7b
RK
2005 mips-*-*) # Default MIPS RISC-OS 4.0.
2006 if [[ x$stabs = xyes ]]; then
2007 tm_file="${tm_file} dbx.h"
2008 fi
2009 if [[ x$gas = xyes ]]
2010 then
2011 tmake_file=mips/t-mips-gas
2012 else
2013 extra_passes="mips-tfile mips-tdump"
2014 fi
2015 if [[ x$gnu_ld != xyes ]]
2016 then
2017 use_collect2=yes
2018 fi
2019 ;;
cef64ec4
RK
2020 mn10200-*-*)
2021 cpu_type=mn10200
2022 tm_file="mn10200/mn10200.h"
2023 if [[ x$stabs = xyes ]]
2024 then
2025 tm_file="${tm_file} dbx.h"
2026 fi
2027 use_collect2=no
2028 ;;
46f18e7b
RK
2029 mn10300-*-*)
2030 cpu_type=mn10300
2031 tm_file="mn10300/mn10300.h"
2032 if [[ x$stabs = xyes ]]
2033 then
2034 tm_file="${tm_file} dbx.h"
2035 fi
2036 use_collect2=no
2037 ;;
2038 ns32k-encore-bsd*)
2039 tm_file=ns32k/encore.h
2040 use_collect2=yes
2041 ;;
2042 ns32k-sequent-bsd*)
2043 tm_file=ns32k/sequent.h
2044 use_collect2=yes
2045 ;;
2046 ns32k-tek6100-bsd*)
2047 tm_file=ns32k/tek6100.h
46f18e7b
RK
2048 use_collect2=yes
2049 ;;
2050 ns32k-tek6200-bsd*)
2051 tm_file=ns32k/tek6200.h
46f18e7b
RK
2052 use_collect2=yes
2053 ;;
2054# This has not been updated to GCC 2.
2055# ns32k-ns-genix*)
2056# xm_file=ns32k/xm-genix.h
2057# xmake_file=ns32k/x-genix
2058# tm_file=ns32k/genix.h
46f18e7b
RK
2059# use_collect2=yes
2060# ;;
2061 ns32k-merlin-*)
2062 tm_file=ns32k/merlin.h
2063 use_collect2=yes
2064 ;;
2065 ns32k-pc532-mach*)
2066 tm_file=ns32k/pc532-mach.h
2067 use_collect2=yes
2068 ;;
2069 ns32k-pc532-minix*)
2070 tm_file=ns32k/pc532-min.h
2071 xm_file=ns32k/xm-pc532-min.h
2072 use_collect2=yes
2073 ;;
2074 ns32k-pc532-netbsd*)
2075 tm_file=ns32k/netbsd.h
2076 xm_file=ns32k/xm-netbsd.h
be1ed94f
JL
2077 # On NetBSD, the headers are already okay, except for math.h.
2078 fixincludes=fixinc.math
e47f44f4 2079 tmake_file=t-netbsd
46f18e7b
RK
2080 ;;
2081 pdp11-*-bsd)
2082 tm_file="${tm_file} pdp11/2bsd.h"
2083 ;;
2084 pdp11-*-*)
2085 ;;
2086 pyramid-*-*)
2087 cpu_type=pyr
2088 xmake_file=pyr/x-pyr
2089 use_collect2=yes
2090 ;;
2091 romp-*-aos*)
2092 use_collect2=yes
2093 ;;
2094 romp-*-mach*)
2095 xmake_file=romp/x-mach
2096 use_collect2=yes
2097 ;;
2098 powerpc-*-sysv* | powerpc-*-elf*)
2099 tm_file=rs6000/sysv4.h
2100 xm_file=rs6000/xm-sysv4.h
2101 extra_headers=ppc-asm.h
2102 if [[ x$gas = xyes ]]
2103 then
2104 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2105 else
2106 tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2107 fi
2108 xmake_file=rs6000/x-sysv4
2109 ;;
2110 powerpc-*-eabiaix*)
2111 tm_file=rs6000/eabiaix.h
2112 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2113 fixincludes=Makefile.in
2114 extra_headers=ppc-asm.h
2115 ;;
2116 powerpc-*-eabisim*)
2117 tm_file=rs6000/eabisim.h
2118 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2119 fixincludes=Makefile.in
2120 extra_headers=ppc-asm.h
2121 ;;
2122 powerpc-*-eabi*)
2123 tm_file=rs6000/eabi.h
2124 if [[ x$gas = xyes ]]
2125 then
2126 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2127 else
2128 tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2129 fi
2130 fixincludes=Makefile.in
2131 extra_headers=ppc-asm.h
2132 ;;
dec3e070
JW
2133 powerpc-*-rtems*)
2134 tm_file=rs6000/rtems.h
46f18e7b
RK
2135 if [[ x$gas = xyes ]]
2136 then
dec3e070 2137 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
46f18e7b 2138 else
dec3e070 2139 tmake_file="rs6000/t-ppc t-rtems rs6000/t-ppccomm"
46f18e7b 2140 fi
46f18e7b 2141 fixincludes=Makefile.in
46f18e7b
RK
2142 extra_headers=ppc-asm.h
2143 ;;
844dadc7 2144 powerpc-*-linux-gnu*)
dec3e070 2145 tm_file=rs6000/linux.h
46f18e7b 2146 xm_file=rs6000/xm-sysv4.h
dec3e070 2147 out_file=rs6000/rs6000.c
46f18e7b
RK
2148 if [[ x$gas = xyes ]]
2149 then
dec3e070 2150 tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
46f18e7b 2151 else
dec3e070 2152 tmake_file="rs6000/t-ppc t-linux rs6000/t-ppccomm"
46f18e7b 2153 fi
d7308c0c 2154 xmake_file=x-linux
dec3e070 2155 fixincludes=Makefile.in
d7308c0c 2156 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
46f18e7b 2157 extra_headers=ppc-asm.h
d1054723 2158 if [[ x$enable_threads = xyes ]]; then
d7308c0c
RK
2159 thread_file='posix'
2160 fi
46f18e7b
RK
2161 ;;
2162 powerpc-*-vxworks*)
2163 cpu_type=rs6000
2164 xm_file=rs6000/xm-sysv4.h
2165 tm_file=rs6000/vxppc.h
2166 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2167 extra_headers=ppc-asm.h
2168 ;;
2169 powerpcle-*-sysv* | powerpcle-*-elf*)
2170 tm_file=rs6000/sysv4le.h
2171 xm_file=rs6000/xm-sysv4.h
2172 if [[ x$gas = xyes ]]
2173 then
2174 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2175 else
2176 tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2177 fi
2178 xmake_file=rs6000/x-sysv4
2179 extra_headers=ppc-asm.h
2180 ;;
2181 powerpcle-*-eabisim*)
2182 tm_file=rs6000/eabilesim.h
2183 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2184 fixincludes=Makefile.in
2185 extra_headers=ppc-asm.h
2186 ;;
2187 powerpcle-*-eabi*)
2188 tm_file=rs6000/eabile.h
2189 if [[ x$gas = xyes ]]
2190 then
2191 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2192 else
2193 tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2194 fi
2195 fixincludes=Makefile.in
2196 extra_headers=ppc-asm.h
2197 ;;
2198 powerpcle-*-winnt* )
2199 tm_file=rs6000/win-nt.h
2200 tmake_file=rs6000/t-winnt
2201# extra_objs=pe.o
2202 fixincludes=Makefile.in
434332b5 2203 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
2204 thread_file='win32'
2205 fi
46f18e7b
RK
2206 extra_headers=ppc-asm.h
2207 ;;
2208 powerpcle-*-pe | powerpcle-*-cygwin32)
2209 tm_file=rs6000/cygwin32.h
2210 xm_file=rs6000/xm-cygwin32.h
2211 tmake_file=rs6000/t-winnt
2212 xmake_file=rs6000/x-cygwin32
2213# extra_objs=pe.o
2214 fixincludes=Makefile.in
434332b5 2215 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
2216 thread_file='win32'
2217 fi
46f18e7b
RK
2218 exeext=.exe
2219 extra_headers=ppc-asm.h
2220 ;;
2221 powerpcle-*-solaris2*)
2222 tm_file=rs6000/sol2.h
2223 xm_file=rs6000/xm-sysv4.h
2224 if [[ x$gas = xyes ]]
2225 then
2226 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2227 else
2228 tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
2229 fi
2230 xmake_file=rs6000/x-sysv4
e9a25f70 2231 fixincludes=fixinc.math
46f18e7b
RK
2232 extra_headers=ppc-asm.h
2233 ;;
2234 rs6000-ibm-aix3.[[01]]*)
2235 tm_file=rs6000/aix31.h
2236 xmake_file=rs6000/x-aix31
2237 use_collect2=yes
2238 ;;
2239 rs6000-ibm-aix3.2.[[456789]]* | powerpc-ibm-aix3.2.[[456789]]*)
2240 tm_file=rs6000/aix3newas.h
2241 if [[ x$host != x$target ]]
2242 then
2243 tmake_file=rs6000/t-xnewas
2244 else
2245 tmake_file=rs6000/t-newas
2246 fi
2247 use_collect2=yes
2248 ;;
2249 rs6000-ibm-aix[[456789]].* | powerpc-ibm-aix[[456789]].*)
2250 tm_file=rs6000/aix41.h
2251 if [[ x$host != x$target ]]
2252 then
2253 tmake_file=rs6000/t-xnewas
2254 else
2255 tmake_file=rs6000/t-newas
2256 fi
2257 xmake_file=rs6000/x-aix31
2258 use_collect2=yes
2259 ;;
2260 rs6000-ibm-aix*)
2261 use_collect2=yes
2262 ;;
2263 rs6000-bull-bosx)
2264 use_collect2=yes
2265 ;;
2266 rs6000-*-mach*)
2267 tm_file=rs6000/mach.h
2268 xm_file=rs6000/xm-mach.h
2269 xmake_file=rs6000/x-mach
2270 use_collect2=yes
2271 ;;
2272 rs6000-*-lynxos*)
2273 tm_file=rs6000/lynx.h
2274 xm_file=rs6000/xm-lynx.h
2275 tmake_file=rs6000/t-rs6000
2276 xmake_file=rs6000/x-lynx
2277 use_collect2=yes
2278 ;;
2279 sh-*-elf*)
2280 tm_file=sh/elf.h
2281 float_format=sh
2282 ;;
5d84b57e
JS
2283 sh-*-rtems*)
2284 tmake_file="sh/t-sh t-rtems"
2285 tm_file=sh/rtems.h
2286 float_format=sh
2287 ;;
46f18e7b
RK
2288 sh-*-*)
2289 float_format=sh
2290 ;;
2291 sparc-tti-*)
2292 tm_file=sparc/pbd.h
2293 xm_file=sparc/xm-pbd.h
2294 ;;
2295 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
2296 tm_file=sparc/vxsparc.h
2297 tmake_file=sparc/t-vxsparc
2298 use_collect2=yes
2299 ;;
2300 sparc-*-aout*)
2301 tmake_file=sparc/t-sparcbare
2302 tm_file="sparc/aout.h libgloss.h"
2303 ;;
2304 sparc-*-netbsd*)
2305 tm_file=sparc/netbsd.h
2306 xm_file=sparc/xm-netbsd.h
be1ed94f
JL
2307 # On NetBSD, the headers are already okay, except for math.h.
2308 fixincludes=fixinc.math
e47f44f4 2309 tmake_file=t-netbsd
46f18e7b
RK
2310 ;;
2311 sparc-*-bsd*)
2312 tm_file=sparc/bsd.h
2313 ;;
ac52b80b
DE
2314 sparc-*-elf*)
2315 tm_file=sparc/elf.h
2316 tmake_file=sparc/t-elf
2317 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2318 #float_format=i128
2319 float_format=i64
2320 ;;
844dadc7 2321 sparc-*-linux-gnuaout*) # Sparc's running Linux, a.out
2334126e 2322 xm_file="sparc/xm-sparc.h sparc/xm-linux.h"
46f18e7b
RK
2323 tm_file=sparc/linux-aout.h
2324 xmake_file=x-linux
2325 fixincludes=Makefile.in #On Linux, the headers are ok already.
46f18e7b 2326 gnu_ld=yes
46f18e7b 2327 ;;
2334126e
DE
2328 sparc-*-linux-gnulibc1*) # Sparc's running Linux, libc5
2329 xm_file="sparc/xm-sparc.h sparc/xm-linux.h"
2330 xmake_file=x-linux
46f18e7b 2331 tm_file=sparc/linux.h
604d63b0 2332 tmake_file="t-linux t-linux-gnulibc1 sparc/t-linux"
9ad03bc1
RK
2333 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2334 fixincludes=Makefile.in #On Linux, the headers are ok already.
9ad03bc1
RK
2335 gnu_ld=yes
2336 ;;
2334126e
DE
2337 sparc-*-linux-gnu*) # Sparc's running Linux, libc6
2338 xm_file="sparc/xm-sparc.h sparc/xm-linux.h"
2339 xmake_file=x-linux
9ad03bc1 2340 tm_file=sparc/linux.h
604d63b0 2341 tmake_file="t-linux sparc/t-linux"
9ad03bc1 2342 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
46f18e7b 2343 fixincludes=Makefile.in #On Linux, the headers are ok already.
46f18e7b 2344 gnu_ld=yes
d1054723 2345 if [[ x$enable_threads = xyes ]]; then
9ad03bc1
RK
2346 thread_file='posix'
2347 fi
46f18e7b
RK
2348 ;;
2349 sparc-*-lynxos*)
2350 if [[ x$gas = xyes ]]
2351 then
2352 tm_file=sparc/lynx.h
2353 else
2354 tm_file=sparc/lynx-ng.h
2355 fi
2356 xm_file=sparc/xm-lynx.h
2357 tmake_file=sparc/t-sunos41
2358 xmake_file=x-lynx
2359 ;;
2360 sparc-*-rtems*)
2361 tmake_file="sparc/t-sparcbare t-rtems"
2362 tm_file=sparc/rtems.h
2363 ;;
2364 sparc-*-solaris2*)
2365 tm_file=sparc/sol2.h
2366 xm_file=sparc/xm-sol2.h
2367 tmake_file=sparc/t-sol2
2368 xmake_file=sparc/x-sysv4
2369 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
2370 fixincludes=fixinc.svr4
e9a25f70
JL
2371 float_format=i128
2372 broken_install=yes
434332b5 2373 if [[ x$enable_threads = xyes ]]; then
0bbb1697
RK
2374 thread_file='solaris'
2375 fi
46f18e7b
RK
2376 ;;
2377 sparc-*-sunos4.0*)
2378 tm_file=sparc/sunos4.h
2379 tmake_file=sparc/t-sunos40
2380 use_collect2=yes
2381 ;;
2382 sparc-*-sunos4*)
2383 tm_file=sparc/sunos4.h
2384 tmake_file=sparc/t-sunos41
2385 use_collect2=yes
ca55abae
JM
2386 if [[ x$gas = xyes ]]; then
2387 tm_file="${tm_file} sparc/sun4gas.h"
2388 fi
46f18e7b
RK
2389 ;;
2390 sparc-*-sunos3*)
2391 tm_file=sparc/sun4o3.h
2392 use_collect2=yes
2393 ;;
2394 sparc-*-sysv4*)
2395 tm_file=sparc/sysv4.h
2396 xm_file=sparc/xm-sysv4.h
2397 tmake_file=t-svr4
2398 xmake_file=sparc/x-sysv4
2399 extra_parts="crtbegin.o crtend.o"
2400 ;;
2401 sparc-*-vxsim*)
2402 xm_file=sparc/xm-sol2.h
2403 tm_file=sparc/vxsim.h
2404 tmake_file=sparc/t-vxsparc
2405 xmake_file=sparc/x-sysv4
2406 ;;
2407 sparclet-*-aout*)
2408 tm_file="sparc/splet.h libgloss.h"
2409 tmake_file=sparc/t-splet
2410 ;;
2411 sparclite-*-coff*)
2412 tm_file="sparc/litecoff.h libgloss.h"
2413 tmake_file=sparc/t-sparclite
2414 ;;
2415 sparclite-*-aout*)
2416 tm_file="sparc/lite.h aoutos.h libgloss.h"
2417 tmake_file=sparc/t-sparclite
2418 ;;
2419 sparc64-*-aout*)
2420 tmake_file=sparc/t-sp64
2421 tm_file=sparc/sp64-aout.h
2422 ;;
2423 sparc64-*-elf*)
2424 tmake_file=sparc/t-sp64
2425 tm_file=sparc/sp64-elf.h
2426 extra_parts="crtbegin.o crtend.o"
2427 ;;
2334126e
DE
2428 sparc64-*-linux*) # 64-bit Sparc's running Linux
2429 tmake_file=sparc/t-sp64
2430 xm_file="sparc/xm-sp64.h sparc/xm-linux.h"
2431 tm_file=sparc/linux64.h
2432 xmake_file=x-linux
2433 fixincludes=Makefile.in # On Linux, the headers are ok already.
2434 gnu_ld=yes
2435 ;;
46f18e7b
RK
2436# This hasn't been upgraded to GCC 2.
2437# tahoe-harris-*) # Harris tahoe, using COFF.
2438# tm_file=tahoe/harris.h
2439# ;;
2440# tahoe-*-bsd*) # tahoe running BSD
2441# ;;
2442# This hasn't been upgraded to GCC 2.
2443# tron-*-*)
2444# cpu_type=gmicro
2445# use_collect2=yes
2446# ;;
f84271d9
JL
2447 v850-*-*)
2448 cpu_type=v850
2449 tm_file="v850/v850.h"
2450 xm_file="v850/xm-v850.h"
2451 if [[ x$stabs = xyes ]]
2452 then
2453 tm_file="${tm_file} dbx.h"
2454 fi
2455 use_collect2=no
2456 ;;
46f18e7b
RK
2457 vax-*-bsd*) # vaxen running BSD
2458 use_collect2=yes
2459 float_format=vax
2460 ;;
2461 vax-*-sysv*) # vaxen running system V
2462 tm_file="${tm_file} vax/vaxv.h"
2463 xm_file="${tm_file} vax/xm-vaxv.h"
2464 float_format=vax
2465 ;;
2466 vax-*-netbsd*)
2467 tm_file="${tm_file} netbsd.h vax/netbsd.h"
2468 xm_file="${xm_file} xm-netbsd.h"
be1ed94f
JL
2469 # On NetBSD, the headers are already okay, except for math.h.
2470 fixincludes=fixinc.math
e47f44f4 2471 tmake_file=t-netbsd
46f18e7b
RK
2472 float_format=vax
2473 ;;
2474 vax-*-ultrix*) # vaxen running ultrix
2475 tm_file="${tm_file} vax/ultrix.h"
2476 use_collect2=yes
2477 float_format=vax
2478 ;;
2479 vax-*-vms*) # vaxen running VMS
2480 xm_file=vax/xm-vms.h
2481 tm_file=vax/vms.h
2482 float_format=vax
2483 ;;
2484 vax-*-*) # vax default entry
2485 float_format=vax
2486 ;;
2487 we32k-att-sysv*)
2488 xm_file="${xm_file} xm-svr3"
2489 use_collect2=yes
2490 ;;
2491 *)
2492 echo "Configuration $machine not supported" 1>&2
2493 exit 1
2494 ;;
2495 esac
2496
2497 case $machine in
2498 *-*-linux-gnu*)
2499 ;; # Existing Linux/GNU systems do not use the GNU setup.
2500 *-*-gnu*)
2501 # On the GNU system, the setup is just about the same on
2502 # each different CPU. The specific machines that GNU
2503 # supports are matched above and just set $cpu_type.
2504 xm_file=${cpu_type}/xm-gnu.h
2505 tm_file=${cpu_type}/gnu.h
6b403743 2506 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
46f18e7b
RK
2507 # GNU always uses ELF.
2508 elf=yes
2509 # GNU tools are the only tools.
2510 gnu_ld=yes
2511 gas=yes
2512 # On GNU, the headers are already okay.
2513 fixincludes=Makefile.in
2514 xmake_file=x-linux # These details are the same as Linux.
2515 tmake_file=t-gnu # These are not.
2516 ;;
2517 *-*-sysv4*)
2518 fixincludes=fixinc.svr4
2519 xmake_try_sysv=x-sysv
46f18e7b
RK
2520 install_headers_dir=install-headers-cpio
2521 ;;
2522 *-*-sysv*)
46f18e7b
RK
2523 install_headers_dir=install-headers-cpio
2524 ;;
2525 esac
2526
2527 # Distinguish i[3456]86
2528 # Also, do not run mips-tfile on MIPS if using gas.
2529 # Process --with-cpu= for PowerPC/rs6000
2530 target_cpu_default2=
2531 case $machine in
2532 i486-*-*)
2533 target_cpu_default2=1
2534 ;;
2535 i586-*-*)
2536 target_cpu_default2=2
2537 ;;
2538 i686-*-*)
2539 target_cpu_default2=3
2540 ;;
08fc0184
RK
2541 alpha*-*-*)
2542 case $machine in
e9a25f70
JL
2543 alphaev6*)
2544 target_cpu_default2="MASK_CPU_EV6|MASK_BXW|MASK_CIX|MASK_MAX"
2545 ;;
2546 alphapca56*)
2547 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|TASK_MAX"
2548 ;;
08fc0184 2549 alphaev56*)
e9a25f70 2550 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
08fc0184
RK
2551 ;;
2552 alphaev5*)
2553 target_cpu_default2="MASK_CPU_EV5"
2554 ;;
2555 esac
2556
46f18e7b
RK
2557 if [[ x$gas = xyes ]]
2558 then
08fc0184
RK
2559 if [[ x$target_cpu_default2 = x ]]
2560 then
e71c3bb0 2561 target_cpu_default2="MASK_GAS"
08fc0184 2562 else
e71c3bb0 2563 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
08fc0184 2564 fi
46f18e7b
RK
2565 fi
2566 ;;
2567 mips*-*-ecoff* | mips*-*-elf*)
2568 if [[ x$gas = xyes ]]
2569 then
2570 if [[ x$gnu_ld = xyes ]]
2571 then
2572 target_cpu_default2=20
2573 else
2574 target_cpu_default2=16
2575 fi
2576 fi
2577 ;;
2578 mips*-*-*)
2579 if [[ x$gas = xyes ]]
2580 then
2581 target_cpu_default2=16
2582 fi
2583 ;;
2584 powerpc*-*-* | rs6000-*-*)
2585 case "x$with_cpu" in
2586 x)
2587 ;;
2588
2589 xcommon | xpower | xpower2 | xpowerpc | xrios \
52cddadb
MM
2590 | xrios1 | xrios2 | xrsc | xrsc1 \
2591 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
2592 | x403 | x505 | x801 | x821 | x823 | x860)
f24b370a 2593 target_cpu_default2="\"$with_cpu\""
46f18e7b
RK
2594 ;;
2595
2596 xyes | xno)
2597 echo "--with-cpu must be passed a value" 1>&2
2598 exit 1
2599 ;;
2600
2601 *)
2602 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2603 exit 1
2604 ;;
2605 esac
2606 ;;
2607 sparc*-*-*)
2608 case ".$with_cpu" in
2609 .)
2610 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
2611 ;;
ac52b80b 2612 .supersparc | .ultrasparc | .v7 | .v8 | .v9)
46f18e7b
RK
2613 target_cpu_default2="TARGET_CPU_$with_cpu"
2614 ;;
2615 *)
2616 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2617 exit 1
2618 ;;
2619 esac
2620 ;;
2621 esac
2622
2623 if [[ x$target_cpu_default2 != x ]]
2624 then
2625 if [[ x$target_cpu_default != x ]]
2626 then
2627 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
2628 else
2629 target_cpu_default=$target_cpu_default2
2630 fi
2631 fi
2632
2633 # No need for collect2 if we have the GNU linker.
2634 case x$gnu_ld in
2635 xyes)
2636 use_collect2=
2637 ;;
2638 esac
2639
2640# Save data on machine being used to compile GCC in build_xm_file.
2641# Save data on host machine in vars host_xm_file and host_xmake_file.
2642 if [[ x$pass1done = x ]]
2643 then
2644 if [[ x"$xm_file" = x ]]
2645 then build_xm_file=$cpu_type/xm-$cpu_type.h
2646 else build_xm_file=$xm_file
2647 fi
46f18e7b
RK
2648 build_install_headers_dir=$install_headers_dir
2649 build_exeext=$exeext
2650 pass1done=yes
2651 else
2652 if [[ x$pass2done = x ]]
2653 then
2654 if [[ x"$xm_file" = x ]]
2655 then host_xm_file=$cpu_type/xm-$cpu_type.h
2656 else host_xm_file=$xm_file
2657 fi
2658 if [[ x"$xmake_file" = x ]]
2659 then xmake_file=$cpu_type/x-$cpu_type
2660 fi
2661 host_xmake_file="$xmake_file"
2662 host_truncate_target=$truncate_target
2663 host_extra_gcc_objs=$extra_gcc_objs
2664 host_extra_objs=$extra_host_objs
2665 pass2done=yes
2666 fi
2667 fi
2668done
2669
2670extra_objs="${host_extra_objs} ${extra_objs}"
2671
2672# Default the target-machine variables that were not explicitly set.
2673if [[ x"$tm_file" = x ]]
2674then tm_file=$cpu_type/$cpu_type.h; fi
2675
2676if [[ x$extra_headers = x ]]
2677then extra_headers=; fi
2678
2679if [[ x"$xm_file" = x ]]
2680then xm_file=$cpu_type/xm-$cpu_type.h; fi
2681
2682md_file=$cpu_type/$cpu_type.md
2683
2684if [[ x$out_file = x ]]
2685then out_file=$cpu_type/$cpu_type.c; fi
2686
2687if [[ x"$tmake_file" = x ]]
2688then tmake_file=$cpu_type/t-$cpu_type
2689fi
2690
2691if [[ x$float_format = x ]]
2692then float_format=i64
2693fi
2694
2695# Say what files are being used for the output code and MD file.
2696echo "Using \`$srcdir/config/$out_file' to output insns."
2697echo "Using \`$srcdir/config/$md_file' as machine description file."
2698
2699count=a
2700for f in $tm_file; do
2701 count=${count}x
2702done
2703if [[ $count = ax ]]; then
2704 echo "Using \`$srcdir/config/$tm_file' as target machine macro file."
2705else
2706 echo "Using the following target machine macro files:"
2707 for f in $tm_file; do
2708 echo " $srcdir/config/$f"
2709 done
2710fi
2711
2712count=a
2713for f in $host_xm_file; do
2714 count=${count}x
2715done
2716if [[ $count = ax ]]; then
2717 echo "Using \`$srcdir/config/$host_xm_file' as host machine macro file."
2718else
2719 echo "Using the following host machine macro files:"
2720 for f in $host_xm_file; do
2721 echo " $srcdir/config/$f"
2722 done
2723fi
2724
2725if [[ "$host_xm_file" != "$build_xm_file" ]]; then
2726 count=a
2727 for f in $build_xm_file; do
2728 count=${count}x
2729 done
2730 if [[ $count = ax ]]; then
2731 echo "Using \`$srcdir/config/$build_xm_file' as build machine macro file."
2732 else
2733 echo "Using the following build machine macro files:"
2734 for f in $build_xm_file; do
2735 echo " $srcdir/config/$f"
2736 done
2737 fi
2738fi
2739
0bbb1697
RK
2740if [[ x$thread_file = x ]]
2741then thread_file='single'
46f18e7b 2742fi
46f18e7b
RK
2743
2744# Set up the header files.
2745# $links is the list of header files to create.
2746# $vars is the list of shell variables with file names to include.
e9a25f70
JL
2747# auto-conf.h is the file containing items generated by autoconf and is
2748# the first file included by config.h.
2749host_xm_file="auto-config.h ${host_xm_file}"
46f18e7b 2750vars="host_xm_file tm_file xm_file build_xm_file"
e9a25f70 2751links="config.h tm.h tconfig.h hconfig.h"
46f18e7b
RK
2752
2753rm -f config.bak
2754if [[ -f config.status ]]; then mv -f config.status config.bak; fi
2755
2756# Make the links.
2757while [[ -n "$vars" ]]
2758do
2759 # set file to car of files, files to cdr of files
2760 set $vars; var=$1; shift; vars=$*
2761 set $links; link=$1; shift; links=$*
2762
2763 rm -f $link
2764
2765 # Define TARGET_CPU_DEFAULT if the system wants one.
2766 # This substitutes for lots of *.h files.
2767 if [[ x$target_cpu_default != x -a $link = tm.h ]]
2768 then
2769 echo "#define TARGET_CPU_DEFAULT $target_cpu_default" >>$link
2770 fi
2771
2772 for file in `eval echo '$'$var`; do
2773 echo "#include \"$file\"" >>$link
2774 done
2775done
2776
2777# Truncate the target if necessary
2778if [[ x$host_truncate_target != x ]]; then
2779 target=`echo $target | sed -e 's/\(..............\).*/\1/'`
2780fi
2781
2782# Get the version number from the toplevel
2783version=`sed -e 's/.*\"\([[^ \"]]*\)[[ \"]].*/\1/' < ${srcdir}/version.c`
2784
7fa10b25
RK
2785# Get an absolute path to the GCC top-level source directory
2786holddir=`pwd`
2787cd $srcdir
2788topdir=`pwd`
2789cd $holddir
2790
af5e4ada 2791# Conditionalize the makefile for this host machine.
94f42018
DE
2792# Make-host contains the concatenation of all host makefile fragments
2793# [there can be more than one]. This file is built by configure.frag.
2794host_overrides=Make-host
af5e4ada 2795dep_host_xmake_file=
94f42018
DE
2796for f in .. ${host_xmake_file}
2797do
2798 if [[ -f ${srcdir}/config/$f ]]
2799 then
2800 dep_host_xmake_file="${dep_host_xmake_file} ${srcdir}/config/$f"
2801 fi
2802done
46f18e7b 2803
af5e4ada 2804# Conditionalize the makefile for this target machine.
94f42018
DE
2805# Make-target contains the concatenation of all host makefile fragments
2806# [there can be more than one]. This file is built by configure.frag.
2807target_overrides=Make-target
af5e4ada 2808dep_tmake_file=
94f42018
DE
2809for f in .. ${tmake_file}
2810do
2811 if [[ -f ${srcdir}/config/$f ]]
2812 then
2813 dep_tmake_file="${dep_tmake_file} ${srcdir}/config/$f"
2814 fi
2815done
5891b37d 2816
af5e4ada
DE
2817# If the host doesn't support symlinks, modify CC in
2818# FLAGS_TO_PASS so CC="stage1/xgcc -Bstage1/" works.
2819# Otherwise, we can use "CC=$(CC)".
2820rm -f symtest.tem
2821if $symbolic_link symtest1.tem symtest.tem 2>/dev/null
2822then
2823 cc_set_by_configure="\$(CC)"
2824 stage_prefix_set_by_configure="\$(STAGE_PREFIX)"
2825else
e9a25f70 2826 symbolic_link="cp -p"
af5e4ada
DE
2827 cc_set_by_configure="\`case '\$(CC)' in stage*) echo '\$(CC)' | sed -e 's|stage|../stage|g';; *) echo '\$(CC)';; esac\`"
2828 stage_prefix_set_by_configure="\`case '\$(STAGE_PREFIX)' in stage*) echo '\$(STAGE_PREFIX)' | sed -e 's|stage|../stage|g';; *) echo '\$(STAGE_PREFIX)';; esac\`"
2829fi
2830rm -f symtest.tem
5891b37d 2831
af5e4ada 2832out_object_file=`basename $out_file .c`.o
5891b37d 2833
af5e4ada
DE
2834tm_file_list=
2835for f in $tm_file; do
2836 tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
2837done
46f18e7b 2838
af5e4ada
DE
2839host_xm_file_list=
2840for f in $host_xm_file; do
2841 host_xm_file_list="${host_xm_file_list} \$(srcdir)/config/$f"
2842done
2843
2844build_xm_file_list=
2845for f in $build_xm_file; do
2846 build_xm_file_list="${build_xm_file_list} \$(srcdir)/config/$f"
2847done
46f18e7b 2848
af5e4ada
DE
2849# Define macro CROSS_COMPILE in compilation
2850# if this is a cross-compiler.
2851# Also use all.cross instead of all.internal
2852# and add cross-make to Makefile.
571a8de5 2853cross_overrides="/dev/null"
af5e4ada
DE
2854if [[ x$host != x$target ]]
2855then
2856 cross_defines="CROSS=-DCROSS_COMPILE"
2857 cross_overrides="${topdir}/cross-make"
2858fi
46f18e7b 2859
af5e4ada
DE
2860# When building gcc with a cross-compiler, we need to fix a few things.
2861# This must come after cross-make as we want all.build to override
2862# all.cross.
571a8de5 2863build_overrides="/dev/null"
af5e4ada
DE
2864if [[ x$build != x$host ]]
2865then
2866 build_overrides="${topdir}/build-make"
2867fi
46f18e7b 2868
ae3a15bb
DE
2869# Expand extra_headers to include complete path.
2870# This substitutes for lots of t-* files.
2871extra_headers_list=
2872if [[ "x$extra_headers" = x ]]
2873then true
2874else
2875 # Prepend ${srcdir}/ginclude/ to every entry in extra_headers.
2876 for file in $extra_headers;
2877 do
2878 extra_headers_list="${extra_headers_list} \$(srcdir)/ginclude/${file}"
2879 done
2880fi
2881
af5e4ada
DE
2882# Add a definition of USE_COLLECT2 if system wants one.
2883# Also tell toplev.c what to do.
2884# This substitutes for lots of t-* files.
2885if [[ x$use_collect2 = x ]]
2886then
2887 will_use_collect2=
2888 maybe_use_collect2=
2889else
2890 will_use_collect2="ld"
2891 maybe_use_collect2="-DUSE_COLLECT2"
2892fi
2893
2894# NEED TO CONVERT
2895# Set MD_DEPS if the real md file is in md.pre-cpp.
2896# Set MD_CPP to the cpp to pass the md file through. Md files use ';'
2897# for line oriented comments, so we must always use a GNU cpp. If
2898# building gcc with a cross compiler, use the cross compiler just
2899# built. Otherwise, we can use the cpp just built.
2900md_file_sub=
2901if [[ "x$md_cppflags" = x ]]
2902then
2903 md_file_sub=$srcdir/config/$md_file
2904else
2905 md_file=md
2906fi
2907
2908# If we have gas in the build tree, make a link to it.
2909if [[ -f ../gas/Makefile ]]; then
e41cea70 2910 rm -f as; $symbolic_link ../gas/as-new as 2>/dev/null
af5e4ada
DE
2911fi
2912
2913# If we have ld in the build tree, make a link to it.
2914if [[ -f ../ld/Makefile ]]; then
aa32d841 2915# if [[ x$use_collect2 = x ]]; then
e41cea70 2916# rm -f ld; $symbolic_link ../ld/ld-new ld 2>/dev/null
aa32d841 2917# else
e41cea70 2918 rm -f collect-ld; $symbolic_link ../ld/ld-new collect-ld 2>/dev/null
aa32d841 2919# fi
af5e4ada
DE
2920fi
2921
571a8de5
DE
2922# Figure out what language subdirectories are present.
2923subdirs=
2924for lang in ${srcdir}/*/config-lang.in ..
2925do
2926 case $lang in
2927 ..) ;;
2928 # The odd quoting in the next line works around
2929 # an apparent bug in bash 1.12 on linux.
2930 ${srcdir}/[[*]]/config-lang.in) ;;
2931 *) subdirs="$subdirs `echo $lang | sed -e 's,^.*/\([[^/]]*\)/config-lang.in$,\1,'`" ;;
2932 esac
2933done
2934
2935# Make empty files to contain the specs and options for each language.
2936# Then add #include lines to for a compiler that has specs and/or options.
2937
2938lang_specs_files=
2939lang_options_files=
2940rm -f specs.h options.h
2941touch specs.h options.h
2942for subdir in . $subdirs
2943do
2944 if [[ -f $srcdir/$subdir/lang-specs.h ]]; then
2945 echo "#include \"$subdir/lang-specs.h\"" >>specs.h
2946 lang_specs_files="$lang_specs_files $srcdir/$subdir/lang-specs.h"
2947 fi
2948 if [[ -f $srcdir/$subdir/lang-options.h ]]; then
2949 echo "#include \"$subdir/lang-options.h\"" >>options.h
2950 lang_options_files="$lang_options_files $srcdir/$subdir/lang-options.h"
2951 fi
2952done
2953
2954# These (without "all_") are set in each config-lang.in.
2955# `language' must be a single word so is spelled singularly.
2956all_languages=
2957all_boot_languages=
2958all_compilers=
2959all_stagestuff=
2960all_diff_excludes=
0280cf84 2961all_outputs=Makefile
571a8de5
DE
2962# List of language makefile fragments.
2963all_lang_makefiles=
2964all_headers=
2965all_lib2funcs=
2966
2967# Add the language fragments.
2968# Languages are added via two mechanisms. Some information must be
2969# recorded in makefile variables, these are defined in config-lang.in.
2970# We accumulate them and plug them into the main Makefile.
2971# The other mechanism is a set of hooks for each of the main targets
2972# like `clean', `install', etc.
2973
2974language_fragments="Make-lang"
2975language_hooks="Make-hooks"
0280cf84 2976oldstyle_subdirs=
571a8de5
DE
2977
2978for s in .. $subdirs
2979do
2980 if [[ $s != ".." ]]
2981 then
2982 language=
2983 boot_language=
2984 compilers=
2985 stagestuff=
2986 diff_excludes=
2987 headers=
0280cf84 2988 outputs=
571a8de5
DE
2989 lib2funcs=
2990 . ${srcdir}/$s/config-lang.in
2991 if [[ "x$language" = x ]]
2992 then
2993 echo "${srcdir}/$s/config-lang.in doesn't set \$language." 1>&2
2994 exit 1
2995 fi
2996 all_lang_makefiles="$all_lang_makefiles ${srcdir}/$s/Make-lang.in ${srcdir}/$s/Makefile.in"
2997 all_languages="$all_languages $language"
2998 if [[ "x$boot_language" = xyes ]]
2999 then
3000 all_boot_languages="$all_boot_languages $language"
3001 fi
3002 all_compilers="$all_compilers $compilers"
3003 all_stagestuff="$all_stagestuff $stagestuff"
3004 all_diff_excludes="$all_diff_excludes $diff_excludes"
3005 all_headers="$all_headers $headers"
0280cf84
PB
3006 all_outputs="$all_outputs $outputs"
3007 if [[ x$outputs = x ]]
3008 then
3009 oldstyle_subdirs="$oldstyle_subdirs $s"
3010 fi
571a8de5
DE
3011 all_lib2funcs="$all_lib2funcs $lib2funcs"
3012 fi
3013done
3014
3015# Since we can't use `::' targets, we link each language in
3016# with a set of hooks, reached indirectly via lang.${target}.
3017
3018rm -f Make-hooks
3019touch Make-hooks
3020target_list="all.build all.cross start.encap rest.encap \
3021 info dvi \
3022 install-normal install-common install-info install-man \
3023 uninstall distdir \
3024 mostlyclean clean distclean extraclean maintainer-clean \
3025 stage1 stage2 stage3 stage4"
3026for t in $target_list
3027do
3028 x=
3029 for l in .. $all_languages
3030 do
3031 if [[ $l != ".." ]]; then
3032 x="$x $l.$t"
3033 fi
3034 done
3035 echo "lang.$t: $x" >> Make-hooks
3036done
3037
296e46bd
DE
3038# If we're not building in srcdir, create .gdbinit.
3039
3040if [[ ! -f Makefile.in ]]; then
3041 echo "dir ." > .gdbinit
3042 echo "dir ${srcdir}" >> .gdbinit
3043 if [[ x$gdb_needs_out_file_path = xyes ]]
3044 then
3045 echo "dir ${srcdir}/config/"`dirname ${out_file}` >> .gdbinit
3046 fi
3047 if [[ "x$subdirs" != x ]]; then
3048 for s in $subdirs
3049 do
3050 echo "dir ${srcdir}/$s" >> .gdbinit
3051 done
3052 fi
3053 echo "source ${srcdir}/.gdbinit" >> .gdbinit
3054fi
3055
dec88383
DE
3056# If this is using newlib, then define inhibit_libc in
3057# LIBGCC2_CFLAGS. This will cause __eprintf to be left out of
3058# libgcc.a, but that's OK because newib should have its own version of
3059# assert.h.
3060inhibit_libc=
3061if [[ x$with_newlib = xyes ]]; then
3062 inhibit_libc=-Dinhibit_libc
3063fi
3064AC_SUBST(inhibit_libc)
3065
8c660648
JL
3066# Override SCHED_OBJ and SCHED_CFLAGS to enable the Haifa scheduler.
3067sched_prefix=
3068sched_cflags=
3069if [[ x$enable_haifa = xyes ]]; then
3070 echo "Using the Haifa scheduler."
3071 sched_prefix=haifa-
3072 sched_cflags=-DHAIFA
3073fi
3074AC_SUBST(sched_prefix)
3075AC_SUBST(sched_cflags)
3076if [[ x$enable_haifa != x ]]; then
3077 # Explicitly remove files that need to be recompiled for the Haifa scheduler.
3078 for x in genattrtab.o toplev.o loop.o unroll.o *sched.o; do
992d1248 3079 if [[ -f $x ]]; then
8c660648
JL
3080 echo "Removing $x"
3081 rm -f $x
3082 fi
3083 done
3084fi
3085
94f42018
DE
3086# Process the language and host/target makefile fragments.
3087${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xmake_file" "$dep_tmake_file"
47866ac0 3088
46f18e7b
RK
3089# Substitute configuration variables
3090AC_SUBST(subdirs)
3091AC_SUBST(all_languages)
3092AC_SUBST(all_boot_languages)
3093AC_SUBST(all_compilers)
3094AC_SUBST(all_lang_makefiles)
3095AC_SUBST(all_stagestuff)
3096AC_SUBST(all_diff_excludes)
3097AC_SUBST(all_lib2funcs)
3098AC_SUBST(all_headers)
3099AC_SUBST(extra_passes)
3100AC_SUBST(extra_programs)
3101AC_SUBST(extra_parts)
b4294351
PB
3102AC_SUBST(extra_c_objs)
3103AC_SUBST(extra_c_flags)
46f18e7b
RK
3104AC_SUBST(extra_objs)
3105AC_SUBST(host_extra_gcc_objs)
3106AC_SUBST(extra_headers_list)
3107AC_SUBST(dep_host_xmake_file)
3108AC_SUBST(dep_tmake_file)
3109AC_SUBST(out_file)
3110AC_SUBST(out_object_file)
3111AC_SUBST(md_file)
3112AC_SUBST(tm_file_list)
3113AC_SUBST(build_xm_file_list)
3114AC_SUBST(host_xm_file_list)
3115AC_SUBST(lang_specs_files)
3116AC_SUBST(lang_options_files)
0bbb1697 3117AC_SUBST(thread_file)
46f18e7b
RK
3118AC_SUBST(version)
3119AC_SUBST(local_prefix)
9514f0d1 3120AC_SUBST(gxx_include_dir)
46f18e7b
RK
3121AC_SUBST(fixincludes)
3122AC_SUBST(build_install_headers_dir)
a204adc6 3123AC_SUBST(build_exeext)
46f18e7b
RK
3124AC_SUBST(float_format)
3125AC_SUBST(will_use_collect2)
3126AC_SUBST(maybe_use_collect2)
3127AC_SUBST(cc_set_by_configure)
3128AC_SUBST(stage_prefix_set_by_configure)
9b16d2c4 3129AC_SUBST(install)
e9a25f70 3130AC_SUBST(symbolic_link)
46f18e7b
RK
3131
3132AC_SUBST_FILE(target_overrides)
3133AC_SUBST_FILE(host_overrides)
3134AC_SUBST(cross_defines)
3135AC_SUBST_FILE(cross_overrides)
3136AC_SUBST_FILE(build_overrides)
3137AC_SUBST_FILE(language_fragments)
3138AC_SUBST_FILE(language_hooks)
3139
3140# Echo that links are built
3141if [[ x$host = x$target ]]
3142then
3143 str1="native "
3144else
3145 str1="cross-"
3146 str2=" from $host"
3147fi
3148
3149if [[ x$host != x$build ]]
3150then
3151 str3=" on a $build system"
3152fi
3153
3154if [[ "x$str2" != x ]] || [[ "x$str3" != x ]]
3155then
3156 str4=
3157fi
3158
3159echo "Links are now set up to build a ${str1}compiler for ${target}$str4" 1>&2
3160
3161if [[ "x$str2" != x ]] || [[ "x$str3" != x ]]
3162then
3163 echo " ${str2}${str3}." 1>&2
3164fi
3165
3166# Configure the subdirectories
3167# AC_CONFIG_SUBDIRS($subdirs)
3168
3169# Create the Makefile
5891b37d 3170# and configure language subdirectories
0280cf84 3171AC_OUTPUT($all_outputs,
cdcc6a01
DE
3172[
3173. $srcdir/configure.lang
3174case x$CONFIG_HEADERS in
e9a25f70 3175xauto-config.h:config.in)
818b66cc 3176echo > cstamp-h ;;
cdcc6a01 3177esac
93cf819d
BK
3178# If the host supports symlinks, point stage[1234] at ../stage[1234] so
3179# bootstrapping and the installation procedure can still use
3180# CC="stage1/xgcc -Bstage1/". If the host doesn't support symlinks,
3181# FLAGS_TO_PASS has been modified to solve the problem there.
3182# This is virtually a duplicate of what happens in configure.lang; we do
3183# an extra check to make sure this only happens if ln -s can be used.
3184if [[ "$symbolic_link" = "ln -s" ]]; then
3185 for d in .. ${subdirs} ; do
3186 if [[ $d != .. ]]; then
4e8a434e
BK
3187 STARTDIR=`pwd`
3188 cd $d
3189 for t in stage1 stage2 stage3 stage4 include
3190 do
3191 rm -f $t
3192 $symbolic_link ../$t $t 2>/dev/null
3193 done
3194 cd $STARTDIR
93cf819d
BK
3195 fi
3196 done
3197else true ; fi
cdcc6a01
DE
3198],
3199[
5891b37d
RK
3200host='${host}'
3201build='${build}'
3202target='${target}'
52060267 3203target_alias='${target_alias}'
5891b37d
RK
3204srcdir='${srcdir}'
3205subdirs='${subdirs}'
296e46bd 3206oldstyle_subdirs='${oldstyle_subdirs}'
5891b37d
RK
3207symbolic_link='${symbolic_link}'
3208program_transform_set='${program_transform_set}'
3209program_transform_name='${program_transform_name}'
5891b37d
RK
3210dep_host_xmake_file='${dep_host_xmake_file}'
3211host_xmake_file='${host_xmake_file}'
3212dep_tmake_file='${dep_tmake_file}'
3213tmake_file='${tmake_file}'
0bbb1697 3214thread_file='${thread_file}'
5891b37d
RK
3215version='${version}'
3216local_prefix='${local_prefix}'
5891b37d 3217build_install_headers_dir='${build_install_headers_dir}'
a204adc6 3218build_exeext='${build_exeext}'
7ed46111 3219out_file='${out_file}'
5891b37d
RK
3220gdb_needs_out_file_path='${gdb_needs_out_file_path}'
3221SET_MAKE='${SET_MAKE}'
5891b37d 3222target_list='${target_list}'
5891b37d
RK
3223target_overrides='${target_overrides}'
3224host_overrides='${host_overrides}'
3225cross_defines='${cross_defines}'
3226cross_overrides='${cross_overrides}'
3227build_overrides='${build_overrides}'
cdcc6a01 3228])