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