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