config.gcc: Add FreeBSD/PowerPC target.
[gcc.git] / gcc / config.gcc
1 # GCC build-, host- and target-specific configuration file.
2 # Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
3
4 #This file is part of GCC.
5
6 #GCC is free software; you can redistribute it and/or modify it under
7 #the terms of the GNU General Public License as published by the Free
8 #Software Foundation; either version 2, or (at your option) any later
9 #version.
10
11 #GCC is distributed in the hope that it will be useful, but WITHOUT
12 #ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 #FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 #for more details.
15
16 #You should have received a copy of the GNU General Public License
17 #along with GCC; see the file COPYING. If not, write to the Free
18 #Software Foundation, 59 Temple Place - Suite 330, Boston, MA
19 #02111-1307, USA.
20
21 # This is the GCC build-, host- and target-specific configuration file
22 # where a configuration type, as recognized and generated by config.bfd,
23 # is mapped to different system-specific definitions and files. This is
24 # invoked by the autoconf-generated configure script, called for build,
25 # host and target in that order, setting ${machine} to each. Putting it
26 # in a separate shell file lets us skip running autoconf when modifying
27 # build-, host- and target-specific information.
28
29 # This file switches on the shell variable ${machine}, and also uses the
30 # following shell variables:
31 #
32 # with_* Various variables as set by configure.
33 #
34 # enable_threads_flag Either the name, yes or no depending on whether
35 # threads support was requested.
36 #
37 # gas_flag Either yes or no depending on whether GNU as was
38 # requested.
39 #
40 # gnu_ld_flag Either yes or no depending on whether GNU ld was
41 # requested.
42
43 # This file sets the following shell variables for use by the
44 # autoconf-generated configure script:
45 #
46 # cpu_type The name of the cpu, if different from machine.
47 #
48 # tm_file A list of target macro files, if different from
49 # "$cpu_type/$cpu_type.h". Usually it's constructed
50 # per target in a way like this:
51 # tm_file="${tm_file} elfos.h svr4.h ${cpu_type.h}/elf.h"
52 # Note that the preferred order is:
53 # - specific target header "${cpu_type}/${cpu_type.h}"
54 # - generic headers like elfos.h, netware.h, etc.
55 # - specializing target headers like ${cpu_type.h}/elf.h
56 # This helps to keep OS specific stuff out of the CPU
57 # defining header ${cpu_type}/${cpu_type.h}.
58 #
59 # tm_p_file Location of file with declarations for functions
60 # in $out_file.
61 #
62 # out_file The name of the machine description C support
63 # file, if different from "$cpu_type/$cpu_type.c".
64 #
65 # md_file The name of the machine-description file, if
66 # different from "$cpu_type/$cpu_type.md".
67 #
68 # tmake_file A list of machine-description-specific
69 # makefile-fragments, if different from
70 # "$cpu_type/t-$cpu_type".
71 #
72 # float_format Set to the symbolic name for the floating-point
73 # formats used for this machine, if different from
74 # "i64". Used to derive a header file name to
75 # include, like "vax" for "float-vax.h". If no such
76 # file is wanted, set to "none".
77 #
78 # extra_objs List of extra objects that should be linked into
79 # the compiler proper (cc1, cc1obj, cc1plus)
80 # depending on target.
81 #
82 # extra_headers List of used header files from the directory
83 # ginclude.
84 #
85 # host_xmake_file List of host-specific makefile-fragments.
86 #
87 # extra_passes List of extra executables compiled for this target
88 # machine, used for compiling from source to object.
89 #
90 # extra_parts List of extra object files that should be compiled
91 # for this target machine.
92 #
93 # extra_programs Like extra_passes, but these are used when linking.
94 #
95 # host_extra_objs List of extra host-dependent objects that should
96 # be linked into the compiler proper.
97 #
98 # host_extra_gcc_objs List of extra host-dependent objects that should
99 # be linked into the gcc driver.
100 #
101 # c_target_objs List of extra target-dependent objects that be
102 # linked into the C compiler only.
103 #
104 # cxx_target_objs List of extra target-dependent objects that be
105 # linked into the C++ compiler only.
106 #
107 # build_xm_defines List of macros to define when compiling for the
108 # build machine.
109 #
110 # build_xm_file List of files to include when compiling for the
111 # build machine.
112 #
113 # host_xm_defines List of macros to define when compiling for the
114 # host machine.
115 #
116 # host_xm_file List of files to include when compiling for the
117 # host machine.
118 #
119 # xm_defines List of macros to define when compiling for the
120 # target machine.
121 #
122 # xm_file List of files to include when compiling for the
123 # target machine.
124 #
125 # use_collect2 Set to yes or no, depending on whether collect2
126 # will be used.
127 #
128 # target_cpu_default Set to override the default target model.
129 #
130 # build_install_headers_dir
131 # Target to use when installing header files.
132 #
133 # host_truncate_target
134 # Non-empty if the target name should be truncated
135 # on this host, due to filename length issues.
136 #
137 # gdb_needs_out_file_path
138 # Set to yes if gdb needs a dir command with
139 # `dirname $out_file`.
140 #
141 # build_exeext Set to the suffix, if the build machine requires
142 # executables to have a file name suffix.
143 #
144 # host_exeext Set to the suffix, if the host machine requires
145 # executables to have a file name suffix.
146 #
147 # thread_file Set to control which thread package to use.
148 #
149 # gas Set to yes or no depending on whether the target
150 # system normally uses GNU as.
151
152 # The following variables are used in each case-construct to build up the
153 # outgoing variables:
154 #
155 # xmake_file Makefile-fragment when this system is as a host,
156 # for host_xmake_file.
157 #
158 # extra_host_objs List of extra objects that should be linked into
159 # the compiler proper when this system is a host,
160 # for host_extra_objs.
161 #
162 # install_headers_dir Makefile-target for how the header file directory
163 # is installed, when this system is a build system,
164 # for build_install_headers_dir.
165 #
166 # truncate_target Non-empty if the target name should be truncated
167 # when this system is a host, due to filename length
168 # issues. For host_truncate_target.
169 #
170 # exeext The suffix for executables on this system.
171 #
172 # gnu_ld Set to yes or no depending on whether the target
173 # system normally uses GNU ld.
174
175 out_file=
176 xmake_file=
177 tmake_file=
178 extra_headers=
179 extra_passes=
180 extra_parts=
181 extra_programs=
182 extra_objs=
183 extra_host_objs=
184 extra_gcc_objs=
185 c_target_objs=
186 cxx_target_objs=
187 xm_defines=
188 float_format=
189 # Set this to force installation and use of collect2.
190 use_collect2=
191 # Set this to override the default target model.
192 target_cpu_default=
193 # Set this to control how the header file directory is installed.
194 install_headers_dir=install-headers-tar
195 # Set this if directory names should be truncated to 14 characters.
196 truncate_target=
197 # Set this if gdb needs a dir command with `dirname $out_file`
198 gdb_needs_out_file_path=
199 # Set this if the build machine requires executables to have a
200 # file name suffix.
201 exeext=
202 # Set this to control which thread package will be used.
203 thread_file=
204 # Reinitialize these from the flag values every loop pass, since some
205 # configure entries modify them.
206 gas="$gas_flag"
207 gnu_ld="$gnu_ld_flag"
208 enable_threads=$enable_threads_flag
209
210 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
211 # updated in each machine entry.
212 tm_p_file=
213 cpu_type=`echo $machine | sed 's/-.*$//'`
214 case $machine in
215 alpha*-*-*)
216 cpu_type=alpha
217 ;;
218 strongarm*-*-*)
219 cpu_type=arm
220 ;;
221 arm*-*-*)
222 cpu_type=arm
223 ;;
224 xscale-*-*)
225 cpu_type=arm
226 ;;
227 c*-convex-*)
228 cpu_type=convex
229 ;;
230 i[34567]86-*-*)
231 cpu_type=i386
232 ;;
233 x86_64-*-*)
234 cpu_type=i386
235 ;;
236 hppa*-*-* | parisc*-*-*)
237 cpu_type=pa
238 ;;
239 m680[02]0-*-*)
240 cpu_type=m68k
241 ;;
242 mips*-*-*)
243 cpu_type=mips
244 ;;
245 pj*-*-*)
246 cpu_type=pj
247 ;;
248 powerpc*-*-*)
249 cpu_type=rs6000
250 ;;
251 sparc*-*-*)
252 cpu_type=sparc
253 ;;
254 esac
255
256 tm_file=${cpu_type}/${cpu_type}.h
257 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h
258 then
259 tm_p_file=${cpu_type}/${cpu_type}-protos.h
260 fi
261 # On a.out targets, we need to use collect2.
262 case $machine in
263 *-*-*aout*)
264 use_collect2=yes
265 ;;
266 esac
267
268 # Common parts for GNU/Linux, GNU/Hurd, OpenBSD and FreeBSD systems.
269 case $machine in
270 *-*-linux*)
271 xm_defines=POSIX
272 ;;
273 *-*-gnu*)
274 # On the Hurd, the setup is just about the same on
275 # each different CPU. The specific machines that we
276 # support are matched above and just set $cpu_type.
277 xm_defines=POSIX
278 tm_file="${cpu_type}/gnu.h"
279 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
280 # GNU always uses ELF.
281 elf=yes
282 # GNU tools are the only tools.
283 gnu_ld=yes
284 gas=yes
285 # These details are the same as for Linux.
286 # But here we need a little extra magic.
287 tmake_file="t-slibgcc-elf-ver t-linux t-gnu"
288 case $machine in
289 i[34567]86-*-*)
290 tm_file="${cpu_type}/${cpu_type}.h i386/att.h elfos.h svr4.h linux.h i386/linux.h gnu.h ${tm_file}"
291 ;;
292 esac
293 ;;
294 *-*-openbsd*)
295 tm_file=${cpu_type}/openbsd.h
296 tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
297 xm_defines=POSIX
298 if test x$enable_threads = xyes; then
299 thread_file='posix'
300 tmake_file="${tmake_file} t-openbsd-thread"
301 fi
302 ;;
303 *-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
304 # This is the place-holder for the generic a.out configuration
305 # of FreeBSD. No actual configuration resides here since
306 # there was only ever a bare-bones ix86 configuration for
307 # a.out and it exists solely in the machine-specific section.
308 # This place-holder must exist to avoid dropping into
309 # the generic ELF configuration of FreeBSD (i.e. it must be
310 # ordered before that section).
311 ;;
312 *-*-freebsd*)
313 # This is the generic ELF configuration of FreeBSD. Later
314 # machine-specific sections may refine and add to this
315 # configuration.
316 #
317 # Due to tm_file entry ordering issues that vary between cpu
318 # architectures, we only define fbsd_tm_file to allow the
319 # machine-specific section to dictate the final order of all
320 # entries of tm_file with the minor exception that components
321 # of the tm_file set here will always be of the form:
322 #
323 # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
324 #
325 # The machine-specific section should not tamper with this
326 # ordering but may order all other entries of tm_file as it
327 # pleases around the provided core setting.
328 gas=yes
329 gnu_ld=yes
330 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
331 case $machine in
332 *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
333 *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
334 *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
335 *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
336 *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
337 esac
338 tmake_file=t-freebsd
339 xmake_file=none
340 xm_defines=POSIX
341 case x${enable_threads} in
342 xno) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h";;
343 x | xyes | xpthreads | xposix)
344 thread_file='posix'
345 tmake_file="${tmake_file} t-freebsd-thread"
346 ;;
347 *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
348 esac
349 fbsd_tm_file="${fbsd_tm_file} freebsd.h"
350 ;;
351 esac
352
353 case $machine in
354 # Support site-specific machine types.
355 *local*)
356 rest=`echo $machine | sed -e "s/$cpu_type-//"`
357 tm_file=${cpu_type}/$rest.h
358 if test -f $srcdir/config/${cpu_type}/xm-$rest.h
359 then xm_file=${cpu_type}/xm-$rest.h
360 fi
361 if test -f $srcdir/config/${cpu_type}/x-$rest
362 then xmake_file=${cpu_type}/x-$rest
363 fi
364 if test -f $srcdir/config/${cpu_type}/t-$rest
365 then tmake_file=${cpu_type}/t-$rest
366 fi
367 ;;
368 1750a-*-*)
369 # 1750a is only supported as a target.
370 case "$build,$host" in 1750a*,* | *,1750a* )
371 echo "*** $machine is only supported as a target" >&2
372 exit 1
373 esac
374 ;;
375 a29k-*-bsd* | a29k-*-sym1*)
376 tm_file="${tm_file} a29k/unix.h"
377 xm_defines=POSIX
378 use_collect2=yes
379 ;;
380 a29k-*-udi | a29k-*-coff)
381 tm_file="${tm_file} dbxcoff.h"
382 tmake_file=a29k/t-a29kbare
383 ;;
384 a29k*-*-rtems*)
385 tm_file=a29k/rtems.h
386 tmake_file="a29k/t-a29kbare t-rtems"
387 if test x$enable_threads = xyes; then
388 thread_file='rtems'
389 fi
390 ;;
391 a29k-wrs-vxworks*)
392 tm_file="${tm_file} dbxcoff.h a29k/vx29k.h"
393 tmake_file=a29k/t-vx29k
394 extra_parts="crtbegin.o crtend.o"
395 thread_file='vxworks'
396 ;;
397 a29k-*-*) # Default a29k environment.
398 use_collect2=yes
399 ;;
400 alpha*-*-unicosmk*)
401 use_collect2=yes
402 tm_file="${tm_file} alpha/unicosmk.h"
403
404 # Don't include t-ieee for now because we don't support that yet
405 # tmake_file="alpha/t-ieee"
406 tmake_file="alpha/t-unicosmk"
407 ;;
408 alpha-*-interix)
409 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
410
411 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
412 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
413
414 # GAS + IEEE_CONFORMANT
415 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
416
417 xm_defines=POSIX
418 xm_file="alpha/xm-alpha-interix.h xm-interix.h"
419 tmake_file="alpha/t-alpha t-interix alpha/t-interix alpha/t-ieee"
420 if test x$enable_threads = xyes ; then
421 thread_file='posix'
422 fi
423 if test x$stabs = xyes ; then
424 tm_file="${tm_file} dbxcoff.h"
425 fi
426 #prefix='$$INTERIX_ROOT'/usr/contrib
427 #local_prefix='$$INTERIX_ROOT'/usr/contrib
428 ;;
429 alpha*-*-linux*ecoff*)
430 tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
431 target_cpu_default="MASK_GAS"
432 tmake_file="alpha/t-alpha alpha/t-ieee"
433 gas=no
434 gas=yes gnu_ld=yes
435 ;;
436 alpha*-*-linux*libc1*)
437 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
438 target_cpu_default="MASK_GAS"
439 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-crtfm alpha/t-ieee"
440 gas=yes gnu_ld=yes
441 if test x$enable_threads = xyes; then
442 thread_file='posix'
443 fi
444 ;;
445 alpha*-*-linux*)
446 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
447 target_cpu_default="MASK_GAS"
448 tmake_file="t-slibgcc-elf-ver t-linux alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
449 gas=yes gnu_ld=yes
450 if test x$enable_threads = xyes; then
451 thread_file='posix'
452 fi
453 ;;
454 alpha*-*-freebsd*)
455 tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
456 target_cpu_default="MASK_GAS"
457 tmake_file="${tmake_file} alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
458 ;;
459 alpha*-*-netbsd*)
460 xm_defines=POSIX
461 tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
462 target_cpu_default="MASK_GAS"
463 tmake_file="alpha/t-crtbe alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
464 gas=yes gnu_ld=yes
465 ;;
466
467 alpha*-*-openbsd*)
468 # default x-alpha is only appropriate for dec-osf.
469 target_cpu_default="MASK_GAS"
470 tmake_file="alpha/t-alpha alpha/t-ieee"
471 ;;
472
473 alpha*-dec-osf*)
474 xm_defines=POSIX
475 if test x$stabs = xyes
476 then
477 tm_file="${tm_file} dbx.h"
478 fi
479 if test x$gas != xyes
480 then
481 extra_passes="mips-tfile mips-tdump"
482 fi
483 use_collect2=yes
484 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-osf alpha/t-crtfm"
485 case $machine in
486 *-*-osf1*)
487 tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
488 ;;
489 *-*-osf[23]*)
490 tm_file="${tm_file} alpha/osf.h alpha/osf2or3.h"
491 ;;
492 *-*-osf4*)
493 tm_file="${tm_file} alpha/osf.h"
494 tmake_file="$tmake_file alpha/t-osf4"
495 # Some versions of OSF4 (specifically X4.0-9 296.7) have
496 # a broken tar, so we use cpio instead.
497 install_headers_dir=install-headers-cpio
498 ;;
499 *-*-osf5*)
500 tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
501 tmake_file="$tmake_file alpha/t-osf4"
502 float_format=i128
503 ;;
504 esac
505 case $machine in
506 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
507 target_cpu_default=MASK_SUPPORT_ARCH
508 ;;
509 esac
510 ;;
511 alpha*-*-vxworks*)
512 xm_defines=POSIX
513 tm_file="${tm_file} dbx.h alpha/vxworks.h"
514 tmake_file="alpha/t-alpha alpha/t-ieee"
515 if [ x$gas != xyes ]
516 then
517 extra_passes="mips-tfile mips-tdump"
518 fi
519 use_collect2=yes
520 thread_file='vxworks'
521 ;;
522 alpha*-dec-vms*)
523 xm_defines=POSIX
524 tm_file=alpha/vms.h
525 xm_file=alpha/xm-vms.h
526 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
527 ;;
528 arc-*-elf*)
529 tm_file="elfos.h svr4.h ${tm_file}"
530 extra_parts="crtinit.o crtfini.o"
531 ;;
532 arm*-*-rtems*)
533 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/rtems-elf.h rtems.h"
534 tmake_file="arm/t-arm-elf t-rtems"
535 if test x$enable_threads = xyes; then
536 thread_file='rtems'
537 fi
538 ;;
539 arm-*-coff* | armel-*-coff*)
540 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h"
541 tmake_file=arm/t-arm-coff
542 ;;
543 arm-*-vxworks*)
544 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/vxarm.h arm/arm.h"
545 tmake_file=arm/t-arm-coff
546 thread_file='vxworks'
547 ;;
548 arm-*-riscix1.[01]*) # Acorn RISC machine (early versions)
549 tm_file="arm/riscix1-1.h arm/arm.h"
550 use_collect2=yes
551 ;;
552 arm-*-riscix*) # Acorn RISC machine
553 if test x$gas = xyes
554 then
555 tm_file="arm/riscix.h arm/rix-gas.h arm/arm.h"
556 else
557 tm_file="arm/riscix.h arm/arm.h"
558 fi
559 tmake_file=arm/t-riscix
560 use_collect2=yes
561 ;;
562 arm-semi-aout | armel-semi-aout)
563 tm_file="arm/semi.h arm/aout.h arm/arm.h"
564 tmake_file=arm/t-semi
565 ;;
566 arm-semi-aof | armel-semi-aof)
567 tm_file="arm/semiaof.h arm/aof.h arm/arm.h"
568 tmake_file=arm/t-semi
569 ;;
570 arm*-*-netbsd*)
571 tm_file="arm/aout.h arm/arm.h netbsd.h arm/netbsd.h"
572 tmake_file="t-netbsd arm/t-netbsd"
573 use_collect2=yes
574 ;;
575 arm*-*-linux*) # ARM GNU/Linux with ELF
576 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h"
577 tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
578 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
579 gnu_ld=yes
580 case x${enable_threads} in
581 x | xyes | xpthreads | xposix)
582 thread_file='posix'
583 ;;
584 esac
585 ;;
586 arm*-*-uclinux*) # ARM ucLinux
587 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/linux-gas.h arm/linux-elf.h arm/uclinux-elf.h"
588 tmake_file=arm/t-arm-elf
589 ;;
590 arm*-*-aout)
591 tm_file="arm/aout.h arm/arm.h"
592 tmake_file=arm/t-arm-aout
593 ;;
594 arm*-*-ecos-elf)
595 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"
596 tmake_file=arm/t-arm-elf
597 ;;
598 arm*-*-elf)
599 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
600 tmake_file=arm/t-arm-elf
601 ;;
602 arm*-*-conix*)
603 tm_file="elfos.h arm/unknown-elf.h arm/elf.h arm/conix-elf.h arm/aout.h arm/arm.h"
604 tmake_file=arm/t-arm-elf
605 ;;
606 arm*-*-oabi)
607 tm_file="arm/unknown-elf-oabi.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
608 tmake_file=arm/t-arm-elf
609 ;;
610 arm-*-pe*)
611 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h arm/pe.h"
612 tmake_file=arm/t-pe
613 extra_objs="pe.o"
614 ;;
615 avr-*-*)
616 ;;
617 c1-convex-*) # Convex C1
618 target_cpu_default=1
619 use_collect2=yes
620 ;;
621 c2-convex-*) # Convex C2
622 target_cpu_default=2
623 use_collect2=yes
624 ;;
625 c32-convex-*)
626 target_cpu_default=4
627 use_collect2=yes
628 ;;
629 c34-convex-*)
630 target_cpu_default=8
631 use_collect2=yes
632 ;;
633 c38-convex-*)
634 target_cpu_default=16
635 use_collect2=yes
636 ;;
637 c4x-*-rtems*)
638 tmake_file="c4x/t-c4x t-rtems"
639 tm_file=c4x/rtems.h
640 if test x$enable_threads = xyes; then
641 thread_file='rtems'
642 fi
643 c_target_objs="c4x-c.o"
644 cxx_target_objs="c4x-c.o"
645 ;;
646 c4x-*)
647 float_format=c4x
648 tmake_file=c4x/t-c4x
649 c_target_objs="c4x-c.o"
650 cxx_target_objs="c4x-c.o"
651 ;;
652 clipper-intergraph-clix*)
653 tm_file="${tm_file} svr3.h clipper/clix.h"
654 xm_defines=POSIX
655 extra_parts="crtbegin.o crtend.o"
656 install_headers_dir=install-headers-cpio
657 ;;
658 cris-*-aout)
659 tm_file="dbxelf.h ${tm_file} cris/aout.h"
660 gas=yes
661 tmake_file="cris/t-cris cris/t-aout"
662 ;;
663 cris-*-elf | cris-*-none)
664 tm_file="elfos.h ${tm_file}"
665 tmake_file="cris/t-cris cris/t-elfmulti"
666 gas=yes
667 ;;
668 cris-*-linux*)
669 tm_file="elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
670 tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
671 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
672 case x${enable_threads} in
673 x | xyes | xpthreads | xposix)
674 thread_file=posix
675 ;;
676 esac
677 gas=yes
678 ;;
679 d30v-*)
680 tm_file="elfos.h svr4.h ${tm_file}"
681 float_format=i64
682 ;;
683 dsp16xx-*)
684 ;;
685 elxsi-elxsi-*)
686 use_collect2=yes
687 ;;
688 fr30-*-elf)
689 tm_file="elfos.h svr4.h ${tm_file}"
690 tmake_file=fr30/t-fr30
691 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
692 ;;
693 h8300-*-rtems*)
694 tmake_file="h8300/t-h8300 t-rtems"
695 tm_file=h8300/rtems.h
696 if test x$enable_threads = xyes; then
697 thread_file='rtems'
698 fi
699 float_format=i32
700 ;;
701 h8300-*-elf*)
702 tmake_file="h8300/t-h8300 h8300/t-elf"
703 tm_file="h8300/h8300.h h8300/elf.h"
704 float_format=i32
705 ;;
706 h8300-*-*)
707 float_format=i32
708 ;;
709 hppa*64*-*-linux* | parisc*64*-*-linux*)
710 target_cpu_default="(MASK_PA_11 | MASK_PA_20)"
711 tm_file="pa/pa64-start.h ${tm_file} elfos.h svr4.h linux.h pa/pa-linux.h \
712 pa/pa64-regs.h pa/pa-64.h pa/pa64-linux.h"
713 tmake_file=pa/t-linux64
714 gas=yes gnu_ld=yes
715 ;;
716 hppa*-*-linux* | parisc*-*-linux*)
717 target_cpu_default="MASK_PA_11"
718 tm_file="${tm_file} elfos.h svr4.h linux.h pa/pa-linux.h \
719 pa/pa32-regs.h pa/pa32-linux.h"
720 tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
721 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
722 gas=yes gnu_ld=yes
723 if test x$enable_threads = xyes; then
724 thread_file='posix'
725 fi
726 ;;
727 hppa*-*-openbsd*)
728 target_cpu_default="MASK_PA_11"
729 tmake_file=pa/t-bsd
730 ;;
731 hppa1.1-*-pro*)
732 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
733 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
734 tmake_file="pa/t-bsd pa/t-pro"
735 ;;
736 hppa1.1-*-osf*)
737 target_cpu_default="MASK_PA_11"
738 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
739 tmake_file="pa/t-bsd pa/t-pa"
740 use_collect2=yes
741 ;;
742 hppa1.1-*-rtems*)
743 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
744 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
745 tmake_file="pa/t-bsd pa/t-pro"
746 ;;
747 hppa1.0-*-osf*)
748 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
749 tmake_file="pa/t-bsd pa/t-pa"
750 use_collect2=yes
751 ;;
752 hppa1.1-*-bsd*)
753 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
754 target_cpu_default="MASK_PA_11"
755 tmake_file="pa/t-bsd pa/t-pa"
756 use_collect2=yes
757 ;;
758 hppa1.0-*-bsd*)
759 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
760 tmake_file="pa/t-bsd pa/t-pa"
761 use_collect2=yes
762 ;;
763 hppa1.0-*-hpux7*)
764 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
765 xm_defines=POSIX
766 tmake_file=pa/t-pa-hpux
767 install_headers_dir=install-headers-cpio
768 use_collect2=yes
769 ;;
770 hppa1.0-*-hpux8.0[0-2]*)
771 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
772 xm_defines=POSIX
773 tmake_file=pa/t-pa-hpux
774 if test x$gas != xyes
775 then
776 tm_file="pa/pa-oldas.h ${tm_file}"
777 fi
778 install_headers_dir=install-headers-cpio
779 use_collect2=yes
780 ;;
781 hppa1.1-*-hpux8.0[0-2]*)
782 target_cpu_default="MASK_PA_11"
783 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
784 xm_defines=POSIX
785 tmake_file=pa/t-pa-hpux
786 if test x$gas != xyes
787 then
788 tm_file="pa/pa-oldas.h ${tm_file}"
789 fi
790 install_headers_dir=install-headers-cpio
791 use_collect2=yes
792 ;;
793 hppa1.1-*-hpux8*)
794 target_cpu_default="MASK_PA_11"
795 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
796 xm_defines=POSIX
797 tmake_file=pa/t-pa-hpux
798 install_headers_dir=install-headers-cpio
799 use_collect2=yes
800 ;;
801 hppa1.0-*-hpux8*)
802 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
803 xm_defines=POSIX
804 tmake_file=pa/t-pa-hpux
805 install_headers_dir=install-headers-cpio
806 use_collect2=yes
807 ;;
808 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
809 target_cpu_default="MASK_PA_11"
810 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
811 float_format=i128
812 xm_defines=POSIX
813 tmake_file="pa/t-pa pa/t-pa-hpux"
814 if test x$enable_threads = x; then
815 enable_threads=$have_pthread_h
816 fi
817 case x${enable_threads} in
818 xyes | xdce)
819 tmake_file="${tmake_file} pa/t-dce-thr"
820 ;;
821 esac
822 install_headers_dir=install-headers-cpio
823 use_collect2=yes
824 ;;
825 hppa1.0-*-hpux10*)
826 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
827 float_format=i128
828 xm_defines=POSIX
829 tmake_file="pa/t-pa pa/t-pa-hpux"
830 if test x$enable_threads = x; then
831 enable_threads=$have_pthread_h
832 fi
833 case x${enable_threads} in
834 xyes | xdce)
835 tmake_file="${tmake_file} pa/t-dce-thr"
836 ;;
837 esac
838 install_headers_dir=install-headers-cpio
839 use_collect2=yes
840 ;;
841 hppa*64*-*-hpux11*)
842 xm_defines=POSIX
843 tmake_file="pa/t-pa pa/t-pa-hpux"
844 tm_file="pa/pa64-start.h ${tm_file} pa/pa64-regs.h pa/long_double.h pa/elf.h pa/pa-hpux.h pa/pa-hpux11.h pa/pa-64.h pa/pa64-hpux.h"
845 float_format=i128
846 tmake_file=pa/t-pa64
847 target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
848
849 # if [ x$enable_threads = x ]; then
850 # enable_threads=$have_pthread_h
851 # fi
852 # if [ x$enable_threads = xyes ]; then
853 # thread_file='dce'
854 # tmake_file="${tmake_file} pa/t-dce-thr"
855 # fi
856 install_headers_dir=install-headers-cpio
857 use_collect2=yes
858 ;;
859 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
860 target_cpu_default="MASK_PA_11"
861 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
862 float_format=i128
863 xm_defines=POSIX
864 tmake_file="pa/t-pa pa/t-pa-hpux"
865 # if test x$enable_threads = x; then
866 # enable_threads=$have_pthread_h
867 # fi
868 # if test x$enable_threads = xyes; then
869 # thread_file='dce'
870 # tmake_file="${tmake_file} pa/t-dce-thr"
871 # fi
872 install_headers_dir=install-headers-cpio
873 use_collect2=yes
874 ;;
875 hppa1.0-*-hpux11*)
876 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
877 float_format=i128
878 xm_defines=POSIX
879 tmake_file=pa/t-pa-hpux
880 # if test x$enable_threads = x; then
881 # enable_threads=$have_pthread_h
882 # fi
883 # if test x$enable_threads = xyes; then
884 # thread_file='dce'
885 # tmake_file="${tmake_file} pa/t-dce-thr"
886 # fi
887 install_headers_dir=install-headers-cpio
888 use_collect2=yes
889 ;;
890 hppa1.1-*-hpux* | hppa2*-*-hpux*)
891 target_cpu_default="MASK_PA_11"
892 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
893 xm_defines=POSIX
894 tmake_file=pa/t-pa-hpux
895 install_headers_dir=install-headers-cpio
896 use_collect2=yes
897 ;;
898 hppa1.0-*-hpux*)
899 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
900 xm_defines=POSIX
901 tmake_file=pa/t-pa-hpux
902 install_headers_dir=install-headers-cpio
903 use_collect2=yes
904 ;;
905 hppa1.1-*-hiux* | hppa2*-*-hiux*)
906 target_cpu_default="MASK_PA_11"
907 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
908 xm_defines=POSIX
909 tmake_file=pa/t-pa-hpux
910 install_headers_dir=install-headers-cpio
911 use_collect2=yes
912 ;;
913 hppa1.0-*-hiux*)
914 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
915 xm_defines=POSIX
916 tmake_file=pa/t-pa-hpux
917 install_headers_dir=install-headers-cpio
918 use_collect2=yes
919 ;;
920 hppa*-*-lites*)
921 tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
922 target_cpu_default="MASK_PA_11"
923 tmake_file="pa/t-bsd pa/t-pa"
924 use_collect2=yes
925 ;;
926 hppa*-*-mpeix*)
927 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
928 xmake_file=pa/x-pa-mpeix
929 echo "You must use gas. Assuming it is already installed."
930 gas=yes
931 install_headers_dir=install-headers-tar
932 use_collect2=yes
933 ;;
934 i370-*-opened*) # IBM 360/370/390 Architecture
935 xm_defines='POSIX FATAL_EXIT_CODE=12'
936 tm_file=i370/oe.h
937 tmake_file="i370/t-oe i370/t-i370"
938 c_target_objs="i370-c.o"
939 cxx_target_objs="i370-c.o"
940 ;;
941 i370-*-mvs*)
942 xm_defines='POSIX FATAL_EXIT_CODE=12'
943 tm_file=i370/mvs.h
944 tmake_file="i370/t-i370"
945 c_target_objs="i370-c.o"
946 cxx_target_objs="i370-c.o"
947 ;;
948 i370-*-linux*)
949 tm_file="elfos.h svr4.h linux.h i370/linux.h ${tm_file}"
950 tmake_file="t-slibgcc-elf-ver t-linux"
951 # broken_install=yes
952 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
953 # extra_parts="crtbegin.o crtend.o"
954 gnu_ld=yes
955 gas=yes
956 elf=yes
957 if test x$enable_threads = xyes; then
958 thread_file='posix'
959 fi
960 ;;
961 i[34567]86-*-chorusos*)
962 xm_defines=POSIX
963 tm_file="${tm_file} i386/att.h elfos.h i386/i386elf.h chorus.h"
964 tmake_file="i386/t-i386elf t-svr4"
965 case x${enable_threads} in
966 xyes | xpthreads | xposix)
967 thread_file='posix'
968 ;;
969 esac
970 ;;
971 i[34567]86-*-elf*)
972 xm_defines=POSIX
973 tm_file="${tm_file} i386/att.h elfos.h i386/i386elf.h"
974 tmake_file="i386/t-i386elf t-svr4"
975 ;;
976 i[34567]86-ibm-aix*) # IBM PS/2 running AIX
977 if test x$gas = xyes
978 then
979 tm_file=i386/aix386.h
980 extra_parts="crtbegin.o crtend.o"
981 tmake_file=i386/t-crtstuff
982 else
983 tm_file=i386/aix386ng.h
984 use_collect2=yes
985 fi
986 xm_defines=POSIX
987 ;;
988 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
989 xm_defines="POSIX SMALL_ARG_MAX"
990 if test x$stabs = xyes -a x$gas = xyes
991 then
992 tm_file=i386/sysv4gdb.h
993 else
994 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h"
995 fi
996 extra_parts="crtbegin.o crtend.o"
997 tmake_file=i386/t-crtpic
998 ;;
999 i[34567]86-next-*)
1000 tm_file=i386/next.h
1001 tmake_file=i386/t-next
1002 extra_objs=nextstep.o
1003 extra_parts="crtbegin.o crtend.o"
1004 if test x$enable_threads = xyes; then
1005 thread_file='mach'
1006 fi
1007 ;;
1008 i[34567]86-*-netware) # Intel 80386's running netware
1009 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
1010 tmake_file=i386/t-netware
1011 ;;
1012 i[34567]86-sequent-bsd*) # 80386 from Sequent
1013 use_collect2=yes
1014 if test x$gas = xyes
1015 then
1016 tm_file=i386/seq-gas.h
1017 else
1018 tm_file=i386/sequent.h
1019 fi
1020 ;;
1021 i[34567]86-sequent-ptx1*)
1022 xm_defines=POSIX
1023 tm_file=i386/seq-sysv3.h
1024 tmake_file=i386/t-crtstuff
1025 extra_parts="crtbegin.o crtend.o"
1026 install_headers_dir=install-headers-cpio
1027 ;;
1028 i[34567]86-sequent-ptx2* | i[34567]86-sequent-sysv3*)
1029 xm_defines=POSIX
1030 tm_file=i386/seq2-sysv3.h
1031 tmake_file=i386/t-crtstuff
1032 extra_parts="crtbegin.o crtend.o"
1033 install_headers_dir=install-headers-cpio
1034 ;;
1035 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1036 if test x$gas = xyes
1037 then
1038 tm_file="${tm_file} usegas.h"
1039 fi
1040 xm_defines="POSIX SMALL_ARG_MAX"
1041 tm_file="${tm_file} i386/att.h elfos.h ptx4.h i386/ptx4-i.h"
1042 tmake_file=t-svr4
1043 extra_parts="crtbegin.o crtend.o"
1044 install_headers_dir=install-headers-cpio
1045 ;;
1046 i386-sun-sunos*) # Sun i386 roadrunner
1047 xm_defines=POSIX
1048 tm_file=i386/sun.h
1049 use_collect2=yes
1050 ;;
1051 i[34567]86-wrs-vxworks*)
1052 tm_file=i386/vxi386.h
1053 thread_file='vxworks'
1054 ;;
1055 i[34567]86-*-aout*)
1056 tm_file=i386/i386-aout.h
1057 ;;
1058 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1059 xm_defines=POSIX
1060 tmake_file='i386/t-beos i386/t-crtpic'
1061 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/beos-elf.h"
1062 xmake_file=i386/x-beos
1063 extra_parts='crtbegin.o crtend.o'
1064 ;;
1065 i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
1066 tm_file="i386/386bsd.h i386/bsd386.h"
1067 # tmake_file=t-libc-ok
1068 ;;
1069 i[34567]86-*-bsd*)
1070 tm_file=i386/386bsd.h
1071 # tmake_file=t-libc-ok
1072 # Next line turned off because both 386BSD and BSD/386 use GNU ld.
1073 # use_collect2=yes
1074 ;;
1075 i[34567]86-*-freebsd[12] | i[34567]86-*-freebsd[12].* | i[34567]86-*-freebsd*aout*)
1076 tm_file=i386/freebsd-aout.h
1077 tmake_file=t-freebsd
1078 ;;
1079 i[34567]86-*-freebsd*)
1080 tm_file="${tm_file} i386/att.h elfos.h svr4.h ${fbsd_tm_file} i386/freebsd.h"
1081 ;;
1082 i[34567]86-*-netbsdelf*)
1083 xm_defines=POSIX
1084 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/netbsd-elf.h"
1085 tmake_file=t-netbsd
1086 gnu_ld=yes
1087 float_format=i386
1088 ;;
1089 i[34567]86-*-netbsd*)
1090 tm_file=i386/netbsd.h
1091 tmake_file=t-netbsd
1092 use_collect2=yes
1093 ;;
1094 i[34567]86-*-openbsd*)
1095 # needed to unconfuse gdb
1096 tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
1097 # we need collect2 until our bug is fixed...
1098 use_collect2=yes
1099 ;;
1100 i[34567]86-*-coff*)
1101 tm_file=i386/i386-coff.h
1102 ;;
1103 i[34567]86-*-isc*) # 80386 running ISC system
1104 xm_defines=POSIX
1105 if test x$gas = xyes -a x$stabs = xyes
1106 then
1107 tm_file=i386/iscdbx.h
1108 tmake_file=i386/t-svr3dbx
1109 extra_parts="svr3.ifile svr3z.ifile"
1110 else
1111 tm_file=i386/isccoff.h
1112 tmake_file=i386/t-crtstuff
1113 extra_parts="crtbegin.o crtend.o"
1114 fi
1115 install_headers_dir=install-headers-cpio
1116 ;;
1117 i[34567]86-*-linux*oldld*) # Intel 80386's running GNU/Linux
1118 # with a.out format using
1119 # pre BFD linkers
1120 tmake_file="t-linux-aout i386/t-crtstuff"
1121 tm_file=i386/linux-oldld.h
1122 gnu_ld=yes
1123 float_format=i386
1124 ;;
1125 i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1126 # with a.out format
1127 tmake_file="t-linux-aout i386/t-crtstuff"
1128 tm_file=i386/linux-aout.h
1129 gnu_ld=yes
1130 float_format=i386
1131 ;;
1132 i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1133 # with ELF format using the
1134 # GNU/Linux C library 5
1135 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h"
1136 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
1137 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1138 gnu_ld=yes
1139 float_format=i386
1140 if test x$enable_threads = xyes; then
1141 thread_file='single'
1142 fi
1143 ;;
1144 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1145 # with ELF format using glibc 2
1146 # aka GNU/Linux C library 6
1147 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h"
1148 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
1149 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1150 gnu_ld=yes
1151 float_format=i386
1152 if test x$enable_threads = xyes; then
1153 thread_file='posix'
1154 fi
1155 ;;
1156 x86_64-*-linux*)
1157 tm_file="i386/biarch64.h i386/i386.h i386/att.h elfos.h svr4.h linux.h \
1158 i386/x86-64.h i386/linux64.h"
1159 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
1160 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1161 gnu_ld=yes
1162 float_format=i386
1163 if test x$enable_threads = xyes; then
1164 thread_file='posix'
1165 fi
1166 ;;
1167 i[34567]86-*-gnu*)
1168 float_format=i386
1169 ;;
1170 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1171 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1172 exit 1
1173 ;;
1174 i[34567]86-pc-msdosdjgpp*)
1175 xm_file=i386/xm-djgpp.h
1176 tm_file=i386/djgpp.h
1177 xmake_file=i386/x-djgpp
1178 gnu_ld=yes
1179 gas=yes
1180 exeext=.exe
1181 float_format=none
1182 case $host in *pc-msdosdjgpp*)
1183 target_alias=djgpp
1184 ;;
1185 esac
1186 ;;
1187 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1188 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
1189 tmake_file=t-libc-ok
1190 gnu_ld=yes
1191 gas=yes
1192 ;;
1193 i[34567]86-*-lynxos*)
1194 if test x$gas = xyes
1195 then
1196 tm_file=i386/lynx.h
1197 else
1198 tm_file=i386/lynx-ng.h
1199 fi
1200 ;;
1201 i[34567]86-*-mach*)
1202 tm_file=i386/mach.h
1203 # tmake_file=t-libc-ok
1204 use_collect2=yes
1205 ;;
1206 i[34567]86-*-osfrose*) # 386 using OSF/rose
1207 if test x$elf = xyes
1208 then
1209 tm_file=i386/osfelf.h
1210 use_collect2=
1211 else
1212 tm_file=i386/osfrose.h
1213 use_collect2=yes
1214 fi
1215 tmake_file=i386/t-osf
1216 extra_objs=halfpic.o
1217 ;;
1218 i[34567]86-go32-rtems*)
1219 tm_file=i386/djgpp-rtems.h
1220 tmake_file=t-rtems
1221 if test x$enable_threads = xyes; then
1222 thread_file='rtems'
1223 fi
1224 ;;
1225 i[34567]86-*-rtemscoff*)
1226 tm_file=i386/rtems.h
1227 tmake_file=t-rtems
1228 if test x$enable_threads = xyes; then
1229 thread_file='rtems'
1230 fi
1231 ;;
1232 i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
1233 tm_file="${tm_file} i386/att.h elfos.h svr4.h linux.h i386/rtemself.h rtems.h"
1234 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1235 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1236 if test x$enable_threads = xyes; then
1237 thread_file='rtems'
1238 fi
1239 ;;
1240 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1241 xm_defines=POSIX
1242 install_headers_dir=install-headers-cpio
1243 tm_file=i386/sco5.h
1244 if test x$gas = xyes
1245 then
1246 tm_file="usegas.h ${tm_file}"
1247 tmake_file=i386/t-sco5gas
1248 else
1249 tmake_file=i386/t-sco5
1250 fi
1251 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1252 ;;
1253 i[34567]86-*-solaris2*)
1254 xm_defines="POSIX SMALL_ARG_MAX"
1255 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sol2.h"
1256 if test x$gas = xyes; then
1257 # Only needed if gas does not support -s
1258 tm_file="i386/sol2gas.h ${tm_file}"
1259 fi
1260 tmake_file="i386/t-sol2 t-svr4"
1261 if test x$gnu_ld = xyes; then
1262 tmake_file="$tmake_file t-slibgcc-elf-ver"
1263 else
1264 tmake_file="$tmake_file t-slibgcc-sld"
1265 fi
1266 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1267 if test x${enable_threads} = x; then
1268 enable_threads=$have_pthread_h
1269 if test x${enable_threads} = x; then
1270 enable_threads=$have_thread_h
1271 fi
1272 fi
1273 if test x${enable_threads} = xyes; then
1274 if test x${have_pthread_h} = xyes; then
1275 thread_file='posix'
1276 else
1277 thread_file='solaris'
1278 fi
1279 fi
1280 ;;
1281 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1282 xm_defines=POSIX
1283 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
1284 if test x$stabs = xyes
1285 then
1286 tm_file="${tm_file} dbx.h"
1287 fi
1288 tmake_file="i386/t-crtpic t-svr4"
1289 extra_parts="crtbegin.o crtend.o"
1290 if test x$enable_threads = xyes; then
1291 thread_file='posix'
1292 fi
1293 ;;
1294 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1295 xm_defines="POSIX SMALL_ARG_MAX"
1296 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h"
1297 if test x$stabs = xyes
1298 then
1299 tm_file="${tm_file} dbx.h"
1300 fi
1301 tmake_file="i386/t-crtpic t-svr4"
1302 extra_parts="crtbegin.o crtend.o"
1303 ;;
1304 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1305 xm_defines=POSIX
1306 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h i386/udk.h"
1307 tmake_file="i386/t-crtpic i386/t-udk t-svr4"
1308 extra_parts="crtbegin.o crtend.o"
1309 install_headers_dir=install-headers-cpio
1310 ;;
1311 i[34567]86-*-osf1*) # Intel 80386's running OSF/1 1.3+
1312 xm_file=i386/xm-osf1elf.h
1313 xm_defines='POSIX USE_C_ALLOCA SMALL_ARG_MAX'
1314 if test x$stabs = xyes
1315 then
1316 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h i386/osf1elfgdb.h"
1317 else
1318 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/osf1elf.h"
1319 fi
1320 tmake_file=i386/t-osf1elf
1321 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
1322 ;;
1323 i[34567]86-*-sysv*) # Intel 80386's running system V
1324 xm_defines=POSIX
1325 if test x$gas = xyes
1326 then
1327 if test x$stabs = xyes
1328 then
1329 tm_file=i386/svr3dbx.h
1330 tmake_file=i386/t-svr3dbx
1331 extra_parts="svr3.ifile svr3z.rfile"
1332 else
1333 tm_file=i386/svr3gas.h
1334 extra_parts="crtbegin.o crtend.o"
1335 tmake_file=i386/t-crtstuff
1336 fi
1337 else
1338 tm_file=i386/sysv3.h
1339 extra_parts="crtbegin.o crtend.o"
1340 tmake_file=i386/t-crtstuff
1341 fi
1342 tmake_file="$tmake_file i386/t-crtpic"
1343 ;;
1344 i386-*-vsta) # Intel 80386's running VSTa kernel
1345 xm_file=i386/xm-vsta.h
1346 tm_file=i386/vsta.h
1347 ;;
1348 i[34567]86-*-win32)
1349 xm_defines=POSIX
1350 xm_file=i386/xm-cygwin.h
1351 float_format=i386
1352 tmake_file=i386/t-cygwin
1353 tm_file=i386/win32.h
1354 extra_objs=winnt.o
1355 if test x$enable_threads = xyes; then
1356 thread_file='win32'
1357 fi
1358 exeext=.exe
1359 ;;
1360 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1361 xm_defines=POSIX
1362 xm_file=i386/xm-cygwin.h
1363 float_format=i386
1364 tmake_file=i386/t-cygwin
1365 tm_file=i386/cygwin.h
1366 extra_objs=winnt.o
1367 if test x$enable_threads = xyes; then
1368 thread_file='win32'
1369 fi
1370 exeext=.exe
1371 ;;
1372 i[34567]86-*-mingw32*)
1373 tm_file=i386/mingw32.h
1374 float_format=i386
1375 xm_defines=POSIX
1376 xm_file=i386/xm-mingw32.h
1377 tmake_file="i386/t-cygwin i386/t-mingw32"
1378 extra_objs=winnt.o
1379 if test x$enable_threads = xyes; then
1380 thread_file='win32'
1381 fi
1382 exeext=.exe
1383 case $machine in
1384 *mingw32crt*)
1385 tm_file="${tm_file} i386/crtdll.h"
1386 ;;
1387 *minwg32msv* | *mingw32*)
1388 ;;
1389 esac
1390 ;;
1391 i[34567]86-*-uwin*)
1392 tm_file=i386/uwin.h
1393 tmake_file="i386/t-cygwin i386/t-uwin"
1394 extra_objs=winnt.o
1395 if test x$enable_threads = xyes; then
1396 thread_file='win32'
1397 fi
1398 exeext=.exe
1399 ;;
1400 i[34567]86-*-interix*)
1401 tm_file="i386/i386-interix.h interix.h"
1402 xm_file="i386/xm-i386-interix.h xm-interix.h"
1403 xm_defines=POSIX
1404 tmake_file="t-interix i386/t-interix"
1405 extra_objs=interix.o
1406 if test x$enable_threads = xyes ; then
1407 thread_file='posix'
1408 fi
1409 if test x$stabs = xyes ; then
1410 tm_file="${tm_file} dbxcoff.h"
1411 fi
1412 ;;
1413 i[34567]86-dg-dgux*)
1414 xm_defines=POSIX
1415 tm_file="${tm_file} i386/att.h elfos.h svr4.h i386/sysv4.h i386/dgux.h"
1416 tmake_file=i386/t-dgux
1417 install_headers_dir=install-headers-cpio
1418 ;;
1419 i860-alliant-*) # Alliant FX/2800
1420 tm_file="${tm_file} elfos.h svr4.h i860/sysv4.h i860/fx2800.h"
1421 tmake_file=i860/t-fx2800
1422 extra_parts="crtbegin.o crtend.o"
1423 ;;
1424 i860-*-bsd*)
1425 tm_file="${tm_file} i860/bsd.h"
1426 if test x$gas = xyes
1427 then
1428 tm_file="${tm_file} i860/bsd-gas.h"
1429 fi
1430 use_collect2=yes
1431 ;;
1432 i860-*-mach*)
1433 tm_file="${tm_file} i860/mach.h"
1434 tmake_file=t-libc-ok
1435 ;;
1436 i860-*-osf*) # Intel Paragon XP/S, OSF/1AD
1437 tm_file="${tm_file} svr3.h i860/paragon.h"
1438 xm_defines=POSIX
1439 ;;
1440 i860-*-sysv3*)
1441 tm_file="${tm_file} svr3.h i860/sysv3.h"
1442 xm_defines=POSIX
1443 extra_parts="crtbegin.o crtend.o"
1444 ;;
1445 i860-*-sysv4*)
1446 tm_file="${tm_file} elfos.h svr4.h i860/sysv4.h"
1447 xm_defines=POSIX
1448 tmake_file=t-svr4
1449 extra_parts="crtbegin.o crtend.o"
1450 ;;
1451 i960-wrs-vxworks5 | i960-wrs-vxworks5.0*)
1452 tm_file="${tm_file} i960/vx960.h"
1453 tmake_file=i960/t-vxworks960
1454 use_collect2=yes
1455 thread_file='vxworks'
1456 c_target_objs="i960-c.o"
1457 cxx_target_objs="i960-c.o"
1458 ;;
1459 i960-wrs-vxworks5* | i960-wrs-vxworks)
1460 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/vx960-coff.h"
1461 tmake_file=i960/t-vxworks960
1462 use_collect2=yes
1463 thread_file='vxworks'
1464 c_target_objs="i960-c.o"
1465 cxx_target_objs="i960-c.o"
1466 ;;
1467 i960-wrs-vxworks*)
1468 tm_file="${tm_file} i960/vx960.h"
1469 tmake_file=i960/t-vxworks960
1470 use_collect2=yes
1471 thread_file='vxworks'
1472 c_target_objs="i960-c.o"
1473 cxx_target_objs="i960-c.o"
1474 ;;
1475 i960-*-coff*)
1476 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1477 tmake_file=i960/t-960bare
1478 c_target_objs="i960-c.o"
1479 cxx_target_objs="i960-c.o"
1480 ;;
1481 i960-*-rtems)
1482 tmake_file="i960/t-960bare t-rtems"
1483 tm_file="${tm_file} dbxcoff.h i960/rtems.h"
1484 if test x$enable_threads = xyes; then
1485 thread_file='rtems'
1486 fi
1487 c_target_objs="i960-c.o"
1488 cxx_target_objs="i960-c.o"
1489 ;;
1490 i960-*-*) # Default i960 environment.
1491 use_collect2=yes
1492 tmake_file=i960/t-960bare
1493 c_target_objs="i960-c.o"
1494 cxx_target_objs="i960-c.o"
1495 ;;
1496 ia64*-*-aix*)
1497 tm_file="${tm_file} elfos.h svr4.h ia64/sysv4.h ia64/aix.h"
1498 tmake_file="ia64/t-ia64 ia64/t-aix"
1499 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1500 ;;
1501 ia64*-*-elf*)
1502 tm_file="${tm_file} elfos.h ia64/sysv4.h ia64/elf.h"
1503 tmake_file="ia64/t-ia64"
1504 target_cpu_default="0"
1505 if test x$gas = xyes
1506 then
1507 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1508 fi
1509 if test x$gnu_ld = xyes
1510 then
1511 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1512 fi
1513 float_format=i386
1514 ;;
1515 ia64*-*-freebsd*)
1516 tm_file="${tm_file} ${fbsd_tm_file} elfos.h ia64/sysv4.h ia64/freebsd.h"
1517 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1518 tmake_file="${tmake_file} ia64/t-ia64"
1519 float_format=i386
1520 ;;
1521 ia64*-*-linux*)
1522 tm_file="${tm_file} elfos.h svr4.h linux.h ia64/sysv4.h ia64/linux.h"
1523 tmake_file="t-slibgcc-elf-ver t-linux ia64/t-ia64 ia64/t-glibc"
1524 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1525 if test x$enable_threads = xyes; then
1526 thread_file='posix'
1527 fi
1528 float_format=i386
1529 ;;
1530 ia64*-*-hpux*)
1531 tm_file="${tm_file} elfos.h svr4.h ia64/sysv4.h ia64/hpux.h ia64/hpux_longdouble.h"
1532 tmake_file="ia64/t-ia64 ia64/t-hpux"
1533 target_cpu_default="MASK_GNU_AS"
1534 if test x$enable_threads = xyes; then
1535 thread_file='posix'
1536 fi
1537 float_format=i386
1538 ;;
1539 m32r-*-elf*)
1540 tm_file="elfos.h svr4.h ${tm_file}"
1541 extra_parts="crtinit.o crtfini.o"
1542 ;;
1543 # m68hc11 and m68hc12 share the same machine description.
1544 m68hc11-*-*|m6811-*-*)
1545 tm_file="elfos.h m68hc11/m68hc11.h"
1546 tm_p_file="m68hc11/m68hc11-protos.h"
1547 md_file="m68hc11/m68hc11.md"
1548 out_file="m68hc11/m68hc11.c"
1549 tmake_file="m68hc11/t-m68hc11-gas"
1550 ;;
1551 m68hc12-*-*|m6812-*-*)
1552 tm_file="m68hc11/m68hc12.h elfos.h m68hc11/m68hc11.h"
1553 tm_p_file="m68hc11/m68hc11-protos.h"
1554 md_file="m68hc11/m68hc11.md"
1555 out_file="m68hc11/m68hc11.c"
1556 tmake_file="m68hc11/t-m68hc11-gas"
1557 ;;
1558 m68000-convergent-sysv*)
1559 tm_file=m68k/ctix.h
1560 xm_defines=POSIX
1561 use_collect2=yes
1562 extra_headers=math-68881.h
1563 ;;
1564 m68000-hp-bsd*) # HP 9000/200 running BSD
1565 tm_file=m68k/hp2bsd.h
1566 use_collect2=yes
1567 extra_headers=math-68881.h
1568 ;;
1569 m68000-hp-hpux*) # HP 9000 series 300
1570 xm_defines=POSIX
1571 if test x$gas = xyes
1572 then
1573 tm_file=m68k/hp310g.h
1574 else
1575 tm_file=m68k/hp310.h
1576 fi
1577 tmake_file=m68k/t-hp320
1578 install_headers_dir=install-headers-cpio
1579 use_collect2=yes
1580 extra_headers=math-68881.h
1581 ;;
1582 m68000-sun-sunos3*)
1583 tm_file=m68k/sun2.h
1584 use_collect2=yes
1585 extra_headers=math-68881.h
1586 ;;
1587 m68000-sun-sunos4*)
1588 tm_file=m68k/sun2o4.h
1589 use_collect2=yes
1590 extra_headers=math-68881.h
1591 ;;
1592 m68000-att-sysv*)
1593 xm_defines=POSIX
1594 if test x$gas = xyes
1595 then
1596 tm_file=m68k/3b1g.h
1597 else
1598 tm_file=m68k/3b1.h
1599 fi
1600 use_collect2=yes
1601 extra_headers=math-68881.h
1602 ;;
1603 m68k-apple-aux*) # Apple Macintosh running A/UX
1604 xm_defines=POSIX
1605 tmake_file=m68k/t-aux
1606 install_headers_dir=install-headers-cpio
1607 extra_headers=math-68881.h
1608 extra_parts="crt1.o mcrt1.o maccrt1.o crt2.o crtn.o"
1609 tm_file=
1610 if test "$gnu_ld" = yes
1611 then
1612 tm_file="${tm_file} m68k/auxgld.h"
1613 else
1614 tm_file="${tm_file} m68k/auxld.h"
1615 fi
1616 if test "$gas" = yes
1617 then
1618 tm_file="${tm_file} m68k/auxgas.h"
1619 else
1620 tm_file="${tm_file} m68k/auxas.h"
1621 fi
1622 tm_file="${tm_file} m68k/a-ux.h"
1623 float_format=m68k
1624 ;;
1625 m68k-apollo-*)
1626 tm_file=m68k/apollo68.h
1627 use_collect2=yes
1628 extra_headers=math-68881.h
1629 float_format=m68k
1630 ;;
1631 m68k-altos-sysv*) # Altos 3068
1632 if test x$gas = xyes
1633 then
1634 tm_file=m68k/altos3068.h
1635 xm_defines=POSIX
1636 else
1637 echo "The Altos is supported only with the GNU assembler" 1>&2
1638 exit 1
1639 fi
1640 extra_headers=math-68881.h
1641 ;;
1642 m68k-bull-sysv*) # Bull DPX/2
1643 if test x$gas = xyes
1644 then
1645 if test x$stabs = xyes
1646 then
1647 tm_file=m68k/dpx2cdbx.h
1648 else
1649 tm_file=m68k/dpx2g.h
1650 fi
1651 else
1652 tm_file=m68k/dpx2.h
1653 fi
1654 xm_defines=POSIX
1655 use_collect2=yes
1656 extra_headers=math-68881.h
1657 ;;
1658 m68k-atari-sysv4*) # Atari variant of V.4.
1659 tm_file=m68k/atari.h
1660 xm_defines=POSIX
1661 tmake_file=t-svr4
1662 extra_parts="crtbegin.o crtend.o"
1663 extra_headers=math-68881.h
1664 float_format=m68k
1665 ;;
1666 m68k-motorola-sysv*)
1667 tm_file=m68k/mot3300.h
1668 xm_defines=POSIX
1669 if test x$gas = xyes
1670 then
1671 if test x$gnu_ld = xyes
1672 then
1673 tmake_file=m68k/t-mot3300-gald
1674 else
1675 tmake_file=m68k/t-mot3300-gas
1676 use_collect2=yes
1677 fi
1678 else
1679 if test x$gnu_ld = xyes
1680 then
1681 tmake_file=m68k/t-mot3300-gld
1682 else
1683 tmake_file=m68k/t-mot3300
1684 use_collect2=yes
1685 fi
1686 fi
1687 gdb_needs_out_file_path=yes
1688 extra_parts="crt0.o mcrt0.o"
1689 extra_headers=math-68881.h
1690 float_format=m68k
1691 ;;
1692 m68k-ncr-sysv*) # NCR Tower 32 SVR3
1693 tm_file=m68k/tower-as.h
1694 xm_defines=POSIX
1695 extra_parts="crtbegin.o crtend.o"
1696 extra_headers=math-68881.h
1697 ;;
1698 m68k-plexus-sysv*)
1699 tm_file=m68k/plexus.h
1700 xm_defines=POSIX
1701 use_collect2=yes
1702 extra_headers=math-68881.h
1703 ;;
1704 m68k-tti-*)
1705 tm_file=m68k/pbb.h
1706 xm_defines=POSIX
1707 extra_headers=math-68881.h
1708 ;;
1709 m68k-crds-unos*)
1710 xm_defines=POSIX
1711 tm_file=m68k/crds.h
1712 use_collect2=yes
1713 extra_headers=math-68881.h
1714 ;;
1715 m68k-cbm-sysv4*) # Commodore variant of V.4.
1716 tm_file=m68k/amix.h
1717 xm_defines=POSIX
1718 tmake_file=t-svr4
1719 extra_parts="crtbegin.o crtend.o"
1720 extra_headers=math-68881.h
1721 float_format=m68k
1722 ;;
1723 m68k-ccur-rtu)
1724 tm_file=m68k/ccur-GAS.h
1725 extra_headers=math-68881.h
1726 use_collect2=yes
1727 float_format=m68k
1728 ;;
1729 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
1730 tm_file=m68k/hp3bsd44.h
1731 use_collect2=yes
1732 extra_headers=math-68881.h
1733 float_format=m68k
1734 ;;
1735 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
1736 tm_file=m68k/hp3bsd.h
1737 use_collect2=yes
1738 extra_headers=math-68881.h
1739 float_format=m68k
1740 ;;
1741 m68k-isi-bsd*)
1742 if test x$with_fp = xno
1743 then
1744 tm_file=m68k/isi-nfp.h
1745 else
1746 tm_file=m68k/isi.h
1747 float_format=m68k
1748 fi
1749 use_collect2=yes
1750 extra_headers=math-68881.h
1751 ;;
1752 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
1753 xm_defines=POSIX
1754 if test x$gas = xyes
1755 then
1756 xmake_file=m68k/x-hp320g
1757 tm_file=m68k/hp320g.h
1758 else
1759 xmake_file=m68k/x-hp320
1760 tm_file=m68k/hpux7.h
1761 fi
1762 install_headers_dir=install-headers-cpio
1763 use_collect2=yes
1764 extra_headers=math-68881.h
1765 float_format=m68k
1766 ;;
1767 m68k-hp-hpux*) # HP 9000 series 300
1768 xm_defines=POSIX
1769 if test x$gas = xyes
1770 then
1771 xmake_file=m68k/x-hp320g
1772 tm_file=m68k/hp320g.h
1773 else
1774 xmake_file=m68k/x-hp320
1775 tm_file=m68k/hp320.h
1776 fi
1777 install_headers_dir=install-headers-cpio
1778 use_collect2=yes
1779 extra_headers=math-68881.h
1780 float_format=m68k
1781 ;;
1782 m68k-sun-mach*)
1783 tm_file=m68k/sun3mach.h
1784 use_collect2=yes
1785 extra_headers=math-68881.h
1786 float_format=m68k
1787 ;;
1788 m68k-sony-newsos3*)
1789 if test x$gas = xyes
1790 then
1791 tm_file=m68k/news3gas.h
1792 else
1793 tm_file=m68k/news3.h
1794 fi
1795 use_collect2=yes
1796 extra_headers=math-68881.h
1797 float_format=m68k
1798 ;;
1799 m68k-sony-bsd* | m68k-sony-newsos*)
1800 if test x$gas = xyes
1801 then
1802 tm_file=m68k/newsgas.h
1803 else
1804 tm_file=m68k/news.h
1805 fi
1806 use_collect2=yes
1807 extra_headers=math-68881.h
1808 float_format=m68k
1809 ;;
1810 m68k-next-nextstep2*)
1811 tm_file=m68k/next21.h
1812 tmake_file=m68k/t-next
1813 xmake_file=m68k/x-next
1814 extra_objs=nextstep.o
1815 extra_headers=math-68881.h
1816 use_collect2=yes
1817 float_format=m68k
1818 ;;
1819 m68k-next-nextstep[34]*)
1820 tm_file=m68k/next.h
1821 tmake_file=m68k/t-next
1822 xmake_file=m68k/x-next
1823 extra_objs=nextstep.o
1824 extra_parts="crtbegin.o crtend.o"
1825 extra_headers=math-68881.h
1826 float_format=m68k
1827 if test x$enable_threads = xyes; then
1828 thread_file='mach'
1829 fi
1830 ;;
1831 m68k-sun-sunos3*)
1832 if test x$with_fp = xno
1833 then
1834 tm_file=m68k/sun3n3.h
1835 else
1836 tm_file=m68k/sun3o3.h
1837 float_format=m68k
1838 fi
1839 use_collect2=yes
1840 extra_headers=math-68881.h
1841 ;;
1842 m68k-sun-sunos*) # For SunOS 4 (the default).
1843 if test x$with_fp = xno
1844 then
1845 tm_file=m68k/sun3n.h
1846 else
1847 tm_file=m68k/sun3.h
1848 float_format=m68k
1849 fi
1850 use_collect2=yes
1851 extra_headers=math-68881.h
1852 ;;
1853 m68k-wrs-vxworks*)
1854 tm_file=m68k/vxm68k.h
1855 tmake_file=m68k/t-vxworks68
1856 extra_headers=math-68881.h
1857 thread_file='vxworks'
1858 float_format=m68k
1859 ;;
1860 m68k-*-aout*)
1861 tmake_file=m68k/t-m68kbare
1862 tm_file="m68k/m68k-aout.h libgloss.h"
1863 extra_headers=math-68881.h
1864 float_format=m68k
1865 ;;
1866 m68k-*-coff*)
1867 tmake_file=m68k/t-m68kbare
1868 tm_file="m68k/m68k-coff.h dbx.h"
1869 extra_headers=math-68881.h
1870 float_format=m68k
1871 ;;
1872 m68020-*-elf* | m68k-*-elf*)
1873 tm_file="m68k/m68020-elf.h"
1874 xm_defines=POSIX
1875 tmake_file=m68k/t-m68kelf
1876 header_files=math-68881.h
1877 extra_parts="crtbegin.o crtend.o"
1878 ;;
1879 m68k-*-lynxos*)
1880 if test x$gas = xyes
1881 then
1882 tm_file=m68k/lynx.h
1883 else
1884 tm_file=m68k/lynx-ng.h
1885 fi
1886 tmake_file=m68k/t-lynx
1887 extra_headers=math-68881.h
1888 float_format=m68k
1889 ;;
1890 m68k*-*-netbsd*)
1891 tm_file=m68k/netbsd.h
1892 tmake_file=t-netbsd
1893 float_format=m68k
1894 use_collect2=yes
1895 ;;
1896 m68k*-*-openbsd*)
1897 # needed to unconfuse gdb
1898 tmake_file="t-libc-ok t-openbsd m68k/t-openbsd"
1899 float_format=m68k
1900 # we need collect2 until our bug is fixed...
1901 use_collect2=yes
1902 ;;
1903 m68k-*-sysv3*) # Motorola m68k's running system V.3
1904 xm_defines=POSIX
1905 extra_parts="crtbegin.o crtend.o"
1906 extra_headers=math-68881.h
1907 float_format=m68k
1908 ;;
1909 m68k-*-sysv4*) # Motorola m68k's running system V.4
1910 tm_file=m68k/m68kv4.h
1911 xm_defines=POSIX
1912 tmake_file=t-svr4
1913 extra_parts="crtbegin.o crtend.o"
1914 extra_headers=math-68881.h
1915 float_format=m68k
1916 ;;
1917 m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
1918 # with a.out format
1919 tm_file=m68k/linux-aout.h
1920 tmake_file="t-linux-aout m68k/t-linux-aout"
1921 extra_headers=math-68881.h
1922 float_format=m68k
1923 gnu_ld=yes
1924 ;;
1925 m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
1926 # with ELF format using the
1927 # GNU/Linux C library 5
1928 tm_file=m68k/linux.h
1929 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 m68k/t-linux"
1930 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1931 extra_headers=math-68881.h
1932 float_format=m68k
1933 gnu_ld=yes
1934 ;;
1935 m68k-*-linux*) # Motorola m68k's running GNU/Linux
1936 # with ELF format using glibc 2
1937 # aka the GNU/Linux C library 6.
1938 tm_file=m68k/linux.h
1939 tmake_file="t-slibgcc-elf-ver t-linux m68k/t-linux"
1940 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1941 extra_headers=math-68881.h
1942 float_format=m68k
1943 gnu_ld=yes
1944 if test x$enable_threads = xyes; then
1945 thread_file='posix'
1946 fi
1947 ;;
1948 m68k-*-psos*)
1949 tmake_file=m68k/t-m68kbare
1950 tm_file=m68k/m68k-psos.h
1951 extra_headers=math-68881.h
1952 float_format=m68k
1953 ;;
1954 m68k-*-rtemscoff*)
1955 tmake_file="m68k/t-m68kbare t-rtems"
1956 tm_file=m68k/rtems.h
1957 extra_headers=math-68881.h
1958 float_format=m68k
1959 if test x$enable_threads = xyes; then
1960 thread_file='rtems'
1961 fi
1962 ;;
1963 m68k-*-rtemself*|m68k-*-rtems*)
1964 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
1965 tm_file=m68k/rtemself.h
1966 extra_headers=math-68881.h
1967 float_format=m68k
1968 extra_parts="crtbegin.o crtend.o"
1969 if test x$enable_threads = xyes; then
1970 thread_file='rtems'
1971 fi
1972 ;;
1973 m88k-dg-dgux*)
1974 xm_defines=POSIX
1975 case $machine in
1976 m88k-dg-dguxbcs*)
1977 tm_file="elfos.h svr4.h m88k/dgux.h m88k/dguxbcs.h"
1978 tmake_file="m88k/t-dgux m88k/t-dguxbcs"
1979 ;;
1980 *)
1981 tm_file="elfos.h svr4.h m88k/dgux.h"
1982 tmake_file=m88k/t-dgux
1983 ;;
1984 esac
1985 extra_parts="crtbegin.o bcscrtbegin.o crtend.o m88kdgux.ld"
1986 if test x$gas = xyes
1987 then
1988 tmake_file=m88k/t-dgux-gas
1989 fi
1990 ;;
1991 m88k-dolphin-sysv3*)
1992 xm_defines=POSIX
1993 tm_file=m88k/dolph.h
1994 extra_parts="crtbegin.o crtend.o"
1995 xmake_file=m88k/x-dolph
1996 if test x$gas = xyes
1997 then
1998 tmake_file=m88k/t-m88k-gas
1999 fi
2000 ;;
2001 m88k-tektronix-sysv3)
2002 xm_defines=POSIX
2003 tm_file=m88k/tekXD88.h
2004 extra_parts="crtbegin.o crtend.o"
2005 xmake_file=m88k/x-tekXD88
2006 if test x$gas = xyes
2007 then
2008 tmake_file=m88k/t-m88k-gas
2009 fi
2010 ;;
2011 m88k-*-aout*)
2012 xm_defines=POSIX
2013 tm_file=m88k/m88k-aout.h
2014 ;;
2015 m88k-*-coff*)
2016 xm_defines=POSIX
2017 tm_file=m88k/m88k-coff.h
2018 tmake_file=m88k/t-bug
2019 ;;
2020 m88k-*-luna*)
2021 tm_file=m88k/luna.h
2022 extra_parts="crtbegin.o crtend.o"
2023 if test x$gas = xyes
2024 then
2025 tmake_file=m88k/t-luna-gas
2026 else
2027 tmake_file=m88k/t-luna
2028 fi
2029 ;;
2030 m88k-*-openbsd*)
2031 tmake_file="${tmake_file} m88k/t-luna-gas"
2032 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
2033 ;;
2034 m88k-*-sysv3*)
2035 xm_defines=POSIX
2036 tm_file=m88k/sysv3.h
2037 extra_parts="crtbegin.o crtend.o"
2038 if test x$gas = xyes
2039 then
2040 tmake_file=m88k/t-m88k-gas
2041 fi
2042 ;;
2043 m88k-*-sysv4*)
2044 xm_defines=POSIX
2045 tm_file="elfos.h svr4.h m88k/sysv4.h"
2046 extra_parts="crtbegin.o crtend.o"
2047 tmake_file=m88k/t-sysv4
2048 ;;
2049 mcore-*-elf)
2050 tm_file="elfos.h svr4.h ${tm_file} mcore/mcore-elf.h"
2051 tmake_file=mcore/t-mcore
2052 ;;
2053 mcore-*-pe*)
2054 tm_file=mcore/mcore-pe.h
2055 tmake_file=mcore/t-mcore-pe
2056 ;;
2057 mips-sgi-irix6*) # SGI System V.4., IRIX 6
2058 if test "x$gnu_ld" = xyes
2059 then
2060 tm_file="mips/iris6.h mips/iris6gld.h"
2061 else
2062 tm_file=mips/iris6.h
2063 fi
2064 tmake_file="mips/t-iris mips/t-iris6"
2065 xm_defines=POSIX
2066 # if test x$enable_threads = xyes; then
2067 # thread_file='irix'
2068 # fi
2069 ;;
2070 mips-wrs-vxworks)
2071 tm_file="mips/elf.h mips/vxworks.h"
2072 tmake_file=mips/t-ecoff
2073 gas=yes
2074 gnu_ld=yes
2075 extra_parts="crtbegin.o crtend.o"
2076 thread_file='vxworks'
2077 ;;
2078 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
2079 tm_file="mips/iris6.h mips/cross64.h"
2080 xm_defines=POSIX
2081 xm_file=mips/xm-iris5.h
2082 tmake_file="mips/t-iris mips/t-cross64"
2083 # See comment in mips/iris[56].h files.
2084 use_collect2=yes
2085 # if test x$enable_threads = xyes; then
2086 # thread_file='irix'
2087 # fi
2088 ;;
2089 mips-sni-sysv4)
2090 if test x$gas = xyes
2091 then
2092 if test x$stabs = xyes
2093 then
2094 tm_file=mips/iris5gdb.h
2095 else
2096 tm_file="mips/sni-svr4.h mips/sni-gas.h"
2097 fi
2098 else
2099 tm_file=mips/sni-svr4.h
2100 fi
2101 xm_defines=POSIX
2102 if test x$gnu_ld != xyes
2103 then
2104 use_collect2=yes
2105 fi
2106 ;;
2107 mips-sgi-irix5*) # SGI System V.4., IRIX 5
2108 if test x$gas = xyes
2109 then
2110 tm_file="mips/iris5.h mips/iris5gas.h"
2111 if test x$stabs = xyes
2112 then
2113 tm_file="${tm_file} dbx.h"
2114 fi
2115 else
2116 tm_file=mips/iris5.h
2117 fi
2118 tmake_file=mips/t-iris
2119 xm_defines=POSIX
2120 xm_file=mips/xm-iris5.h
2121 # mips-tfile doesn't work yet
2122 # See comment in mips/iris5.h file.
2123 use_collect2=yes
2124 # if test x$enable_threads = xyes; then
2125 # thread_file='irix'
2126 # fi
2127 ;;
2128 mips-sgi-irix4loser*) # Mostly like a MIPS.
2129 tm_file="mips/iris4loser.h mips/iris3.h ${tm_file} mips/iris4.h"
2130 if test x$stabs = xyes; then
2131 tm_file="${tm_file} dbx.h"
2132 fi
2133 tmake_file=mips/t-iris
2134 xm_defines=POSIX
2135 if test x$gas = xyes
2136 then :
2137 else
2138 extra_passes="mips-tfile mips-tdump"
2139 fi
2140 if test x$gnu_ld != xyes
2141 then
2142 use_collect2=yes
2143 fi
2144 # if test x$enable_threads = xyes; then
2145 # thread_file='irix'
2146 # fi
2147 ;;
2148 mips-sgi-irix4*) # Mostly like a MIPS.
2149 tm_file="mips/iris3.h ${tm_file} mips/iris4.h"
2150 if test x$stabs = xyes; then
2151 tm_file="${tm_file} dbx.h"
2152 fi
2153 tmake_file=mips/t-iris
2154 xm_defines=POSIX
2155 if test x$gas = xyes
2156 then :
2157 else
2158 extra_passes="mips-tfile mips-tdump"
2159 fi
2160 if test x$gnu_ld != xyes
2161 then
2162 use_collect2=yes
2163 fi
2164 # if test x$enable_threads = xyes; then
2165 # thread_file='irix'
2166 # fi
2167 ;;
2168 mips-sgi-*) # Mostly like a MIPS.
2169 tm_file="mips/iris3.h ${tm_file}"
2170 if test x$stabs = xyes; then
2171 tm_file="${tm_file} dbx.h"
2172 fi
2173 xm_defines=POSIX
2174 if test x$gas = xyes
2175 then :
2176 else
2177 extra_passes="mips-tfile mips-tdump"
2178 fi
2179 if test x$gnu_ld != xyes
2180 then
2181 use_collect2=yes
2182 fi
2183 ;;
2184 mips-dec-osfrose*) # Decstation running OSF/1 reference port with OSF/rose.
2185 tm_file="mips/osfrose.h ${tm_file}"
2186 extra_objs=halfpic.o
2187 use_collect2=yes
2188 ;;
2189 mips-dec-osf*) # Decstation running OSF/1 as shipped by DIGITAL
2190 tm_file=mips/dec-osf1.h
2191 if test x$stabs = xyes; then
2192 tm_file="${tm_file} dbx.h"
2193 fi
2194 if test x$gas = xyes
2195 then :
2196 else
2197 tmake_file=mips/t-ultrix
2198 extra_passes="mips-tfile mips-tdump"
2199 fi
2200 if test x$gnu_ld != xyes
2201 then
2202 use_collect2=yes
2203 fi
2204 ;;
2205 mips-dec-bsd*) # Decstation running 4.4 BSD
2206 tm_file=mips/dec-bsd.h
2207 if test x$gas = xyes
2208 then :
2209 else
2210 tmake_file=mips/t-ultrix
2211 extra_passes="mips-tfile mips-tdump"
2212 fi
2213 if test x$gnu_ld != xyes
2214 then
2215 use_collect2=yes
2216 fi
2217 ;;
2218 mipsel-*-netbsd* | mips-dec-netbsd*) # Decstation running NetBSD
2219 tm_file=mips/netbsd.h
2220 # On NetBSD, the headers are already okay, except for math.h.
2221 tmake_file=t-netbsd
2222 ;;
2223 mips*-*-linux*) # Linux MIPS, either endian.
2224 tm_file="elfos.h svr4.h linux.h mips/linux.h"
2225 case $machine in
2226 mipsisa32*-*)
2227 tm_file="$tm_file mips/isa32-linux.h"
2228 target_cpu_default="MASK_SOFT_FLOAT"
2229 ;;
2230 esac
2231 case $machine in
2232 mips*el-*)
2233 tm_file="mips/little.h $tm_file"
2234 ;;
2235 esac
2236 tmake_file="t-slibgcc-elf-ver t-linux"
2237 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2238 gnu_ld=yes
2239 gas=yes
2240 if test x$enable_threads = xyes; then
2241 thread_file='posix'
2242 fi
2243 ;;
2244 mips*el-*-openbsd*) # mips little endian
2245 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2246 ;;
2247 mips*-*-openbsd*) # mips big endian
2248 target_cpu_default="MASK_GAS|MASK_ABICALLS"
2249 tm_file="mips/openbsd-be.h ${tm_file}"
2250 ;;
2251 mips-sony-bsd* | mips-sony-newsos*) # Sony NEWS 3600 or risc/news.
2252 tm_file="mips/news4.h ${tm_file}"
2253 if test x$stabs = xyes; then
2254 tm_file="${tm_file} dbx.h"
2255 fi
2256 if test x$gas = xyes
2257 then :
2258 else
2259 extra_passes="mips-tfile mips-tdump"
2260 fi
2261 if test x$gnu_ld != xyes
2262 then
2263 use_collect2=yes
2264 fi
2265 ;;
2266 mips-sony-sysv*) # Sony NEWS 3800 with NEWSOS5.0.
2267 # That is based on svr4.
2268 # t-svr4 is not right because this system doesn't use ELF.
2269 tm_file="mips/news5.h ${tm_file}"
2270 if test x$stabs = xyes; then
2271 tm_file="${tm_file} dbx.h"
2272 fi
2273 xm_defines=POSIX
2274 if test x$gas = xyes
2275 then :
2276 else
2277 extra_passes="mips-tfile mips-tdump"
2278 fi
2279 if test x$gnu_ld != xyes
2280 then
2281 use_collect2=yes
2282 fi
2283 ;;
2284 mips-tandem-sysv4*) # Tandem S2 running NonStop UX
2285 tm_file="mips/svr4-5.h mips/svr4-t.h"
2286 if test x$stabs = xyes; then
2287 tm_file="${tm_file} dbx.h"
2288 fi
2289 xm_defines=POSIX
2290 if test x$gas = xyes
2291 then
2292 extra_parts="crtbegin.o crtend.o"
2293 else
2294 extra_passes="mips-tfile mips-tdump"
2295 fi
2296 if test x$gnu_ld != xyes
2297 then
2298 use_collect2=yes
2299 fi
2300 ;;
2301 mips-*-ultrix* | mips-dec-mach3) # Decstation.
2302 tm_file="mips/ultrix.h ${tm_file}"
2303 if test x$stabs = xyes; then
2304 tm_file="${tm_file} dbx.h"
2305 fi
2306 if test x$gas = xyes
2307 then :
2308 else
2309 tmake_file=mips/t-ultrix
2310 extra_passes="mips-tfile mips-tdump"
2311 fi
2312 if test x$gnu_ld != xyes
2313 then
2314 use_collect2=yes
2315 fi
2316 ;;
2317 mips-*-riscos[56789]bsd*)
2318 tm_file=mips/bsd-5.h # MIPS BSD 4.3, RISC-OS 5.0
2319 if test x$stabs = xyes; then
2320 tm_file="${tm_file} dbx.h"
2321 fi
2322 if test x$gas = xyes
2323 then
2324 tmake_file=mips/t-bsd-gas
2325 else
2326 tmake_file=mips/t-bsd
2327 extra_passes="mips-tfile mips-tdump"
2328 fi
2329 if test x$gnu_ld != xyes
2330 then
2331 use_collect2=yes
2332 fi
2333 ;;
2334 mips-*-bsd* | mips-*-riscosbsd* | mips-*-riscos[1234]bsd*)
2335 tm_file="mips/bsd-4.h ${tm_file}" # MIPS BSD 4.3, RISC-OS 4.0
2336 if test x$stabs = xyes; then
2337 tm_file="${tm_file} dbx.h"
2338 fi
2339 if test x$gas = xyes
2340 then
2341 tmake_file=mips/t-bsd-gas
2342 else
2343 tmake_file=mips/t-bsd
2344 extra_passes="mips-tfile mips-tdump"
2345 fi
2346 if test x$gnu_ld != xyes
2347 then
2348 use_collect2=yes
2349 fi
2350 ;;
2351 mips-*-riscos[56789]sysv4*)
2352 tm_file=mips/svr4-5.h # MIPS System V.4., RISC-OS 5.0
2353 if test x$stabs = xyes; then
2354 tm_file="${tm_file} dbx.h"
2355 fi
2356 if test x$gas = xyes
2357 then
2358 tmake_file=mips/t-svr4-gas
2359 else
2360 tmake_file=mips/t-svr4
2361 extra_passes="mips-tfile mips-tdump"
2362 fi
2363 if test x$gnu_ld != xyes
2364 then
2365 use_collect2=yes
2366 fi
2367 ;;
2368 mips-*-sysv4* | mips-*-riscos[1234]sysv4* | mips-*-riscossysv4*)
2369 tm_file="mips/svr4-4.h ${tm_file}"
2370 if test x$stabs = xyes; then
2371 tm_file="${tm_file} dbx.h"
2372 fi
2373 xm_defines=POSIX
2374 if test x$gas = xyes
2375 then
2376 tmake_file=mips/t-svr4-gas
2377 else
2378 tmake_file=mips/t-svr4
2379 extra_passes="mips-tfile mips-tdump"
2380 fi
2381 if test x$gnu_ld != xyes
2382 then
2383 use_collect2=yes
2384 fi
2385 ;;
2386 mips-*-riscos[56789]sysv*)
2387 tm_file=mips/svr3-5.h # MIPS System V.3, RISC-OS 5.0
2388 if test x$stabs = xyes; then
2389 tm_file="${tm_file} dbx.h"
2390 fi
2391 xm_defines=POSIX
2392 if test x$gas = xyes
2393 then
2394 tmake_file=mips/t-svr3-gas
2395 else
2396 tmake_file=mips/t-svr3
2397 extra_passes="mips-tfile mips-tdump"
2398 fi
2399 if test x$gnu_ld != xyes
2400 then
2401 use_collect2=yes
2402 fi
2403 ;;
2404 mips-*-sysv* | mips-*-riscos*sysv*)
2405 tm_file="mips/svr3-4.h ${tm_file}"
2406 if test x$stabs = xyes; then
2407 tm_file="${tm_file} dbx.h"
2408 fi
2409 xm_defines=POSIX
2410 if test x$gas = xyes
2411 then
2412 tmake_file=mips/t-svr3-gas
2413 else
2414 tmake_file=mips/t-svr3
2415 extra_passes="mips-tfile mips-tdump"
2416 fi
2417 if test x$gnu_ld != xyes
2418 then
2419 use_collect2=yes
2420 fi
2421 ;;
2422 mips-*-riscos[56789]*) # Default MIPS RISC-OS 5.0.
2423 tm_file=mips/mips-5.h
2424 if test x$stabs = xyes; then
2425 tm_file="${tm_file} dbx.h"
2426 fi
2427 if test x$gas = xyes
2428 then :
2429 else
2430 extra_passes="mips-tfile mips-tdump"
2431 fi
2432 if test x$gnu_ld != xyes
2433 then
2434 use_collect2=yes
2435 fi
2436 ;;
2437 mipsel-*-ecoff*)
2438 tm_file=mips/ecoffl.h
2439 if test x$stabs = xyes; then
2440 tm_file="${tm_file} dbx.h"
2441 fi
2442 tmake_file=mips/t-ecoff
2443 ;;
2444 mips-*-ecoff*)
2445 tm_file="gofast.h mips/ecoff.h"
2446 if test x$stabs = xyes; then
2447 tm_file="${tm_file} dbx.h"
2448 fi
2449 tmake_file=mips/t-ecoff
2450 ;;
2451 mipsisa32-*-elf*)
2452 tm_file="mips/isa3264.h mips/abi64.h"
2453 tmake_file=mips/t-isa3264
2454 target_cpu_default="MASK_SOFT_FLOAT"
2455 ;;
2456 mipsel-*-elf*)
2457 tm_file="mips/elfl.h"
2458 tmake_file=mips/t-elf
2459 ;;
2460 mips-*-elf*)
2461 tm_file="mips/elf.h"
2462 tmake_file=mips/t-elf
2463 ;;
2464 mips64el-*-elf*)
2465 tm_file="mips/elfl64.h"
2466 tmake_file=mips/t-elf
2467 ;;
2468 mips64orionel-*-elf*)
2469 tm_file="mips/elforion.h mips/elfl64.h"
2470 tmake_file=mips/t-elf
2471 ;;
2472 mips64-*-elf*)
2473 tm_file="mips/elf64.h"
2474 tmake_file=mips/t-elf
2475 ;;
2476 mips64orion-*-elf*)
2477 tm_file="mips/elforion.h mips/elf64.h"
2478 tmake_file=mips/t-elf
2479 ;;
2480 mips64orion-*-rtems*)
2481 tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
2482 tmake_file="mips/t-elf t-rtems"
2483 if test x$enable_threads = xyes; then
2484 thread_file='rtems'
2485 fi
2486 ;;
2487 mips*-*-rtems*)
2488 tm_file="mips/elf.h mips/rtems.h"
2489 tmake_file="mips/t-elf t-rtems"
2490 if test x$enable_threads = xyes; then
2491 thread_file='rtems'
2492 fi
2493 ;;
2494 mipstx39el-*-elf*)
2495 tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
2496 tmake_file=mips/t-r3900
2497 target_cpu_default="MASK_SOFT_FLOAT"
2498 ;;
2499 mipstx39-*-elf*)
2500 tm_file="mips/r3900.h mips/elf.h mips/abi64.h"
2501 tmake_file=mips/t-r3900
2502 ;;
2503 mips-*-*) # Default MIPS RISC-OS 4.0.
2504 if test x$stabs = xyes; then
2505 tm_file="${tm_file} dbx.h"
2506 fi
2507 if test x$gas = xyes
2508 then :
2509 else
2510 extra_passes="mips-tfile mips-tdump"
2511 fi
2512 if test x$gnu_ld != xyes
2513 then
2514 use_collect2=yes
2515 fi
2516 ;;
2517 mmix-knuth-mmixware)
2518 ;;
2519 mn10200-*-*)
2520 float_format=i32
2521 tm_file="elfos.h svr4.h ${tm_file}"
2522 if test x$stabs = xyes
2523 then
2524 tm_file="${tm_file} dbx.h"
2525 fi
2526 use_collect2=no
2527 ;;
2528 mn10300-*-*)
2529 tm_file="elfos.h svr4.h ${tm_file}"
2530 if test x$stabs = xyes
2531 then
2532 tm_file="${tm_file} dbx.h"
2533 fi
2534 use_collect2=no
2535 ;;
2536 ns32k-encore-bsd*)
2537 tm_file=ns32k/encore.h
2538 use_collect2=yes
2539 ;;
2540 ns32k-sequent-bsd*)
2541 tm_file=ns32k/sequent.h
2542 use_collect2=yes
2543 ;;
2544 ns32k-tek6100-bsd*)
2545 tm_file=ns32k/tek6100.h
2546 use_collect2=yes
2547 ;;
2548 ns32k-tek6200-bsd*)
2549 tm_file=ns32k/tek6200.h
2550 use_collect2=yes
2551 ;;
2552 ns32k-merlin-*)
2553 tm_file=ns32k/merlin.h
2554 use_collect2=yes
2555 ;;
2556 ns32k-pc532-mach*)
2557 tm_file=ns32k/pc532-mach.h
2558 use_collect2=yes
2559 ;;
2560 ns32k-pc532-minix*)
2561 tm_file=ns32k/pc532-min.h
2562 xm_defines='POSIX HZ=60'
2563 use_collect2=yes
2564 ;;
2565 ns32k-*-netbsd*)
2566 tm_file=ns32k/netbsd.h
2567 # On NetBSD, the headers are already okay, except for math.h.
2568 tmake_file=t-netbsd
2569 use_collect2=yes
2570 ;;
2571 pdp11-*-bsd)
2572 tm_file="${tm_file} pdp11/2bsd.h"
2573 ;;
2574 pdp11-*-*)
2575 ;;
2576 avr-*-*)
2577 ;;
2578 ns32k-*-openbsd*)
2579 # Nothing special
2580 ;;
2581 pj*-linux*)
2582 tm_file="elfos.h svr4.h pj/linux.h ${tm_file}"
2583 ;;
2584 pj-*)
2585 ;;
2586 pjl-*)
2587 tm_file="elfos.h svr4.h pj/pjl.h ${tm_file}"
2588 ;;
2589
2590 romp-*-aos*)
2591 use_collect2=yes
2592 ;;
2593 romp-*-mach*)
2594 use_collect2=yes
2595 ;;
2596 romp-*-openbsd*)
2597 # Nothing special
2598 ;;
2599 powerpc-*-openbsd*)
2600 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
2601 ;;
2602 powerpc64-*-linux*)
2603 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux64.h"
2604 out_file=rs6000/rs6000.c
2605 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
2606 extra_headers=ppc-asm.h
2607 ;;
2608 powerpc-*-beos*)
2609 tm_file="${tm_file} rs6000/aix.h rs6000/beos.h rs6000/xcoff.h"
2610 xm_defines=POSIX
2611 xm_file=rs6000/xm-beos.h
2612 tmake_file=rs6000/t-beos
2613 ;;
2614 powerpc-*-darwin*)
2615 tm_file="${tm_file} darwin.h rs6000/darwin.h"
2616 tm_p_file="${tm_p_file} darwin-protos.h"
2617 tmake_file=rs6000/t-darwin
2618 xmake_file=rs6000/x-darwin
2619 # Override the usual setting, since Apple's GCC has lame bugs
2620 # and can't handle the initializers. Someday the bugs will be
2621 # fixed and we can get rid of this silliness.
2622 xm_defines="HAVE_DESIGNATED_INITIALIZERS=0"
2623 extra_objs="darwin.o"
2624 c_target_objs="darwin-c.o"
2625 cxx_target_objs="darwin-c.o"
2626 # Darwin linker does collect2 functionality
2627 use_collect2=no
2628 ;;
2629 powerpc*-*-freebsd*)
2630 tm_file="${tm_file} elfos.h ${fbsd_tm_file} rs6000/sysv4.h rs6000/freebsd.h"
2631 xm_file=rs6000/xm-sysv4.h
2632 out_file=rs6000/rs6000.c
2633 tmake_file="rs6000/t-ppcos t-freebsd rs6000/t-ppccomm"
2634 extra_headers=ppc-asm.h
2635 ;;
2636 powerpc-*-sysv*)
2637 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
2638 xm_defines=POSIX
2639 extra_headers=ppc-asm.h
2640 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2641 ;;
2642 powerpc-*-netbsd*)
2643 xm_defines=POSIX
2644 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h"
2645 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2646 extra_headers=ppc-asm.h
2647 ;;
2648 powerpc-*-chorusos*)
2649 xm_defines=POSIX
2650 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h chorus.h"
2651 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2652 extra_headers=ppc-asm.h
2653 case x${enable_threads} in
2654 xyes | xpthreads | xposix)
2655 thread_file='posix'
2656 ;;
2657 esac
2658 ;;
2659 powerpc-*-eabiaix*)
2660 xm_defines=POSIX
2661 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
2662 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2663 extra_headers=ppc-asm.h
2664 ;;
2665 powerpc-*-eabisim*)
2666 xm_defines=POSIX
2667 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
2668 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2669 extra_headers=ppc-asm.h
2670 ;;
2671 powerpc-*-elf*)
2672 xm_defines=POSIX
2673 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
2674 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2675 extra_headers=ppc-asm.h
2676 ;;
2677 powerpc-*-eabi*)
2678 xm_defines=POSIX
2679 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h"
2680 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2681 extra_headers=ppc-asm.h
2682 ;;
2683 powerpc-*-rtems*)
2684 xm_defines=POSIX
2685 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rtems.h rs6000/rtems.h"
2686 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
2687 extra_headers=ppc-asm.h
2688 if test x$enable_threads = xyes; then
2689 thread_file='rtems'
2690 fi
2691 ;;
2692 powerpc-*-linux*libc1)
2693 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
2694 out_file=rs6000/rs6000.c
2695 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
2696 extra_headers=ppc-asm.h
2697 if test x$enable_threads = xyes; then
2698 thread_file='posix'
2699 fi
2700 ;;
2701 powerpc-*-linux*)
2702 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
2703 out_file=rs6000/rs6000.c
2704 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
2705 extra_headers=ppc-asm.h
2706 if test x$enable_threads = xyes; then
2707 thread_file='posix'
2708 fi
2709 ;;
2710 powerpc-wrs-vxworks*)
2711 xm_defines=POSIX
2712 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/vxppc.h"
2713 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2714 extra_headers=ppc-asm.h
2715 thread_file='vxworks'
2716 ;;
2717 powerpcle-wrs-vxworks*)
2718 xm_defines=POSIX
2719 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
2720 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2721 extra_headers=ppc-asm.h
2722 thread_file='vxworks'
2723 ;;
2724 powerpcle-*-sysv*)
2725 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
2726 xm_defines=POSIX
2727 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2728 extra_headers=ppc-asm.h
2729 ;;
2730 powerpcle-*-elf*)
2731 xm_defines=POSIX
2732 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
2733 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2734 extra_headers=ppc-asm.h
2735 ;;
2736 powerpcle-*-eabisim*)
2737 xm_defines=POSIX
2738 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
2739 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2740 extra_headers=ppc-asm.h
2741 ;;
2742 powerpcle-*-eabi*)
2743 xm_defines=POSIX
2744 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
2745 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2746 extra_headers=ppc-asm.h
2747 ;;
2748 powerpcle-*-solaris2*)
2749 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
2750 xm_defines=POSIX
2751 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2752 extra_headers=ppc-asm.h
2753 ;;
2754 rs6000-ibm-aix3.[01]*)
2755 xm_defines=POSIX
2756 tm_file="${tm_file} rs6000/aix.h rs6000/aix31.h rs6000/xcoff.h"
2757 float_format=none
2758 use_collect2=yes
2759 ;;
2760 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
2761 xm_defines=POSIX
2762 tm_file="${tm_file} rs6000/aix.h rs6000/aix3newas.h rs6000/xcoff.h"
2763 tmake_file=rs6000/t-newas
2764 float_format=none
2765 use_collect2=yes
2766 ;;
2767 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
2768 xm_defines=POSIX
2769 tm_file="${tm_file} rs6000/aix.h rs6000/aix41.h rs6000/xcoff.h"
2770 tmake_file=rs6000/t-newas
2771 float_format=none
2772 use_collect2=yes
2773 ;;
2774 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
2775 xm_defines=POSIX
2776 tm_file="${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h"
2777 tmake_file=rs6000/t-aix43
2778 float_format=none
2779 use_collect2=yes
2780 thread_file='aix'
2781 ;;
2782 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
2783 xm_defines=POSIX
2784 tm_file="${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h"
2785 tmake_file=rs6000/t-aix43
2786 float_format=none
2787 use_collect2=yes
2788 thread_file='aix'
2789 ;;
2790 rs6000-ibm-aix*)
2791 xm_defines=POSIX
2792 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
2793 float_format=none
2794 use_collect2=yes
2795 ;;
2796 rs6000-bull-bosx)
2797 xm_defines=POSIX
2798 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
2799 float_format=none
2800 use_collect2=yes
2801 ;;
2802 rs6000-*-mach*)
2803 tm_file="${tm_file} rs6000/mach.h"
2804 xm_defines=POSIX
2805 use_collect2=yes
2806 ;;
2807 rs6000-*-lynxos*)
2808 tm_file="lynx.h rs6000/lynx.h"
2809 tmake_file=rs6000/t-rs6000
2810 use_collect2=yes
2811 ;;
2812 s390-*-linux*)
2813 tm_file="s390/s390.h elfos.h svr4.h linux.h s390/linux.h"
2814 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux"
2815 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
2816 if test x$enable_threads = xyes; then
2817 thread_file='posix'
2818 fi
2819 ;;
2820 s390x-*-linux*)
2821 tm_file="s390/s390.h elfos.h svr4.h linux.h s390/linux.h s390/linux64.h"
2822 tm_p_file=s390/s390-protos.h
2823 md_file=s390/s390.md
2824 out_file=s390/s390.c
2825 tmake_file="t-slibgcc-elf-ver t-linux s390/t-linux"
2826 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
2827 if test x$enable_threads = xyes; then
2828 thread_file='posix'
2829 fi
2830 ;;
2831 sh-*-elf*)
2832 tmake_file="sh/t-sh sh/t-elf"
2833 tm_file="${tm_file} sh/elf.h"
2834 float_format=sh
2835 ;;
2836 sh-*-rtemself*)
2837 tmake_file="sh/t-sh sh/t-elf t-rtems"
2838 tm_file="${tm_file} sh/elf.h sh/rtemself.h"
2839 float_format=sh
2840 if test x$enable_threads = xyes; then
2841 thread_file='rtems'
2842 fi
2843 ;;
2844 sh-*-rtems*)
2845 tmake_file="sh/t-sh t-rtems"
2846 tm_file="${tm_file} sh/rtems.h"
2847 float_format=sh
2848 if test x$enable_threads = xyes; then
2849 thread_file='rtems'
2850 fi
2851 ;;
2852 sh-*-linux*)
2853 tm_file="${tm_file} sh/elf.h sh/linux.h"
2854 tmake_file="sh/t-sh sh/t-elf sh/t-linux"
2855 gas=yes gnu_ld=yes
2856 if test x$enable_threads = xyes; then
2857 thread_file='posix'
2858 fi
2859 float_format=sh
2860 ;;
2861 sh-*-*)
2862 float_format=sh
2863 ;;
2864 sparc-tti-*)
2865 tm_file="${tm_file} sparc/pbd.h"
2866 xm_defines=POSIX
2867 ;;
2868 sparc64-wrs-vxworks*)
2869 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h sparc/sparc_bi.h gofast.h sparc/vxsparc64.h"
2870 tmake_file=sparc/t-vxsparc64
2871 use_collect2=yes
2872 ;;
2873 sparc-wrs-vxworks* | sparclite-wrs-vxworks*)
2874 tm_file="${tm_file} aoutos.h sparc/aout.h gofast.h sparc/vxsparc.h"
2875 tmake_file=sparc/t-vxsparc
2876 use_collect2=yes
2877 thread_file='vxworks'
2878 ;;
2879 sparc-*-aout*)
2880 tmake_file=sparc/t-sparcbare
2881 tm_file="sparc/sparc.h aoutos.h sparc/aout.h libgloss.h"
2882 ;;
2883 sparc-*-netbsd*)
2884 tm_file="${tm_file} sparc/aout.h netbsd.h sparc/netbsd.h"
2885 tmake_file=t-netbsd
2886 use_collect2=yes
2887 ;;
2888 sparc-*-openbsd*)
2889 tm_file="sparc/sparc.h ${tm_file}"
2890 # needed to unconfuse gdb
2891 tmake_file="t-libc-ok t-openbsd sparc/t-openbsd"
2892 # we need collect2 until our bug is fixed...
2893 use_collect2=yes
2894 ;;
2895 sparc-*-bsd*)
2896 tm_file="${tm_file} sparc/bsd.h"
2897 ;;
2898 sparc-*-chorusos*)
2899 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h chorus.h"
2900 tmake_file=sparc/t-chorus-elf
2901 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2902 float_format=i64
2903 case x${enable_threads} in
2904 xyes | xpthreads | xposix)
2905 thread_file='posix'
2906 ;;
2907 esac
2908 ;;
2909 sparc-*-elf*)
2910 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h"
2911 tmake_file=sparc/t-elf
2912 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2913 #float_format=i128
2914 float_format=i64
2915 ;;
2916 sparc-*-linux*aout*) # Sparc's running GNU/Linux, a.out
2917 tm_file="aoutos.h sparc/sparc.h sparc/aout.h sparc/linux-aout.h"
2918 gnu_ld=yes
2919 ;;
2920 sparc-*-linux*libc1*) # Sparc's running GNU/Linux, libc5
2921 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
2922 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1"
2923 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2924 gnu_ld=yes
2925 float_format=sparc
2926 ;;
2927 sparc-*-linux*) # Sparc's running GNU/Linux, libc6
2928 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
2929 tmake_file="t-slibgcc-elf-ver t-linux"
2930 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2931 gnu_ld=yes
2932 if test x$enable_threads = xyes; then
2933 thread_file='posix'
2934 fi
2935 float_format=sparc
2936 ;;
2937 sparc-*-lynxos*)
2938 if test x$gas = xyes
2939 then
2940 tm_file="${tm_file} lynx.h sparc/aout.h sparc/lynx.h"
2941 else
2942 tm_file="${tm_file} lynx-ng.h sparc/aout.h sparc/lynx-ng.h"
2943 fi
2944 tmake_file=sparc/t-sunos41
2945 ;;
2946 sparc-*-rtemsaout*)
2947 tmake_file="sparc/t-sparcbare t-rtems"
2948 tm_file="${tm_file} aoutos.h sparc/aout.h sparc/rtems.h rtems.h"
2949 if test x$enable_threads = xyes; then
2950 thread_file='rtems'
2951 fi
2952 ;;
2953 sparc-*-rtems*|sparc-*-rtemself*)
2954 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h sparc/rtemself.h rtems.h"
2955 tmake_file="sparc/t-elf t-rtems"
2956 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2957 #float_format=i128
2958 float_format=i64
2959 if test x$enable_threads = xyes; then
2960 thread_file='rtems'
2961 fi
2962 ;;
2963 sparcv9-*-solaris2* | sparc64-*-solaris2*)
2964 if test x$gnu_ld = xyes
2965 then
2966 tm_file="sparc/sol2-sld-64.h sparc/sol2-64.h"
2967 else
2968 tm_file=sparc/sol2-sld-64.h
2969 fi
2970 xm_defines=POSIX
2971 tmake_file="sparc/t-sol2 sparc/t-sol2-64"
2972 if test x$gnu_ld = xyes; then
2973 tmake_file="$tmake_file t-slibgcc-elf-ver"
2974 else
2975 tmake_file="$tmake_file t-slibgcc-sld"
2976 fi
2977 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
2978 float_format=none
2979 if test x${enable_threads} = x ; then
2980 enable_threads=$have_pthread_h
2981 if test x${enable_threads} = x ; then
2982 enable_threads=$have_thread_h
2983 fi
2984 fi
2985 if test x${enable_threads} = xyes ; then
2986 if test x${have_pthread_h} = xyes ; then
2987 thread_file='posix'
2988 else
2989 thread_file='solaris'
2990 fi
2991 fi
2992 ;;
2993 sparc-hal-solaris2*)
2994 xm_defines=POSIX
2995 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/hal.h"
2996 tmake_file="sparc/t-halos sparc/t-sol2"
2997 if test x$gnu_ld = xyes; then
2998 tmake_file="$tmake_file t-slibgcc-elf-ver"
2999 else
3000 tmake_file="$tmake_file t-slibgcc-sld"
3001 fi
3002 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
3003 case $machine in
3004 *-*-solaris2.[0-4])
3005 float_format=i128
3006 ;;
3007 *)
3008 float_format=none
3009 ;;
3010 esac
3011 thread_file='solaris'
3012 ;;
3013 sparc-*-solaris2*)
3014 if test x$gnu_ld = xyes
3015 then
3016 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h"
3017 else
3018 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sol2-sld.h"
3019 fi
3020 xm_defines=POSIX
3021 tmake_file=sparc/t-sol2
3022 if test x$gnu_ld = xyes; then
3023 tmake_file="$tmake_file t-slibgcc-elf-ver"
3024 else
3025 tmake_file="$tmake_file t-slibgcc-sld"
3026 fi
3027 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
3028 case $machine in
3029 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
3030 *-*-solaris2*)
3031 if test x$gnu_ld = xyes
3032 then
3033 tm_file="sparc/sol2-sld-64.h sparc/sol2-64.h"
3034 else
3035 tm_file="sparc/sol2-sld-64.h"
3036 fi
3037 tmake_file="$tmake_file sparc/t-sol2-64"
3038 ;;
3039 esac
3040 case $machine in
3041 *-*-solaris2.[0-4])
3042 float_format=i128
3043 ;;
3044 *)
3045 float_format=none
3046 ;;
3047 esac
3048 if test x${enable_threads} = x; then
3049 enable_threads=$have_pthread_h
3050 if test x${enable_threads} = x; then
3051 enable_threads=$have_thread_h
3052 fi
3053 fi
3054 if test x${enable_threads} = xyes; then
3055 if test x${have_pthread_h} = xyes; then
3056 thread_file='posix'
3057 else
3058 thread_file='solaris'
3059 fi
3060 fi
3061 ;;
3062 sparc-*-sunos4.0*)
3063 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
3064 use_collect2=yes
3065 ;;
3066 sparc-*-sunos4*)
3067 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
3068 tmake_file=sparc/t-sunos41
3069 use_collect2=yes
3070 if test x$gas = xyes; then
3071 tm_file="${tm_file} sparc/sun4gas.h"
3072 fi
3073 ;;
3074 sparc-*-sunos3*)
3075 tm_file="${tm_file} sparc/aout.h sparc/sun4o3.h"
3076 use_collect2=yes
3077 ;;
3078 sparc-*-sysv4*)
3079 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h"
3080 xm_defines=POSIX
3081 tmake_file=t-svr4
3082 extra_parts="crtbegin.o crtend.o"
3083 ;;
3084 sparc-*-vxsim*)
3085 xm_defines=POSIX
3086 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/vxsim.h"
3087 tmake_file=sparc/t-vxsparc
3088 ;;
3089 sparclet-*-aout*)
3090 tm_file="${tm_file} aoutos.h sparc/aout.h sparc/splet.h libgloss.h"
3091 tmake_file=sparc/t-splet
3092 ;;
3093 sparclite-*-coff*)
3094 tm_file="${tm_file} gofast.h sparc/lite.h svr3.h sparc/litecoff.h dbxcoff.h libgloss.h"
3095 tmake_file=sparc/t-sparclite
3096 ;;
3097 sparclite-*-aout*)
3098 tm_file="${tm_file} gofast.h sparc/aout.h sparc/lite.h aoutos.h libgloss.h"
3099 tmake_file=sparc/t-sparclite
3100 ;;
3101 sparclite-*-elf*)
3102 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h gofast.h sparc/liteelf.h"
3103 tmake_file=sparc/t-sparclite
3104 extra_parts="crtbegin.o crtend.o"
3105 ;;
3106 sparc86x-*-aout*)
3107 tm_file="${tm_file} gofast.h sparc/aout.h sparc/sp86x-aout.h aoutos.h libgloss.h"
3108 tmake_file=sparc/t-sp86x
3109 ;;
3110 sparc86x-*-elf*)
3111 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/elf.h gofast.h sparc/sp86x-elf.h"
3112 tmake_file=sparc/t-sp86x
3113 extra_parts="crtbegin.o crtend.o"
3114 ;;
3115 sparc64-*-aout*)
3116 tm_file="sparc/sparc.h aoutos.h sparc/aout.h sparc/sp64-aout.h"
3117 ;;
3118 sparc64-*-elf*)
3119 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sp64-elf.h"
3120 extra_parts="crtbegin.o crtend.o"
3121 ;;
3122 sparc64-*-linux*) # 64-bit Sparc's running GNU/Linux
3123 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-linux64"
3124 tm_file="sparc/sparc_bi.h ${tm_file} elfos.h svr4.h sparc/sysv4.h sparc/linux64.h"
3125 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
3126 gnu_ld=yes
3127 if test x$enable_threads = xyes; then
3128 thread_file='posix'
3129 fi
3130 float_format=sparc
3131 ;;
3132 strongarm-*-elf*)
3133 tm_file="arm/strongarm-elf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
3134 tmake_file=arm/t-strongarm-elf
3135 out_file=arm/arm.c
3136 md_file=arm/arm.md
3137 ;;
3138 strongarm-*-coff*)
3139 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/strongarm-coff.h arm/arm.h"
3140 tmake_file=arm/t-strongarm-coff
3141 out_file=arm/arm.c
3142 md_file=arm/arm.md
3143 ;;
3144 strongarm-*-pe)
3145 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/strongarm-coff.h arm/arm.h arm/pe.h arm/strongarm-pe.h"
3146 tmake_file=arm/t-strongarm-pe
3147 out_file=arm/arm.c
3148 md_file=arm/arm.md
3149 extra_objs=pe.o
3150 ;;
3151 thumb*-*-*)
3152 { echo "config.gcc: error:
3153 *** The Thumb targets have been deprecated. The equivalent
3154 *** ARM based toolchain can now generate Thumb instructions
3155 *** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
3156 ;;
3157 v850-*-rtems*)
3158 tm_file="elfos.h svr4.h ${tm_file} v850/rtems.h"
3159 tmake_file="v850/t-v850 t-rtems"
3160 if test x$stabs = xyes
3161 then
3162 tm_file="${tm_file} dbx.h"
3163 fi
3164 use_collect2=no
3165 c_target_objs="v850-c.o"
3166 cxx_target_objs="v850-c.o"
3167 ;;
3168 v850-*-*)
3169 target_cpu_default="TARGET_CPU_generic"
3170 tm_file="elfos.h svr4.h ${tm_file}"
3171 tmake_file=v850/t-v850
3172 if test x$stabs = xyes
3173 then
3174 tm_file="${tm_file} dbx.h"
3175 fi
3176 use_collect2=no
3177 c_target_objs="v850-c.o"
3178 cxx_target_objs="v850-c.o"
3179 ;;
3180 vax-*-bsd*) # VAXen running BSD
3181 use_collect2=yes
3182 float_format=vax
3183 ;;
3184 vax-*-sysv*) # VAXen running system V
3185 tm_file="${tm_file} vax/vaxv.h"
3186 xm_defines=POSIX
3187 float_format=vax
3188 ;;
3189 vax-*-netbsd*)
3190 tm_file="${tm_file} netbsd.h vax/netbsd.h"
3191 tmake_file=t-netbsd
3192 float_format=vax
3193 use_collect2=yes
3194 ;;
3195 vax-*-openbsd*)
3196 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
3197 float_format=vax
3198 use_collect2=yes
3199 ;;
3200 vax-*-ultrix*) # VAXen running ultrix
3201 tm_file="${tm_file} vax/ultrix.h"
3202 float_format=vax
3203 ;;
3204 vax-*-vms*) # VAXen running VMS
3205 xm_file=vax/xm-vms.h
3206 tm_file=vax/vms.h
3207 float_format=vax
3208 ;;
3209 vax-*-*) # VAX default entry
3210 float_format=vax
3211 ;;
3212 we32k-att-sysv*)
3213 xm_defines=POSIX
3214 use_collect2=yes
3215 ;;
3216 xscale-*-elf)
3217 tm_file="arm/xscale-elf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
3218 tmake_file=arm/t-xscale-elf
3219 out_file=arm/arm.c
3220 md_file=arm/arm.md
3221 ;;
3222 xscale-*-coff)
3223 tm_file="coff.h arm/xscale-coff.h"
3224 tmake_file=arm/t-xscale-coff
3225 out_file=arm/arm.c
3226 md_file=arm/arm.md
3227 ;;
3228 xstormy16-*-elf)
3229 # For historical reasons, the target files omit the 'x'.
3230 tm_file="elfos.h svr4.h stormy16/stormy16.h"
3231 tm_p_file=stormy16/stormy16-protos.h
3232 md_file=stormy16/stormy16.md
3233 out_file=stormy16/stormy16.c
3234 tmake_file="stormy16/t-stormy16"
3235 extra_parts="crtbegin.o crtend.o"
3236 ;;
3237 *)
3238 echo "Configuration $machine not supported" 1>&2
3239 exit 1
3240 ;;
3241 esac
3242
3243 case $machine in
3244 *-*-sysv*)
3245 install_headers_dir=install-headers-cpio
3246 ;;
3247 esac
3248
3249 # Distinguish i[34567]86
3250 # Also, do not run mips-tfile on MIPS if using gas.
3251 # Process --with-cpu= for PowerPC/rs6000
3252 target_cpu_default2=
3253 case $machine in
3254 i486-*-*)
3255 target_cpu_default2=1
3256 ;;
3257 i586-*-*)
3258 case $target_alias in
3259 k6-*)
3260 target_cpu_default2=4
3261 ;;
3262 *)
3263 target_cpu_default2=2
3264 ;;
3265 esac
3266 ;;
3267 i686-*-* | i786-*-*)
3268 case $target_alias in
3269 athlon-*)
3270 target_cpu_default2=5
3271 ;;
3272 *)
3273 target_cpu_default2=3
3274 ;;
3275 esac
3276 ;;
3277 alpha*-*-*)
3278 case $machine in
3279 alphaev6[78]*)
3280 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
3281 ;;
3282 alphaev6*)
3283 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
3284 ;;
3285 alphapca56*)
3286 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
3287 ;;
3288 alphaev56*)
3289 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
3290 ;;
3291 alphaev5*)
3292 target_cpu_default2="MASK_CPU_EV5"
3293 ;;
3294 esac
3295
3296 if test x$gas = xyes
3297 then
3298 if test "$target_cpu_default2" = ""
3299 then
3300 target_cpu_default2="MASK_GAS"
3301 else
3302 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
3303 fi
3304 fi
3305 ;;
3306 arm*-*-*)
3307 case "x$with_cpu" in
3308 x)
3309 # The most generic
3310 target_cpu_default2="TARGET_CPU_generic"
3311 ;;
3312
3313 # Distinguish cores, and major variants
3314 # arm7m doesn't exist, but D & I don't affect code
3315 xarm[236789] | xarm250 | xarm[67][01]0 \
3316 | xarm7m | xarm7dm | xarm7dmi | xarm[79]tdmi \
3317 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
3318 | xxscale \
3319 | xstrongarm | xstrongarm110 | xstrongarm1100)
3320 target_cpu_default2="TARGET_CPU_$with_cpu"
3321 ;;
3322
3323 xyes | xno)
3324 echo "--with-cpu must be passed a value" 1>&2
3325 exit 1
3326 ;;
3327
3328 *)
3329 if test x$pass2done = xyes
3330 then
3331 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3332 exit 1
3333 fi
3334 ;;
3335 esac
3336 ;;
3337
3338 hppa*-*-* | parisc*-*-*)
3339 if test x$gas = xyes
3340 then
3341 target_cpu_default2="MASK_GAS|MASK_JUMP_IN_DELAY"
3342 fi
3343 ;;
3344
3345 mips*-*-ecoff* | mips*-*-elf*)
3346 if test x$gas = xyes
3347 then
3348 if test x$gnu_ld = xyes
3349 then
3350 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
3351 else
3352 target_cpu_default2="MASK_GAS"
3353 fi
3354 fi
3355 ;;
3356 mips*-*-*)
3357 if test x$gas = xyes
3358 then
3359 target_cpu_default2="MASK_GAS"
3360 fi
3361 ;;
3362 powerpc*-*-* | rs6000-*-*)
3363 case "x$with_cpu" in
3364 x)
3365 ;;
3366
3367 xcommon | xpower | xpower2 | xpowerpc | xrios \
3368 | xrios1 | xrios2 | xrsc | xrsc1 \
3369 | x601 | x602 | x603 | x603e | x604 | x604e | x620 \
3370 | x740 | x750 | x505)
3371 target_cpu_default2="\\\"$with_cpu\\\""
3372 ;;
3373
3374 x401 | x403 | xec603e | x801 | x821 | x823 | x860)
3375 target_cpu_default2="\\\"$with_cpu\\\""
3376 tm_file="$tm_file rs6000/softfloat.h"
3377 ;;
3378
3379 xyes | xno)
3380 echo "--with-cpu must be passed a value" 1>&2
3381 exit 1
3382 ;;
3383
3384 *)
3385 if test x$pass2done = xyes
3386 then
3387 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3388 exit 1
3389 fi
3390 ;;
3391 esac
3392 ;;
3393 sparc*-*-*)
3394 case ".$with_cpu" in
3395 .)
3396 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
3397 ;;
3398 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
3399 target_cpu_default2="TARGET_CPU_$with_cpu"
3400 ;;
3401 *)
3402 if test x$pass2done = xyes
3403 then
3404 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
3405 exit 1
3406 fi
3407 ;;
3408 esac
3409 ;;
3410 esac
3411
3412 if test "$target_cpu_default2" != ""
3413 then
3414 if test "$target_cpu_default" != ""
3415 then
3416 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
3417 else
3418 target_cpu_default=$target_cpu_default2
3419 fi
3420 fi
3421
3422 # Save data on machine being used to compile GCC in build_xm_file.
3423 # Save data on host machine in vars host_xm_file and host_xmake_file.
3424 if test x$pass1done = x
3425 then
3426 if test x$xm_file != x
3427 then build_xm_file=$xm_file
3428 fi
3429 build_xm_defines=$xm_defines
3430 build_install_headers_dir=$install_headers_dir
3431 build_exeext=$exeext
3432 pass1done=yes
3433 else
3434 if test x$pass2done = x
3435 then
3436 if test x$xm_file != x
3437 then host_xm_file=$xm_file
3438 fi
3439 host_xm_defines=$xm_defines
3440 host_xmake_file="$xmake_file"
3441 host_truncate_target=$truncate_target
3442 host_extra_gcc_objs=$extra_gcc_objs
3443 host_extra_objs=$extra_host_objs
3444 host_exeext=$exeext
3445 pass2done=yes
3446 fi
3447 fi