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