]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - config.sub
*** empty log message ***
[thirdparty/binutils-gdb.git] / config.sub
CommitLineData
252b5132 1#! /bin/sh
35590697 2# Configuration validation subroutine script.
b020f6ac 3# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
9f1e7fd3
BE
4# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
5# Free Software Foundation, Inc.
ac73857d 6
7d6d7764 7timestamp='2008-12-11'
ac73857d 8
252b5132
RH
9# This file is (in principle) common to ALL GNU software.
10# The presence of a machine in this file suggests that SOME GNU software
11# can handle that machine. It does not imply ALL GNU software can.
12#
13# This file is free software; you can redistribute it and/or modify
14# it under the terms of the GNU General Public License as published by
15# the Free Software Foundation; either version 2 of the License, or
16# (at your option) any later version.
17#
18# This program is distributed in the hope that it will be useful,
19# but WITHOUT ANY WARRANTY; without even the implied warranty of
20# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21# GNU General Public License for more details.
22#
23# You should have received a copy of the GNU General Public License
24# along with this program; if not, write to the Free Software
1d9c9cd7
KC
25# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
26# 02110-1301, USA.
27#
252b5132
RH
28# As a special exception to the GNU General Public License, if you
29# distribute this file as part of a program that contains a
30# configuration script generated by Autoconf, you may include it under
31# the same distribution terms that you use for the rest of that program.
32
1d9c9cd7 33
26ef82f4
GK
34# Please send patches to <config-patches@gnu.org>. Submit a context
35# diff and a properly formatted ChangeLog entry.
ada59422 36#
252b5132
RH
37# Configuration subroutine to validate and canonicalize a configuration type.
38# Supply the specified configuration type as an argument.
39# If it is invalid, we print an error message on stderr and exit with code 1.
40# Otherwise, we print the canonical config type on stdout and succeed.
41
42# This file is supposed to be the same for all GNU packages
43# and recognize all the CPU types, system types and aliases
44# that are meaningful with *any* GNU software.
45# Each package is responsible for reporting which valid configurations
46# it does not support. The user should be able to distinguish
47# a failure to support a valid configuration from a meaningless
48# configuration.
49
50# The goal of this file is to map all the various variations of a given
51# machine specification into a single specification in the form:
52# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
53# or in some cases, the newer four-part form:
54# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
55# It is wrong to echo any other type of specification.
56
ac73857d 57me=`echo "$0" | sed -e 's,.*/,,'`
252b5132 58
ac73857d
AC
59usage="\
60Usage: $0 [OPTION] CPU-MFR-OPSYS
61 $0 [OPTION] ALIAS
62
63Canonicalize a configuration name.
64
65Operation modes:
35590697
AJ
66 -h, --help print this help, then exit
67 -t, --time-stamp print date of last modification, then exit
68 -v, --version print version number, then exit
69
70Report bugs and patches to <config-patches@gnu.org>."
71
72version="\
73GNU config.sub ($timestamp)
74
9f1e7fd3
BE
75Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
762002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
35590697
AJ
77
78This is free software; see the source for copying conditions. There is NO
79warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
ac73857d
AC
80
81help="
82Try \`$me --help' for more information."
83
84# Parse command line
85while test $# -gt 0 ; do
35590697
AJ
86 case $1 in
87 --time-stamp | --time* | -t )
1d9c9cd7 88 echo "$timestamp" ; exit ;;
35590697 89 --version | -v )
1d9c9cd7 90 echo "$version" ; exit ;;
ac73857d 91 --help | --h* | -h )
1d9c9cd7 92 echo "$usage"; exit ;;
ac73857d
AC
93 -- ) # Stop option processing
94 shift; break ;;
95 - ) # Use stdin as input.
96 break ;;
97 -* )
35590697 98 echo "$me: invalid option $1$help"
ac73857d
AC
99 exit 1 ;;
100
101 *local*)
102 # First pass through any local machine types.
103 echo $1
1d9c9cd7 104 exit ;;
ac73857d
AC
105
106 * )
107 break ;;
108 esac
109done
110
111case $# in
112 0) echo "$me: missing argument$help" >&2
113 exit 1;;
114 1) ;;
115 *) echo "$me: too many arguments$help" >&2
116 exit 1;;
252b5132
RH
117esac
118
252b5132
RH
119# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
120# Here we must recognize all the valid KERNEL-OS combinations.
121maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
122case $maybe_os in
ec49b2b8
NC
123 nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
124 uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
125 storm-chaos* | os2-emx* | rtmk-nova*)
252b5132
RH
126 os=-$maybe_os
127 basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
128 ;;
129 *)
130 basic_machine=`echo $1 | sed 's/-[^-]*$//'`
131 if [ $basic_machine != $1 ]
132 then os=`echo $1 | sed 's/.*-/-/'`
133 else os=; fi
134 ;;
135esac
136
137### Let's recognize common machines as not being operating systems so
138### that things like config.sub decstation-3100 work. We also
139### recognize some manufacturers as not being operating systems, so we
140### can provide default operating systems below.
141case $os in
142 -sun*os*)
143 # Prevent following clause from handling this invalid input.
144 ;;
145 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
146 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
147 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
148 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
149 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
150 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
eb1352ed 151 -apple | -axis | -knuth | -cray)
252b5132
RH
152 os=
153 basic_machine=$1
154 ;;
6c3175b0 155 -sim | -cisco | -oki | -wec | -winbond)
252b5132
RH
156 os=
157 basic_machine=$1
158 ;;
6c3175b0 159 -scout)
252b5132 160 ;;
6c3175b0 161 -wrs)
ada59422 162 os=-vxworks
252b5132
RH
163 basic_machine=$1
164 ;;
82208dc5
AM
165 -chorusos*)
166 os=-chorusos
167 basic_machine=$1
168 ;;
169 -chorusrdb)
170 os=-chorusrdb
171 basic_machine=$1
172 ;;
252b5132
RH
173 -hiux*)
174 os=-hiuxwe2
175 ;;
be01d343
PB
176 -sco6)
177 os=-sco5v6
178 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
179 ;;
252b5132
RH
180 -sco5)
181 os=-sco3.2v5
182 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
183 ;;
184 -sco4)
185 os=-sco3.2v4
186 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
187 ;;
188 -sco3.2.[4-9]*)
189 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
190 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191 ;;
192 -sco3.2v[4-9]*)
193 # Don't forget version if it is 3.2v4 or newer.
194 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
195 ;;
be01d343
PB
196 -sco5v6*)
197 # Don't forget version if it is 3.2v4 or newer.
198 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
199 ;;
252b5132
RH
200 -sco*)
201 os=-sco3.2v2
202 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
203 ;;
204 -udk*)
205 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206 ;;
207 -isc)
208 os=-isc2.2
209 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
210 ;;
211 -clix*)
212 basic_machine=clipper-intergraph
213 ;;
214 -isc*)
215 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
216 ;;
217 -lynx*)
218 os=-lynxos
219 ;;
220 -ptx*)
221 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
222 ;;
223 -windowsnt*)
224 os=`echo $os | sed -e 's/windowsnt/winnt/'`
225 ;;
226 -psos*)
227 os=-psos
228 ;;
ada59422
AC
229 -mint | -mint[0-9]*)
230 basic_machine=m68k-atari
231 os=-mint
232 ;;
252b5132
RH
233esac
234
235# Decode aliases for certain CPU-COMPANY combinations.
236case $basic_machine in
237 # Recognize the basic CPU types without company name.
238 # Some are omitted here because they have special meanings below.
82208dc5
AM
239 1750a | 580 \
240 | a29k \
241 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
b020f6ac 242 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
1e600082 243 | am33_2.0 \
17bcf627 244 | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
2faa2958 245 | bfin \
059083b1 246 | c4x | clipper \
1d7c1053 247 | d10v | d30v | dlx | dsp16xx \
0cfa5389 248 | fido | fr30 | frv \
82208dc5
AM
249 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
250 | i370 | i860 | i960 | ia64 \
1e600082 251 | ip2k | iq2000 \
7d6d7764 252 | lm32 \
49b9e644 253 | m32c | m32r | m32rle | m68000 | m68k | m88k \
e2208220 254 | maxq | mb | microblaze | mcore | mep | metag \
51759676
CD
255 | mips | mipsbe | mipseb | mipsel | mipsle \
256 | mips16 \
257 | mips64 | mips64el \
a1f93a5e 258 | mips64octeon | mips64octeonel \
51759676 259 | mips64orion | mips64orionel \
a1f93a5e
BE
260 | mips64r5900 | mips64r5900el \
261 | mips64vr | mips64vrel \
51759676
CD
262 | mips64vr4100 | mips64vr4100el \
263 | mips64vr4300 | mips64vr4300el \
264 | mips64vr5000 | mips64vr5000el \
1d9c9cd7 265 | mips64vr5900 | mips64vr5900el \
51759676 266 | mipsisa32 | mipsisa32el \
3f234ef5 267 | mipsisa32r2 | mipsisa32r2el \
51759676 268 | mipsisa64 | mipsisa64el \
1e600082 269 | mipsisa64r2 | mipsisa64r2el \
51759676 270 | mipsisa64sb1 | mipsisa64sb1el \
fd31a171 271 | mipsisa64sr71k | mipsisa64sr71kel \
51759676 272 | mipstx39 | mipstx39el \
82208dc5 273 | mn10200 | mn10300 \
4970f871 274 | mt \
3f234ef5 275 | msp430 \
49b9e644 276 | nios | nios2 \
82208dc5 277 | ns16k | ns32k \
1d9c9cd7 278 | or32 \
82208dc5
AM
279 | pdp10 | pdp11 | pj | pjl \
280 | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
281 | pyramid \
17bcf627 282 | score \
7d6d7764 283 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
51759676 284 | sh64 | sh64le \
49b9e644
BE
285 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
286 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
287 | spu | strongarm \
059083b1 288 | tahoe | thumb | tic4x | tic80 | tron \
0e254642 289 | v850 | v850e \
82208dc5 290 | we32k \
17bcf627 291 | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
bc67ad83 292 | z8k | z80)
252b5132
RH
293 basic_machine=$basic_machine-unknown
294 ;;
1af08294
HPN
295 m6811 | m68hc11 | m6812 | m68hc12)
296 # Motorola 68HC11/12.
297 basic_machine=$basic_machine-unknown
298 os=-none
299 ;;
82208dc5 300 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
ada59422 301 ;;
ec49b2b8
NC
302 ms1)
303 basic_machine=mt-unknown
304 ;;
ada59422 305
252b5132
RH
306 # We use `pc' rather than `unknown'
307 # because (1) that's what they normally are, and
308 # (2) the word "unknown" tends to confuse beginning users.
82208dc5 309 i*86 | x86_64)
252b5132
RH
310 basic_machine=$basic_machine-pc
311 ;;
312 # Object if more than one company name word.
313 *-*-*)
314 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
315 exit 1
316 ;;
317 # Recognize the basic CPU types with company name.
82208dc5
AM
318 580-* \
319 | a29k-* \
320 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
b020f6ac
L
321 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
322 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
4b37028f 323 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
17bcf627 324 | avr-* | avr32-* \
2faa2958 325 | bfin-* | bs2000-* \
ee3fd329 326 | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
eb1352ed 327 | clipper-* | craynv-* | cydra-* \
1d7c1053 328 | d10v-* | d30v-* | dlx-* \
82208dc5 329 | elxsi-* \
0cfa5389 330 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
82208dc5
AM
331 | h8300-* | h8500-* \
332 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
333 | i*86-* | i860-* | i960-* | ia64-* \
1e600082 334 | ip2k-* | iq2000-* \
7d6d7764 335 | lm32-* \
49b9e644 336 | m32c-* | m32r-* | m32rle-* \
39121370 337 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
e2208220 338 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
51759676
CD
339 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
340 | mips16-* \
341 | mips64-* | mips64el-* \
a1f93a5e 342 | mips64octeon-* | mips64octeonel-* \
51759676 343 | mips64orion-* | mips64orionel-* \
a1f93a5e
BE
344 | mips64r5900-* | mips64r5900el-* \
345 | mips64vr-* | mips64vrel-* \
51759676
CD
346 | mips64vr4100-* | mips64vr4100el-* \
347 | mips64vr4300-* | mips64vr4300el-* \
348 | mips64vr5000-* | mips64vr5000el-* \
1d9c9cd7 349 | mips64vr5900-* | mips64vr5900el-* \
51759676 350 | mipsisa32-* | mipsisa32el-* \
3f234ef5 351 | mipsisa32r2-* | mipsisa32r2el-* \
51759676 352 | mipsisa64-* | mipsisa64el-* \
1e600082 353 | mipsisa64r2-* | mipsisa64r2el-* \
51759676 354 | mipsisa64sb1-* | mipsisa64sb1el-* \
fd31a171 355 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
3f234ef5 356 | mipstx39-* | mipstx39el-* \
eb1352ed 357 | mmix-* \
4970f871 358 | mt-* \
3f234ef5 359 | msp430-* \
49b9e644 360 | nios-* | nios2-* \
eb1352ed 361 | none-* | np1-* | ns16k-* | ns32k-* \
82208dc5
AM
362 | orion-* \
363 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
364 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
365 | pyramid-* \
366 | romp-* | rs6000-* \
7d6d7764 367 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
51759676 368 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
49b9e644 369 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
2faa2958 370 | sparclite-* \
49b9e644 371 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
ee3fd329 372 | tahoe-* | thumb-* \
a1f93a5e 373 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
ee3fd329 374 | tron-* \
0e254642 375 | v850-* | v850e-* | vax-* \
82208dc5 376 | we32k-* \
17bcf627 377 | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
ad25e7d5 378 | xstormy16-* | xtensa*-* \
82208dc5 379 | ymp-* \
bc67ad83 380 | z8k-* | z80-*)
252b5132 381 ;;
ad25e7d5
BE
382 # Recognize the basic CPU types without company name, with glob match.
383 xtensa*)
384 basic_machine=$basic_machine-unknown
385 ;;
252b5132
RH
386 # Recognize the various machine names and aliases which stand
387 # for a CPU type and a company and sometimes even an OS.
6c3175b0 388 386bsd)
252b5132
RH
389 basic_machine=i386-unknown
390 os=-bsd
391 ;;
392 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
393 basic_machine=m68000-att
394 ;;
395 3b*)
396 basic_machine=we32k-att
397 ;;
6c3175b0 398 a29khif)
252b5132
RH
399 basic_machine=a29k-amd
400 os=-udi
401 ;;
1e600082
AC
402 abacus)
403 basic_machine=abacus-unknown
404 ;;
6c3175b0 405 adobe68k)
252b5132
RH
406 basic_machine=m68010-adobe
407 os=-scout
408 ;;
409 alliant | fx80)
410 basic_machine=fx80-alliant
411 ;;
412 altos | altos3068)
413 basic_machine=m68k-altos
414 ;;
415 am29k)
416 basic_machine=a29k-none
417 os=-bsd
418 ;;
5481b376
AJ
419 amd64)
420 basic_machine=x86_64-pc
421 ;;
1e600082
AC
422 amd64-*)
423 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
424 ;;
252b5132
RH
425 amdahl)
426 basic_machine=580-amdahl
427 os=-sysv
428 ;;
429 amiga | amiga-*)
6e8dd58f 430 basic_machine=m68k-unknown
252b5132
RH
431 ;;
432 amigaos | amigados)
6e8dd58f 433 basic_machine=m68k-unknown
252b5132
RH
434 os=-amigaos
435 ;;
436 amigaunix | amix)
6e8dd58f 437 basic_machine=m68k-unknown
252b5132
RH
438 os=-sysv4
439 ;;
440 apollo68)
441 basic_machine=m68k-apollo
442 os=-sysv
443 ;;
6c3175b0 444 apollo68bsd)
252b5132
RH
445 basic_machine=m68k-apollo
446 os=-bsd
447 ;;
448 aux)
449 basic_machine=m68k-apple
450 os=-aux
451 ;;
452 balance)
453 basic_machine=ns32k-sequent
454 os=-dynix
455 ;;
ad25e7d5
BE
456 blackfin)
457 basic_machine=bfin-unknown
458 os=-linux
459 ;;
460 blackfin-*)
461 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
462 os=-linux
463 ;;
39121370
DJ
464 c90)
465 basic_machine=c90-cray
466 os=-unicos
467 ;;
bc67ad83
BE
468 cegcc)
469 basic_machine=arm-unknown
470 os=-cegcc
471 ;;
252b5132
RH
472 convex-c1)
473 basic_machine=c1-convex
474 os=-bsd
475 ;;
476 convex-c2)
477 basic_machine=c2-convex
478 os=-bsd
479 ;;
480 convex-c32)
481 basic_machine=c32-convex
482 os=-bsd
483 ;;
484 convex-c34)
485 basic_machine=c34-convex
486 os=-bsd
487 ;;
488 convex-c38)
489 basic_machine=c38-convex
490 os=-bsd
491 ;;
39121370
DJ
492 cray | j90)
493 basic_machine=j90-cray
252b5132
RH
494 os=-unicos
495 ;;
eb1352ed
NC
496 craynv)
497 basic_machine=craynv-cray
498 os=-unicosmp
499 ;;
f00a3165 500 cr16)
971aaaa5
NC
501 basic_machine=cr16-unknown
502 os=-elf
503 ;;
252b5132
RH
504 crds | unos)
505 basic_machine=m68k-crds
506 ;;
eb1352ed
NC
507 crisv32 | crisv32-* | etraxfs*)
508 basic_machine=crisv32-axis
509 ;;
1af08294
HPN
510 cris | cris-* | etrax*)
511 basic_machine=cris-axis
512 ;;
eb1352ed
NC
513 crx)
514 basic_machine=crx-unknown
515 os=-elf
516 ;;
252b5132
RH
517 da30 | da30-*)
518 basic_machine=m68k-da30
519 ;;
520 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
521 basic_machine=mips-dec
522 ;;
0e254642
AM
523 decsystem10* | dec10*)
524 basic_machine=pdp10-dec
525 os=-tops10
526 ;;
527 decsystem20* | dec20*)
528 basic_machine=pdp10-dec
529 os=-tops20
530 ;;
252b5132
RH
531 delta | 3300 | motorola-3300 | motorola-delta \
532 | 3300-motorola | delta-motorola)
533 basic_machine=m68k-motorola
534 ;;
535 delta88)
536 basic_machine=m88k-motorola
537 os=-sysv3
538 ;;
e2208220
BE
539 dicos)
540 basic_machine=i686-pc
541 os=-dicos
542 ;;
57d1eb1a
DD
543 djgpp)
544 basic_machine=i586-pc
545 os=-msdosdjgpp
546 ;;
252b5132
RH
547 dpx20 | dpx20-*)
548 basic_machine=rs6000-bull
549 os=-bosx
550 ;;
551 dpx2* | dpx2*-bull)
552 basic_machine=m68k-bull
553 os=-sysv3
554 ;;
555 ebmon29k)
556 basic_machine=a29k-amd
557 os=-ebmon
558 ;;
559 elxsi)
560 basic_machine=elxsi-elxsi
561 os=-bsd
562 ;;
563 encore | umax | mmax)
564 basic_machine=ns32k-encore
565 ;;
6c3175b0 566 es1800 | OSE68k | ose68k | ose | OSE)
252b5132
RH
567 basic_machine=m68k-ericsson
568 os=-ose
569 ;;
570 fx2800)
571 basic_machine=i860-alliant
572 ;;
573 genix)
574 basic_machine=ns32k-ns
575 ;;
576 gmicro)
577 basic_machine=tron-gmicro
578 os=-sysv
579 ;;
9dec4c71
MS
580 go32)
581 basic_machine=i386-pc
582 os=-go32
583 ;;
252b5132
RH
584 h3050r* | hiux*)
585 basic_machine=hppa1.1-hitachi
586 os=-hiuxwe2
587 ;;
588 h8300hms)
589 basic_machine=h8300-hitachi
590 os=-hms
591 ;;
6c3175b0 592 h8300xray)
252b5132
RH
593 basic_machine=h8300-hitachi
594 os=-xray
595 ;;
6c3175b0 596 h8500hms)
252b5132
RH
597 basic_machine=h8500-hitachi
598 os=-hms
599 ;;
600 harris)
601 basic_machine=m88k-harris
602 os=-sysv3
603 ;;
604 hp300-*)
605 basic_machine=m68k-hp
606 ;;
607 hp300bsd)
608 basic_machine=m68k-hp
609 os=-bsd
610 ;;
611 hp300hpux)
612 basic_machine=m68k-hp
613 os=-hpux
614 ;;
252b5132
RH
615 hp3k9[0-9][0-9] | hp9[0-9][0-9])
616 basic_machine=hppa1.0-hp
617 ;;
618 hp9k2[0-9][0-9] | hp9k31[0-9])
619 basic_machine=m68000-hp
620 ;;
621 hp9k3[2-9][0-9])
622 basic_machine=m68k-hp
623 ;;
6c3175b0 624 hp9k6[0-9][0-9] | hp6[0-9][0-9])
252b5132
RH
625 basic_machine=hppa1.0-hp
626 ;;
6c3175b0 627 hp9k7[0-79][0-9] | hp7[0-79][0-9])
252b5132
RH
628 basic_machine=hppa1.1-hp
629 ;;
6c3175b0 630 hp9k78[0-9] | hp78[0-9])
252b5132
RH
631 # FIXME: really hppa2.0-hp
632 basic_machine=hppa1.1-hp
633 ;;
6c3175b0 634 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
252b5132
RH
635 # FIXME: really hppa2.0-hp
636 basic_machine=hppa1.1-hp
637 ;;
6c3175b0 638 hp9k8[0-9][13679] | hp8[0-9][13679])
252b5132
RH
639 basic_machine=hppa1.1-hp
640 ;;
641 hp9k8[0-9][0-9] | hp8[0-9][0-9])
642 basic_machine=hppa1.0-hp
643 ;;
644 hppa-next)
645 os=-nextstep3
646 ;;
6c3175b0 647 hppaosf)
252b5132
RH
648 basic_machine=hppa1.1-hp
649 os=-osf
650 ;;
6c3175b0
NC
651 hppro)
652 basic_machine=hppa1.1-hp
653 os=-proelf
654 ;;
252b5132
RH
655 i370-ibm* | ibm*)
656 basic_machine=i370-ibm
252b5132
RH
657 ;;
658# I'm not sure what "Sysv32" means. Should this be sysv3.2?
82208dc5 659 i*86v32)
252b5132
RH
660 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
661 os=-sysv32
662 ;;
82208dc5 663 i*86v4*)
252b5132
RH
664 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
665 os=-sysv4
666 ;;
82208dc5 667 i*86v)
252b5132
RH
668 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
669 os=-sysv
670 ;;
82208dc5 671 i*86sol2)
252b5132
RH
672 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
673 os=-solaris2
674 ;;
6c3175b0 675 i386mach)
252b5132
RH
676 basic_machine=i386-mach
677 os=-mach
678 ;;
6c3175b0 679 i386-vsta | vsta)
252b5132
RH
680 basic_machine=i386-unknown
681 os=-vsta
682 ;;
252b5132
RH
683 iris | iris4d)
684 basic_machine=mips-sgi
685 case $os in
686 -irix*)
687 ;;
688 *)
689 os=-irix4
690 ;;
691 esac
692 ;;
693 isi68 | isi)
694 basic_machine=m68k-isi
695 os=-sysv
696 ;;
ad25e7d5
BE
697 m68knommu)
698 basic_machine=m68k-unknown
699 os=-linux
700 ;;
701 m68knommu-*)
702 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
703 os=-linux
704 ;;
252b5132
RH
705 m88k-omron*)
706 basic_machine=m88k-omron
707 ;;
708 magnum | m3230)
709 basic_machine=mips-mips
710 os=-sysv
711 ;;
712 merlin)
713 basic_machine=ns32k-utek
714 os=-sysv
715 ;;
9dec4c71
MS
716 mingw32)
717 basic_machine=i386-pc
718 os=-mingw32
719 ;;
98a1bbc5
BE
720 mingw32ce)
721 basic_machine=arm-unknown
722 os=-mingw32ce
723 ;;
252b5132
RH
724 miniframe)
725 basic_machine=m68000-convergent
726 ;;
ada59422 727 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
6c3175b0
NC
728 basic_machine=m68k-atari
729 os=-mint
730 ;;
252b5132
RH
731 mips3*-*)
732 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
733 ;;
734 mips3*)
735 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
736 ;;
6c3175b0 737 monitor)
252b5132
RH
738 basic_machine=m68k-rom68k
739 os=-coff
740 ;;
b020f6ac
L
741 morphos)
742 basic_machine=powerpc-unknown
743 os=-morphos
744 ;;
6c3175b0 745 msdos)
9dec4c71 746 basic_machine=i386-pc
252b5132
RH
747 os=-msdos
748 ;;
4970f871 749 ms1-*)
ec49b2b8 750 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
4970f871 751 ;;
ada59422
AC
752 mvs)
753 basic_machine=i370-ibm
754 os=-mvs
755 ;;
252b5132
RH
756 ncr3000)
757 basic_machine=i486-ncr
758 os=-sysv4
759 ;;
760 netbsd386)
6c3175b0 761 basic_machine=i386-unknown
252b5132
RH
762 os=-netbsd
763 ;;
764 netwinder)
ada59422 765 basic_machine=armv4l-rebel
252b5132
RH
766 os=-linux
767 ;;
768 news | news700 | news800 | news900)
769 basic_machine=m68k-sony
770 os=-newsos
771 ;;
772 news1000)
773 basic_machine=m68030-sony
774 os=-newsos
775 ;;
776 news-3600 | risc-news)
777 basic_machine=mips-sony
778 os=-newsos
779 ;;
6c3175b0 780 necv70)
252b5132
RH
781 basic_machine=v70-nec
782 os=-sysv
783 ;;
784 next | m*-next )
785 basic_machine=m68k-next
786 case $os in
787 -nextstep* )
788 ;;
789 -ns2*)
790 os=-nextstep2
791 ;;
792 *)
793 os=-nextstep3
794 ;;
795 esac
796 ;;
797 nh3000)
798 basic_machine=m68k-harris
799 os=-cxux
800 ;;
801 nh[45]000)
802 basic_machine=m88k-harris
803 os=-cxux
804 ;;
805 nindy960)
806 basic_machine=i960-intel
807 os=-nindy
808 ;;
6c3175b0 809 mon960)
252b5132
RH
810 basic_machine=i960-intel
811 os=-mon960
812 ;;
35590697
AJ
813 nonstopux)
814 basic_machine=mips-compaq
815 os=-nonstopux
816 ;;
252b5132
RH
817 np1)
818 basic_machine=np1-gould
819 ;;
ac73857d
AC
820 nsr-tandem)
821 basic_machine=nsr-tandem
822 ;;
6c3175b0
NC
823 op50n-* | op60c-*)
824 basic_machine=hppa1.1-oki
825 os=-proelf
826 ;;
1d9c9cd7 827 openrisc | openrisc-*)
f6e1c110 828 basic_machine=or32-unknown
f6e1c110 829 ;;
1e600082
AC
830 os400)
831 basic_machine=powerpc-ibm
832 os=-os400
833 ;;
6c3175b0 834 OSE68000 | ose68000)
252b5132
RH
835 basic_machine=m68000-ericsson
836 os=-ose
837 ;;
6c3175b0 838 os68k)
252b5132
RH
839 basic_machine=m68k-none
840 os=-os68k
841 ;;
842 pa-hitachi)
843 basic_machine=hppa1.1-hitachi
844 os=-hiuxwe2
845 ;;
846 paragon)
847 basic_machine=i860-intel
848 os=-osf
849 ;;
ad25e7d5
BE
850 parisc)
851 basic_machine=hppa-unknown
852 os=-linux
853 ;;
854 parisc-*)
855 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
856 os=-linux
857 ;;
252b5132
RH
858 pbd)
859 basic_machine=sparc-tti
860 ;;
861 pbb)
862 basic_machine=m68k-tti
863 ;;
fd31a171 864 pc532 | pc532-*)
252b5132
RH
865 basic_machine=ns32k-pc532
866 ;;
ec49b2b8
NC
867 pc98)
868 basic_machine=i386-pc
869 ;;
870 pc98-*)
871 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
872 ;;
26ef82f4 873 pentium | p5 | k5 | k6 | nexgen | viac3)
252b5132
RH
874 basic_machine=i586-pc
875 ;;
fd31a171 876 pentiumpro | p6 | 6x86 | athlon | athlon_*)
252b5132
RH
877 basic_machine=i686-pc
878 ;;
00c22daa 879 pentiumii | pentium2 | pentiumiii | pentium3)
35590697 880 basic_machine=i686-pc
252b5132 881 ;;
00c22daa
L
882 pentium4)
883 basic_machine=i786-pc
884 ;;
26ef82f4 885 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
252b5132
RH
886 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
887 ;;
1af08294 888 pentiumpro-* | p6-* | 6x86-* | athlon-*)
252b5132
RH
889 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
890 ;;
00c22daa 891 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
35590697 892 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
252b5132 893 ;;
00c22daa
L
894 pentium4-*)
895 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
896 ;;
252b5132
RH
897 pn)
898 basic_machine=pn-gould
899 ;;
35590697 900 power) basic_machine=power-ibm
252b5132
RH
901 ;;
902 ppc) basic_machine=powerpc-unknown
fd31a171 903 ;;
252b5132
RH
904 ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
905 ;;
906 ppcle | powerpclittle | ppc-le | powerpc-little)
907 basic_machine=powerpcle-unknown
fd31a171 908 ;;
252b5132
RH
909 ppcle-* | powerpclittle-*)
910 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
911 ;;
82208dc5 912 ppc64) basic_machine=powerpc64-unknown
fd31a171 913 ;;
82208dc5
AM
914 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
915 ;;
916 ppc64le | powerpc64little | ppc64-le | powerpc64-little)
917 basic_machine=powerpc64le-unknown
fd31a171 918 ;;
82208dc5
AM
919 ppc64le-* | powerpc64little-*)
920 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
921 ;;
252b5132
RH
922 ps2)
923 basic_machine=i386-ibm
924 ;;
9dec4c71
MS
925 pw32)
926 basic_machine=i586-unknown
927 os=-pw32
928 ;;
ec49b2b8
NC
929 rdos)
930 basic_machine=i386-pc
931 os=-rdos
932 ;;
6c3175b0 933 rom68k)
252b5132
RH
934 basic_machine=m68k-rom68k
935 os=-coff
936 ;;
937 rm[46]00)
938 basic_machine=mips-siemens
939 ;;
940 rtpc | rtpc-*)
941 basic_machine=romp-ibm
942 ;;
26ef82f4
GK
943 s390 | s390-*)
944 basic_machine=s390-ibm
945 ;;
946 s390x | s390x-*)
947 basic_machine=s390x-ibm
948 ;;
6c3175b0 949 sa29200)
252b5132
RH
950 basic_machine=a29k-amd
951 os=-udi
952 ;;
fd31a171
AC
953 sb1)
954 basic_machine=mipsisa64sb1-unknown
955 ;;
956 sb1el)
957 basic_machine=mipsisa64sb1el-unknown
958 ;;
4be041b2
TS
959 sde)
960 basic_machine=mipsisa32-sde
961 os=-elf
962 ;;
1e600082
AC
963 sei)
964 basic_machine=mips-sei
965 os=-seiux
966 ;;
252b5132
RH
967 sequent)
968 basic_machine=i386-sequent
969 ;;
970 sh)
971 basic_machine=sh-hitachi
972 os=-hms
973 ;;
0cfa5389
BE
974 sh5el)
975 basic_machine=sh5le-unknown
976 ;;
1e600082
AC
977 sh64)
978 basic_machine=sh64-unknown
979 ;;
26ef82f4 980 sparclite-wrs | simso-wrs)
252b5132
RH
981 basic_machine=sparclite-wrs
982 os=-vxworks
983 ;;
984 sps7)
985 basic_machine=m68k-bull
986 os=-sysv2
987 ;;
988 spur)
989 basic_machine=spur-unknown
990 ;;
6c3175b0 991 st2000)
252b5132
RH
992 basic_machine=m68k-tandem
993 ;;
6c3175b0 994 stratus)
252b5132
RH
995 basic_machine=i860-stratus
996 os=-sysv4
997 ;;
998 sun2)
999 basic_machine=m68000-sun
1000 ;;
1001 sun2os3)
1002 basic_machine=m68000-sun
1003 os=-sunos3
1004 ;;
1005 sun2os4)
1006 basic_machine=m68000-sun
1007 os=-sunos4
1008 ;;
1009 sun3os3)
1010 basic_machine=m68k-sun
1011 os=-sunos3
1012 ;;
1013 sun3os4)
1014 basic_machine=m68k-sun
1015 os=-sunos4
1016 ;;
1017 sun4os3)
1018 basic_machine=sparc-sun
1019 os=-sunos3
1020 ;;
1021 sun4os4)
1022 basic_machine=sparc-sun
1023 os=-sunos4
1024 ;;
1025 sun4sol2)
1026 basic_machine=sparc-sun
1027 os=-solaris2
1028 ;;
1029 sun3 | sun3-*)
1030 basic_machine=m68k-sun
1031 ;;
1032 sun4)
1033 basic_machine=sparc-sun
1034 ;;
1035 sun386 | sun386i | roadrunner)
1036 basic_machine=i386-sun
1037 ;;
fd31a171 1038 sv1)
ada59422
AC
1039 basic_machine=sv1-cray
1040 os=-unicos
1041 ;;
252b5132
RH
1042 symmetry)
1043 basic_machine=i386-sequent
1044 os=-dynix
1045 ;;
6c3175b0 1046 t3e)
39121370
DJ
1047 basic_machine=alphaev5-cray
1048 os=-unicos
1049 ;;
1050 t90)
1051 basic_machine=t90-cray
6c3175b0
NC
1052 os=-unicos
1053 ;;
1af08294
HPN
1054 tic54x | c54x*)
1055 basic_machine=tic54x-unknown
1056 os=-coff
1057 ;;
ee3fd329
AM
1058 tic55x | c55x*)
1059 basic_machine=tic55x-unknown
1060 os=-coff
1061 ;;
1062 tic6x | c6x*)
1063 basic_machine=tic6x-unknown
1064 os=-coff
1065 ;;
19090595
BE
1066 tile*)
1067 basic_machine=tile-unknown
1068 os=-linux-gnu
1069 ;;
252b5132
RH
1070 tx39)
1071 basic_machine=mipstx39-unknown
1072 ;;
1073 tx39el)
1074 basic_machine=mipstx39el-unknown
1075 ;;
0e254642
AM
1076 toad1)
1077 basic_machine=pdp10-xkl
1078 os=-tops20
1079 ;;
252b5132
RH
1080 tower | tower-32)
1081 basic_machine=m68k-ncr
1082 ;;
1e600082
AC
1083 tpf)
1084 basic_machine=s390x-ibm
1085 os=-tpf
1086 ;;
252b5132
RH
1087 udi29k)
1088 basic_machine=a29k-amd
1089 os=-udi
1090 ;;
1091 ultra3)
1092 basic_machine=a29k-nyu
1093 os=-sym1
1094 ;;
6c3175b0 1095 v810 | necv810)
252b5132
RH
1096 basic_machine=v810-nec
1097 os=-none
1098 ;;
1099 vaxv)
1100 basic_machine=vax-dec
1101 os=-sysv
1102 ;;
1103 vms)
1104 basic_machine=vax-dec
1105 os=-vms
1106 ;;
1107 vpp*|vx|vx-*)
fd31a171
AC
1108 basic_machine=f301-fujitsu
1109 ;;
252b5132
RH
1110 vxworks960)
1111 basic_machine=i960-wrs
1112 os=-vxworks
1113 ;;
1114 vxworks68)
1115 basic_machine=m68k-wrs
1116 os=-vxworks
1117 ;;
1118 vxworks29k)
1119 basic_machine=a29k-wrs
1120 os=-vxworks
1121 ;;
6c3175b0
NC
1122 w65*)
1123 basic_machine=w65-wdc
1124 os=-none
1125 ;;
1126 w89k-*)
1127 basic_machine=hppa1.1-winbond
1128 os=-proelf
252b5132 1129 ;;
a1e0f4e4
KC
1130 xbox)
1131 basic_machine=i686-pc
1132 os=-mingw32
1133 ;;
fd31a171 1134 xps | xps100)
252b5132
RH
1135 basic_machine=xps100-honeywell
1136 ;;
39121370
DJ
1137 ymp)
1138 basic_machine=ymp-cray
1139 os=-unicos
1140 ;;
6c3175b0 1141 z8k-*-coff)
252b5132
RH
1142 basic_machine=z8k-unknown
1143 os=-sim
1144 ;;
bc67ad83
BE
1145 z80-*-coff)
1146 basic_machine=z80-unknown
1147 os=-sim
1148 ;;
252b5132
RH
1149 none)
1150 basic_machine=none-none
1151 os=-none
1152 ;;
1153
1154# Here we handle the default manufacturer of certain CPU types. It is in
1155# some cases the only manufacturer, in others, it is the most popular.
6c3175b0 1156 w89k)
252b5132
RH
1157 basic_machine=hppa1.1-winbond
1158 ;;
6c3175b0 1159 op50n)
252b5132
RH
1160 basic_machine=hppa1.1-oki
1161 ;;
6c3175b0 1162 op60c)
252b5132
RH
1163 basic_machine=hppa1.1-oki
1164 ;;
252b5132
RH
1165 romp)
1166 basic_machine=romp-ibm
1167 ;;
eb1352ed
NC
1168 mmix)
1169 basic_machine=mmix-knuth
1170 ;;
252b5132
RH
1171 rs6000)
1172 basic_machine=rs6000-ibm
1173 ;;
1174 vax)
1175 basic_machine=vax-dec
1176 ;;
9dec4c71
MS
1177 pdp10)
1178 # there are many clones, so DEC is not a safe bet
1179 basic_machine=pdp10-unknown
1180 ;;
252b5132
RH
1181 pdp11)
1182 basic_machine=pdp11-dec
1183 ;;
1184 we32k)
1185 basic_machine=we32k-att
1186 ;;
7d6d7764 1187 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
35590697 1188 basic_machine=sh-unknown
1af08294 1189 ;;
49b9e644 1190 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
252b5132
RH
1191 basic_machine=sparc-sun
1192 ;;
fd31a171 1193 cydra)
252b5132
RH
1194 basic_machine=cydra-cydrome
1195 ;;
1196 orion)
1197 basic_machine=orion-highlevel
1198 ;;
1199 orion105)
1200 basic_machine=clipper-highlevel
1201 ;;
6c3175b0 1202 mac | mpw | mac-mpw)
252b5132
RH
1203 basic_machine=m68k-apple
1204 ;;
6c3175b0 1205 pmac | pmac-mpw)
252b5132
RH
1206 basic_machine=powerpc-apple
1207 ;;
82208dc5
AM
1208 *-unknown)
1209 # Make sure to match an already-canonicalized machine name.
1210 ;;
252b5132
RH
1211 *)
1212 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1213 exit 1
1214 ;;
1215esac
1216
1217# Here we canonicalize certain aliases for manufacturers.
1218case $basic_machine in
1219 *-digital*)
1220 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1221 ;;
1222 *-commodore*)
1223 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1224 ;;
1225 *)
1226 ;;
1227esac
1228
1229# Decode manufacturer-specific aliases for certain operating systems.
1230
1231if [ x"$os" != x"" ]
1232then
1233case $os in
1234 # First match some system type aliases
1235 # that might get confused with valid system types.
1236 # -solaris* is a basic system type, with this one exception.
1237 -solaris1 | -solaris1.*)
1238 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1239 ;;
1240 -solaris)
1241 os=-solaris2
1242 ;;
1243 -svr4*)
1244 os=-sysv4
1245 ;;
1246 -unixware*)
1247 os=-sysv4.2uw
1248 ;;
1249 -gnu/linux*)
1250 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1251 ;;
1252 # First accept the basic system types.
1253 # The portable systems comes first.
1254 # Each alternative MUST END IN A *, to match a version number.
1255 # -sysv* is not here because it comes later, after sysvr4.
1256 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1257 | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1258 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1259 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1260 | -aos* \
1261 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1262 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
ec49b2b8
NC
1263 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1264 | -openbsd* | -solidbsd* \
1e600082
AC
1265 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1266 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
252b5132
RH
1267 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1268 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
bc67ad83 1269 | -chorusos* | -chorusrdb* | -cegcc* \
252b5132 1270 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
ec49b2b8
NC
1271 | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
1272 | -uxpv* | -beos* | -mpeix* | -udk* \
3f234ef5 1273 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
9dec4c71 1274 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
82208dc5 1275 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
39121370 1276 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
3f234ef5 1277 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1d9c9cd7 1278 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
98a1bbc5 1279 | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
252b5132
RH
1280 # Remember, each alternative MUST END IN *, to match a version number.
1281 ;;
ac73857d
AC
1282 -qnx*)
1283 case $basic_machine in
82208dc5 1284 x86-* | i*86-*)
ac73857d
AC
1285 ;;
1286 *)
1287 os=-nto$os
1288 ;;
1289 esac
1290 ;;
3f234ef5
CD
1291 -nto-qnx*)
1292 ;;
ac73857d 1293 -nto*)
3f234ef5 1294 os=`echo $os | sed -e 's|nto|nto-qnx|'`
ac73857d 1295 ;;
252b5132 1296 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1d9c9cd7 1297 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
ada59422 1298 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
252b5132
RH
1299 ;;
1300 -mac*)
1301 os=`echo $os | sed -e 's|mac|macos|'`
1302 ;;
1e600082
AC
1303 -linux-dietlibc)
1304 os=-linux-dietlibc
1305 ;;
252b5132
RH
1306 -linux*)
1307 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1308 ;;
1309 -sunos5*)
1310 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1311 ;;
1312 -sunos6*)
1313 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1314 ;;
ada59422
AC
1315 -opened*)
1316 os=-openedition
1317 ;;
1e600082
AC
1318 -os400*)
1319 os=-os400
1320 ;;
4bab746c
NC
1321 -wince*)
1322 os=-wince
1323 ;;
252b5132
RH
1324 -osfrose*)
1325 os=-osfrose
1326 ;;
1327 -osf*)
1328 os=-osf
1329 ;;
1330 -utek*)
1331 os=-bsd
1332 ;;
1333 -dynix*)
1334 os=-bsd
1335 ;;
1336 -acis*)
1337 os=-aos
1338 ;;
26ef82f4
GK
1339 -atheos*)
1340 os=-atheos
1341 ;;
1e600082
AC
1342 -syllable*)
1343 os=-syllable
1344 ;;
6c3175b0 1345 -386bsd)
252b5132
RH
1346 os=-bsd
1347 ;;
1348 -ctix* | -uts*)
1349 os=-sysv
1350 ;;
39121370
DJ
1351 -nova*)
1352 os=-rtmk-nova
1353 ;;
252b5132 1354 -ns2 )
fd31a171 1355 os=-nextstep2
252b5132 1356 ;;
6e8dd58f 1357 -nsk*)
ac73857d
AC
1358 os=-nsk
1359 ;;
252b5132
RH
1360 # Preserve the version number of sinix5.
1361 -sinix5.*)
1362 os=`echo $os | sed -e 's|sinix|sysv|'`
1363 ;;
1364 -sinix*)
1365 os=-sysv4
1366 ;;
1e600082
AC
1367 -tpf*)
1368 os=-tpf
1369 ;;
252b5132
RH
1370 -triton*)
1371 os=-sysv3
1372 ;;
1373 -oss*)
1374 os=-sysv3
1375 ;;
1376 -svr4)
1377 os=-sysv4
1378 ;;
1379 -svr3)
1380 os=-sysv3
1381 ;;
1382 -sysvr4)
1383 os=-sysv4
1384 ;;
1385 # This must come after -sysvr4.
1386 -sysv*)
1387 ;;
6c3175b0 1388 -ose*)
252b5132
RH
1389 os=-ose
1390 ;;
6c3175b0 1391 -es1800*)
252b5132
RH
1392 os=-ose
1393 ;;
1394 -xenix)
1395 os=-xenix
1396 ;;
fd31a171
AC
1397 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1398 os=-mint
6c3175b0 1399 ;;
ee3fd329
AM
1400 -aros*)
1401 os=-aros
1402 ;;
1403 -kaos*)
1404 os=-kaos
1405 ;;
57d1eb1a
DD
1406 -zvmoe)
1407 os=-zvmoe
1408 ;;
e2208220
BE
1409 -dicos*)
1410 os=-dicos
1411 ;;
252b5132
RH
1412 -none)
1413 ;;
1414 *)
1415 # Get rid of the `-' at the beginning of $os.
1416 os=`echo $os | sed 's/[^-]*-//'`
1417 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1418 exit 1
1419 ;;
1420esac
1421else
1422
1423# Here we handle the default operating systems that come with various machines.
1424# The value should be what the vendor currently ships out the door with their
1425# machine or put another way, the most popular os provided with the machine.
1426
1427# Note that if you're going to try to match "-MANUFACTURER" here (say,
1428# "-sun"), then you have to tell the case statement up towards the top
1429# that MANUFACTURER isn't an operating system. Otherwise, code above
1430# will signal an error saying that MANUFACTURER isn't an operating
1431# system, and we'll never get to this point.
1432
1433case $basic_machine in
17bcf627
BE
1434 score-*)
1435 os=-elf
1436 ;;
ea3d1626
BE
1437 spu-*)
1438 os=-elf
1439 ;;
252b5132
RH
1440 *-acorn)
1441 os=-riscix1.2
1442 ;;
ada59422 1443 arm*-rebel)
252b5132
RH
1444 os=-linux
1445 ;;
1446 arm*-semi)
1447 os=-aout
1448 ;;
ea3d1626
BE
1449 c4x-* | tic4x-*)
1450 os=-coff
1451 ;;
0e254642 1452 # This must come before the *-dec entry.
9dec4c71
MS
1453 pdp10-*)
1454 os=-tops20
1455 ;;
fd31a171 1456 pdp11-*)
252b5132
RH
1457 os=-none
1458 ;;
1459 *-dec | vax-*)
1460 os=-ultrix4.2
1461 ;;
1462 m68*-apollo)
1463 os=-domain
1464 ;;
1465 i386-sun)
1466 os=-sunos4.0.2
1467 ;;
1468 m68000-sun)
1469 os=-sunos3
1470 # This also exists in the configure program, but was not the
1471 # default.
1472 # os=-sunos4
1473 ;;
6c3175b0 1474 m68*-cisco)
252b5132
RH
1475 os=-aout
1476 ;;
98a1bbc5
BE
1477 mep-*)
1478 os=-elf
1479 ;;
6c3175b0
NC
1480 mips*-cisco)
1481 os=-elf
1482 ;;
1483 mips*-*)
252b5132
RH
1484 os=-elf
1485 ;;
f6e1c110
BE
1486 or32-*)
1487 os=-coff
1488 ;;
252b5132
RH
1489 *-tti) # must be before sparc entry or we get the wrong os.
1490 os=-sysv3
1491 ;;
1492 sparc-* | *-sun)
1493 os=-sunos4.1.1
1494 ;;
1495 *-be)
1496 os=-beos
1497 ;;
1d9c9cd7
KC
1498 *-haiku)
1499 os=-haiku
1500 ;;
252b5132
RH
1501 *-ibm)
1502 os=-aix
1503 ;;
eb1352ed
NC
1504 *-knuth)
1505 os=-mmixware
1506 ;;
6c3175b0 1507 *-wec)
252b5132
RH
1508 os=-proelf
1509 ;;
6c3175b0 1510 *-winbond)
252b5132
RH
1511 os=-proelf
1512 ;;
6c3175b0 1513 *-oki)
252b5132
RH
1514 os=-proelf
1515 ;;
1516 *-hp)
1517 os=-hpux
1518 ;;
1519 *-hitachi)
1520 os=-hiux
1521 ;;
1522 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1523 os=-sysv
1524 ;;
1525 *-cbm)
1526 os=-amigaos
1527 ;;
1528 *-dg)
1529 os=-dgux
1530 ;;
1531 *-dolphin)
1532 os=-sysv3
1533 ;;
1534 m68k-ccur)
1535 os=-rtu
1536 ;;
1537 m88k-omron*)
1538 os=-luna
1539 ;;
1540 *-next )
1541 os=-nextstep
1542 ;;
1543 *-sequent)
1544 os=-ptx
1545 ;;
1546 *-crds)
1547 os=-unos
1548 ;;
1549 *-ns)
1550 os=-genix
1551 ;;
1552 i370-*)
1553 os=-mvs
1554 ;;
1555 *-next)
1556 os=-nextstep3
1557 ;;
fd31a171 1558 *-gould)
252b5132
RH
1559 os=-sysv
1560 ;;
fd31a171 1561 *-highlevel)
252b5132
RH
1562 os=-bsd
1563 ;;
1564 *-encore)
1565 os=-bsd
1566 ;;
fd31a171 1567 *-sgi)
252b5132
RH
1568 os=-irix
1569 ;;
fd31a171 1570 *-siemens)
252b5132
RH
1571 os=-sysv4
1572 ;;
1573 *-masscomp)
1574 os=-rtu
1575 ;;
35590697 1576 f30[01]-fujitsu | f700-fujitsu)
252b5132
RH
1577 os=-uxpv
1578 ;;
6c3175b0 1579 *-rom68k)
252b5132
RH
1580 os=-coff
1581 ;;
6c3175b0 1582 *-*bug)
252b5132
RH
1583 os=-coff
1584 ;;
6c3175b0 1585 *-apple)
252b5132
RH
1586 os=-macos
1587 ;;
6c3175b0
NC
1588 *-atari*)
1589 os=-mint
1590 ;;
252b5132
RH
1591 *)
1592 os=-none
1593 ;;
1594esac
1595fi
1596
1597# Here we handle the case where we know the os, and the CPU type, but not the
1598# manufacturer. We pick the logical manufacturer.
1599vendor=unknown
1600case $basic_machine in
1601 *-unknown)
1602 case $os in
1603 -riscix*)
1604 vendor=acorn
1605 ;;
1606 -sunos*)
1607 vendor=sun
1608 ;;
1609 -aix*)
1610 vendor=ibm
1611 ;;
1612 -beos*)
1613 vendor=be
1614 ;;
1615 -hpux*)
1616 vendor=hp
1617 ;;
1618 -mpeix*)
1619 vendor=hp
1620 ;;
1621 -hiux*)
1622 vendor=hitachi
1623 ;;
1624 -unos*)
1625 vendor=crds
1626 ;;
1627 -dgux*)
1628 vendor=dg
1629 ;;
1630 -luna*)
1631 vendor=omron
1632 ;;
1633 -genix*)
1634 vendor=ns
1635 ;;
ada59422 1636 -mvs* | -opened*)
252b5132
RH
1637 vendor=ibm
1638 ;;
1e600082
AC
1639 -os400*)
1640 vendor=ibm
1641 ;;
252b5132
RH
1642 -ptx*)
1643 vendor=sequent
1644 ;;
1e600082
AC
1645 -tpf*)
1646 vendor=ibm
1647 ;;
5f284831 1648 -vxsim* | -vxworks* | -windiss*)
252b5132
RH
1649 vendor=wrs
1650 ;;
1651 -aux*)
1652 vendor=apple
1653 ;;
6c3175b0 1654 -hms*)
252b5132
RH
1655 vendor=hitachi
1656 ;;
6c3175b0 1657 -mpw* | -macos*)
252b5132
RH
1658 vendor=apple
1659 ;;
35590697 1660 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
6c3175b0
NC
1661 vendor=atari
1662 ;;
82208dc5
AM
1663 -vos*)
1664 vendor=stratus
1665 ;;
252b5132
RH
1666 esac
1667 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1668 ;;
1669esac
1670
1671echo $basic_machine$os
1d9c9cd7 1672exit
ac73857d
AC
1673
1674# Local variables:
1675# eval: (add-hook 'write-file-hooks 'time-stamp)
35590697 1676# time-stamp-start: "timestamp='"
ac73857d
AC
1677# time-stamp-format: "%:y-%02m-%02d"
1678# time-stamp-end: "'"
1679# End: