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