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