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