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