]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/config.gcc
Merge basic-improvements-branch to trunk
[thirdparty/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_defines List of target macros to define for all compilations.
49 #
50 # tm_file A list of target macro files, if different from
51 # "$cpu_type/$cpu_type.h". Usually it's constructed
52 # per target in a way like this:
53 # tm_file="${tm_file} dbxelf.h elfos.h svr4.h ${cpu_type.h}/elf.h"
54 # Note that the preferred order is:
55 # - specific target header "${cpu_type}/${cpu_type.h}"
56 # - generic headers like dbxelf.h elfos.h, netware.h, etc.
57 # - specializing target headers like ${cpu_type.h}/elf.h
58 # This helps to keep OS specific stuff out of the CPU
59 # defining header ${cpu_type}/${cpu_type.h}.
60 #
61 # tm_p_file Location of file with declarations for functions
62 # in $out_file.
63 #
64 # out_file The name of the machine description C support
65 # file, if different from "$cpu_type/$cpu_type.c".
66 #
67 # md_file The name of the machine-description file, if
68 # different from "$cpu_type/$cpu_type.md".
69 #
70 # tmake_file A list of machine-description-specific
71 # makefile-fragments, if different from
72 # "$cpu_type/t-$cpu_type".
73 #
74 # extra_modes The name of the file containing a list of extra
75 # machine modes, if necessary and different from
76 # "$cpu_type/$cpu_type-modes.def".
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 # target_gtfiles List of extra source files with type information.
108 #
109 # build_xm_defines List of macros to define when compiling for the
110 # build machine.
111 #
112 # build_xm_file List of files to include when compiling for the
113 # build machine.
114 #
115 # host_xm_defines List of macros to define when compiling for the
116 # host machine.
117 #
118 # host_xm_file List of files to include when compiling for the
119 # host machine.
120 #
121 # xm_defines List of macros to define when compiling for the
122 # target machine.
123 #
124 # xm_file List of files to include when compiling for the
125 # target machine.
126 #
127 # use_collect2 Set to yes or no, depending on whether collect2
128 # will be used.
129 #
130 # target_cpu_default Set to override the default target model.
131 #
132 # build_install_headers_dir
133 # Target to use when installing header files.
134 #
135 # host_truncate_target
136 # Non-empty if the target name should be truncated
137 # on this host, due to filename length issues.
138 #
139 # gdb_needs_out_file_path
140 # Set to yes if gdb needs a dir command with
141 # `dirname $out_file`.
142 #
143 # build_exeext Set to the suffix, if the build machine requires
144 # executables to have a file name suffix.
145 #
146 # host_exeext Set to the suffix, if the host machine requires
147 # executables to have a file name suffix.
148 #
149 # thread_file Set to control which thread package to use.
150 #
151 # gas Set to yes or no depending on whether the target
152 # system normally uses GNU as.
153 #
154 # need_64bit_hwint Set to yes if HOST_WIDE_INT must be 64 bits wide
155 # for this target. This is true iff
156 # MAX_LONG_TYPE_SIZE is 64. (The code which
157 # determines the underlying integral type for
158 # HOST_WIDE_INT cannot see the definition of
159 # MAX_LONG_TYPE_SIZE.)
160
161 # The following variables are used in each case-construct to build up the
162 # outgoing variables:
163 #
164 # xmake_file Makefile-fragment when this system is as a host,
165 # for host_xmake_file.
166 #
167 # extra_host_objs List of extra objects that should be linked into
168 # the compiler proper when this system is a host,
169 # for host_extra_objs.
170 #
171 # install_headers_dir Makefile-target for how the header file directory
172 # is installed, when this system is a build system,
173 # for build_install_headers_dir.
174 #
175 # truncate_target Non-empty if the target name should be truncated
176 # when this system is a host, due to filename length
177 # issues. For host_truncate_target.
178 #
179 # exeext The suffix for executables on this system.
180 #
181 # gnu_ld Set to yes or no depending on whether the target
182 # system normally uses GNU ld.
183
184 out_file=
185 xmake_file=
186 tmake_file=
187 extra_headers=
188 extra_passes=
189 extra_parts=
190 extra_programs=
191 extra_objs=
192 extra_host_objs=
193 extra_gcc_objs=
194 c_target_objs=
195 cxx_target_objs=
196 tm_defines=
197 xm_defines=
198 # Set this to force installation and use of collect2.
199 use_collect2=
200 # Set this to override the default target model.
201 target_cpu_default=
202 # Set this to control how the header file directory is installed.
203 install_headers_dir=install-headers-tar
204 # Set this if directory names should be truncated to 14 characters.
205 truncate_target=
206 # Set this if gdb needs a dir command with `dirname $out_file`
207 gdb_needs_out_file_path=
208 # Set this if the build machine requires executables to have a
209 # file name suffix.
210 exeext=
211 # Set this to control which thread package will be used.
212 thread_file=
213 # Reinitialize these from the flag values every loop pass, since some
214 # configure entries modify them.
215 gas="$gas_flag"
216 gnu_ld="$gnu_ld_flag"
217 enable_threads=$enable_threads_flag
218 target_gtfiles=
219 need_64bit_hwint=
220
221 # Obsolete configurations.
222 case $machine in
223 m88k-*-aout* \
224 | m88k-*-openbsd* \
225 | m88k-*-sysv4* \
226 | mips-sni-sysv4 \
227 | mn10200-*-* \
228 | ns32k-*-openbsd* \
229 | romp-*-openbsd* \
230 )
231 if test "x$enable_obsolete" != xyes; then
232 echo "*** Configuration $machine is obsolete." >&2
233 echo "*** Specify --enable-obsolete to build it anyway." >&2
234 echo "*** Support will be REMOVED in the next major release of GCC," >&2
235 echo "*** unless a maintainer comes forward." >&2
236 exit 1
237 fi;;
238 esac
239
240 # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
241 # updated in each machine entry. Also set default extra_headers for some
242 # machines.
243 tm_p_file=
244 cpu_type=`echo $machine | sed 's/-.*$//'`
245 case $machine in
246 alpha*-*-*)
247 cpu_type=alpha
248 need_64bit_hwint=yes
249 ;;
250 strongarm*-*-*)
251 cpu_type=arm
252 ;;
253 arm*-*-*)
254 cpu_type=arm
255 ;;
256 xscale-*-*)
257 cpu_type=arm
258 ;;
259 i[34567]86-*-*)
260 cpu_type=i386
261 extra_headers="mmintrin.h xmmintrin.h"
262 ;;
263 x86_64-*-*)
264 cpu_type=i386
265 extra_headers="mmintrin.h xmmintrin.h"
266 need_64bit_hwint=yes
267 ;;
268 ia64-*-*)
269 extra_headers=ia64intrin.h
270 need_64bit_hwint=yes
271 ;;
272 hppa*-*-* | parisc*-*-*)
273 cpu_type=pa
274 ;;
275 m680[012]0-*-*)
276 cpu_type=m68k
277 extra_headers=math-68881.h
278 ;;
279 m68k-*-*)
280 extra_headers=math-68881.h
281 ;;
282 mips*-*-*)
283 cpu_type=mips
284 need_64bit_hwint=yes
285 ;;
286 powerpc*-*-*)
287 cpu_type=rs6000
288 extra_headers="ppc-asm.h altivec.h spe.h"
289 need_64bit_hwint=yes
290 ;;
291 rs6000*-*-*)
292 need_64bit_hwint=yes
293 ;;
294 sparc64*-*-*)
295 cpu_type=sparc
296 need_64bit_hwint=yes
297 ;;
298 sparc*-*-*)
299 cpu_type=sparc
300 ;;
301 s390*-*-*)
302 need_64bit_hwint=yes
303 ;;
304 # Note the 'l'; we need to be able to match e.g. "shle" or "shl".
305 sh[123456789l]*-*-*)
306 cpu_type=sh
307 need_64bit_hwint=yes
308 ;;
309 tic4x-*-*)
310 cpu_type=c4x
311 ;;
312 esac
313
314 tm_file=${cpu_type}/${cpu_type}.h
315 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h
316 then
317 tm_p_file=${cpu_type}/${cpu_type}-protos.h
318 fi
319 extra_modes=
320 if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-modes.def
321 then
322 extra_modes=${cpu_type}/${cpu_type}-modes.def
323 fi
324
325 case $machine in
326 x86_64-*-*)
327 tm_file="i386/biarch64.h ${tm_file}"
328 ;;
329 esac
330
331 # On a.out targets, we need to use collect2.
332 case $machine in
333 *-*-*aout*)
334 use_collect2=yes
335 ;;
336 esac
337
338 # Common parts for widely ported systems.
339 case $machine in
340 *-*-linux*)
341 xm_defines=POSIX
342 case $machine in
343 *-*-linux*ecoff* | *-*-linux*libc1* | *-*-linux*oldld* | *-*-linux*aout*)
344 ;;
345 *)
346 extra_parts="crtbegin.o crtbeginS.o crtbeginT.o crtend.o crtendS.o"
347 gas=yes gnu_ld=yes
348 case x${enable_threads} in
349 x | xyes | xposix) thread_file='posix'
350 ;;
351 esac
352 ;;
353 esac
354 ;;
355 *-*-gnu*)
356 # On the Hurd, the setup is just about the same on
357 # each different CPU. The specific machines that we
358 # support are matched above and just set $cpu_type.
359 xm_defines=POSIX
360 tm_file="${cpu_type}/gnu.h"
361 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
362 # GNU always uses ELF.
363 elf=yes
364 # GNU tools are the only tools.
365 gnu_ld=yes
366 gas=yes
367 # These details are the same as for Linux.
368 # But here we need a little extra magic.
369 tmake_file="t-slibgcc-elf-ver t-linux t-gnu"
370 case $machine in
371 alpha*)
372 tm_file="${cpu_type}/${cpu_type}.h alpha/elf.h alpha/linux.h alpha/linux-elf.h gnu.h ${tm_file}"
373 ;;
374 i[34567]86-*-*)
375 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}"
376 ;;
377 esac
378 ;;
379 *-*-openbsd*)
380 tm_file=${cpu_type}/openbsd.h
381 tmake_file="t-libc-ok t-openbsd t-libgcc-pic"
382 xm_defines=POSIX
383 if test x$enable_threads = xyes; then
384 thread_file='posix'
385 tmake_file="${tmake_file} t-openbsd-thread"
386 fi
387 ;;
388 *-*-netbsd*)
389 tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd"
390 xm_defines=POSIX
391 gas=yes
392 gnu_ld=yes
393 case x${enable_threads} in
394 xyes | xposix)
395 thread_file='posix'
396 tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS"
397 ;;
398 esac
399
400 # NetBSD 1.7 and later are set up to use GCC's crtstuff for
401 # ELF configurations. We will clear extra_parts in the
402 # a.out configurations.
403 case $machine in
404 *-*-netbsd*1.[7-9]* | *-*-netbsd[2-9]* | *-*-netbsdelf[2-9]*)
405 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
406 ;;
407 esac
408 ;;
409 *-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*)
410 # This is the place-holder for the generic a.out configuration
411 # of FreeBSD. No actual configuration resides here since
412 # there was only ever a bare-bones ix86 configuration for
413 # a.out and it exists solely in the machine-specific section.
414 # This place-holder must exist to avoid dropping into
415 # the generic ELF configuration of FreeBSD (i.e. it must be
416 # ordered before that section).
417 ;;
418 *-*-freebsd*)
419 # This is the generic ELF configuration of FreeBSD. Later
420 # machine-specific sections may refine and add to this
421 # configuration.
422 #
423 # Due to tm_file entry ordering issues that vary between cpu
424 # architectures, we only define fbsd_tm_file to allow the
425 # machine-specific section to dictate the final order of all
426 # entries of tm_file with the minor exception that components
427 # of the tm_file set here will always be of the form:
428 #
429 # freebsd<version_number>.h [freebsd-<conf_option>.h ...] freebsd-spec.h freebsd.h
430 #
431 # The machine-specific section should not tamper with this
432 # ordering but may order all other entries of tm_file as it
433 # pleases around the provided core setting.
434 gas=yes
435 gnu_ld=yes
436 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
437 case $machine in
438 *-*-freebsd3 | *-*-freebsd[3].*) fbsd_tm_file="freebsd3.h";;
439 *-*-freebsd4 | *-*-freebsd[4].*) fbsd_tm_file="freebsd4.h";;
440 *-*-freebsd5 | *-*-freebsd[5].*) fbsd_tm_file="freebsd5.h";;
441 *-*-freebsd6 | *-*-freebsd[6].*) fbsd_tm_file="freebsd6.h";;
442 *) echo 'Please update *-*-freebsd* in gcc/config.gcc'; exit 1;;
443 esac
444 tmake_file="t-slibgcc-elf-ver t-freebsd"
445 xmake_file=none
446 xm_defines=POSIX
447 case x${enable_threads} in
448 xno) fbsd_tm_file="${fbsd_tm_file} freebsd-nthr.h";;
449 x | xyes | xpthreads | xposix)
450 thread_file='posix'
451 tmake_file="${tmake_file} t-freebsd-thread"
452 # Before 5.0, FreeBSD can't bind shared libraries to -lc
453 # when "optionally" threaded via weak pthread_* checks.
454 case $machine in
455 *-*-freebsd[34] | *-*-freebsd[34].*)
456 tmake_file="${tmake_file} t-slibgcc-nolc-override";;
457 esac
458 ;;
459 *) echo 'Unknown thread configuration for FreeBSD'; exit 1;;
460 esac
461 fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h"
462 ;;
463 *-*-vxworks*)
464 tmake_file=t-vxworks
465 tm_file="${tm_file} elfos.h svr4.h vxworks.h"
466 thread_file='vxworks'
467 use_collect2=yes
468 xm_defines=POSIX
469 ;;
470 esac
471
472 case $machine in
473 # Support site-specific machine types.
474 *local*)
475 rest=`echo $machine | sed -e "s/$cpu_type-//"`
476 tm_file=${cpu_type}/$rest.h
477 if test -f $srcdir/config/${cpu_type}/xm-$rest.h
478 then xm_file=${cpu_type}/xm-$rest.h
479 fi
480 if test -f $srcdir/config/${cpu_type}/x-$rest
481 then xmake_file=${cpu_type}/x-$rest
482 fi
483 if test -f $srcdir/config/${cpu_type}/t-$rest
484 then tmake_file=${cpu_type}/t-$rest
485 fi
486 ;;
487 alpha*-*-unicosmk*)
488 use_collect2=yes
489 tm_file="${tm_file} alpha/unicosmk.h"
490
491 # Don't include t-ieee for now because we don't support that yet
492 # tmake_file="alpha/t-ieee"
493 tmake_file="alpha/t-unicosmk"
494 ;;
495 alpha-*-interix)
496 tm_file="${tm_file} alpha/alpha32.h interix.h alpha/alpha-interix.h"
497
498 # GAS + IEEE_CONFORMANT+IEEE (no inexact);
499 #target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT|MASK_IEEE"
500
501 # GAS + IEEE_CONFORMANT
502 target_cpu_default="MASK_GAS|MASK_IEEE_CONFORMANT"
503
504 xm_defines=POSIX
505 tmake_file="alpha/t-alpha t-interix alpha/t-interix alpha/t-ieee"
506 if test x$enable_threads = xyes ; then
507 thread_file='posix'
508 fi
509 if test x$stabs = xyes ; then
510 tm_file="${tm_file} dbxcoff.h"
511 fi
512 #prefix='$$INTERIX_ROOT'/usr/contrib
513 #local_prefix='$$INTERIX_ROOT'/usr/contrib
514 ;;
515 alpha*-*-linux*ecoff*)
516 echo "Configuration $machine no longer supported" 1>&2
517 exit 1
518 ;;
519 alpha*-*-linux*libc1*)
520 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
521 target_cpu_default="MASK_GAS"
522 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtfm alpha/t-ieee"
523 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
524 gas=yes gnu_ld=yes
525 if test x$enable_threads = xyes; then
526 thread_file='posix'
527 fi
528 ;;
529 alpha*-*-linux*)
530 tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
531 target_cpu_default="MASK_GAS"
532 tmake_file="t-slibgcc-elf-ver t-linux alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
533 ;;
534 alpha*-*-gnu*)
535 target_cpu_default="MASK_GAS"
536 tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
537 ;;
538 alpha*-*-freebsd*)
539 tm_file="${tm_file} ${fbsd_tm_file} alpha/elf.h alpha/freebsd.h"
540 target_cpu_default="MASK_GAS"
541 tmake_file="${tmake_file} alpha/t-crtfm alpha/t-alpha alpha/t-ieee"
542 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
543 ;;
544 alpha*-*-netbsd*)
545 tm_file="${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h"
546 target_cpu_default="MASK_GAS"
547 tmake_file="${tmake_file} alpha/t-alpha alpha/t-ieee"
548 ;;
549
550 alpha*-*-openbsd*)
551 tm_file="${cpu_type}/${cpu_type}.h ${tm_file}"
552 # default x-alpha is only appropriate for dec-osf.
553 target_cpu_default="MASK_GAS"
554 tmake_file="alpha/t-alpha alpha/t-ieee"
555 ;;
556
557 alpha*-dec-osf[45]*)
558 xm_defines=POSIX
559 if test x$stabs = xyes
560 then
561 tm_file="${tm_file} dbx.h"
562 fi
563 if test x$gas != xyes
564 then
565 extra_passes="mips-tfile mips-tdump"
566 fi
567 use_collect2=yes
568 tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf4"
569 tm_file="${tm_file} alpha/osf.h"
570 extra_headers=va_list.h
571 case $machine in
572 *-*-osf4*)
573 # Some versions of OSF4 (specifically X4.0-9 296.7) have
574 # a broken tar, so we use cpio instead.
575 install_headers_dir=install-headers-cpio
576 # Set target_cpu_default except on 4.0a.
577 case $machine in
578 *-*-osf4.0a) ;;
579 *) target_cpu_default=MASK_SUPPORT_ARCH
580 esac
581 ;;
582 *-*-osf5*)
583 tm_file="${tm_file} alpha/osf5.h"
584 target_cpu_default=MASK_SUPPORT_ARCH
585 ;;
586 esac
587 ;;
588 alpha64-dec-*vms*)
589 xm_defines=POSIX
590 tm_file="${tm_file} alpha/vms.h alpha/vms64.h"
591 xm_file="alpha/xm-vms.h"
592 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-vms64 alpha/t-ieee"
593 xmake_file=alpha/x-vms
594 exeext=.exe
595 # This removes the cpu type and manufacturer components and
596 # replaces "." with "_" in the operating system version.
597 case $host in *-*-*vms*)
598 target_alias=`echo $host \
599 | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'`
600 ;;
601 esac
602 install_headers_dir=install-headers-cp
603 prefix=/gnu
604 local_prefix=/gnu
605 ;;
606 alpha*-dec-*vms*)
607 xm_defines=POSIX
608 tm_file="${tm_file} alpha/vms.h"
609 xm_file=alpha/xm-vms.h
610 tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
611 xmake_file=alpha/x-vms
612 exeext=.exe
613 # This removes the cpu type and manufacturer components and
614 # replaces "." with "_" in the operating system version.
615 case $host in *-*-*vms*)
616 target_alias=`echo $host \
617 | sed 's/.*-.*-\(.*\)$/\1/' | sed 's/\./_/g'`
618 ;;
619 esac
620 install_headers_dir=install-headers-cp
621 prefix=/gnu
622 local_prefix=/gnu
623 ;;
624 arc-*-elf*)
625 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
626 extra_parts="crtinit.o crtfini.o"
627 ;;
628 arm-*-coff* | armel-*-coff*)
629 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h"
630 tmake_file=arm/t-arm-coff
631 ;;
632 arm-semi-aout | armel-semi-aout)
633 tm_file="arm/semi.h arm/aout.h arm/arm.h"
634 tmake_file=arm/t-semi
635 ;;
636 arm-semi-aof | armel-semi-aof)
637 tm_file="arm/semiaof.h arm/aof.h arm/arm.h"
638 tmake_file=arm/t-semi
639 ;;
640 arm*-*-freebsd*|strongarm*-*-freebsd*)
641 tm_file="dbxelf.h elfos.h ${fbsd_tm_file} arm/elf.h arm/aout.h arm/freebsd.h arm/arm.h"
642 tmake_file="${tmake_file} arm/t-strongarm-elf"
643 ;;
644 arm*-*-netbsdelf*)
645 tm_file="dbxelf.h elfos.h netbsd.h netbsd-elf.h arm/elf.h arm/aout.h arm/arm.h arm/netbsd-elf.h"
646 tmake_file="${tmake_file} arm/t-netbsd"
647 ;;
648 arm*-*-netbsd*)
649 tm_file="arm/aout.h arm/arm.h netbsd.h netbsd-aout.h arm/netbsd.h"
650 tmake_file="t-netbsd arm/t-netbsd"
651 extra_parts=""
652 use_collect2=yes
653 ;;
654 arm*-*-linux*) # ARM GNU/Linux with ELF
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"
656 tmake_file="t-slibgcc-elf-ver t-linux arm/t-linux"
657 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
658 gnu_ld=yes
659 case x${enable_threads} in
660 x | xyes | xpthreads | xposix)
661 thread_file='posix'
662 ;;
663 esac
664 ;;
665 arm*-*-uclinux*) # ARM ucLinux
666 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"
667 tmake_file=arm/t-arm-elf
668 ;;
669 arm*-*-aout)
670 tm_file="arm/aout.h arm/arm.h"
671 tmake_file=arm/t-arm-aout
672 ;;
673 arm*-*-ecos-elf)
674 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h arm/ecos-elf.h"
675 tmake_file=arm/t-arm-elf
676 ;;
677 arm*-*-rtems*)
678 xm_defines=POSIX
679 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"
680 tmake_file="arm/t-arm-elf t-rtems"
681 if test x$enable_threads = xyes; then
682 thread_file='rtems'
683 fi
684 ;;
685 arm*-*-elf)
686 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
687 tmake_file=arm/t-arm-elf
688 ;;
689 arm*-*-conix*)
690 tm_file="dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/conix-elf.h arm/aout.h arm/arm.h"
691 tmake_file=arm/t-arm-elf
692 ;;
693 arm*-*-oabi)
694 tm_file="arm/unknown-elf-oabi.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
695 tmake_file=arm/t-arm-elf
696 ;;
697 arm-*-pe*)
698 tm_file="arm/semi.h arm/aout.h arm/arm.h arm/coff.h arm/pe.h"
699 tmake_file=arm/t-pe
700 extra_objs="pe.o"
701 ;;
702 avr-*-*)
703 ;;
704 c4x-*-rtems* | tic4x-*-rtems*)
705 xm_defines=POSIX
706 tmake_file="c4x/t-c4x t-rtems"
707 tm_file="c4x/c4x.h c4x/rtems.h rtems.h"
708 if test x$enable_threads = xyes; then
709 thread_file='rtems'
710 fi
711 c_target_objs="c4x-c.o"
712 cxx_target_objs="c4x-c.o"
713 ;;
714 c4x-* | tic4x-*)
715 tmake_file=c4x/t-c4x
716 c_target_objs="c4x-c.o"
717 cxx_target_objs="c4x-c.o"
718 ;;
719 cris-*-aout)
720 tm_file="dbxelf.h ${tm_file} cris/aout.h"
721 gas=yes
722 tmake_file="cris/t-cris cris/t-aout"
723 ;;
724 cris-*-elf | cris-*-none)
725 tm_file="dbxelf.h elfos.h ${tm_file}"
726 tmake_file="cris/t-cris cris/t-elfmulti"
727 gas=yes
728 ;;
729 cris-*-linux*)
730 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} linux.h cris/linux.h"
731 tmake_file="cris/t-cris t-slibgcc-elf-ver cris/t-linux"
732 ;;
733 d30v-*)
734 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
735 ;;
736 dsp16xx-*)
737 ;;
738 fr30-*-elf)
739 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
740 tmake_file=fr30/t-fr30
741 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
742 ;;
743 frv-*-elf)
744 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} frv/frv-abi.h"
745 tmake_file=frv/t-frv
746 ;;
747 h8300-*-rtems*)
748 xm_defines=POSIX
749 tmake_file="h8300/t-h8300 t-rtems"
750 tm_file="h8300/h8300.h h8300/rtems.h rtems.h"
751 if test x$enable_threads = xyes; then
752 thread_file='rtems'
753 fi
754 ;;
755 h8300-*-elf*)
756 tmake_file="h8300/t-h8300 h8300/t-elf"
757 tm_file="h8300/h8300.h h8300/elf.h"
758 ;;
759 h8300-*-*)
760 ;;
761 hppa*64*-*-linux* | parisc*64*-*-linux*)
762 target_cpu_default="(MASK_PA_11 | MASK_PA_20)"
763 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h svr4.h linux.h \
764 pa/pa-linux.h pa/pa64-regs.h pa/pa-64.h pa/pa64-linux.h"
765 tmake_file=pa/t-linux64
766 gas=yes gnu_ld=yes
767 need_64bit_hwint=yes
768 ;;
769 hppa*-*-linux* | parisc*-*-linux*)
770 target_cpu_default="MASK_PA_11"
771 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h pa/pa-linux.h \
772 pa/pa32-regs.h pa/pa32-linux.h"
773 tmake_file="t-slibgcc-elf-ver t-linux pa/t-linux"
774 ;;
775 hppa*-*-openbsd*)
776 target_cpu_default="MASK_PA_11"
777 tmake_file=pa/t-bsd
778 ;;
779 hppa1.1-*-pro*)
780 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
781 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
782 tmake_file="pa/t-bsd pa/t-pro"
783 xmake_file="pa/x-ada"
784 ;;
785 hppa1.1-*-osf*)
786 target_cpu_default="MASK_PA_11"
787 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
788 tmake_file="pa/t-bsd pa/t-pa"
789 xmake_file="pa/x-ada"
790 use_collect2=yes
791 ;;
792 hppa1.1-*-rtems*)
793 xm_defines=POSIX
794 target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
795 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"
796 tmake_file="pa/t-bsd pa/t-pro"
797 xmake_file="pa/x-ada"
798 ;;
799 hppa1.0-*-osf*)
800 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
801 tmake_file="pa/t-bsd pa/t-pa"
802 xmake_file="pa/x-ada"
803 use_collect2=yes
804 ;;
805 hppa1.1-*-bsd*)
806 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
807 target_cpu_default="MASK_PA_11"
808 tmake_file="pa/t-bsd pa/t-pa"
809 xmake_file="pa/x-ada"
810 use_collect2=yes
811 ;;
812 hppa1.0-*-bsd*)
813 tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
814 tmake_file="pa/t-bsd pa/t-pa"
815 xmake_file="pa/x-ada"
816 use_collect2=yes
817 ;;
818 hppa1.0-*-hpux7*)
819 tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
820 xm_defines=POSIX
821 tmake_file=pa/t-pa-hpux
822 install_headers_dir=install-headers-cpio
823 use_collect2=yes
824 ;;
825 hppa1.0-*-hpux8.0[0-2]*)
826 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
827 xm_defines=POSIX
828 tmake_file=pa/t-pa-hpux
829 if test x$gas != xyes
830 then
831 tm_file="pa/pa-oldas.h ${tm_file}"
832 fi
833 install_headers_dir=install-headers-cpio
834 use_collect2=yes
835 ;;
836 hppa1.1-*-hpux8.0[0-2]*)
837 target_cpu_default="MASK_PA_11"
838 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
839 xm_defines=POSIX
840 tmake_file=pa/t-pa-hpux
841 if test x$gas != xyes
842 then
843 tm_file="pa/pa-oldas.h ${tm_file}"
844 fi
845 install_headers_dir=install-headers-cpio
846 use_collect2=yes
847 ;;
848 hppa1.1-*-hpux8*)
849 target_cpu_default="MASK_PA_11"
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 install_headers_dir=install-headers-cpio
854 use_collect2=yes
855 ;;
856 hppa1.0-*-hpux8*)
857 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
858 xm_defines=POSIX
859 tmake_file=pa/t-pa-hpux
860 install_headers_dir=install-headers-cpio
861 use_collect2=yes
862 ;;
863 hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
864 target_cpu_default="MASK_PA_11"
865 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
866 xm_defines=POSIX
867 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
868 xmake_file="pa/x-ada"
869 if test x$enable_threads = x; then
870 enable_threads=$have_pthread_h
871 fi
872 case x${enable_threads} in
873 xyes | xdce)
874 tmake_file="${tmake_file} pa/t-dce-thr"
875 ;;
876 esac
877 install_headers_dir=install-headers-cpio
878 use_collect2=yes
879 ;;
880 hppa1.0-*-hpux10*)
881 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
882 xm_defines=POSIX
883 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
884 xmake_file="pa/x-ada"
885 if test x$enable_threads = x; then
886 enable_threads=$have_pthread_h
887 fi
888 case x${enable_threads} in
889 xyes | xdce)
890 tmake_file="${tmake_file} pa/t-dce-thr"
891 ;;
892 esac
893 install_headers_dir=install-headers-cpio
894 use_collect2=yes
895 ;;
896 hppa*64*-*-hpux11*)
897 xm_defines=POSIX
898 if test x$gas = xyes
899 then
900 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h elfos.h \
901 pa/pa64-regs.h pa/long_double.h pa/pa-hpux.h \
902 pa/pa-hpux11.h pa/pa-64.h pa/pa64-hpux.h"
903 else
904 tm_file="pa/pa64-start.h ${tm_file} dbxelf.h pa/elf.h \
905 pa/pa64-regs.h pa/long_double.h pa/pa-hpux.h \
906 pa/pa-hpux11.h pa/pa-64.h pa/pa64-hpux.h"
907 fi
908 need_64bit_hwint=yes
909 tmake_file="pa/t-pa64 pa/t-pa-hpux"
910 xmake_file="pa/x-ada"
911 target_cpu_default="(MASK_PA_11|MASK_PA_20|MASK_GAS)"
912
913 if test x$gnu_ld = xyes
914 then
915 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
916 fi
917 # if [ x$enable_threads = x ]; then
918 # enable_threads=$have_pthread_h
919 # fi
920 # if [ x$enable_threads = xyes ]; then
921 # thread_file='dce'
922 # tmake_file="${tmake_file} pa/t-dce-thr"
923 # fi
924 install_headers_dir=install-headers-cpio
925 use_collect2=yes
926 ;;
927 hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
928 target_cpu_default="MASK_PA_11"
929 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
930 xm_defines=POSIX
931 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
932 xmake_file="pa/x-ada"
933 # if test x$enable_threads = x; then
934 # enable_threads=$have_pthread_h
935 # fi
936 # if test x$enable_threads = xyes; then
937 # thread_file='dce'
938 # tmake_file="${tmake_file} pa/t-dce-thr"
939 # fi
940 install_headers_dir=install-headers-cpio
941 use_collect2=yes
942 ;;
943 hppa1.0-*-hpux11*)
944 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
945 xm_defines=POSIX
946 tmake_file="pa/t-pa pa/t-pa-hpux pa/t-hpux-shlib"
947 xmake_file="pa/x-ada"
948 # if test x$enable_threads = x; then
949 # enable_threads=$have_pthread_h
950 # fi
951 # if test x$enable_threads = xyes; then
952 # thread_file='dce'
953 # tmake_file="${tmake_file} pa/t-dce-thr"
954 # fi
955 install_headers_dir=install-headers-cpio
956 use_collect2=yes
957 ;;
958 hppa1.1-*-hpux* | hppa2*-*-hpux*)
959 target_cpu_default="MASK_PA_11"
960 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
961 xm_defines=POSIX
962 tmake_file=pa/t-pa-hpux
963 install_headers_dir=install-headers-cpio
964 use_collect2=yes
965 ;;
966 hppa1.0-*-hpux*)
967 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
968 xm_defines=POSIX
969 tmake_file=pa/t-pa-hpux
970 install_headers_dir=install-headers-cpio
971 use_collect2=yes
972 ;;
973 hppa1.1-*-hiux* | hppa2*-*-hiux*)
974 target_cpu_default="MASK_PA_11"
975 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
976 xm_defines=POSIX
977 tmake_file=pa/t-pa-hpux
978 install_headers_dir=install-headers-cpio
979 use_collect2=yes
980 ;;
981 hppa1.0-*-hiux*)
982 tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
983 xm_defines=POSIX
984 tmake_file=pa/t-pa-hpux
985 install_headers_dir=install-headers-cpio
986 use_collect2=yes
987 ;;
988 hppa*-*-lites*)
989 tm_file="${tm_file} pa/pa32-regs.h dbxelf.h elfos.h pa/elf.h"
990 target_cpu_default="MASK_PA_11"
991 tmake_file="pa/t-bsd pa/t-pa"
992 xmake_file="pa/x-ada"
993 use_collect2=yes
994 ;;
995 hppa*-*-mpeix*)
996 tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-mpeix.h"
997 tmake_file=pa/t-mpeix
998 echo "You must use gas. Assuming it is already installed."
999 gas=yes
1000 install_headers_dir=install-headers-tar
1001 use_collect2=yes
1002 ;;
1003 i370-*-opened*) # IBM 360/370/390 Architecture
1004 xm_defines='POSIX FATAL_EXIT_CODE=12'
1005 tm_file=i370/oe.h
1006 tmake_file="i370/t-oe i370/t-i370"
1007 c_target_objs="i370-c.o"
1008 cxx_target_objs="i370-c.o"
1009 ;;
1010 i370-*-mvs*)
1011 xm_defines='POSIX FATAL_EXIT_CODE=12'
1012 tm_file=i370/mvs.h
1013 tmake_file="i370/t-i370"
1014 c_target_objs="i370-c.o"
1015 cxx_target_objs="i370-c.o"
1016 ;;
1017 i370-*-linux*)
1018 tm_file="dbxelf.h elfos.h svr4.h linux.h i370/linux.h ${tm_file}"
1019 tmake_file="t-slibgcc-elf-ver t-linux"
1020 # broken_install=yes
1021 elf=yes
1022 ;;
1023 i[34567]86-*-darwin*)
1024 tm_file="${tm_file} darwin.h i386/darwin.h"
1025 tm_p_file="${tm_p_file} darwin-protos.h"
1026 tmake_file="t-darwin"
1027 extra_objs="darwin.o"
1028 target_gtfiles="\$(srcdir)/config/darwin.c"
1029 c_target_objs="darwin-c.o"
1030 cxx_target_objs="darwin-c.o"
1031 extra_parts="crt2.o"
1032 # Darwin linker does collect2 functionality
1033 use_collect2=no
1034 ;;
1035 i[34567]86-*-elf*)
1036 xm_defines=POSIX
1037 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h"
1038 tmake_file="i386/t-i386elf t-svr4"
1039 ;;
1040 i[34567]86-ncr-sysv4*) # NCR 3000 - ix86 running system V.4
1041 xm_defines="POSIX SMALL_ARG_MAX"
1042 if test x$stabs = xyes -a x$gas = xyes
1043 then
1044 tm_file=i386/sysv4gdb.h
1045 else
1046 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv4-cpp.h"
1047 fi
1048 extra_parts="crtbegin.o crtend.o"
1049 tmake_file=i386/t-crtpic
1050 ;;
1051 i[34567]86-*-netware) # Intel 80386's running netware
1052 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h netware.h i386/netware.h"
1053 tmake_file=i386/t-netware
1054 ;;
1055 i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
1056 if test x$gas = xyes
1057 then
1058 tm_file="${tm_file} usegas.h"
1059 fi
1060 xm_defines="POSIX SMALL_ARG_MAX"
1061 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ptx4.h i386/ptx4-i.h"
1062 tmake_file=t-svr4
1063 extra_parts="crtbegin.o crtend.o"
1064 install_headers_dir=install-headers-cpio
1065 ;;
1066 i[34567]86-sequent-sysv*) # would otherwise be caught by i?86-*-sysv*
1067 echo "*** Configuration $machine not supported" 1>&2
1068 exit 1
1069 ;;
1070 i[34567]86-*-aout*)
1071 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/i386-aout.h"
1072 ;;
1073 i[34567]86-*-beoself* | i[34567]86-*-beos*)
1074 xm_defines=POSIX
1075 tmake_file='i386/t-beos i386/t-crtpic'
1076 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/beos-elf.h"
1077 extra_parts='crtbegin.o crtend.o'
1078 ;;
1079 i[34567]86-*-freebsd2 | i[34567]86-*-freebsd2.* | i[34567]86-*-freebsd*aout*)
1080 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/freebsd-aout.h"
1081 tmake_file=t-freebsd
1082 ;;
1083 i[34567]86-*-freebsd*)
1084 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/freebsd.h"
1085 ;;
1086 x86_64-*-freebsd*)
1087 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"
1088 ;;
1089 i[34567]86-*-netbsdelf*)
1090 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
1091 ;;
1092 i[34567]86-*-netbsd*)
1093 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h netbsd.h netbsd-aout.h i386/netbsd.h"
1094 tmake_file=t-netbsd
1095 extra_parts=""
1096 use_collect2=yes
1097 ;;
1098 x86_64-*-netbsd*)
1099 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"
1100 ;;
1101 i[34567]86-*-openbsd*)
1102 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}"
1103 # needed to unconfuse gdb
1104 tmake_file="t-libc-ok t-openbsd i386/t-openbsd"
1105 # we need collect2 until our bug is fixed...
1106 use_collect2=yes
1107 ;;
1108 i[34567]86-*-coff*)
1109 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/i386-coff.h"
1110 ;;
1111 i[34567]86-*-linux*oldld*) # would otherwise be caught by i?86-*-linux*
1112 echo "*** Configuration $machine not supported" 1>&2
1113 exit 1
1114 ;;
1115 i[34567]86-*-linux*aout*) # Intel 80386's running GNU/Linux
1116 # with a.out format
1117 tmake_file="t-linux-aout i386/t-crtstuff"
1118 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h linux-aout.h i386/linux-aout.h"
1119 gnu_ld=yes
1120 ;;
1121 i[34567]86-*-linux*libc1) # Intel 80386's running GNU/Linux
1122 # with ELF format using the
1123 # GNU/Linux C library 5
1124 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
1125 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 i386/t-crtstuff"
1126 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1127 gnu_ld=yes
1128 if test x$enable_threads = xyes; then
1129 thread_file='single'
1130 fi
1131 ;;
1132 i[34567]86-*-linux*) # Intel 80386's running GNU/Linux
1133 # with ELF format using glibc 2
1134 # aka GNU/Linux C library 6
1135 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
1136 tmake_file="t-slibgcc-elf-ver t-linux i386/t-crtstuff"
1137 ;;
1138 x86_64-*-linux*)
1139 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h \
1140 i386/x86-64.h i386/linux64.h"
1141 tmake_file="t-slibgcc-elf-ver t-linux i386/t-linux64"
1142 ;;
1143 i[34567]86-*-gnu*)
1144 ;;
1145 i[34567]86-go32-msdos | i[34567]86-*-go32*)
1146 echo "GO32/DJGPP V1.X is no longer supported. Use *-pc-msdosdjgpp for DJGPP V2.X instead."
1147 exit 1
1148 ;;
1149 i[34567]86-pc-msdosdjgpp*)
1150 xm_file=i386/xm-djgpp.h
1151 tm_file="dbxcoff.h ${tm_file} i386/djgpp.h"
1152 tmake_file=i386/t-djgpp
1153 gnu_ld=yes
1154 gas=yes
1155 exeext=.exe
1156 case $host in *pc-msdosdjgpp*)
1157 target_alias=djgpp
1158 ;;
1159 esac
1160 ;;
1161 i[34567]86-moss-msdos* | i[34567]86-*-moss*)
1162 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h i386/moss.h"
1163 tmake_file=t-libc-ok
1164 gnu_ld=yes
1165 gas=yes
1166 ;;
1167 i[34567]86-*-lynxos*)
1168 if test x$gas = xyes
1169 then
1170 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx.h i386/lynx.h"
1171 else
1172 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h lynx-ng.h i386/lynx-ng.h"
1173 fi
1174 ;;
1175 i[34567]86-*-mach*)
1176 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h i386/mach.h"
1177 # tmake_file=t-libc-ok
1178 use_collect2=yes
1179 ;;
1180 i[34567]86-go32-rtems* | i[34567]86-*-rtemscoff*)
1181 # would otherwise be caught by i?86-*-rtems*
1182 echo "*** Configuration $machine not supported" 1>&2
1183 exit 1
1184 ;;
1185 i[34567]86-*-rtems*)
1186 xm_defines=POSIX
1187 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/rtemself.h rtems.h"
1188 extra_parts="crtbegin.o crtend.o crti.o crtn.o"
1189 tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
1190 if test x$enable_threads = xyes; then
1191 thread_file='rtems'
1192 fi
1193 ;;
1194 i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
1195 xm_defines=POSIX
1196 install_headers_dir=install-headers-cpio
1197 tm_file="${tm_file} i386/unix.h i386/att.h i386/sco5.h"
1198 if test x$gas = xyes
1199 then
1200 tm_file="usegas.h ${tm_file}"
1201 tmake_file=i386/t-sco5gas
1202 else
1203 tmake_file=i386/t-sco5
1204 fi
1205 extra_parts="crti.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1206 ;;
1207 i[34567]86-*-solaris2*)
1208 xm_defines="POSIX SMALL_ARG_MAX"
1209 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h sol2.h i386/sol2.h"
1210 tmake_file="i386/t-sol2 t-svr4"
1211 if test x$gnu_ld = xyes; then
1212 tmake_file="$tmake_file t-slibgcc-elf-ver"
1213 else
1214 tmake_file="$tmake_file t-slibgcc-sld"
1215 fi
1216 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
1217 if test x${enable_threads} = x; then
1218 enable_threads=$have_pthread_h
1219 if test x${enable_threads} = x; then
1220 enable_threads=$have_thread_h
1221 fi
1222 fi
1223 if test x${enable_threads} = xyes; then
1224 if test x${have_pthread_h} = xyes; then
1225 thread_file='posix'
1226 else
1227 thread_file='solaris'
1228 fi
1229 fi
1230 ;;
1231 i[34567]86-*-sysv5*) # Intel x86 on System V Release 5
1232 xm_defines=POSIX
1233 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv5.h"
1234 if test x$stabs = xyes
1235 then
1236 tm_file="${tm_file} dbx.h"
1237 fi
1238 tmake_file="i386/t-crtpic t-svr4"
1239 extra_parts="crtbegin.o crtend.o"
1240 if test x$enable_threads = xyes; then
1241 thread_file='posix'
1242 fi
1243 ;;
1244 i[34567]86-*-sysv4*) # Intel 80386's running system V.4
1245 xm_defines="POSIX SMALL_ARG_MAX"
1246 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h i386/sysv4.h i386/sysv4-cpp.h"
1247 if test x$stabs = xyes
1248 then
1249 tm_file="${tm_file} dbx.h"
1250 fi
1251 tmake_file="i386/t-crtpic t-svr4"
1252 extra_parts="crtbegin.o crtend.o"
1253 ;;
1254 i[34567]86-*-udk*) # Intel x86 on SCO UW/OSR5 Dev Kit
1255 xm_defines=POSIX
1256 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"
1257 tmake_file="i386/t-crtpic i386/t-udk t-svr4"
1258 extra_parts="crtbegin.o crtend.o"
1259 install_headers_dir=install-headers-cpio
1260 ;;
1261 i[34567]86-*-sysv*) # Intel 80386's running system V
1262 xm_defines=POSIX
1263 if test x$gas = xyes
1264 then
1265 if test x$stabs = xyes
1266 then
1267 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h i386/svr3dbx.h"
1268 tmake_file=i386/t-svr3dbx
1269 extra_parts="svr3.ifile svr3z.ifile"
1270 else
1271 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/svr3gas.h"
1272 extra_parts="crtbegin.o crtend.o"
1273 tmake_file=i386/t-crtstuff
1274 fi
1275 else
1276 tm_file="${tm_file} svr3.h i386/unix.h i386/att.h i386/sysv3.h"
1277 extra_parts="crtbegin.o crtend.o"
1278 tmake_file=i386/t-crtstuff
1279 fi
1280 tmake_file="$tmake_file i386/t-crtpic"
1281 ;;
1282 i386-*-vsta) # Intel 80386's running VSTa kernel
1283 xm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/xm-vsta.h"
1284 tm_file="${tm_file} i386/vsta.h"
1285 ;;
1286 i[34567]86-*-win32)
1287 xm_defines=POSIX
1288 xm_file=i386/xm-cygwin.h
1289 tmake_file=i386/t-cygwin
1290 tm_file="${tm_file} i386/win32.h"
1291 extra_objs=winnt.o
1292 if test x$enable_threads = xyes; then
1293 thread_file='win32'
1294 fi
1295 exeext=.exe
1296 ;;
1297 i[34567]86-*-pe | i[34567]86-*-cygwin*)
1298 xm_defines=POSIX
1299 xm_file=i386/xm-cygwin.h
1300 tmake_file=i386/t-cygwin
1301 tm_file=i386/cygwin.h
1302 extra_objs=winnt.o
1303 if test x$enable_threads = xyes; then
1304 thread_file='win32'
1305 fi
1306 exeext=.exe
1307 ;;
1308 i[34567]86-*-mingw32*)
1309 tm_file=i386/mingw32.h
1310 xm_defines=POSIX
1311 xm_file=i386/xm-mingw32.h
1312 tmake_file="i386/t-cygwin i386/t-mingw32"
1313 extra_objs=winnt.o
1314 if test x$enable_threads = xyes; then
1315 thread_file='win32'
1316 fi
1317 exeext=.exe
1318 case $machine in
1319 *mingw32crt*)
1320 tm_file="${tm_file} i386/crtdll.h"
1321 ;;
1322 *minwg32msv* | *mingw32*)
1323 ;;
1324 esac
1325 ;;
1326 i[34567]86-*-uwin*)
1327 tm_file="i386/cygwin.h i386/uwin.h"
1328 tmake_file="i386/t-cygwin i386/t-uwin"
1329 extra_objs=winnt.o
1330 if test x$enable_threads = xyes; then
1331 thread_file='win32'
1332 fi
1333 exeext=.exe
1334 ;;
1335 i[34567]86-*-interix3*)
1336 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"
1337 xm_defines=POSIX
1338 tmake_file="t-interix i386/t-interix"
1339 extra_objs=winnt.o
1340 xmake_file="x-interix"
1341 if test x$enable_threads = xyes ; then
1342 thread_file='posix'
1343 fi
1344 if test x$stabs = xyes ; then
1345 tm_file="${tm_file} dbxcoff.h"
1346 fi
1347 ;;
1348 i[34567]86-*-interix*)
1349 tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h interix.h"
1350 xm_defines=POSIX
1351 tmake_file="t-interix i386/t-interix"
1352 extra_objs=winnt.o
1353 if test x$enable_threads = xyes ; then
1354 thread_file='posix'
1355 fi
1356 if test x$stabs = xyes ; then
1357 tm_file="${tm_file} dbxcoff.h"
1358 fi
1359 ;;
1360 i960-*-coff*)
1361 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h libgloss.h"
1362 tmake_file=i960/t-960bare
1363 c_target_objs="i960-c.o"
1364 cxx_target_objs="i960-c.o"
1365 ;;
1366 i960-*-rtems)
1367 xm_defines=POSIX
1368 tmake_file="i960/t-960bare t-rtems"
1369 tm_file="${tm_file} dbxcoff.h i960/i960-coff.h i960/rtems.h rtems.h"
1370 if test x$enable_threads = xyes; then
1371 thread_file='rtems'
1372 fi
1373 c_target_objs="i960-c.o"
1374 cxx_target_objs="i960-c.o"
1375 ;;
1376 i960-*-*) # Default i960 environment.
1377 use_collect2=yes
1378 tmake_file=i960/t-960bare
1379 c_target_objs="i960-c.o"
1380 cxx_target_objs="i960-c.o"
1381 ;;
1382 ia64*-*-aix*)
1383 tm_file="${tm_file} dbxelf.h elfos.h svr4.h ia64/sysv4.h ia64/aix.h"
1384 tmake_file="ia64/t-ia64 ia64/t-aix"
1385 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1386 extra_parts="crti.o crtn.o crtbegin.o crtend.o crtbeginS.o crtendS.o"
1387 ;;
1388 ia64*-*-elf*)
1389 tm_file="${tm_file} dbxelf.h elfos.h ia64/sysv4.h ia64/elf.h"
1390 tmake_file="ia64/t-ia64"
1391 target_cpu_default="0"
1392 if test x$gas = xyes
1393 then
1394 target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
1395 fi
1396 if test x$gnu_ld = xyes
1397 then
1398 target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
1399 fi
1400 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
1401 ;;
1402 ia64*-*-freebsd*)
1403 tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} ia64/sysv4.h ia64/freebsd.h"
1404 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1405 tmake_file="${tmake_file} ia64/t-ia64"
1406 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
1407 ;;
1408 ia64*-*-linux*)
1409 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h ia64/sysv4.h ia64/linux.h"
1410 tmake_file="t-slibgcc-elf-ver t-linux ia64/t-ia64 ia64/t-glibc"
1411 target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
1412 extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o"
1413 if test x"$use_libunwind_exceptions" = xyes; then
1414 tmake_file="$tmake_file t-libunwind"
1415 fi
1416 ;;
1417 ia64*-*-hpux*)
1418 tm_file="${tm_file} dbxelf.h elfos.h svr4.h ia64/sysv4.h ia64/hpux.h ia64/hpux_longdouble.h"
1419 tmake_file="ia64/t-ia64 ia64/t-hpux"
1420 target_cpu_default="MASK_GNU_AS"
1421 if test x$enable_threads = xyes; then
1422 thread_file='posix'
1423 fi
1424 use_collect2=no
1425 c_target_objs="ia64-c.o"
1426 cxx_target_objs="ia64-c.o"
1427 ;;
1428 ip2k-*-elf)
1429 ;;
1430 m32r-*-elf*)
1431 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
1432 extra_parts="crtinit.o crtfini.o"
1433 ;;
1434 # m68hc11 and m68hc12 share the same machine description.
1435 m68hc11-*-*|m6811-*-*)
1436 tm_file="dbxelf.h elfos.h m68hc11/m68hc11.h"
1437 tm_p_file="m68hc11/m68hc11-protos.h"
1438 md_file="m68hc11/m68hc11.md"
1439 out_file="m68hc11/m68hc11.c"
1440 tmake_file="m68hc11/t-m68hc11-gas"
1441 ;;
1442 m68hc12-*-*|m6812-*-*)
1443 tm_file="m68hc11/m68hc12.h dbxelf.h elfos.h m68hc11/m68hc11.h"
1444 tm_p_file="m68hc11/m68hc11-protos.h"
1445 md_file="m68hc11/m68hc11.md"
1446 out_file="m68hc11/m68hc11.c"
1447 tmake_file="m68hc11/t-m68hc11-gas"
1448 ;;
1449 m68000-hp-bsd*) # HP 9000/200 running BSD
1450 tm_file=m68k/hp2bsd.h
1451 use_collect2=yes
1452 ;;
1453 m68000-hp-hpux*) # HP 9000 series 300
1454 xm_defines=POSIX
1455 if test x$gas = xyes
1456 then
1457 tm_file=m68k/hp310g.h
1458 else
1459 tm_file=m68k/hp310.h
1460 fi
1461 tmake_file=m68k/t-hp320
1462 install_headers_dir=install-headers-cpio
1463 use_collect2=yes
1464 ;;
1465 m68000-sun-sunos3*)
1466 tm_file=m68k/sun2.h
1467 use_collect2=yes
1468 ;;
1469 m68000-sun-sunos4*)
1470 tm_file=m68k/sun2o4.h
1471 use_collect2=yes
1472 ;;
1473 m68000-att-sysv*)
1474 xm_defines=POSIX
1475 if test x$gas = xyes
1476 then
1477 tm_file=m68k/3b1g.h
1478 else
1479 tm_file=m68k/3b1.h
1480 fi
1481 use_collect2=yes
1482 ;;
1483 m68k-atari-sysv4*) # Atari variant of V.4.
1484 tm_file=m68k/atari.h
1485 xm_defines=POSIX
1486 tmake_file=t-svr4
1487 extra_parts="crtbegin.o crtend.o"
1488 ;;
1489 m68k-apollo-sysv* | m68k-bull-sysv*)
1490 # can otherwise be caught by m68k-*-sysv4*
1491 echo "*** Configuration $machine not supported" 1>&2
1492 exit 1
1493 ;;
1494 m68k-motorola-sysv*)
1495 tm_file=m68k/mot3300.h
1496 xm_defines=POSIX
1497 if test x$gas = xyes
1498 then
1499 if test x$gnu_ld = xyes
1500 then
1501 tmake_file=m68k/t-mot3300-gald
1502 else
1503 tmake_file=m68k/t-mot3300-gas
1504 use_collect2=yes
1505 fi
1506 else
1507 if test x$gnu_ld = xyes
1508 then
1509 tmake_file=m68k/t-mot3300-gld
1510 else
1511 tmake_file=m68k/t-mot3300
1512 use_collect2=yes
1513 fi
1514 fi
1515 gdb_needs_out_file_path=yes
1516 extra_parts="crt0.o mcrt0.o"
1517 ;;
1518 m68k-ncr-sysv*) # NCR Tower 32 SVR3
1519 tm_file=m68k/tower-as.h
1520 xm_defines=POSIX
1521 extra_parts="crtbegin.o crtend.o"
1522 ;;
1523 m68k-plexus-sysv*)
1524 tm_file=m68k/plexus.h
1525 xm_defines=POSIX
1526 use_collect2=yes
1527 ;;
1528 m68k-tti-*)
1529 tm_file=m68k/pbb.h
1530 xm_defines=POSIX
1531 ;;
1532 m68k-crds-unos*)
1533 xm_defines=POSIX
1534 tm_file=m68k/crds.h
1535 use_collect2=yes
1536 ;;
1537 m68k-cbm-sysv4*) # Commodore variant of V.4.
1538 tm_file=m68k/amix.h
1539 xm_defines=POSIX
1540 tmake_file=t-svr4
1541 extra_parts="crtbegin.o crtend.o"
1542 ;;
1543 m68k-ccur-rtu)
1544 tm_file=m68k/ccur-GAS.h
1545 use_collect2=yes
1546 ;;
1547 m68k-hp-bsd4.4*) # HP 9000/3xx running 4.4bsd
1548 tm_file=m68k/hp3bsd44.h
1549 use_collect2=yes
1550 ;;
1551 m68k-hp-bsd*) # HP 9000/3xx running Berkeley Unix
1552 tm_file=m68k/hp3bsd.h
1553 use_collect2=yes
1554 ;;
1555 m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
1556 xm_defines=POSIX
1557 if test x$gas = xyes
1558 then
1559 xmake_file=m68k/x-hp320g
1560 tm_file=m68k/hp320g.h
1561 else
1562 xmake_file=m68k/x-hp320
1563 tm_file=m68k/hpux7.h
1564 fi
1565 install_headers_dir=install-headers-cpio
1566 use_collect2=yes
1567 ;;
1568 m68k-hp-hpux*) # HP 9000 series 300
1569 xm_defines=POSIX
1570 if test x$gas = xyes
1571 then
1572 xmake_file=m68k/x-hp320g
1573 tm_file=m68k/hp320g.h
1574 else
1575 xmake_file=m68k/x-hp320
1576 tm_file=m68k/hp320.h
1577 fi
1578 install_headers_dir=install-headers-cpio
1579 use_collect2=yes
1580 ;;
1581 m68k-sun-mach*)
1582 tm_file=m68k/sun3mach.h
1583 use_collect2=yes
1584 ;;
1585 m68k-sun-sunos3*)
1586 if test x$with_fp = xno
1587 then
1588 tm_file=m68k/sun3n3.h
1589 else
1590 tm_file=m68k/sun3o3.h
1591 fi
1592 use_collect2=yes
1593 ;;
1594 m68k-sun-sunos*) # For SunOS 4 (the default).
1595 if test x$with_fp = xno
1596 then
1597 tm_file=m68k/sun3n.h
1598 else
1599 tm_file=m68k/sun3.h
1600 fi
1601 use_collect2=yes
1602 ;;
1603 m68k-*-aout*)
1604 tmake_file=m68k/t-m68kbare
1605 tm_file="m68k/m68k-aout.h libgloss.h"
1606 ;;
1607 m68k-*-coff*)
1608 tmake_file=m68k/t-m68kbare
1609 tm_file="m68k/m68k-coff.h dbx.h"
1610 ;;
1611 m68020-*-elf* | m68k-*-elf*)
1612 tm_file="m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h"
1613 xm_defines=POSIX
1614 tmake_file=m68k/t-m68kelf
1615 extra_parts="crtbegin.o crtend.o"
1616 ;;
1617 m68010-*-netbsdelf* | m68k*-*-netbsdelf*)
1618 tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h m68k/netbsd-elf.h"
1619 case $machine in
1620 m68010*)
1621 target_cpu_default="0"
1622 ;;
1623 *)
1624 target_cpu_default="MASK_68020|MASK_68881|MASK_BITFIELD"
1625 ;;
1626 esac
1627 ;;
1628 m68k*-*-netbsd*)
1629 tm_file=m68k/netbsd.h
1630 tmake_file=t-netbsd
1631 extra_parts=""
1632 use_collect2=yes
1633 ;;
1634 m68k*-*-openbsd*)
1635 # needed to unconfuse gdb
1636 tmake_file="t-libc-ok t-openbsd m68k/t-openbsd"
1637 # we need collect2 until our bug is fixed...
1638 use_collect2=yes
1639 ;;
1640 m68k-*-sysv4*) # Motorola m68k's running system V.4
1641 tm_file=m68k/m68kv4.h
1642 xm_defines=POSIX
1643 tmake_file=t-svr4
1644 extra_parts="crtbegin.o crtend.o"
1645 ;;
1646 m68k-*-linux*aout*) # Motorola m68k's running GNU/Linux
1647 # with a.out format
1648 tm_file=m68k/linux-aout.h
1649 tmake_file="t-linux-aout m68k/t-linux-aout"
1650 gnu_ld=yes
1651 ;;
1652 m68k-*-linux*libc1) # Motorola m68k's running GNU/Linux
1653 # with ELF format using the
1654 # GNU/Linux C library 5
1655 tm_file=m68k/linux.h
1656 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 m68k/t-linux"
1657 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1658 gnu_ld=yes
1659 ;;
1660 m68k-*-linux*) # Motorola m68k's running GNU/Linux
1661 # with ELF format using glibc 2
1662 # aka the GNU/Linux C library 6.
1663 tm_file=m68k/linux.h
1664 tmake_file="t-slibgcc-elf-ver t-linux m68k/t-linux"
1665 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
1666 gnu_ld=yes
1667 ;;
1668 m68k-*-psos*)
1669 tmake_file=m68k/t-m68kbare
1670 tm_file=m68k/m68k-psos.h
1671 ;;
1672 m68k-*-rtemscoff*) # would otherwise be caught by m68k-*-rtems*
1673 echo "*** Configuration $machine not supported" 1>&2
1674 exit 1
1675 ;;
1676 m68k-*-rtems*)
1677 xm_defines=POSIX
1678 tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
1679 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"
1680 extra_parts="crtbegin.o crtend.o"
1681 if test x$enable_threads = xyes; then
1682 thread_file='rtems'
1683 fi
1684 ;;
1685 m88k-*-aout*)
1686 xm_defines=POSIX
1687 tm_file=m88k/m88k-aout.h
1688 ;;
1689 m88k-*-openbsd*)
1690 tmake_file="${tmake_file} m88k/t-luna-gas"
1691 tm_file="m88k/aout-dbx.h aoutos.h m88k/m88k.h openbsd.h ${tm_file}"
1692 ;;
1693 m88k-*-sysv4*)
1694 xm_defines=POSIX
1695 tm_file="dbxelf.h elfos.h svr4.h m88k/sysv4.h"
1696 extra_parts="crtbegin.o crtend.o"
1697 tmake_file=m88k/t-sysv4
1698 ;;
1699 mcore-*-elf)
1700 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} mcore/mcore-elf.h"
1701 tmake_file=mcore/t-mcore
1702 ;;
1703 mcore-*-pe*)
1704 tm_file=mcore/mcore-pe.h
1705 tmake_file=mcore/t-mcore-pe
1706 ;;
1707 mips-sgi-irix6*o32) # SGI System V.4., IRIX 6, O32 ABI
1708 if test x$gas = xyes
1709 then
1710 tm_file="mips/iris5.h mips/iris5gas.h mips/iris6-o32-gas.h"
1711 if test x$stabs = xyes
1712 then
1713 tm_file="${tm_file} dbx.h"
1714 fi
1715 tmake_file=mips/t-iris5-gas
1716 else
1717 tm_file="mips/iris5.h mips/iris6-o32-as.h"
1718 tmake_file=mips/t-iris5-as
1719 fi
1720 tm_file="${tm_file} mips/iris6-o32.h"
1721 tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
1722 xm_defines=POSIX
1723 xm_file=mips/xm-iris5.h
1724 # mips-tfile doesn't work yet
1725 # See comment in mips/iris5.h file.
1726 use_collect2=yes
1727 # if test x$enable_threads = xyes; then
1728 # thread_file='irix'
1729 # fi
1730 ;;
1731 mips-sgi-irix6*) # SGI System V.4., IRIX 6
1732 if test "x$gnu_ld" = xyes
1733 then
1734 tm_file="mips/iris6.h mips/iris6gld.h"
1735 else
1736 tm_file=mips/iris6.h
1737 fi
1738 tmake_file="mips/t-iris mips/t-iris5-6 mips/t-iris6"
1739 xm_defines=POSIX
1740 # if test x$enable_threads = xyes; then
1741 # thread_file='irix'
1742 # fi
1743 ;;
1744 mips-sgi-irix5cross64) # Irix5 host, Irix 6 target, cross64
1745 tm_file="mips/iris6.h mips/cross64.h"
1746 xm_defines=POSIX
1747 xm_file=mips/xm-iris5.h
1748 tmake_file="mips/t-iris mips/t-cross64"
1749 # See comment in mips/iris[56].h files.
1750 use_collect2=yes
1751 # if test x$enable_threads = xyes; then
1752 # thread_file='irix'
1753 # fi
1754 ;;
1755 mips-sni-sysv4)
1756 if test x$gas = xyes
1757 then
1758 if test x$stabs = xyes
1759 then
1760 tm_file=mips/iris5gdb.h
1761 else
1762 tm_file="mips/sni-svr4.h mips/sni-gas.h"
1763 fi
1764 else
1765 tm_file=mips/sni-svr4.h
1766 fi
1767 xm_defines=POSIX
1768 if test x$gnu_ld != xyes
1769 then
1770 use_collect2=yes
1771 fi
1772 ;;
1773 mips-sgi-irix5*) # SGI System V.4., IRIX 5
1774 if test x$gas = xyes
1775 then
1776 tm_file="mips/iris5.h mips/iris5gas.h"
1777 if test x$stabs = xyes
1778 then
1779 tm_file="${tm_file} dbx.h"
1780 fi
1781 tmake_file=mips/t-iris5-gas
1782 else
1783 tm_file=mips/iris5.h
1784 tmake_file=mips/t-iris5-as
1785 fi
1786 tmake_file="${tmake_file} mips/t-iris mips/t-iris5-6"
1787 xm_defines=POSIX
1788 xm_file=mips/xm-iris5.h
1789 # mips-tfile doesn't work yet
1790 # See comment in mips/iris5.h file.
1791 use_collect2=yes
1792 # if test x$enable_threads = xyes; then
1793 # thread_file='irix'
1794 # fi
1795 ;;
1796 mips-sgi-*) # would otherwise be caught by mips-*-elf*
1797 echo "*** Configuration $machine not supported" 1>&2
1798 exit 1
1799 ;;
1800 mips*-*-netbsd*) # NetBSD/mips, either endian.
1801 target_cpu_default="MASK_GAS|MASK_ABICALLS"
1802 tm_file="elfos.h ${tm_file} mips/netbsd.h"
1803 tmake_file="${tmake_file}"
1804 ;;
1805 mips*-*-linux*) # Linux MIPS, either endian.
1806 tm_file="dbxelf.h elfos.h svr4.h linux.h ${tm_file} mips/linux.h"
1807 case $machine in
1808 mipsisa32*-*)
1809 target_cpu_default="MASK_SOFT_FLOAT"
1810 tm_defines="MIPS_ISA_DEFAULT=32"
1811 ;;
1812 esac
1813 tmake_file="t-slibgcc-elf-ver t-linux"
1814 ;;
1815 mips*el-*-openbsd*) # mips little endian
1816 target_cpu_default="MASK_GAS|MASK_ABICALLS"
1817 ;;
1818 mips*-*-openbsd*) # mips big endian
1819 target_cpu_default="MASK_GAS|MASK_ABICALLS"
1820 tm_file="mips/openbsd-be.h ${tm_file}"
1821 ;;
1822 mips-*-ecoff* | mipsel-*-ecoff*)
1823 if test x$stabs = xyes; then
1824 tm_file="${tm_file} dbx.h"
1825 fi
1826 tmake_file=mips/t-ecoff
1827 ;;
1828 mipsisa32-*-elf* | mipsisa32el-*-elf*)
1829 tm_file="${tm_file} mips/elf.h"
1830 tmake_file=mips/t-isa3264
1831 tm_defines="MIPS_ISA_DEFAULT=32 MIPS_ABI_DEFAULT=ABI_MEABI"
1832 ;;
1833 mipsisa64-*-elf* | mipsisa64el-*-elf*)
1834 tm_file="${tm_file} mips/elf.h"
1835 tmake_file=mips/t-isa3264
1836 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1837 tm_defines="MIPS_ISA_DEFAULT=64 MIPS_ABI_DEFAULT=ABI_MEABI"
1838 ;;
1839 mipsisa64sr71k-*-elf*)
1840 tm_file="${tm_file} mips/elf.h"
1841 tmake_file=mips/t-sr71k
1842 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1843 tm_defines="MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sr71000\\\" MIPS_ABI_DEFAULT=ABI_MEABI"
1844 ;;
1845 mipsisa64sb1-*-elf* | mipsisa64sb1el-*-elf*)
1846 tm_file="${tm_file} mips/elf.h"
1847 tmake_file=mips/t-elf
1848 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1849 tm_defines="MIPS_ISA_DEFAULT=64 MIPS_CPU_STRING_DEFAULT=\\\"sb1\\\" MIPS_ABI_DEFAULT=ABI_O64"
1850 ;;
1851 mips-*-elf* | mipsel-*-elf*)
1852 tm_file="${tm_file} mips/elf.h"
1853 tmake_file=mips/t-elf
1854 ;;
1855 mips64-*-elf* | mips64el-*-elf*)
1856 tm_file="${tm_file} mips/elf64.h"
1857 tmake_file=mips/t-elf
1858 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1859 tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
1860 ;;
1861 mips64vr-*-elf* | mips64vrel-*-elf*)
1862 tm_file="mips/vr.h ${tm_file} mips/elf64.h"
1863 tm_defines="MIPS_ABI_DEFAULT=ABI_O64 MIPS_MARCH_CONTROLS_SOFT_FLOAT=1"
1864 tmake_file=mips/t-vr
1865 ;;
1866 mips64orion-*-elf* | mips64orionel-*-elf*)
1867 tm_file="${tm_file} mips/elforion.h mips/elf64.h"
1868 tmake_file=mips/t-elf
1869 tmake_file=mips/t-elf
1870 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1871 tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
1872 ;;
1873 mips64orion-*-rtems*)
1874 xm_defines=POSIX
1875 tm_file="${tm_file} mips/elforion.h mips/elf64.h mips/rtems64.h rtems.h"
1876 tmake_file="mips/t-elf t-rtems"
1877 tmake_file=mips/t-elf
1878 target_cpu_default="MASK_64BIT|MASK_FLOAT64|MASK_GAS"
1879 tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
1880 if test x$enable_threads = xyes; then
1881 thread_file='rtems'
1882 fi
1883 ;;
1884 mips*-*-rtems*)
1885 xm_defines=POSIX
1886 tm_file="${tm_file} mips/elf.h mips/rtems.h rtems.h"
1887 tmake_file="mips/t-elf t-rtems"
1888 if test x$enable_threads = xyes; then
1889 thread_file='rtems'
1890 fi
1891 ;;
1892 mipstx39-*-elf* | mipstx39el-*-elf*)
1893 tm_file="${tm_file} mips/r3900.h mips/elf.h"
1894 tmake_file=mips/t-r3900
1895 ;;
1896 mmix-knuth-mmixware)
1897 need_64bit_hwint=yes
1898 ;;
1899 mn10200-*-*)
1900 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
1901 if test x$stabs = xyes
1902 then
1903 tm_file="${tm_file} dbx.h"
1904 fi
1905 use_collect2=no
1906 ;;
1907 mn10300-*-*)
1908 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
1909 if test x$stabs = xyes
1910 then
1911 tm_file="${tm_file} dbx.h"
1912 fi
1913 use_collect2=no
1914 ;;
1915 ns32k-*-netbsdelf*)
1916 echo "GCC does not yet support the ${machine} target"; exit 1
1917 ;;
1918 ns32k-*-netbsd*)
1919 tm_file="${tm_file} netbsd.h netbsd-aout.h ns32k/netbsd.h"
1920 # On NetBSD, the headers are already okay, except for math.h.
1921 tmake_file="t-netbsd ns32k/t-ns32k"
1922 extra_parts=""
1923 use_collect2=yes
1924 ;;
1925 pdp11-*-bsd)
1926 tm_file="${tm_file} pdp11/2bsd.h"
1927 ;;
1928 pdp11-*-*)
1929 ;;
1930 avr-*-*)
1931 ;;
1932 ns32k-*-openbsd*)
1933 # Nothing special
1934 ;;
1935 romp-*-openbsd*)
1936 # Nothing special
1937 ;;
1938 powerpc-*-openbsd*)
1939 tmake_file="${tmake_file} rs6000/t-rs6000 rs6000/t-openbsd"
1940 extra_headers=
1941 ;;
1942 powerpc64-*-linux*)
1943 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux64.h"
1944 out_file=rs6000/rs6000.c
1945 tmake_file="rs6000/t-rs6000 t-slibgcc-elf-ver t-linux rs6000/t-linux64"
1946 ;;
1947 powerpc64-*-gnu*)
1948 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"
1949 out_file=rs6000/rs6000.c
1950 tmake_file="rs6000/t-rs6000 t-slibgcc-elf-ver t-gnu rs6000/t-linux64"
1951 ;;
1952 powerpc-*-beos*)
1953 tm_file="${tm_file} rs6000/aix.h rs6000/beos.h rs6000/xcoff.h"
1954 xm_defines=POSIX
1955 tmake_file=rs6000/t-beos
1956 extra_headers=
1957 ;;
1958 powerpc-*-darwin*)
1959 tm_file="${tm_file} darwin.h rs6000/darwin.h"
1960 tm_p_file="${tm_p_file} darwin-protos.h"
1961 tmake_file="rs6000/t-rs6000 t-darwin rs6000/t-darwin"
1962 extra_objs="darwin.o"
1963 target_gtfiles="\$(srcdir)/config/darwin.c"
1964 c_target_objs="darwin-c.o"
1965 cxx_target_objs="darwin-c.o"
1966 extra_parts="crt2.o"
1967 # Darwin linker does collect2 functionality
1968 use_collect2=no
1969 extra_headers=altivec.h
1970 # override ppc default
1971 need_64bit_hwint=
1972 ;;
1973 powerpc*-*-freebsd*)
1974 tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} rs6000/sysv4.h rs6000/freebsd.h"
1975 out_file=rs6000/rs6000.c
1976 tmake_file="rs6000/t-ppcos ${tmake_file} rs6000/t-ppccomm"
1977 ;;
1978 powerpc-*-sysv*)
1979 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
1980 xm_defines=POSIX
1981 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
1982 ;;
1983 powerpc-*-netbsd*)
1984 tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h"
1985 tmake_file="${tmake_file} rs6000/t-netbsd"
1986 ;;
1987 powerpc-*-chorusos*)
1988 xm_defines=POSIX
1989 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h chorus.h"
1990 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
1991 case x${enable_threads} in
1992 xyes | xpthreads | xposix)
1993 thread_file='posix'
1994 ;;
1995 esac
1996 ;;
1997 powerpc-*-eabiaix*)
1998 xm_defines=POSIX
1999 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
2000 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2001 ;;
2002 powerpc-*-eabispe*)
2003 xm_defines=POSIX
2004 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabispe.h"
2005 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
2006 ;;
2007 powerpc-*-eabisimaltivec*)
2008 xm_defines=POSIX
2009 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"
2010 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
2011 ;;
2012 powerpc-*-eabisim*)
2013 xm_defines=POSIX
2014 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
2015 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2016 ;;
2017 powerpc-*-elf*)
2018 xm_defines=POSIX
2019 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
2020 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2021 ;;
2022 powerpc-*-eabialtivec*)
2023 xm_defines=POSIX
2024 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/eabialtivec.h"
2025 tmake_file="rs6000/t-ppcendian rs6000/t-ppccomm"
2026 ;;
2027 powerpc-*-eabi*)
2028 xm_defines=POSIX
2029 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h"
2030 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2031 ;;
2032 powerpc-*-rtems*)
2033 xm_defines=POSIX
2034 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h rtems.h"
2035 tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
2036 if test x$enable_threads = xyes; then
2037 thread_file='rtems'
2038 fi
2039 ;;
2040 powerpc-*-linux*libc1)
2041 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
2042 out_file=rs6000/rs6000.c
2043 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
2044 if test x$enable_threads = xyes; then
2045 thread_file='posix'
2046 fi
2047 ;;
2048 powerpc-*-linux-gnualtivec*)
2049 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h rs6000/linuxaltivec.h"
2050 out_file=rs6000/rs6000.c
2051 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
2052 ;;
2053 powerpc-*-linux*)
2054 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/linux.h"
2055 out_file=rs6000/rs6000.c
2056 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-linux rs6000/t-ppccomm"
2057 ;;
2058 powerpc-*-gnu-gnualtivec*)
2059 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"
2060 out_file=rs6000/rs6000.c
2061 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
2062 if test x$enable_threads = xyes; then
2063 thread_file='posix'
2064 fi
2065 ;;
2066 powerpc-*-gnu*)
2067 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"
2068 out_file=rs6000/rs6000.c
2069 tmake_file="rs6000/t-ppcos t-slibgcc-elf-ver t-gnu rs6000/t-ppccomm"
2070 if test x$enable_threads = xyes; then
2071 thread_file='posix'
2072 fi
2073 ;;
2074 powerpc-wrs-vxworks*)
2075 # We want vxworks.h after rs6000/sysv4.h, which unfortunately
2076 # means we have to redo the tm_file list from scratch.
2077 tm_file="rs6000/rs6000.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h"
2078 tm_file="${tm_file} vxworks.h rs6000/vxworks.h"
2079 tmake_file="${tmake_file} rs6000/t-ppccomm rs6000/t-vxworks"
2080 extra_headers=ppc-asm.h
2081 ;;
2082 powerpc-wrs-windiss*)
2083 xm_defines=POSIX
2084 tm_file="${tm_file} elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/windiss.h"
2085 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2086 thread_file=""
2087 ;;
2088 powerpcle-*-sysv*)
2089 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
2090 xm_defines=POSIX
2091 tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
2092 ;;
2093 powerpcle-*-elf*)
2094 xm_defines=POSIX
2095 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h"
2096 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2097 ;;
2098 powerpcle-*-eabisim*)
2099 xm_defines=POSIX
2100 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"
2101 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2102 ;;
2103 powerpcle-*-eabi*)
2104 xm_defines=POSIX
2105 tm_file="${tm_file} dbxelf.h elfos.h svr4.h freebsd-spec.h rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
2106 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
2107 ;;
2108 rs6000-ibm-aix3.[01]*)
2109 xm_defines=POSIX
2110 tm_file="${tm_file} rs6000/aix.h rs6000/aix31.h rs6000/xcoff.h"
2111 use_collect2=yes
2112 ;;
2113 rs6000-ibm-aix3.2.[456789]* | powerpc-ibm-aix3.2.[456789]*)
2114 xm_defines=POSIX
2115 tm_file="${tm_file} rs6000/aix.h rs6000/aix3newas.h rs6000/xcoff.h"
2116 tmake_file=rs6000/t-newas
2117 use_collect2=yes
2118 extra_headers=
2119 ;;
2120 rs6000-ibm-aix4.[12]* | powerpc-ibm-aix4.[12]*)
2121 xm_defines=POSIX
2122 tm_file="${tm_file} rs6000/aix.h rs6000/aix41.h rs6000/xcoff.h"
2123 tmake_file=rs6000/t-newas
2124 use_collect2=yes
2125 extra_headers=
2126 ;;
2127 rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
2128 xm_defines=POSIX
2129 tm_file="${tm_file} rs6000/aix.h rs6000/aix43.h rs6000/xcoff.h"
2130 tmake_file=rs6000/t-aix43
2131 use_collect2=yes
2132 thread_file='aix'
2133 extra_headers=
2134 ;;
2135 rs6000-ibm-aix5.1.* | powerpc-ibm-aix5.1.*)
2136 xm_defines=POSIX
2137 tm_file="${tm_file} rs6000/aix.h rs6000/aix51.h rs6000/xcoff.h"
2138 tmake_file=rs6000/t-aix43
2139 use_collect2=yes
2140 thread_file='aix'
2141 extra_headers=
2142 ;;
2143 rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
2144 xm_defines=POSIX
2145 tm_file="${tm_file} rs6000/aix.h rs6000/aix52.h rs6000/xcoff.h"
2146 tmake_file=rs6000/t-aix52
2147 use_collect2=yes
2148 thread_file='aix'
2149 extra_headers=
2150 ;;
2151 rs6000-ibm-aix*)
2152 xm_defines=POSIX
2153 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
2154 use_collect2=yes
2155 ;;
2156 rs6000-bull-bosx)
2157 xm_defines=POSIX
2158 tm_file="${tm_file} rs6000/aix.h rs6000/xcoff.h"
2159 use_collect2=yes
2160 ;;
2161 rs6000-*-mach*)
2162 tm_file="${tm_file} rs6000/mach.h"
2163 xm_defines=POSIX
2164 use_collect2=yes
2165 ;;
2166 rs6000-*-lynxos*)
2167 tm_file="lynx.h rs6000/lynx.h"
2168 tmake_file=rs6000/t-rs6000
2169 use_collect2=yes
2170 ;;
2171 s390-*-linux*)
2172 tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
2173 tmake_file="t-slibgcc-elf-ver t-linux s390/t-crtstuff"
2174 ;;
2175 s390x-*-linux*)
2176 tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
2177 tm_p_file=s390/s390-protos.h
2178 md_file=s390/s390.md
2179 extra_modes=s390/s390-modes.def
2180 out_file=s390/s390.c
2181 tmake_file="t-slibgcc-elf-ver t-linux s390/t-crtstuff s390/t-linux64"
2182 ;;
2183 sh-*-elf* | sh[2346l]*-*-elf*)
2184 tmake_file="sh/t-sh sh/t-elf"
2185 case $machine in
2186 shl* | sh64l*)
2187 tm_file="sh/little.h ${tm_file}"
2188 tmake_file="${tmake_file} sh/t-le"
2189 ;;
2190 esac
2191 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/embed-elf.h"
2192 case $machine in
2193 sh64*)
2194 tmake_file="${tmake_file} sh/t-sh64"
2195 tm_file="${tm_file} sh/sh64.h"
2196 extra_headers="shmedia.h ushmedia.h sshmedia.h"
2197 ;;
2198 sh4_single*) target_cpu_default="SELECT_SH4_SINGLE" ;;
2199 sh4*) target_cpu_default="SELECT_SH4" ;;
2200 sh3e*) target_cpu_default="SELECT_SH3E" ;;
2201 sh3*) target_cpu_default="SELECT_SH3" ;;
2202 sh2*) target_cpu_default="SELECT_SH2" ;;
2203 esac
2204 case $machine in
2205 sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
2206 esac
2207 ;;
2208 sh-*-rtemself*)
2209 xm_defines=POSIX
2210 tmake_file="sh/t-sh sh/t-elf t-rtems"
2211 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/embed-elf.h sh/rtemself.h rtems.h"
2212 if test x$enable_threads = xyes; then
2213 thread_file='rtems'
2214 fi
2215 ;;
2216 sh-*-rtems*)
2217 xm_defines=POSIX
2218 tmake_file="sh/t-sh t-rtems"
2219 tm_file="${tm_file} sh/coff.h sh/rtems.h rtems.h"
2220 if test x$enable_threads = xyes; then
2221 thread_file='rtems'
2222 fi
2223 ;;
2224 sh-*-linux* | sh[2346lbe]*-*-linux*)
2225 tmake_file="sh/t-sh sh/t-elf t-slibgcc-elf-ver t-linux sh/t-linux"
2226 case $machine in
2227 sh*be-*-* | sh*eb-*-*) ;;
2228 *)
2229 tm_file="sh/little.h ${tm_file}"
2230 tmake_file="${tmake_file} sh/t-le"
2231 ;;
2232 esac
2233 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sh/elf.h sh/linux.h"
2234 case $machine in
2235 sh64*)
2236 tmake_file="${tmake_file} sh/t-sh64"
2237 tm_file="${tm_file} sh/sh64.h"
2238 extra_headers="shmedia.h ushmedia.h sshmedia.h"
2239 ;;
2240 sh4_single*) target_cpu_default="SELECT_SH4_SINGLE" ;;
2241 sh4*) target_cpu_default="SELECT_SH4" ;;
2242 sh3e[lb]e*) target_cpu_default="SELECT_SH3E" ;;
2243 sh3e[lb]*) target_cpu_default="SELECT_SH3" ;;
2244 sh3e*) target_cpu_default="SELECT_SH3E" ;;
2245 sh3*) target_cpu_default="SELECT_SH3" ;;
2246 sh2*) target_cpu_default="SELECT_SH2" ;;
2247 esac
2248 case $machine in
2249 sh[234]*) tmake_file="${tmake_file} sh/t-monolib" ;;
2250 esac
2251 ;;
2252 sh-*-netbsdelf* | shl*-*-netbsdelf* | sh5-*-netbsd* | sh5l*-*-netbsd* | \
2253 sh64-*-netbsd* | sh64l*-*-netbsd*)
2254 tm_file="${tm_file} dbxelf.h elfos.h sh/elf.h netbsd.h netbsd-elf.h sh/netbsd-elf.h"
2255 tmake_file="${tmake_file} sh/t-sh sh/t-elf"
2256 case $machine in
2257 sh*l*-*)
2258 tm_file="sh/little.h ${tm_file}"
2259 tmake_file="${tmake_file} sh/t-le"
2260 ;;
2261 *)
2262 tmake_file="${tmake_file} sh/t-be"
2263 ;;
2264 esac
2265 case $machine in
2266 sh5*-*)
2267 # SHmedia, 32-bit ABI
2268 target_cpu_default="SH5_BIT|SH4_BIT|SH3E_BIT"
2269 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5"
2270 ;;
2271 sh64*-*)
2272 # SHmedia, 64-bit ABI
2273 target_cpu_default="SH5_BIT|SH4_BIT"
2274 tmake_file="${tmake_file} sh/t-sh64 sh/t-netbsd-sh5 sh/t-netbsd-sh5-64"
2275 ;;
2276 *)
2277 # SH3, software floating point
2278 target_cpu_default="SH1_BIT|SH2_BIT|SH3_BIT"
2279 tmake_file="${tmake_file} sh/t-netbsd"
2280 ;;
2281 esac
2282 ;;
2283 sh-*-*)
2284 tm_file="${tm_file} sh/coff.h"
2285 ;;
2286 sparc-tti-*)
2287 tm_file="${tm_file} sparc/pbd.h"
2288 xm_defines=POSIX
2289 ;;
2290 sparc-*-aout*)
2291 tmake_file=sparc/t-sparcbare
2292 tm_file="sparc/sparc.h aoutos.h sparc/aout.h libgloss.h"
2293 ;;
2294 sparc-*-netbsdelf*)
2295 tm_file="${tm_file} elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
2296 ;;
2297 sparc-*-netbsd*)
2298 tm_file="${tm_file} sparc/aout.h netbsd.h netbsd-aout.h sparc/netbsd.h"
2299 tmake_file=t-netbsd
2300 extra_parts=""
2301 use_collect2=yes
2302 ;;
2303 sparc-*-openbsd*)
2304 tm_file="sparc/sparc.h ${tm_file}"
2305 # needed to unconfuse gdb
2306 tmake_file="t-libc-ok t-openbsd sparc/t-openbsd"
2307 # we need collect2 until our bug is fixed...
2308 use_collect2=yes
2309 ;;
2310 sparc64-*-openbsd*)
2311 tm_file="sparc/openbsd1-64.h sparc/sparc.h elfos.h svr4.h sparc/sysv4.h sparc/sol2.h sparc/sp64-elf.h openbsd.h sparc/openbsd64.h"
2312 gas=yes gnu_ld=yes
2313 with_cpu=ultrasparc
2314 ;;
2315 sparc-*-bsd*)
2316 tm_file="${tm_file} sparc/bsd.h"
2317 ;;
2318 sparc-*-chorusos*)
2319 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h chorus.h"
2320 tmake_file="sparc/t-chorus-elf sparc/t-crtfm"
2321 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2322 case x${enable_threads} in
2323 xyes | xpthreads | xposix)
2324 thread_file='posix'
2325 ;;
2326 esac
2327 ;;
2328 sparc-*-elf*)
2329 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h"
2330 tmake_file="sparc/t-elf sparc/t-crtfm"
2331 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2332 ;;
2333 sparc-*-linux*aout*) # SPARC's running GNU/Linux, a.out
2334 tm_file="aoutos.h sparc/sparc.h sparc/aout.h sparc/linux-aout.h"
2335 gnu_ld=yes
2336 ;;
2337 sparc-*-linux*libc1*) # SPARC's running GNU/Linux, libc5
2338 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
2339 tmake_file="t-slibgcc-elf-ver t-linux t-linux-gnulibc1 sparc/t-crtfm"
2340 extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
2341 gnu_ld=yes
2342 ;;
2343 sparc-*-linux*) # SPARC's running GNU/Linux, libc6
2344 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
2345 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-crtfm"
2346 ;;
2347 sparc-*-lynxos*)
2348 if test x$gas = xyes
2349 then
2350 tm_file="${tm_file} lynx.h sparc/aout.h sparc/lynx.h"
2351 else
2352 tm_file="${tm_file} lynx-ng.h sparc/aout.h sparc/lynx-ng.h"
2353 fi
2354 tmake_file=sparc/t-sunos41
2355 ;;
2356 sparc-*-rtemsaout*) # would otherwise be caught by sparc-*-rtems*
2357 echo "*** Configuration $machine not supported" 1>&2
2358 exit 1
2359 ;;
2360 sparc-*-rtems*)
2361 xm_defines=POSIX
2362 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h sparc/rtemself.h rtems.h"
2363 tmake_file="sparc/t-elf sparc/t-crtfm t-rtems"
2364 extra_parts="crti.o crtn.o crtbegin.o crtend.o"
2365 if test x$enable_threads = xyes; then
2366 thread_file='rtems'
2367 fi
2368 ;;
2369 sparc64-*-solaris2* | sparcv9-*-solaris2*)
2370 tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/sol2-64.h sparc/sol2-bi.h"
2371 if test x$gnu_ld = xyes; then
2372 tm_file="${tm_file} sparc/sol2-gld.h sparc/sol2-gld-bi.h"
2373 fi
2374 if test x$gas = xyes; then
2375 tm_file="${tm_file} sparc/sol2-gas-bi.h"
2376 fi
2377 xm_defines=POSIX
2378 tmake_file="sparc/t-sol2 sparc/t-sol2-64 sparc/t-crtfm"
2379 if test x$gnu_ld = xyes; then
2380 tmake_file="$tmake_file t-slibgcc-elf-ver"
2381 else
2382 tmake_file="$tmake_file t-slibgcc-sld"
2383 fi
2384 extra_parts="crt1.o crti.o crtn.o gcrt1.o crtbegin.o crtend.o"
2385 if test x${enable_threads} = x ; then
2386 enable_threads=$have_pthread_h
2387 if test x${enable_threads} = x ; then
2388 enable_threads=$have_thread_h
2389 fi
2390 fi
2391 if test x${enable_threads} = xyes ; then
2392 if test x${have_pthread_h} = xyes ; then
2393 thread_file='posix'
2394 else
2395 thread_file='solaris'
2396 fi
2397 fi
2398 need_64bit_hwint=yes
2399 ;;
2400 sparc-hal-solaris2*)
2401 xm_defines=POSIX
2402 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/hal.h"
2403 tmake_file="sparc/t-halos sparc/t-sol2 sparc/t-crtfm"
2404 if test x$gnu_ld = xyes; then
2405 tm_file="${tm_file} sparc/sol2-gld.h"
2406 tmake_file="$tmake_file t-slibgcc-elf-ver"
2407 else
2408 tmake_file="$tmake_file t-slibgcc-sld"
2409 fi
2410 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
2411 thread_file='solaris'
2412 ;;
2413 sparc-*-solaris2*)
2414 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h"
2415 if test x$gnu_ld = xyes; then
2416 tm_file="${tm_file} sparc/sol2-gld.h"
2417 fi
2418 tmake_file="sparc/t-sol2 sparc/t-crtfm"
2419 if test x$gnu_ld = xyes; then
2420 tmake_file="$tmake_file t-slibgcc-elf-ver"
2421 else
2422 tmake_file="$tmake_file t-slibgcc-sld"
2423 fi
2424 case $machine in
2425 *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*)
2426 if test x$gnu_ld = xno; then
2427 tm_file="${tm_file} sparc/sol26-sld.h"
2428 fi
2429 ;;
2430 *-*-solaris2.[789])
2431 tm_file="sparc/biarch64.h ${tm_file} sparc/sol2-bi.h"
2432 if test x$gnu_ld = xyes; then
2433 tm_file="${tm_file} sparc/sol2-gld-bi.h"
2434 fi
2435 if test x$gas = xyes; then
2436 tm_file="${tm_file} sparc/sol2-gas-bi.h"
2437 fi
2438 tmake_file="$tmake_file sparc/t-sol2-64"
2439 need_64bit_hwint=yes
2440 ;;
2441 esac
2442 xm_defines=POSIX
2443 extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
2444 if test x${enable_threads} = x; then
2445 enable_threads=$have_pthread_h
2446 if test x${enable_threads} = x; then
2447 enable_threads=$have_thread_h
2448 fi
2449 fi
2450 if test x${enable_threads} = xyes; then
2451 if test x${have_pthread_h} = xyes; then
2452 thread_file='posix'
2453 else
2454 thread_file='solaris'
2455 fi
2456 fi
2457 ;;
2458 sparc-*-sunos4.0*)
2459 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
2460 use_collect2=yes
2461 ;;
2462 sparc-*-sunos4*)
2463 tm_file="${tm_file} sparc/aout.h sparc/sunos4.h"
2464 tmake_file=sparc/t-sunos41
2465 use_collect2=yes
2466 if test x$gas = xyes; then
2467 tm_file="${tm_file} sparc/sun4gas.h"
2468 fi
2469 ;;
2470 sparc-*-sunos3*)
2471 tm_file="${tm_file} sparc/aout.h sparc/sun4o3.h"
2472 use_collect2=yes
2473 ;;
2474 sparc-*-sysv4*)
2475 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h"
2476 xm_defines=POSIX
2477 tmake_file=t-svr4
2478 extra_parts="crtbegin.o crtend.o"
2479 ;;
2480 sparclet-*-aout*)
2481 tm_file="${tm_file} aoutos.h sparc/aout.h sparc/splet.h libgloss.h"
2482 tmake_file=sparc/t-splet
2483 ;;
2484 sparclite-*-coff*)
2485 tm_file="${tm_file} gofast.h sparc/lite.h svr3.h sparc/litecoff.h dbxcoff.h libgloss.h"
2486 tmake_file=sparc/t-sparclite
2487 ;;
2488 sparclite-*-aout*)
2489 tm_file="${tm_file} gofast.h sparc/aout.h sparc/lite.h aoutos.h libgloss.h"
2490 tmake_file=sparc/t-sparclite
2491 ;;
2492 sparclite-*-elf*)
2493 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h gofast.h sparc/liteelf.h"
2494 tmake_file="sparc/t-sparclite sparc/t-crtfm"
2495 extra_parts="crtbegin.o crtend.o"
2496 ;;
2497 sparc86x-*-aout*)
2498 tm_file="${tm_file} gofast.h sparc/aout.h sparc/sp86x-aout.h aoutos.h libgloss.h"
2499 tmake_file=sparc/t-sp86x
2500 ;;
2501 sparc86x-*-elf*)
2502 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/elf.h gofast.h sparc/sp86x-elf.h"
2503 tmake_file="sparc/t-sp86x sparc/t-crtfm"
2504 extra_parts="crtbegin.o crtend.o"
2505 ;;
2506 sparc64-*-aout*)
2507 tm_file="sparc/sparc.h aoutos.h sparc/aout.h sparc/sp64-aout.h"
2508 ;;
2509 sparc64-*-elf*)
2510 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sol2.h sparc/sol2.h sparc/sp64-elf.h"
2511 tmake_file="${tmake_file} sparc/t-crtfm"
2512 extra_parts="crtbegin.o crtend.o"
2513 ;;
2514 sparc64-*-freebsd*|ultrasparc-*-freebsd*)
2515 tm_file="${tm_file} ${fbsd_tm_file} dbxelf.h elfos.h sparc/sysv4.h sparc/freebsd.h"
2516 tmake_file="${tmake_file} sparc/t-crtfm"
2517 xmake_file=none
2518 case "x$with_cpu" in
2519 xultrasparc) ;;
2520 x) with_cpu=ultrasparc ;;
2521 *) echo "$with_cpu not supported for freebsd target"; exit 1 ;;
2522 esac
2523 need_64bit_hwint=yes
2524 ;;
2525 sparc64-*-linux*) # 64-bit SPARC's running GNU/Linux
2526 tmake_file="t-slibgcc-elf-ver t-linux sparc/t-linux64 sparc/t-crtfm"
2527 tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux64.h"
2528 ;;
2529 sparc64-*-netbsd*)
2530 tmake_file="${tmake_file} sparc/t-netbsd64"
2531 tm_file="sparc/biarch64.h ${tm_file}"
2532 tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h"
2533 ;;
2534 strongarm-*-elf*)
2535 tm_file="arm/strongarm-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
2536 tmake_file=arm/t-strongarm-elf
2537 out_file=arm/arm.c
2538 md_file=arm/arm.md
2539 extra_modes=arm/arm-modes.def
2540 ;;
2541 strongarm-*-coff*)
2542 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/strongarm-coff.h arm/arm.h"
2543 tmake_file=arm/t-strongarm-coff
2544 out_file=arm/arm.c
2545 md_file=arm/arm.md
2546 extra_modes=arm/arm-modes.def
2547 ;;
2548 strongarm-*-pe)
2549 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"
2550 tmake_file=arm/t-strongarm-pe
2551 out_file=arm/arm.c
2552 md_file=arm/arm.md
2553 extra_modes=arm/arm-modes.def
2554 extra_objs=pe.o
2555 ;;
2556 thumb*-*-*)
2557 { echo "config.gcc: error:
2558 *** The Thumb targets have been deprecated. The equivalent
2559 *** ARM based toolchain can now generate Thumb instructions
2560 *** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
2561 ;;
2562 v850-*-rtems*)
2563 xm_defines=POSIX
2564 tm_file="dbxelf.h elfos.h svr4.h ${tm_file} v850/v850.h v850/rtems.h rtems.h"
2565 tmake_file="v850/t-v850 t-rtems"
2566 if test x$stabs = xyes
2567 then
2568 tm_file="${tm_file} dbx.h"
2569 fi
2570 use_collect2=no
2571 c_target_objs="v850-c.o"
2572 cxx_target_objs="v850-c.o"
2573 ;;
2574 v850e-*-*)
2575 target_cpu_default="TARGET_CPU_v850e"
2576 tm_file="dbxelf.h elfos.h svr4.h v850/v850.h"
2577 tm_p_file=v850/v850-protos.h
2578 tmake_file=v850/t-v850
2579 md_file=v850/v850.md
2580 out_file=v850/v850.c
2581 if test x$stabs = xyes
2582 then
2583 tm_file="${tm_file} dbx.h"
2584 fi
2585 use_collect2=no
2586 c_target_objs="v850-c.o"
2587 cxx_target_objs="v850-c.o"
2588 ;;
2589 v850-*-*)
2590 target_cpu_default="TARGET_CPU_generic"
2591 tm_file="dbxelf.h elfos.h svr4.h ${tm_file}"
2592 tmake_file=v850/t-v850
2593 if test x$stabs = xyes
2594 then
2595 tm_file="${tm_file} dbx.h"
2596 fi
2597 use_collect2=no
2598 c_target_objs="v850-c.o"
2599 cxx_target_objs="v850-c.o"
2600 ;;
2601 vax-*-bsd*) # VAXen running BSD
2602 tm_file="${tm_file} vax/bsd.h"
2603 use_collect2=yes
2604 ;;
2605 vax-*-sysv*) # VAXen running system V
2606 tm_file="${tm_file} vax/vaxv.h"
2607 xm_defines=POSIX
2608 ;;
2609 vax-*-netbsdelf*)
2610 tm_file="${tm_file} elfos.h netbsd.h netbsd-elf.h vax/elf.h vax/netbsd-elf.h"
2611 float_format=vax
2612 ;;
2613 vax-*-netbsd*)
2614 tm_file="${tm_file} netbsd.h netbsd-aout.h vax/netbsd.h"
2615 tmake_file=t-netbsd
2616 extra_parts=""
2617 use_collect2=yes
2618 ;;
2619 vax-*-openbsd*)
2620 tm_file="vax/vax.h vax/openbsd1.h openbsd.h ${tm_file}"
2621 use_collect2=yes
2622 ;;
2623 vax-*-ultrix*) # VAXen running ultrix
2624 tm_file="${tm_file} vax/ultrix.h"
2625 ;;
2626 vax-*-vms*) # VAXen running VMS
2627 echo "Configuration $machine no longer supported" 1>&2
2628 exit 1
2629 ;;
2630 vax-*-*) # VAX default entry
2631 ;;
2632 xscale-*-elf)
2633 tm_file="arm/xscale-elf.h dbxelf.h elfos.h arm/unknown-elf.h arm/elf.h arm/aout.h arm/arm.h"
2634 tmake_file=arm/t-xscale-elf
2635 out_file=arm/arm.c
2636 md_file=arm/arm.md
2637 extra_modes=arm/arm-modes.def
2638 ;;
2639 xscale-*-coff)
2640 tm_file="arm/semi.h arm/aout.h arm/coff.h arm/xscale-coff.h arm/arm.h"
2641 tmake_file=arm/t-xscale-coff
2642 out_file=arm/arm.c
2643 md_file=arm/arm.md
2644 extra_modes=arm/arm-modes.def
2645 ;;
2646 xstormy16-*-elf)
2647 # For historical reasons, the target files omit the 'x'.
2648 tm_file="dbxelf.h elfos.h svr4.h stormy16/stormy16.h"
2649 tm_p_file=stormy16/stormy16-protos.h
2650 md_file=stormy16/stormy16.md
2651 out_file=stormy16/stormy16.c
2652 tmake_file="stormy16/t-stormy16"
2653 extra_parts="crtbegin.o crtend.o"
2654 ;;
2655 xtensa-*-elf*)
2656 tm_file="${tm_file} dbxelf.h elfos.h svr4.h xtensa/elf.h"
2657 with_newlib=yes
2658 tmake_file=xtensa/t-xtensa
2659 extra_parts="crtbegin.o crtend.o"
2660 fixincludes=Makefile.in # newlib headers should be OK
2661 ;;
2662 xtensa-*-linux*)
2663 tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h xtensa/linux.h"
2664 tmake_file="t-linux xtensa/t-xtensa"
2665 ;;
2666 *)
2667 echo "*** Configuration $machine not supported" 1>&2
2668 exit 1
2669 ;;
2670 esac
2671
2672 case $machine in
2673 *-*-sysv*)
2674 install_headers_dir=install-headers-cpio
2675 ;;
2676 esac
2677
2678 # Distinguish i[34567]86
2679 # Also, do not run mips-tfile on MIPS if using gas.
2680 # Process --with-cpu= for PowerPC/rs6000
2681 target_cpu_default2=
2682 case $machine in
2683 i486-*-*)
2684 target_cpu_default2=TARGET_CPU_DEFAULT_i486
2685 ;;
2686 i586-*-*)
2687 case $target_alias in
2688 k6_2-*)
2689 target_cpu_default2=TARGET_CPU_DEFAULT_k6_2
2690 ;;
2691 k6_3-*)
2692 target_cpu_default2=TARGET_CPU_DEFAULT_k6_3
2693 ;;
2694 k6-*)
2695 target_cpu_default2=TARGET_CPU_DEFAULT_k6
2696 ;;
2697 pentium_mmx-*|winchip_c6-*|winchip2-*|c3-*)
2698 target_cpu_default2=TARGET_CPU_DEFAULT_pentium_mmx
2699 ;;
2700 *)
2701 target_cpu_default2=TARGET_CPU_DEFAULT_pentium
2702 ;;
2703 esac
2704 ;;
2705 i686-*-* | i786-*-*)
2706 case $target_alias in
2707 k8-*)
2708 target_cpu_default2=TARGET_CPU_DEFAULT_k8
2709 ;;
2710 athlon_xp-*|athlon_mp-*|athlon_4-*)
2711 target_cpu_default2=TARGET_CPU_DEFAULT_athlon_sse
2712 ;;
2713 athlon_tbird-*|athlon-*)
2714 target_cpu_default2=TARGET_CPU_DEFAULT_athlon
2715 ;;
2716 pentium2-*)
2717 target_cpu_default2=TARGET_CPU_DEFAULT_pentium2
2718 ;;
2719 pentium3-*)
2720 target_cpu_default2=TARGET_CPU_DEFAULT_pentium3
2721 ;;
2722 pentium4-*)
2723 target_cpu_default2=TARGET_CPU_DEFAULT_pentium4
2724 ;;
2725 *)
2726 target_cpu_default2=TARGET_CPU_DEFAULT_pentiumpro
2727 ;;
2728 esac
2729 ;;
2730 x86_64-*-*)
2731 # We should have hammer chip here, but it does not exist yet and
2732 # thus it is not supported. Athlon_SSE is probably equivalent feature
2733 # wise to hammer from our point of view except for 64bit mode.
2734 target_cpu_default2=TARGET_CPU_DEFAULT_k8
2735 ;;
2736 alpha*-*-*)
2737 case $machine in
2738 alphaev6[78]*)
2739 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
2740 ;;
2741 alphaev6*)
2742 target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
2743 ;;
2744 alphapca56*)
2745 target_cpu_default2="MASK_CPU_EV5|MASK_BWX|MASK_MAX"
2746 ;;
2747 alphaev56*)
2748 target_cpu_default2="MASK_CPU_EV5|MASK_BWX"
2749 ;;
2750 alphaev5*)
2751 target_cpu_default2="MASK_CPU_EV5"
2752 ;;
2753 esac
2754
2755 if test x$gas = xyes
2756 then
2757 if test "$target_cpu_default2" = ""
2758 then
2759 target_cpu_default2="MASK_GAS"
2760 else
2761 target_cpu_default2="${target_cpu_default2}|MASK_GAS"
2762 fi
2763 fi
2764 ;;
2765 arm*-*-*)
2766 case "x$with_cpu" in
2767 x)
2768 # The most generic
2769 target_cpu_default2="TARGET_CPU_generic"
2770 ;;
2771
2772 # Distinguish cores, and major variants
2773 # arm7m doesn't exist, but D & I don't affect code
2774 xarm[236789] | xarm250 | xarm[67][01]0 \
2775 | xarm7m | xarm7dm | xarm7dmi | xarm[79]tdmi \
2776 | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
2777 | xxscale \
2778 | xstrongarm | xstrongarm110 | xstrongarm1100)
2779 target_cpu_default2="TARGET_CPU_$with_cpu"
2780 ;;
2781
2782 xyes | xno)
2783 echo "--with-cpu must be passed a value" 1>&2
2784 exit 1
2785 ;;
2786
2787 *)
2788 if test x$pass2done = xyes
2789 then
2790 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2791 exit 1
2792 fi
2793 ;;
2794 esac
2795 ;;
2796
2797 hppa*-*-* | parisc*-*-*)
2798 if test x$gas = xyes
2799 then
2800 target_cpu_default2="MASK_GAS|MASK_JUMP_IN_DELAY"
2801 fi
2802 case $machine in
2803 hppa1* | parisc1*)
2804 tm_defines="TARGET_SCHED_DEFAULT=\\\"7100LC\\\""
2805 ;;
2806 esac
2807 ;;
2808 mips*-*-*)
2809 case $machine in
2810 mips*-*-ecoff* | mips*-*-elf*)
2811 if test x$gas = xyes
2812 then
2813 if test x$gnu_ld = xyes
2814 then
2815 target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
2816 else
2817 target_cpu_default2="MASK_GAS"
2818 fi
2819 fi
2820 ;;
2821 mips*-*-*)
2822 if test x$gas = xyes
2823 then
2824 target_cpu_default2="MASK_GAS"
2825 fi
2826 ;;
2827 esac
2828 case $machine in
2829 mips*el-*-*)
2830 tm_defines="TARGET_ENDIAN_DEFAULT=0 $tm_defines"
2831 ;;
2832 esac
2833 case $tm_file in
2834 *mips/elf.h* | *mips/elf64.h*)
2835 tm_defines="OBJECT_FORMAT_ELF $tm_defines"
2836 ;;
2837 esac
2838 if test "x$enable_gofast" = xyes
2839 then
2840 tm_defines="INIT_SUBTARGET_OPTABS=INIT_GOFAST_OPTABS $tm_defines"
2841 tm_file="gofast.h $tm_file"
2842 tmake_file="mips/t-gofast $tmake_file"
2843 else
2844 tmake_file="mips/t-mips $tmake_file"
2845 fi
2846 ;;
2847 powerpc*-*-* | rs6000-*-*)
2848 if test x$enable_altivec = xyes
2849 then
2850 tm_file="$tm_file rs6000/altivec-defs.h"
2851 fi
2852 case "x$with_cpu" in
2853 x)
2854 ;;
2855
2856 xcommon | xpower | xpower2 | xpower3 | xpowerpc | xpowerpc64 \
2857 | xrios | xrios1 | xrios2 | xrsc | xrsc1 | xrs64a \
2858 | x601 | x602 | x603 | x603e | x604 | x604e | x620 | x630 \
2859 | x740 | x750 | x7400 | x7450 | x505)
2860 target_cpu_default2="\\\"$with_cpu\\\""
2861 ;;
2862
2863 x401 | x403 | x405 | xec603e | x801 | x821 | x823 | x860)
2864 target_cpu_default2="\\\"$with_cpu\\\""
2865 ;;
2866
2867 xyes | xno)
2868 echo "--with-cpu must be passed a value" 1>&2
2869 exit 1
2870 ;;
2871
2872 *)
2873 if test x$pass2done = xyes
2874 then
2875 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2876 exit 1
2877 fi
2878 ;;
2879 esac
2880 c_target_objs="${c_target_objs} rs6000-c.o"
2881 cxx_target_objs="${cxx_target_objs} rs6000-c.o"
2882 tmake_file="${tmake_file} rs6000/t-rs6000-c-rule"
2883 ;;
2884 sparc*-*-*)
2885 case ".$with_cpu" in
2886 .)
2887 target_cpu_default2=TARGET_CPU_"`echo $machine | sed 's/-.*$//'`"
2888 ;;
2889 .supersparc | .hypersparc | .ultrasparc | .v7 | .v8 | .v9)
2890 target_cpu_default2="TARGET_CPU_$with_cpu"
2891 ;;
2892 *)
2893 if test x$pass2done = xyes
2894 then
2895 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2896 exit 1
2897 fi
2898 ;;
2899 esac
2900 ;;
2901 v850*-*-*)
2902 case "x$with_cpu" in
2903 x)
2904 ;;
2905 xv850e)
2906 target_cpu_default2="TARGET_CPU_$with_cpu"
2907 ;;
2908 *)
2909 if test x$pass2done = xyes
2910 then
2911 echo "Unknown cpu used with --with-cpu=$with_cpu" 1>&2
2912 exit 1
2913 fi
2914 ;;
2915 esac
2916 ;;
2917 esac
2918
2919 if test "$target_cpu_default2" != ""
2920 then
2921 if test "$target_cpu_default" != ""
2922 then
2923 target_cpu_default="(${target_cpu_default}|${target_cpu_default2})"
2924 else
2925 target_cpu_default=$target_cpu_default2
2926 fi
2927 fi
2928
2929 # Save data on machine being used to compile GCC in build_xm_file.
2930 # Save data on host machine in vars host_xm_file and host_xmake_file.
2931 if test x$pass1done = x
2932 then
2933 if test x$xm_file != x
2934 then build_xm_file=$xm_file
2935 fi
2936 build_xm_defines=$xm_defines
2937 build_install_headers_dir=$install_headers_dir
2938 build_exeext=$exeext
2939 pass1done=yes
2940 else
2941 if test x$pass2done = x
2942 then
2943 if test x$xm_file != x
2944 then host_xm_file=$xm_file
2945 fi
2946 host_xm_defines=$xm_defines
2947 host_xmake_file="$xmake_file"
2948 host_truncate_target=$truncate_target
2949 host_extra_gcc_objs=$extra_gcc_objs
2950 host_extra_objs=$extra_host_objs
2951 host_exeext=$exeext
2952 pass2done=yes
2953 fi
2954 fi