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