Cleanup debugging messages.
[deliverable/binutils-gdb.git] / config.sub
CommitLineData
4f183929 1#!/bin/sh
378fd382 2# Configuration validation subroutine script, version 1.1.
842ca181 3# Copyright (C) 1991, 1992, 1993, 1994 Free Software Foundation, Inc.
378fd382
DZ
4# This file is (in principle) common to ALL GNU software.
5# The presence of a machine in this file suggests that SOME GNU software
6# can handle that machine. It does not imply ALL GNU software can.
a2ee3e6d
JW
7
8#This file is free software; you can redistribute it and/or modify
9#it under the terms of the GNU General Public License as published by
10#the Free Software Foundation; either version 2 of the License, or
11#(at your option) any later version.
12
13#This program is distributed in the hope that it will be useful,
14#but WITHOUT ANY WARRANTY; without even the implied warranty of
15#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16#GNU General Public License for more details.
17
18#You should have received a copy of the GNU General Public License
19#along with this program; if not, write to the Free Software
20#Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21
4f183929
RP
22
23# Configuration subroutine to validate and canonicalize a configuration type.
24# Supply the specified configuration type as an argument.
25# If it is invalid, we print an error message on stderr and exit with code 1.
26# Otherwise, we print the canonical config type on stdout and succeed.
27
28# This file is supposed to be the same for all GNU packages
29# and recognize all the CPU types, system types and aliases
30# that are meaningful with *any* GNU software.
31# Each package is responsible for reporting which valid configurations
32# it does not support. The user should be able to distinguish
33# a failure to support a valid configuration from a meaningless
a2ee3e6d 34# configuration.
4f183929 35
a2ee3e6d
JW
36# The goal of this file is to map all the various variations of a given
37# machine specification into a single specification in the form:
38# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
27a2a371 39# It is wrong to echo any other type of specification.
8b204e6e 40
d1c8b869 41if [ x$1 = x ] # CYGNUS LOCAL
23ab00aa
KR
42then
43 echo Configuration name missing. 1>&2
44 echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
45 echo "or $0 ALIAS" 1>&2
46 echo where ALIAS is a recognized configuration type. 1>&2
47 exit 1
48fi
49
a2ee3e6d
JW
50# First pass through any local machine types.
51case $1 in
52 *local*)
53 echo $1
54 exit 0
55 ;;
56 *)
69e87de2 57 ;;
a2ee3e6d 58esac
b9fe720d 59
a2ee3e6d 60# Separate what the user gave into CPU-COMPANY and OS (if any).
378fd382 61basic_machine=`echo $1 | sed 's/-[^-]*$//'`
a2ee3e6d
JW
62if [ $basic_machine != $1 ]
63then os=`echo $1 | sed 's/.*-/-/'`
64else os=; fi
caebaa16 65
27a2a371
JW
66### Let's recognize common machines as not being operating systems so
67### that things like config.sub decstation-3100 work. We also
6559fbdb 68### recognize some manufacturers as not being operating systems, so we
27a2a371 69### can provide default operating systems below.
a2ee3e6d 70case $os in
939d9e8a
JL
71 -sun*os*)
72 # Prevent following clause from handling this invalid input.
73 ;;
a2ee3e6d
JW
74 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
75 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
1983e432 76 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
939d9e8a 77 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
a2ee3e6d 78 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
939d9e8a 79 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
3b61a094 80 -sim | -cisco | -oki | -wec | -winbond ) # CYGNUS LOCAL
a2ee3e6d
JW
81 os=
82 basic_machine=$1
83 ;;
378fd382 84 -scout) # CYGNUS LOCAL
f68be6f0 85 ;;
6559fbdb 86 -wrs) # CYGNUS LOCAL
300f6a4f
RS
87 os=vxworks
88 basic_machine=$1
89 ;;
939d9e8a
JL
90 -unixware) # CYGNUS LOCAL
91 os=-sysv4
92 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
93 ;;
94 -hiux*)
aa6db781 95 os=-hiuxwe2
939d9e8a
JL
96 ;;
97 -sco4)
98 os=-sco3.2v4
99 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
100 ;;
101 -sco3.2.[4-9]*)
102 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
103 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
104 ;;
27a2a371
JW
105 -sco3.2v[4-9]*)
106 # Don't forget version if it is 3.2v4 or newer.
6559fbdb 107 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
27a2a371 108 ;;
a2ee3e6d 109 -sco*)
378fd382 110 os=-sco3.2v2
6559fbdb 111 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
a2ee3e6d 112 ;;
27a2a371
JW
113 -isc)
114 os=-isc2.2
6559fbdb 115 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
27a2a371 116 ;;
9d784b19
RS
117 -clix*)
118 basic_machine=clipper-intergraph
119 ;;
378fd382 120 -isc*)
6559fbdb 121 basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
a2ee3e6d 122 ;;
d1c8b869 123 -lynx*) # CYGNUS LOCAL: lynx
939d9e8a
JL
124 os=-lynxos
125 ;;
d1c8b869
ILT
126 -ptx*)
127 basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
aa6db781 128 ;;
a2ee3e6d 129esac
b9fe720d 130
a2ee3e6d
JW
131# Decode aliases for certain CPU-COMPANY combinations.
132case $basic_machine in
939d9e8a 133 # Recognize the basic CPU types without company name.
378fd382 134 # Some are omitted here because they have special meanings below.
d1c8b869
ILT
135 tahoe | i[345]86 | i860 | m68k | m68000 | m88k | ns32k | arm | pyramid \
136 | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \
137 | alpha | we32k | ns16k | clipper | sparclite | i370 | sh \
138 | powerpc | sparc64 | 1750a | dsp16xx | mips64 | mipsel \
139 | mips64el | mips64orion | mips64orionel \
939d9e8a 140 | m88110 | sparc | m680[01234]0 | m683?2 | z8k | v70 \
c03a4997 141 | h8500) # CYGNUS LOCAL
a2ee3e6d
JW
142 basic_machine=$basic_machine-unknown
143 ;;
939d9e8a
JL
144 # Object if more than one company name word.
145 *-*-*)
146 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
147 exit 1
148 ;;
149 # Recognize the basic CPU types with company name.
d1c8b869 150 vax-* | tahoe-* | i[345]86-* | i860-* | m68k-* | m68000-* | m88k-* \
378fd382 151 | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
a2ee3e6d 152 | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
d1c8b869 153 | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
27a2a371 154 | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
6559fbdb 155 | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
d1c8b869
ILT
156 | sh-* | powerpc-* | sparc64-* | mips64-* | mipsel-* \
157 | mips64el-* | mips64orion-* | mips64orionel-* \
158 | m88110-* | m680[01234]0-* | m683?2-* | z8k-* \
c03a4997 159 | h8500-*) # CYGNUS LOCAL
a2ee3e6d
JW
160 ;;
161 # Recognize the various machine names and aliases which stand
162 # for a CPU type and a company and sometimes even an OS.
842ca181
PB
163 386bsd) # CYGNUS LOCAL
164 basic_machine=i386-unknown
165 os=-bsd
a2ee3e6d 166 ;;
842ca181
PB
167 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
168 basic_machine=m68000-att
a2ee3e6d 169 ;;
842ca181
PB
170 3b*)
171 basic_machine=we32k-att
939d9e8a 172 ;;
842ca181
PB
173 a29khif) # CYGNUS LOCAL
174 basic_machine=a29k-amd
175 os=-udi
939d9e8a 176 ;;
842ca181
PB
177 adobe68k) # CYGNUS LOCAL
178 basic_machine=m68010-adobe
179 os=-scout
ba7f177a 180 ;;
842ca181
PB
181 alliant | fx80)
182 basic_machine=fx80-alliant
939d9e8a 183 ;;
842ca181
PB
184 altos | altos3068)
185 basic_machine=m68k-altos
a2ee3e6d 186 ;;
842ca181
PB
187 am29k)
188 basic_machine=a29k-none
189 os=-bsd
a2ee3e6d 190 ;;
842ca181
PB
191 amdahl)
192 basic_machine=580-amdahl
193 os=-sysv
939d9e8a 194 ;;
d1c8b869 195 amiga | amiga-*)
842ca181 196 basic_machine=m68k-cbm
68cd7865 197 ;;
842ca181
PB
198 amigados)
199 basic_machine=m68k-cbm
200 os=-amigados
a2ee3e6d 201 ;;
842ca181
PB
202 amigaunix | amix)
203 basic_machine=m68k-cbm
6559fbdb
RP
204 os=-sysv4
205 ;;
842ca181
PB
206 apollo68)
207 basic_machine=m68k-apollo
6559fbdb
RP
208 os=-sysv
209 ;;
842ca181
PB
210 apollo68bsd) # CYGNUS LOCAL
211 basic_machine=m68k-apollo
23ab00aa
KR
212 os=-bsd
213 ;;
842ca181
PB
214 balance)
215 basic_machine=ns32k-sequent
216 os=-dynix
939d9e8a 217 ;;
a2ee3e6d
JW
218 convex-c1)
219 basic_machine=c1-convex
378fd382 220 os=-bsd
a2ee3e6d
JW
221 ;;
222 convex-c2)
223 basic_machine=c2-convex
378fd382 224 os=-bsd
a2ee3e6d
JW
225 ;;
226 convex-c32)
227 basic_machine=c32-convex
378fd382 228 os=-bsd
a2ee3e6d
JW
229 ;;
230 convex-c34)
231 basic_machine=c34-convex
378fd382 232 os=-bsd
a2ee3e6d
JW
233 ;;
234 convex-c38)
235 basic_machine=c38-convex
378fd382 236 os=-bsd
a2ee3e6d 237 ;;
842ca181
PB
238 cray | ymp)
239 basic_machine=ymp-cray
240 os=-unicos
a2ee3e6d 241 ;;
842ca181
PB
242 cray2)
243 basic_machine=cray2-cray
244 os=-unicos
a2ee3e6d
JW
245 ;;
246 crds | unos)
247 basic_machine=m68k-crds
248 ;;
d1c8b869
ILT
249 da30 | da30-*)
250 basic_machine=m68k-da30
251 ;;
252 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
842ca181
PB
253 basic_machine=mips-dec
254 ;;
255 delta | 3300 | motorola-3300 | motorola-delta \
256 | 3300-motorola | delta-motorola)
257 basic_machine=m68k-motorola
258 ;;
259 delta88)
260 basic_machine=m88k-motorola
261 os=-sysv3
262 ;;
263 dpx20 | dpx20-*)
264 basic_machine=rs6000-bull
265 os=-bosx
266 ;;
267 dpx2* | dpx2*-bull)
268 basic_machine=m68k-bull
269 os=-sysv3
270 ;;
271 ebmon29k)
272 basic_machine=a29k-amd
273 os=-ebmon
274 ;;
378fd382
DZ
275 elxsi)
276 basic_machine=elxsi-elxsi
277 os=-bsd
278 ;;
a2ee3e6d
JW
279 encore | umax | mmax)
280 basic_machine=ns32k-encore
a2ee3e6d 281 ;;
842ca181
PB
282 es1800 | OSE68k | ose68k | ose | OSE) # CYGNUS LOCAL
283 basic_machine=m68k-ericsson
284 os=-ose
285 ;;
286 fx2800)
287 basic_machine=i860-alliant
288 ;;
a2ee3e6d
JW
289 genix)
290 basic_machine=ns32k-ns
291 ;;
842ca181
PB
292 gmicro)
293 basic_machine=tron-gmicro
294 os=-sysv
a2ee3e6d 295 ;;
842ca181
PB
296 h3050r* | hiux*)
297 basic_machine=hppa1.1-hitachi
298 os=-hiuxwe2
a2ee3e6d 299 ;;
842ca181
PB
300 h8300hds)
301 basic_machine=h8300-hitachi
302 os=-hds
de0f17d8 303 ;;
842ca181
PB
304 h8300hms) # CYGNUS LOCAL
305 basic_machine=h8300-hitachi
306 os=-hms
a2ee3e6d 307 ;;
842ca181
PB
308 h8300xray) # CYGNUS LOCAL
309 basic_machine=h8300-hitachi
310 os=-xray
a2ee3e6d 311 ;;
842ca181
PB
312 h8500hms) # CYGNUS LOCAL
313 basic_machine=h8500-hitachi
314 os=-hms
a2ee3e6d 315 ;;
842ca181
PB
316 harris)
317 basic_machine=m88k-harris
318 os=-sysv3
a2ee3e6d 319 ;;
d1c8b869
ILT
320 hp300-*)
321 basic_machine=m68k-hp
a2ee3e6d 322 ;;
842ca181
PB
323 hp300bsd)
324 basic_machine=m68k-hp
325 os=-bsd
a2ee3e6d 326 ;;
842ca181
PB
327 hp300hpux)
328 basic_machine=m68k-hp
329 os=-hpux
a2ee3e6d 330 ;;
d1c8b869
ILT
331 w89k-*) # CYGNUS LOCAL
332 basic_machine=hppa1.1-winbond
333 os=-proelf
334 ;;
335 op50n-*) # CYGNUS LOCAL
336 basic_machine=hppa1.1-oki
337 os=-proelf
338 ;;
339 op60c-*) # CYGNUS LOCAL
340 basic_machine=hppa1.1-oki
341 os=-proelf
342 ;;
343 hppro) # CYGNUS LOCAL
344 basic_machine=hppa1.1-hp
345 os=-proelf
346 ;;
842ca181
PB
347 hp9k2[0-9][0-9] | hp9k31[0-9])
348 basic_machine=m68000-hp
a2ee3e6d 349 ;;
842ca181
PB
350 hp9k3[2-9][0-9])
351 basic_machine=m68k-hp
a2ee3e6d 352 ;;
842ca181
PB
353 hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
354 basic_machine=hppa1.1-hp
a2ee3e6d 355 ;;
842ca181
PB
356 hp9k8[0-9][0-9] | hp8[0-9][0-9])
357 basic_machine=hppa1.0-hp
a2ee3e6d 358 ;;
842ca181
PB
359 hppaosf)
360 basic_machine=hppa1.1-hp
361 os=-osf
362 ;;
363 i370-ibm* | ibm*)
364 basic_machine=i370-ibm
365 os=-mvs
366 ;;
842ca181 367# I'm not sure what "Sysv32" means. Should this be sysv3.2?
d1c8b869 368 i[345]86v32)
842ca181
PB
369 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
370 os=-sysv32
371 ;;
d1c8b869 372 i[345]86v4*)
842ca181
PB
373 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
374 os=-sysv4
375 ;;
d1c8b869 376 i[345]86v)
842ca181
PB
377 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
378 os=-sysv
379 ;;
d1c8b869 380 i[345]86sol2)
842ca181 381 basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
8bcd7db2
JW
382 os=-solaris2
383 ;;
d1c8b869
ILT
384 i386mach) # CYGNUS LOCAL
385 basic_machine=i386-mach
386 os=-mach
387 ;;
388 i386-vsta | vsta) # CYGNUS LOCAL
389 basic_machine=i386-unknown
390 os=-vsta
391 ;;
392 i386-go32 | go32) # CYGNUS LOCAL
393 basic_machine=i386-unknown
394 os=-go32
395 ;;
842ca181
PB
396 i386-linux* | linux) # CYGNUS LOCAL
397 basic_machine=i386-unknown
398 os=-linux
de0f17d8 399 ;;
842ca181
PB
400 i386-linux*coff | linuxcoff) # CYGNUS LOCAL
401 basic_machine=i386-unknown
402 os=-linuxcoff
a2ee3e6d 403 ;;
842ca181
PB
404 i386-linux*elf | linuxelf) # CYGNUS LOCAL
405 basic_machine=i386-unknown
406 os=-linuxelf
407 ;;
408 iris | iris4d | \
409 iris3 | iris4) # CYGNUS LOCAL
410 basic_machine=mips-sgi
411 case $os in
412 -irix*)
413 ;;
414 *)
415 os=-irix4
416 ;;
417 esac
418 ;;
419 isi68 | isi)
420 basic_machine=m68k-isi
421 os=-sysv
422 ;;
842ca181
PB
423 m88k-omron*)
424 basic_machine=m88k-omron
425 ;;
426 magnum | m3230)
427 basic_machine=mips-mips
428 os=-sysv
429 ;;
430 merlin)
431 basic_machine=ns32k-utek
432 os=-sysv
433 ;;
434 miniframe)
d1c8b869 435 basic_machine=m68000-convergent
a2ee3e6d 436 ;;
d1c8b869 437 mips3*-*)
842ca181
PB
438 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
439 ;;
d1c8b869
ILT
440 mips3*)
441 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
842ca181 442 ;;
d1c8b869
ILT
443 monitor) # CYGNUS LOCAL
444 basic_machine=m68k-rom68k
842ca181 445 os=-coff
d1c8b869 446 ;;
378fd382 447 msdos) # CYGNUS LOCAL
afba2b22
ILT
448 basic_machine=i386-unknown
449 os=-msdos
450 ;;
842ca181
PB
451 ncr3000)
452 basic_machine=i486-ncr
453 os=-sysv4
378fd382 454 ;;
842ca181
PB
455 netbsd386)
456 basic_machine=i386-unknown # CYGNUS LOCAL
457 os=-netbsd
a2ee3e6d 458 ;;
842ca181
PB
459 news | news700 | news800 | news900)
460 basic_machine=m68k-sony
461 os=-newsos
a2ee3e6d 462 ;;
842ca181
PB
463 news1000)
464 basic_machine=m68030-sony
465 os=-newsos
466 ;;
467 news-3600 | risc-news)
468 basic_machine=mips-sony
469 os=-newsos
378fd382 470 ;;
d1c8b869
ILT
471 necv70) # CYGNUS LOCAL
472 basic_machine=v70-nec
473 os=-sysv
474 ;;
475 next | m*-next )
a2ee3e6d 476 basic_machine=m68k-next
842ca181 477 case $os in
d1c8b869
ILT
478 -nextstep* )
479 ;;
480 -ns2*)
481 os=-nextstep2
842ca181
PB
482 ;;
483 *)
1983e432 484 os=-nextstep3
842ca181
PB
485 ;;
486 esac
a2ee3e6d 487 ;;
842ca181
PB
488 nh3000)
489 basic_machine=m68k-harris
490 os=-cxux
378fd382 491 ;;
842ca181
PB
492 nh[45]000)
493 basic_machine=m88k-harris
494 os=-cxux
27a2a371 495 ;;
842ca181
PB
496 nindy960)
497 basic_machine=i960-intel
498 os=-nindy
a2ee3e6d 499 ;;
842ca181
PB
500 np1)
501 basic_machine=np1-gould
a2ee3e6d 502 ;;
842ca181
PB
503 OSE68000 | ose68000) # CYGNUS LOCAL
504 basic_machine=m68000-ericsson
505 os=-ose
a2ee3e6d 506 ;;
d1c8b869
ILT
507 os68k) # CYGNUS LOCAL
508 basic_machine=m68k-none
509 os=-os68k
510 ;;
842ca181 511 pa-hitachi)
9117f609 512 basic_machine=hppa1.1-hitachi
842ca181 513 os=-hiuxwe2
9117f609 514 ;;
842ca181
PB
515 paragon)
516 basic_machine=i860-intel
517 os=-osf
a2ee3e6d 518 ;;
842ca181
PB
519 pbd)
520 basic_machine=sparc-tti
a2ee3e6d 521 ;;
842ca181
PB
522 pbb)
523 basic_machine=m68k-tti
a2ee3e6d 524 ;;
d1c8b869 525 pc532 | pc532-*)
842ca181 526 basic_machine=ns32k-pc532
a2ee3e6d 527 ;;
d1c8b869
ILT
528 pentium-*)
529 # We will change tis to say i586 once there has been
530 # time for various packages to start to recognize that.
531 basic_machine=i486-`echo $basic_machine | sed 's/^[^-]*-//'`
532 ;;
842ca181
PB
533 pn)
534 basic_machine=pn-gould
535 ;;
536 ps2)
537 basic_machine=i386-ibm
68cd7865 538 ;;
d1c8b869
ILT
539 rom68k) # CYGNUS LOCAL
540 basic_machine=m68k-rom68k
9d784b19 541 os=-coff
d1c8b869 542 ;;
842ca181
PB
543 rtpc | rtpc-*)
544 basic_machine=romp-ibm
a2ee3e6d 545 ;;
842ca181
PB
546 sa29200) # CYGNUS LOCAL
547 basic_machine=a29k-amd
548 os=-udi
a2ee3e6d 549 ;;
d1c8b869
ILT
550 sequent)
551 basic_machine=i386-sequent
552 ;;
553 sh)
842ca181
PB
554 basic_machine=sh-hitachi
555 os=-hms
a2ee3e6d 556 ;;
842ca181
PB
557 sparclite-wrs) # CYGNUS LOCAL
558 basic_machine=sparclite-wrs
559 os=-vxworks
560 ;;
561 sparcfrw) # CYGNUS LOCAL
562 basic_machine=sparcfrw-sun
563 os=-sunos4
564 ;;
565 sparcfrwcompat) # CYGNUS LOCAL
566 basic_machine=sparcfrwcompat-sun
567 os=-sunos4
568 ;;
569 sparclitefrw) # CYGNUS LOCAL
570 basic_machine=sparclitefrw-fujitsu
571 ;;
572 sparclitefrwcompat) # CYGNUS LOCAL
573 basic_machine=sparclitefrwcompat-fujitsu
574 ;;
575 sps7)
576 basic_machine=m68k-bull
577 os=-sysv2
578 ;;
579 spur)
580 basic_machine=spur-unknown
581 ;;
582 st2000) # CYGNUS LOCAL
583 basic_machine=m68k-tandem
a2ee3e6d 584 ;;
378fd382 585 stratus) # CYGNUS LOCAL
dd16baba
SEF
586 basic_machine=i860-stratus
587 os=-sysv4
588 ;;
842ca181
PB
589 sun2)
590 basic_machine=m68000-sun
a2ee3e6d 591 ;;
842ca181
PB
592 sun2os3)
593 basic_machine=m68000-sun
594 os=-sunos3
a2ee3e6d 595 ;;
842ca181
PB
596 sun2os4)
597 basic_machine=m68000-sun
598 os=-sunos4
a2ee3e6d 599 ;;
842ca181
PB
600 sun3os3)
601 basic_machine=m68k-sun
602 os=-sunos3
a2ee3e6d 603 ;;
842ca181
PB
604 sun3os4)
605 basic_machine=m68k-sun
606 os=-sunos4
a2ee3e6d 607 ;;
842ca181
PB
608 sun4os3)
609 basic_machine=sparc-sun
610 os=-sunos3
a2ee3e6d 611 ;;
842ca181
PB
612 sun4os4)
613 basic_machine=sparc-sun
614 os=-sunos4
2501643a 615 ;;
842ca181
PB
616 sun4sol2) # CYGNUS LOCAL
617 basic_machine=sparc-sun
618 os=-solaris2
984b27cb 619 ;;
d1c8b869 620 sun3 | sun3-*)
842ca181 621 basic_machine=m68k-sun
984b27cb 622 ;;
842ca181
PB
623 sun4)
624 basic_machine=sparc-sun
378fd382 625 ;;
842ca181
PB
626 sun386 | sun386i | roadrunner)
627 basic_machine=i386-sun
378fd382 628 ;;
842ca181
PB
629 symmetry)
630 basic_machine=i386-sequent
631 os=-dynix
2501643a 632 ;;
842ca181
PB
633 tower | tower-32)
634 basic_machine=m68k-ncr
2501643a 635 ;;
842ca181 636 udi29k) # CYGNUS LOCAL
2501643a
PB
637 basic_machine=a29k-amd
638 os=-udi
639 ;;
842ca181
PB
640 ultra3)
641 basic_machine=a29k-nyu
642 os=-sym1
99a5da15 643 ;;
842ca181 644 unixware) # CYGNUS LOCAL
a2ee3e6d 645 os=-sysv4
842ca181 646 basic_machine=i386-unknown
68cd7865 647 ;;
4a967132
PB
648 v810 | necv810)
649 basic_machine=v810-nec
650 os=-none
651 ;;
842ca181
PB
652 vaxv)
653 basic_machine=vax-dec
654 os=-sysv
a2ee3e6d 655 ;;
842ca181
PB
656 vms)
657 basic_machine=vax-dec
658 os=-vms
a2ee3e6d
JW
659 ;;
660 vxworks960)
661 basic_machine=i960-wrs
662 os=-vxworks
663 ;;
664 vxworks68)
665 basic_machine=m68k-wrs
666 os=-vxworks
667 ;;
842ca181
PB
668 xmp)
669 basic_machine=xmp-cray
670 os=-unicos
f68be6f0 671 ;;
27a2a371
JW
672 xps | xps100)
673 basic_machine=xps100-honeywell
674 ;;
842ca181 675 z8ksim) # CYGNUS LOCAL
d1c8b869 676 basic_machine=z8k-unknown
842ca181
PB
677 os=-sim
678 ;;
a2ee3e6d
JW
679 none)
680 basic_machine=none-none
681 os=-none
682 ;;
69e87de2 683
a2ee3e6d
JW
684# Here we handle the default manufacturer of certain CPU types. It is in
685# some cases the only manufacturer, in others, it is the most popular.
d1c8b869 686 w89k) # CYGNUS LOCAL
3b61a094
RS
687 basic_machine=hppa1.1-winbond
688 ;;
d1c8b869 689 op50n) # CYGNUS LOCAL
3b61a094
RS
690 basic_machine=hppa1.1-oki
691 ;;
d1c8b869 692 op60c) # CYGNUS LOCAL
3b61a094
RS
693 basic_machine=hppa1.1-oki
694 ;;
a2ee3e6d
JW
695 mips)
696 basic_machine=mips-mips
697 ;;
698 romp)
699 basic_machine=romp-ibm
700 ;;
701 rs6000)
702 basic_machine=rs6000-ibm
703 ;;
704 vax)
705 basic_machine=vax-dec
706 ;;
378fd382
DZ
707 we32k)
708 basic_machine=we32k-att
709 ;;
6559fbdb
RP
710 sparc)
711 basic_machine=sparc-sun
712 ;;
27a2a371
JW
713 cydra)
714 basic_machine=cydra-cydrome
715 ;;
716 orion)
717 basic_machine=orion-highlevel
718 ;;
719 orion105)
720 basic_machine=clipper-highlevel
721 ;;
939d9e8a
JL
722## start-sanitize-mpw
723 mac) # CYGNUS LOCAL
724 basic_machine=m68k-apple
725 ;;
726 mpw) # CYGNUS LOCAL
727 basic_machine=m68k-apple
728 ;;
729## end-sanitize-mpw
a2ee3e6d
JW
730 *)
731 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
4f183929 732 exit 1
a2ee3e6d 733 ;;
4f183929
RP
734esac
735
378fd382
DZ
736# Here we canonicalize certain aliases for manufacturers.
737case $basic_machine in
738 *-digital*)
739 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
740 ;;
741 *-commodore*)
742 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
743 ;;
744 *)
745 ;;
746esac
747
a2ee3e6d 748# Decode manufacturer-specific aliases for certain operating systems.
e6602723 749
b48eb8b7 750if [ x"$os" != x"" ]
a2ee3e6d
JW
751then
752case $os in
6559fbdb
RP
753 # -solaris* is a basic system type, with this one exception.
754 -solaris1 | -solaris1.*)
755 os=`echo $os | sed -e 's|solaris1|sunos4|'`
756 ;;
b2eed00f
DE
757 -solaris)
758 os=-solaris2
759 ;;
a2ee3e6d
JW
760 # First accept the basic system types.
761 # The portable systems comes first.
762 # Each alternative must end in a *, to match a version number.
939d9e8a
JL
763 # -sysv* is not here because it comes later, after sysvr4.
764 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
d1c8b869
ILT
765 | -vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[345]* \
766 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
378fd382 767 | -amigados* | -msdos* | -newsos* | -unicos* | -aos* \
939d9e8a 768 | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
27a2a371 769 | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
d1c8b869
ILT
770 | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \
771 | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
772 | -ptx* \
773 | -go32 | -vsta | -sim | -es1800* | -udi | -hms* | -xray | -hds* \
774 | -os68k* | -none* | -v88r* | -coff \
775 | -abug | -ecoff* | -netware* | -proelf | -os9* )
ba7f177a 776 # The last three lines above are CYGNUS LOCAL
d1c8b869 777 ;;
6559fbdb
RP
778 -sunos5*)
779 os=`echo $os | sed -e 's|sunos5|solaris2|'`
780 ;;
781 -sunos6*)
782 os=`echo $os | sed -e 's|sunos6|solaris3|'`
783 ;;
a2ee3e6d 784 -osfrose*)
378fd382 785 os=-osfrose
a2ee3e6d
JW
786 ;;
787 -osf*)
378fd382
DZ
788 os=-osf
789 ;;
790 -utek*)
a2ee3e6d
JW
791 os=-bsd
792 ;;
793 -dynix*)
794 os=-bsd
795 ;;
378fd382
DZ
796 -acis*)
797 os=-aos
a2ee3e6d 798 ;;
378fd382 799 -386bsd) # CYGNUS LOCAL
23ab00aa
KR
800 os=-bsd
801 ;;
68cd7865 802 -ctix* | -uts*)
a2ee3e6d
JW
803 os=-sysv
804 ;;
378fd382
DZ
805 -triton*)
806 os=-sysv3
807 ;;
808 -oss*)
809 os=-sysv3
810 ;;
c1e296fc
SG
811 -svr4)
812 os=-sysv4
813 ;;
d1c8b869 814 -unixware) # CYGNUS LOCAL
939d9e8a
JL
815 os=-sysv4
816 ;;
c1e296fc
SG
817 -svr3)
818 os=-sysv3
819 ;;
939d9e8a
JL
820 -sysvr4)
821 os=-sysv4
822 ;;
823 # This must come after -sysvr4.
824 -sysv*)
825 ;;
378fd382 826 -ose*) # CYGNUS LOCAL
afba2b22
ILT
827 os=-ose
828 ;;
378fd382 829 -es1800*) # CYGNUS LOCAL
afba2b22
ILT
830 os=-ose
831 ;;
27a2a371
JW
832 -xenix)
833 os=-xenix
834 ;;
378fd382
DZ
835 -none)
836 ;;
a2ee3e6d
JW
837 *)
838 # Get rid of the `-' at the beginning of $os.
d1c8b869 839 os=`echo $os | sed 's/[^-]*-//'`
a2ee3e6d
JW
840 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
841 exit 1
842 ;;
69e87de2 843esac
a2ee3e6d 844else
69e87de2 845
a2ee3e6d
JW
846# Here we handle the default operating systems that come with various machines.
847# The value should be what the vendor currently ships out the door with their
848# machine or put another way, the most popular os provided with the machine.
27a2a371
JW
849
850# Note that if you're going to try to match "-MANUFACTURER" here (say,
851# "-sun"), then you have to tell the case statement up towards the top
852# that MANUFACTURER isn't an operating system. Otherwise, code above
853# will signal an error saying that MANUFACTURER isn't an operating
854# system, and we'll never get to this point.
855
a2ee3e6d 856case $basic_machine in
939d9e8a
JL
857 *-acorn)
858 os=-riscix1.2
859 ;;
a2ee3e6d 860 *-dec | vax-*)
378fd382 861 os=-ultrix4.2
a2ee3e6d
JW
862 ;;
863 i386-sun)
378fd382 864 os=-sunos4.0.2
a2ee3e6d
JW
865 ;;
866 m68000-sun)
867 os=-sunos3
868 # This also exists in the configure program, but was not the
869 # default.
870 # os=-sunos4
871 ;;
aa6db781
DE
872 m68*-cisco)
873 os=-aout
874 ;;
875 mips*-cisco)
876 os=-elf
877 ;;
378fd382
DZ
878 *-tti) # must be before sparc entry or we get the wrong os.
879 os=-sysv3
a2ee3e6d 880 ;;
378fd382
DZ
881 sparc-* | *-sun)
882 os=-sunos4.1.1
a2ee3e6d
JW
883 ;;
884 *-ibm)
885 os=-aix
886 ;;
3b61a094 887 *-wec) # CYGNUS LOCAL
d1c8b869 888 os=-proelf
3b61a094
RS
889 ;;
890 *-winbond) # CYGNUS LOCAL
d1c8b869 891 os=-proelf
3b61a094
RS
892 ;;
893 *-oki) # CYGNUS LOCAL
d1c8b869
ILT
894 os=-proelf
895 ;;
896 *-hp)
897 os=-hpux
3b61a094 898 ;;
9117f609
JK
899 *-hitachi)
900 os=-hiux
901 ;;
27a2a371 902 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
a2ee3e6d
JW
903 os=-sysv
904 ;;
378fd382
DZ
905 *-cbm)
906 os=-amigados
907 ;;
a2ee3e6d
JW
908 *-dg)
909 os=-dgux
910 ;;
378fd382
DZ
911 *-dolphin)
912 os=-sysv3
913 ;;
d1c8b869
ILT
914 m68k-ccur)
915 os=-rtu
916 ;;
a2ee3e6d
JW
917 m88k-omron*)
918 os=-luna
919 ;;
a70c9959 920 *-sequent)
d1c8b869 921 os=-ptx
a70c9959 922 ;;
a2ee3e6d
JW
923 *-crds)
924 os=-unos
925 ;;
926 *-ns)
927 os=-genix
928 ;;
939d9e8a
JL
929 i370-*)
930 os=-mvs
931 ;;
932 *-next)
d1c8b869 933 os=-nextstep3
a2ee3e6d 934 ;;
27a2a371
JW
935 *-gould)
936 os=-sysv
937 ;;
938 *-highlevel)
939 os=-bsd
940 ;;
941 *-encore)
942 os=-bsd
943 ;;
944 *-sgi)
945 os=-irix
946 ;;
947 *-masscomp)
948 os=-rtu
949 ;;
9d784b19
RS
950 *-rom68k) # CYGNUS LOCAL
951 os=-coff
952 ;;
953 *-*bug) # CYGNUS LOCAL
954 os=-coff
955 ;;
939d9e8a
JL
956## start-sanitize-mpw
957 *-apple) # CYGNUS LOCAL
958 os=-mpw
959 ;;
960## end-sanitize-mpw
a2ee3e6d
JW
961 *)
962 os=-none
963 ;;
69e87de2 964esac
a2ee3e6d 965fi
69e87de2 966
a2ee3e6d
JW
967# Here we handle the case where we know the os, and the CPU type, but not the
968# manufacturer. We pick the logical manufacturer.
969vendor=unknown
970case $basic_machine in
971 *-unknown)
972 case $os in
939d9e8a
JL
973 -riscix*)
974 vendor=acorn
975 ;;
a2ee3e6d
JW
976 -sunos*)
977 vendor=sun
978 ;;
6559fbdb 979 -bosx*) # CYGNUS LOCAL
ba7f177a
PB
980 vendor=bull
981 ;;
b2eed00f
DE
982 -lynxos*)
983 vendor=lynx
984 ;;
a2ee3e6d
JW
985 -aix*)
986 vendor=ibm
987 ;;
988 -hpux*)
989 vendor=hp
990 ;;
9117f609
JK
991 -hiux*)
992 vendor=hitachi
993 ;;
a2ee3e6d
JW
994 -unos*)
995 vendor=crds
996 ;;
997 -dgux*)
998 vendor=dg
999 ;;
1000 -luna*)
1001 vendor=omron
1002 ;;
1003 -genix*)
1004 vendor=ns
1005 ;;
939d9e8a
JL
1006 -mvs*)
1007 vendor=ibm
1008 ;;
d1c8b869
ILT
1009 -ptx*)
1010 vendor=sequent
1011 ;;
939d9e8a
JL
1012 -vxworks*)
1013 vendor=wrs # CYGNUS LOCAL
afba2b22 1014 ;;
984b27cb
SC
1015 -hms*) # CYGNUS LOCAL
1016 vendor=hitachi
1017 ;;
939d9e8a
JL
1018## start-sanitize-mpw
1019 -mpw*) # CYGNUS LOCAL
1020 vendor=apple
1021 ;;
1022## end-sanitize-mpw
a2ee3e6d
JW
1023 esac
1024 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1025 ;;
4f183929
RP
1026esac
1027
a2ee3e6d 1028echo $basic_machine$os
This page took 0.280218 seconds and 4 git commands to generate.