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