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