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-03-23' 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 \ 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-* | tilegx-* \ 412 | tron-* \ 413 | ubicom32-* \ 414 | v850-* | v850e-* | vax-* \ 415 | we32k-* \ 416 | x86-* | x86_64-* | xc16x-* | xps100-* \ 417 | xstormy16-* | xtensa*-* \ 418 | ymp-* \ 419 | z8k-* | z80-*) 420 ;; 421 # Recognize the basic CPU types without company name, with glob match. 422 xtensa*) 423 basic_machine=$basic_machine-unknown 424 ;; 425 # Recognize the various machine names and aliases which stand 426 # for a CPU type and a company and sometimes even an OS. 427 386bsd) 428 basic_machine=i386-unknown 429 os=-bsd 430 ;; 431 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 432 basic_machine=m68000-att 433 ;; 434 3b*) 435 basic_machine=we32k-att 436 ;; 437 a29khif) 438 basic_machine=a29k-amd 439 os=-udi 440 ;; 441 abacus) 442 basic_machine=abacus-unknown 443 ;; 444 adobe68k) 445 basic_machine=m68010-adobe 446 os=-scout 447 ;; 448 alliant | fx80) 449 basic_machine=fx80-alliant 450 ;; 451 altos | altos3068) 452 basic_machine=m68k-altos 453 ;; 454 am29k) 455 basic_machine=a29k-none 456 os=-bsd 457 ;; 458 amd64) 459 basic_machine=x86_64-pc 460 ;; 461 amd64-*) 462 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 463 ;; 464 amdahl) 465 basic_machine=580-amdahl 466 os=-sysv 467 ;; 468 amiga | amiga-*) 469 basic_machine=m68k-unknown 470 ;; 471 amigaos | amigados) 472 basic_machine=m68k-unknown 473 os=-amigaos 474 ;; 475 amigaunix | amix) 476 basic_machine=m68k-unknown 477 os=-sysv4 478 ;; 479 apollo68) 480 basic_machine=m68k-apollo 481 os=-sysv 482 ;; 483 apollo68bsd) 484 basic_machine=m68k-apollo 485 os=-bsd 486 ;; 487 aros) 488 basic_machine=i386-pc 489 os=-aros 490 ;; 491 aux) 492 basic_machine=m68k-apple 493 os=-aux 494 ;; 495 balance) 496 basic_machine=ns32k-sequent 497 os=-dynix 498 ;; 499 blackfin) 500 basic_machine=bfin-unknown 501 os=-linux 502 ;; 503 blackfin-*) 504 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 505 os=-linux 506 ;; 507 bluegene*) 508 basic_machine=powerpc-ibm 509 os=-cnk 510 ;; 511 c54x-*) 512 basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 513 ;; 514 c55x-*) 515 basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 516 ;; 517 c6x-*) 518 basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 519 ;; 520 c90) 521 basic_machine=c90-cray 522 os=-unicos 523 ;; 524 cegcc) 525 basic_machine=arm-unknown 526 os=-cegcc 527 ;; 528 convex-c1) 529 basic_machine=c1-convex 530 os=-bsd 531 ;; 532 convex-c2) 533 basic_machine=c2-convex 534 os=-bsd 535 ;; 536 convex-c32) 537 basic_machine=c32-convex 538 os=-bsd 539 ;; 540 convex-c34) 541 basic_machine=c34-convex 542 os=-bsd 543 ;; 544 convex-c38) 545 basic_machine=c38-convex 546 os=-bsd 547 ;; 548 cray | j90) 549 basic_machine=j90-cray 550 os=-unicos 551 ;; 552 craynv) 553 basic_machine=craynv-cray 554 os=-unicosmp 555 ;; 556 cr16 | cr16-*) 557 basic_machine=cr16-unknown 558 os=-elf 559 ;; 560 crds | unos) 561 basic_machine=m68k-crds 562 ;; 563 crisv32 | crisv32-* | etraxfs*) 564 basic_machine=crisv32-axis 565 ;; 566 cris | cris-* | etrax*) 567 basic_machine=cris-axis 568 ;; 569 crx) 570 basic_machine=crx-unknown 571 os=-elf 572 ;; 573 da30 | da30-*) 574 basic_machine=m68k-da30 575 ;; 576 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 577 basic_machine=mips-dec 578 ;; 579 decsystem10* | dec10*) 580 basic_machine=pdp10-dec 581 os=-tops10 582 ;; 583 decsystem20* | dec20*) 584 basic_machine=pdp10-dec 585 os=-tops20 586 ;; 587 delta | 3300 | motorola-3300 | motorola-delta \ 588 | 3300-motorola | delta-motorola) 589 basic_machine=m68k-motorola 590 ;; 591 delta88) 592 basic_machine=m88k-motorola 593 os=-sysv3 594 ;; 595 dicos) 596 basic_machine=i686-pc 597 os=-dicos 598 ;; 599 djgpp) 600 basic_machine=i586-pc 601 os=-msdosdjgpp 602 ;; 603 dpx20 | dpx20-*) 604 basic_machine=rs6000-bull 605 os=-bosx 606 ;; 607 dpx2* | dpx2*-bull) 608 basic_machine=m68k-bull 609 os=-sysv3 610 ;; 611 ebmon29k) 612 basic_machine=a29k-amd 613 os=-ebmon 614 ;; 615 elxsi) 616 basic_machine=elxsi-elxsi 617 os=-bsd 618 ;; 619 encore | umax | mmax) 620 basic_machine=ns32k-encore 621 ;; 622 es1800 | OSE68k | ose68k | ose | OSE) 623 basic_machine=m68k-ericsson 624 os=-ose 625 ;; 626 fx2800) 627 basic_machine=i860-alliant 628 ;; 629 genix) 630 basic_machine=ns32k-ns 631 ;; 632 gmicro) 633 basic_machine=tron-gmicro 634 os=-sysv 635 ;; 636 go32) 637 basic_machine=i386-pc 638 os=-go32 639 ;; 640 h3050r* | hiux*) 641 basic_machine=hppa1.1-hitachi 642 os=-hiuxwe2 643 ;; 644 h8300hms) 645 basic_machine=h8300-hitachi 646 os=-hms 647 ;; 648 h8300xray) 649 basic_machine=h8300-hitachi 650 os=-xray 651 ;; 652 h8500hms) 653 basic_machine=h8500-hitachi 654 os=-hms 655 ;; 656 harris) 657 basic_machine=m88k-harris 658 os=-sysv3 659 ;; 660 hp300-*) 661 basic_machine=m68k-hp 662 ;; 663 hp300bsd) 664 basic_machine=m68k-hp 665 os=-bsd 666 ;; 667 hp300hpux) 668 basic_machine=m68k-hp 669 os=-hpux 670 ;; 671 hp3k9[0-9][0-9] | hp9[0-9][0-9]) 672 basic_machine=hppa1.0-hp 673 ;; 674 hp9k2[0-9][0-9] | hp9k31[0-9]) 675 basic_machine=m68000-hp 676 ;; 677 hp9k3[2-9][0-9]) 678 basic_machine=m68k-hp 679 ;; 680 hp9k6[0-9][0-9] | hp6[0-9][0-9]) 681 basic_machine=hppa1.0-hp 682 ;; 683 hp9k7[0-79][0-9] | hp7[0-79][0-9]) 684 basic_machine=hppa1.1-hp 685 ;; 686 hp9k78[0-9] | hp78[0-9]) 687 # FIXME: really hppa2.0-hp 688 basic_machine=hppa1.1-hp 689 ;; 690 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 691 # FIXME: really hppa2.0-hp 692 basic_machine=hppa1.1-hp 693 ;; 694 hp9k8[0-9][13679] | hp8[0-9][13679]) 695 basic_machine=hppa1.1-hp 696 ;; 697 hp9k8[0-9][0-9] | hp8[0-9][0-9]) 698 basic_machine=hppa1.0-hp 699 ;; 700 hppa-next) 701 os=-nextstep3 702 ;; 703 hppaosf) 704 basic_machine=hppa1.1-hp 705 os=-osf 706 ;; 707 hppro) 708 basic_machine=hppa1.1-hp 709 os=-proelf 710 ;; 711 i370-ibm* | ibm*) 712 basic_machine=i370-ibm 713 ;; 714# I'm not sure what "Sysv32" means. Should this be sysv3.2? 715 i*86v32) 716 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 717 os=-sysv32 718 ;; 719 i*86v4*) 720 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 721 os=-sysv4 722 ;; 723 i*86v) 724 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 725 os=-sysv 726 ;; 727 i*86sol2) 728 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 729 os=-solaris2 730 ;; 731 i386mach) 732 basic_machine=i386-mach 733 os=-mach 734 ;; 735 i386-vsta | vsta) 736 basic_machine=i386-unknown 737 os=-vsta 738 ;; 739 iris | iris4d) 740 basic_machine=mips-sgi 741 case $os in 742 -irix*) 743 ;; 744 *) 745 os=-irix4 746 ;; 747 esac 748 ;; 749 isi68 | isi) 750 basic_machine=m68k-isi 751 os=-sysv 752 ;; 753 m68knommu) 754 basic_machine=m68k-unknown 755 os=-linux 756 ;; 757 m68knommu-*) 758 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 759 os=-linux 760 ;; 761 m88k-omron*) 762 basic_machine=m88k-omron 763 ;; 764 magnum | m3230) 765 basic_machine=mips-mips 766 os=-sysv 767 ;; 768 merlin) 769 basic_machine=ns32k-utek 770 os=-sysv 771 ;; 772 microblaze) 773 basic_machine=microblaze-xilinx 774 ;; 775 mingw32) 776 basic_machine=i386-pc 777 os=-mingw32 778 ;; 779 mingw32ce) 780 basic_machine=arm-unknown 781 os=-mingw32ce 782 ;; 783 miniframe) 784 basic_machine=m68000-convergent 785 ;; 786 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 787 basic_machine=m68k-atari 788 os=-mint 789 ;; 790 mips3*-*) 791 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 792 ;; 793 mips3*) 794 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 795 ;; 796 monitor) 797 basic_machine=m68k-rom68k 798 os=-coff 799 ;; 800 morphos) 801 basic_machine=powerpc-unknown 802 os=-morphos 803 ;; 804 msdos) 805 basic_machine=i386-pc 806 os=-msdos 807 ;; 808 ms1-*) 809 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 810 ;; 811 mvs) 812 basic_machine=i370-ibm 813 os=-mvs 814 ;; 815 ncr3000) 816 basic_machine=i486-ncr 817 os=-sysv4 818 ;; 819 netbsd386) 820 basic_machine=i386-unknown 821 os=-netbsd 822 ;; 823 netwinder) 824 basic_machine=armv4l-rebel 825 os=-linux 826 ;; 827 news | news700 | news800 | news900) 828 basic_machine=m68k-sony 829 os=-newsos 830 ;; 831 news1000) 832 basic_machine=m68030-sony 833 os=-newsos 834 ;; 835 news-3600 | risc-news) 836 basic_machine=mips-sony 837 os=-newsos 838 ;; 839 necv70) 840 basic_machine=v70-nec 841 os=-sysv 842 ;; 843 next | m*-next ) 844 basic_machine=m68k-next 845 case $os in 846 -nextstep* ) 847 ;; 848 -ns2*) 849 os=-nextstep2 850 ;; 851 *) 852 os=-nextstep3 853 ;; 854 esac 855 ;; 856 nh3000) 857 basic_machine=m68k-harris 858 os=-cxux 859 ;; 860 nh[45]000) 861 basic_machine=m88k-harris 862 os=-cxux 863 ;; 864 nindy960) 865 basic_machine=i960-intel 866 os=-nindy 867 ;; 868 mon960) 869 basic_machine=i960-intel 870 os=-mon960 871 ;; 872 nonstopux) 873 basic_machine=mips-compaq 874 os=-nonstopux 875 ;; 876 np1) 877 basic_machine=np1-gould 878 ;; 879 neo-tandem) 880 basic_machine=neo-tandem 881 ;; 882 nse-tandem) 883 basic_machine=nse-tandem 884 ;; 885 nsr-tandem) 886 basic_machine=nsr-tandem 887 ;; 888 op50n-* | op60c-*) 889 basic_machine=hppa1.1-oki 890 os=-proelf 891 ;; 892 openrisc | openrisc-*) 893 basic_machine=or32-unknown 894 ;; 895 os400) 896 basic_machine=powerpc-ibm 897 os=-os400 898 ;; 899 OSE68000 | ose68000) 900 basic_machine=m68000-ericsson 901 os=-ose 902 ;; 903 os68k) 904 basic_machine=m68k-none 905 os=-os68k 906 ;; 907 pa-hitachi) 908 basic_machine=hppa1.1-hitachi 909 os=-hiuxwe2 910 ;; 911 paragon) 912 basic_machine=i860-intel 913 os=-osf 914 ;; 915 parisc) 916 basic_machine=hppa-unknown 917 os=-linux 918 ;; 919 parisc-*) 920 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 921 os=-linux 922 ;; 923 pbd) 924 basic_machine=sparc-tti 925 ;; 926 pbb) 927 basic_machine=m68k-tti 928 ;; 929 pc532 | pc532-*) 930 basic_machine=ns32k-pc532 931 ;; 932 pc98) 933 basic_machine=i386-pc 934 ;; 935 pc98-*) 936 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 937 ;; 938 pentium | p5 | k5 | k6 | nexgen | viac3) 939 basic_machine=i586-pc 940 ;; 941 pentiumpro | p6 | 6x86 | athlon | athlon_*) 942 basic_machine=i686-pc 943 ;; 944 pentiumii | pentium2 | pentiumiii | pentium3) 945 basic_machine=i686-pc 946 ;; 947 pentium4) 948 basic_machine=i786-pc 949 ;; 950 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 951 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 952 ;; 953 pentiumpro-* | p6-* | 6x86-* | athlon-*) 954 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 955 ;; 956 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 957 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 958 ;; 959 pentium4-*) 960 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 961 ;; 962 pn) 963 basic_machine=pn-gould 964 ;; 965 power) basic_machine=power-ibm 966 ;; 967 ppc | ppcbe) basic_machine=powerpc-unknown 968 ;; 969 ppc-* | ppcbe-*) 970 basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 971 ;; 972 ppcle | powerpclittle | ppc-le | powerpc-little) 973 basic_machine=powerpcle-unknown 974 ;; 975 ppcle-* | powerpclittle-*) 976 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 977 ;; 978 ppc64) basic_machine=powerpc64-unknown 979 ;; 980 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` 981 ;; 982 ppc64le | powerpc64little | ppc64-le | powerpc64-little) 983 basic_machine=powerpc64le-unknown 984 ;; 985 ppc64le-* | powerpc64little-*) 986 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` 987 ;; 988 ps2) 989 basic_machine=i386-ibm 990 ;; 991 pw32) 992 basic_machine=i586-unknown 993 os=-pw32 994 ;; 995 rdos) 996 basic_machine=i386-pc 997 os=-rdos 998 ;; 999 rom68k) 1000 basic_machine=m68k-rom68k 1001 os=-coff 1002 ;; 1003 rm[46]00) 1004 basic_machine=mips-siemens 1005 ;; 1006 rtpc | rtpc-*) 1007 basic_machine=romp-ibm 1008 ;; 1009 s390 | s390-*) 1010 basic_machine=s390-ibm 1011 ;; 1012 s390x | s390x-*) 1013 basic_machine=s390x-ibm 1014 ;; 1015 sa29200) 1016 basic_machine=a29k-amd 1017 os=-udi 1018 ;; 1019 sb1) 1020 basic_machine=mipsisa64sb1-unknown 1021 ;; 1022 sb1el) 1023 basic_machine=mipsisa64sb1el-unknown 1024 ;; 1025 sde) 1026 basic_machine=mipsisa32-sde 1027 os=-elf 1028 ;; 1029 sei) 1030 basic_machine=mips-sei 1031 os=-seiux 1032 ;; 1033 sequent) 1034 basic_machine=i386-sequent 1035 ;; 1036 sh) 1037 basic_machine=sh-hitachi 1038 os=-hms 1039 ;; 1040 sh5el) 1041 basic_machine=sh5le-unknown 1042 ;; 1043 sh64) 1044 basic_machine=sh64-unknown 1045 ;; 1046 sparclite-wrs | simso-wrs) 1047 basic_machine=sparclite-wrs 1048 os=-vxworks 1049 ;; 1050 sps7) 1051 basic_machine=m68k-bull 1052 os=-sysv2 1053 ;; 1054 spur) 1055 basic_machine=spur-unknown 1056 ;; 1057 st2000) 1058 basic_machine=m68k-tandem 1059 ;; 1060 stratus) 1061 basic_machine=i860-stratus 1062 os=-sysv4 1063 ;; 1064 strongarm-* | thumb-*) 1065 basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` 1066 ;; 1067 sun2) 1068 basic_machine=m68000-sun 1069 ;; 1070 sun2os3) 1071 basic_machine=m68000-sun 1072 os=-sunos3 1073 ;; 1074 sun2os4) 1075 basic_machine=m68000-sun 1076 os=-sunos4 1077 ;; 1078 sun3os3) 1079 basic_machine=m68k-sun 1080 os=-sunos3 1081 ;; 1082 sun3os4) 1083 basic_machine=m68k-sun 1084 os=-sunos4 1085 ;; 1086 sun4os3) 1087 basic_machine=sparc-sun 1088 os=-sunos3 1089 ;; 1090 sun4os4) 1091 basic_machine=sparc-sun 1092 os=-sunos4 1093 ;; 1094 sun4sol2) 1095 basic_machine=sparc-sun 1096 os=-solaris2 1097 ;; 1098 sun3 | sun3-*) 1099 basic_machine=m68k-sun 1100 ;; 1101 sun4) 1102 basic_machine=sparc-sun 1103 ;; 1104 sun386 | sun386i | roadrunner) 1105 basic_machine=i386-sun 1106 ;; 1107 sv1) 1108 basic_machine=sv1-cray 1109 os=-unicos 1110 ;; 1111 symmetry) 1112 basic_machine=i386-sequent 1113 os=-dynix 1114 ;; 1115 t3e) 1116 basic_machine=alphaev5-cray 1117 os=-unicos 1118 ;; 1119 t90) 1120 basic_machine=t90-cray 1121 os=-unicos 1122 ;; 1123 # This must be matched before tile*. 1124 tilegx*) 1125 basic_machine=tilegx-unknown 1126 os=-linux-gnu 1127 ;; 1128 tile*) 1129 basic_machine=tile-unknown 1130 os=-linux-gnu 1131 ;; 1132 tx39) 1133 basic_machine=mipstx39-unknown 1134 ;; 1135 tx39el) 1136 basic_machine=mipstx39el-unknown 1137 ;; 1138 toad1) 1139 basic_machine=pdp10-xkl 1140 os=-tops20 1141 ;; 1142 tower | tower-32) 1143 basic_machine=m68k-ncr 1144 ;; 1145 tpf) 1146 basic_machine=s390x-ibm 1147 os=-tpf 1148 ;; 1149 udi29k) 1150 basic_machine=a29k-amd 1151 os=-udi 1152 ;; 1153 ultra3) 1154 basic_machine=a29k-nyu 1155 os=-sym1 1156 ;; 1157 v810 | necv810) 1158 basic_machine=v810-nec 1159 os=-none 1160 ;; 1161 vaxv) 1162 basic_machine=vax-dec 1163 os=-sysv 1164 ;; 1165 vms) 1166 basic_machine=vax-dec 1167 os=-vms 1168 ;; 1169 vpp*|vx|vx-*) 1170 basic_machine=f301-fujitsu 1171 ;; 1172 vxworks960) 1173 basic_machine=i960-wrs 1174 os=-vxworks 1175 ;; 1176 vxworks68) 1177 basic_machine=m68k-wrs 1178 os=-vxworks 1179 ;; 1180 vxworks29k) 1181 basic_machine=a29k-wrs 1182 os=-vxworks 1183 ;; 1184 w65*) 1185 basic_machine=w65-wdc 1186 os=-none 1187 ;; 1188 w89k-*) 1189 basic_machine=hppa1.1-winbond 1190 os=-proelf 1191 ;; 1192 xbox) 1193 basic_machine=i686-pc 1194 os=-mingw32 1195 ;; 1196 xps | xps100) 1197 basic_machine=xps100-honeywell 1198 ;; 1199 xscale-* | xscalee[bl]-*) 1200 basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` 1201 ;; 1202 ymp) 1203 basic_machine=ymp-cray 1204 os=-unicos 1205 ;; 1206 z8k-*-coff) 1207 basic_machine=z8k-unknown 1208 os=-sim 1209 ;; 1210 z80-*-coff) 1211 basic_machine=z80-unknown 1212 os=-sim 1213 ;; 1214 none) 1215 basic_machine=none-none 1216 os=-none 1217 ;; 1218 1219# Here we handle the default manufacturer of certain CPU types. It is in 1220# some cases the only manufacturer, in others, it is the most popular. 1221 w89k) 1222 basic_machine=hppa1.1-winbond 1223 ;; 1224 op50n) 1225 basic_machine=hppa1.1-oki 1226 ;; 1227 op60c) 1228 basic_machine=hppa1.1-oki 1229 ;; 1230 romp) 1231 basic_machine=romp-ibm 1232 ;; 1233 mmix) 1234 basic_machine=mmix-knuth 1235 ;; 1236 rs6000) 1237 basic_machine=rs6000-ibm 1238 ;; 1239 vax) 1240 basic_machine=vax-dec 1241 ;; 1242 pdp10) 1243 # there are many clones, so DEC is not a safe bet 1244 basic_machine=pdp10-unknown 1245 ;; 1246 pdp11) 1247 basic_machine=pdp11-dec 1248 ;; 1249 we32k) 1250 basic_machine=we32k-att 1251 ;; 1252 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) 1253 basic_machine=sh-unknown 1254 ;; 1255 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) 1256 basic_machine=sparc-sun 1257 ;; 1258 cydra) 1259 basic_machine=cydra-cydrome 1260 ;; 1261 orion) 1262 basic_machine=orion-highlevel 1263 ;; 1264 orion105) 1265 basic_machine=clipper-highlevel 1266 ;; 1267 mac | mpw | mac-mpw) 1268 basic_machine=m68k-apple 1269 ;; 1270 pmac | pmac-mpw) 1271 basic_machine=powerpc-apple 1272 ;; 1273 *-unknown) 1274 # Make sure to match an already-canonicalized machine name. 1275 ;; 1276 *) 1277 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 1278 exit 1 1279 ;; 1280esac 1281 1282# Here we canonicalize certain aliases for manufacturers. 1283case $basic_machine in 1284 *-digital*) 1285 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` 1286 ;; 1287 *-commodore*) 1288 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` 1289 ;; 1290 *) 1291 ;; 1292esac 1293 1294# Decode manufacturer-specific aliases for certain operating systems. 1295 1296if [ x"$os" != x"" ] 1297then 1298case $os in 1299 # First match some system type aliases 1300 # that might get confused with valid system types. 1301 # -solaris* is a basic system type, with this one exception. 1302 -auroraux) 1303 os=-auroraux 1304 ;; 1305 -solaris1 | -solaris1.*) 1306 os=`echo $os | sed -e 's|solaris1|sunos4|'` 1307 ;; 1308 -solaris) 1309 os=-solaris2 1310 ;; 1311 -svr4*) 1312 os=-sysv4 1313 ;; 1314 -unixware*) 1315 os=-sysv4.2uw 1316 ;; 1317 -gnu/linux*) 1318 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` 1319 ;; 1320 # First accept the basic system types. 1321 # The portable systems comes first. 1322 # Each alternative MUST END IN A *, to match a version number. 1323 # -sysv* is not here because it comes later, after sysvr4. 1324 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ 1325 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ 1326 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ 1327 | -sym* | -kopensolaris* \ 1328 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ 1329 | -aos* | -aros* \ 1330 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ 1331 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ 1332 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ 1333 | -openbsd* | -solidbsd* \ 1334 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ 1335 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ 1336 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ 1337 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ 1338 | -chorusos* | -chorusrdb* | -cegcc* \ 1339 | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ 1340 | -mingw32* | -linux-gnu* | -linux-android* \ 1341 | -linux-newlib* | -linux-uclibc* \ 1342 | -uxpv* | -beos* | -mpeix* | -udk* \ 1343 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ 1344 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ 1345 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ 1346 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ 1347 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ 1348 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ 1349 | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*) 1350 # Remember, each alternative MUST END IN *, to match a version number. 1351 ;; 1352 -qnx*) 1353 case $basic_machine in 1354 x86-* | i*86-*) 1355 ;; 1356 *) 1357 os=-nto$os 1358 ;; 1359 esac 1360 ;; 1361 -nto-qnx*) 1362 ;; 1363 -nto*) 1364 os=`echo $os | sed -e 's|nto|nto-qnx|'` 1365 ;; 1366 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ 1367 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ 1368 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) 1369 ;; 1370 -mac*) 1371 os=`echo $os | sed -e 's|mac|macos|'` 1372 ;; 1373 -linux-dietlibc) 1374 os=-linux-dietlibc 1375 ;; 1376 -linux*) 1377 os=`echo $os | sed -e 's|linux|linux-gnu|'` 1378 ;; 1379 -sunos5*) 1380 os=`echo $os | sed -e 's|sunos5|solaris2|'` 1381 ;; 1382 -sunos6*) 1383 os=`echo $os | sed -e 's|sunos6|solaris3|'` 1384 ;; 1385 -opened*) 1386 os=-openedition 1387 ;; 1388 -os400*) 1389 os=-os400 1390 ;; 1391 -wince*) 1392 os=-wince 1393 ;; 1394 -osfrose*) 1395 os=-osfrose 1396 ;; 1397 -osf*) 1398 os=-osf 1399 ;; 1400 -utek*) 1401 os=-bsd 1402 ;; 1403 -dynix*) 1404 os=-bsd 1405 ;; 1406 -acis*) 1407 os=-aos 1408 ;; 1409 -atheos*) 1410 os=-atheos 1411 ;; 1412 -syllable*) 1413 os=-syllable 1414 ;; 1415 -386bsd) 1416 os=-bsd 1417 ;; 1418 -ctix* | -uts*) 1419 os=-sysv 1420 ;; 1421 -nova*) 1422 os=-rtmk-nova 1423 ;; 1424 -ns2 ) 1425 os=-nextstep2 1426 ;; 1427 -nsk*) 1428 os=-nsk 1429 ;; 1430 # Preserve the version number of sinix5. 1431 -sinix5.*) 1432 os=`echo $os | sed -e 's|sinix|sysv|'` 1433 ;; 1434 -sinix*) 1435 os=-sysv4 1436 ;; 1437 -tpf*) 1438 os=-tpf 1439 ;; 1440 -triton*) 1441 os=-sysv3 1442 ;; 1443 -oss*) 1444 os=-sysv3 1445 ;; 1446 -svr4) 1447 os=-sysv4 1448 ;; 1449 -svr3) 1450 os=-sysv3 1451 ;; 1452 -sysvr4) 1453 os=-sysv4 1454 ;; 1455 # This must come after -sysvr4. 1456 -sysv*) 1457 ;; 1458 -ose*) 1459 os=-ose 1460 ;; 1461 -es1800*) 1462 os=-ose 1463 ;; 1464 -xenix) 1465 os=-xenix 1466 ;; 1467 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1468 os=-mint 1469 ;; 1470 -aros*) 1471 os=-aros 1472 ;; 1473 -kaos*) 1474 os=-kaos 1475 ;; 1476 -zvmoe) 1477 os=-zvmoe 1478 ;; 1479 -dicos*) 1480 os=-dicos 1481 ;; 1482 -nacl*) 1483 ;; 1484 -none) 1485 ;; 1486 *) 1487 # Get rid of the `-' at the beginning of $os. 1488 os=`echo $os | sed 's/[^-]*-//'` 1489 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 1490 exit 1 1491 ;; 1492esac 1493else 1494 1495# Here we handle the default operating systems that come with various machines. 1496# The value should be what the vendor currently ships out the door with their 1497# machine or put another way, the most popular os provided with the machine. 1498 1499# Note that if you're going to try to match "-MANUFACTURER" here (say, 1500# "-sun"), then you have to tell the case statement up towards the top 1501# that MANUFACTURER isn't an operating system. Otherwise, code above 1502# will signal an error saying that MANUFACTURER isn't an operating 1503# system, and we'll never get to this point. 1504 1505case $basic_machine in 1506 score-*) 1507 os=-elf 1508 ;; 1509 spu-*) 1510 os=-elf 1511 ;; 1512 *-acorn) 1513 os=-riscix1.2 1514 ;; 1515 arm*-rebel) 1516 os=-linux 1517 ;; 1518 arm*-semi) 1519 os=-aout 1520 ;; 1521 c4x-* | tic4x-*) 1522 os=-coff 1523 ;; 1524 tic54x-*) 1525 os=-coff 1526 ;; 1527 tic55x-*) 1528 os=-coff 1529 ;; 1530 tic6x-*) 1531 os=-coff 1532 ;; 1533 # This must come before the *-dec entry. 1534 pdp10-*) 1535 os=-tops20 1536 ;; 1537 pdp11-*) 1538 os=-none 1539 ;; 1540 *-dec | vax-*) 1541 os=-ultrix4.2 1542 ;; 1543 m68*-apollo) 1544 os=-domain 1545 ;; 1546 i386-sun) 1547 os=-sunos4.0.2 1548 ;; 1549 m68000-sun) 1550 os=-sunos3 1551 # This also exists in the configure program, but was not the 1552 # default. 1553 # os=-sunos4 1554 ;; 1555 m68*-cisco) 1556 os=-aout 1557 ;; 1558 mep-*) 1559 os=-elf 1560 ;; 1561 mips*-cisco) 1562 os=-elf 1563 ;; 1564 mips*-*) 1565 os=-elf 1566 ;; 1567 or32-*) 1568 os=-coff 1569 ;; 1570 *-tti) # must be before sparc entry or we get the wrong os. 1571 os=-sysv3 1572 ;; 1573 sparc-* | *-sun) 1574 os=-sunos4.1.1 1575 ;; 1576 *-be) 1577 os=-beos 1578 ;; 1579 *-haiku) 1580 os=-haiku 1581 ;; 1582 *-ibm) 1583 os=-aix 1584 ;; 1585 *-knuth) 1586 os=-mmixware 1587 ;; 1588 *-wec) 1589 os=-proelf 1590 ;; 1591 *-winbond) 1592 os=-proelf 1593 ;; 1594 *-oki) 1595 os=-proelf 1596 ;; 1597 *-hp) 1598 os=-hpux 1599 ;; 1600 *-hitachi) 1601 os=-hiux 1602 ;; 1603 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) 1604 os=-sysv 1605 ;; 1606 *-cbm) 1607 os=-amigaos 1608 ;; 1609 *-dg) 1610 os=-dgux 1611 ;; 1612 *-dolphin) 1613 os=-sysv3 1614 ;; 1615 m68k-ccur) 1616 os=-rtu 1617 ;; 1618 m88k-omron*) 1619 os=-luna 1620 ;; 1621 *-next ) 1622 os=-nextstep 1623 ;; 1624 *-sequent) 1625 os=-ptx 1626 ;; 1627 *-crds) 1628 os=-unos 1629 ;; 1630 *-ns) 1631 os=-genix 1632 ;; 1633 i370-*) 1634 os=-mvs 1635 ;; 1636 *-next) 1637 os=-nextstep3 1638 ;; 1639 *-gould) 1640 os=-sysv 1641 ;; 1642 *-highlevel) 1643 os=-bsd 1644 ;; 1645 *-encore) 1646 os=-bsd 1647 ;; 1648 *-sgi) 1649 os=-irix 1650 ;; 1651 *-siemens) 1652 os=-sysv4 1653 ;; 1654 *-masscomp) 1655 os=-rtu 1656 ;; 1657 f30[01]-fujitsu | f700-fujitsu) 1658 os=-uxpv 1659 ;; 1660 *-rom68k) 1661 os=-coff 1662 ;; 1663 *-*bug) 1664 os=-coff 1665 ;; 1666 *-apple) 1667 os=-macos 1668 ;; 1669 *-atari*) 1670 os=-mint 1671 ;; 1672 *) 1673 os=-none 1674 ;; 1675esac 1676fi 1677 1678# Here we handle the case where we know the os, and the CPU type, but not the 1679# manufacturer. We pick the logical manufacturer. 1680vendor=unknown 1681case $basic_machine in 1682 *-unknown) 1683 case $os in 1684 -riscix*) 1685 vendor=acorn 1686 ;; 1687 -sunos*) 1688 vendor=sun 1689 ;; 1690 -cnk*|-aix*) 1691 vendor=ibm 1692 ;; 1693 -beos*) 1694 vendor=be 1695 ;; 1696 -hpux*) 1697 vendor=hp 1698 ;; 1699 -mpeix*) 1700 vendor=hp 1701 ;; 1702 -hiux*) 1703 vendor=hitachi 1704 ;; 1705 -unos*) 1706 vendor=crds 1707 ;; 1708 -dgux*) 1709 vendor=dg 1710 ;; 1711 -luna*) 1712 vendor=omron 1713 ;; 1714 -genix*) 1715 vendor=ns 1716 ;; 1717 -mvs* | -opened*) 1718 vendor=ibm 1719 ;; 1720 -os400*) 1721 vendor=ibm 1722 ;; 1723 -ptx*) 1724 vendor=sequent 1725 ;; 1726 -tpf*) 1727 vendor=ibm 1728 ;; 1729 -vxsim* | -vxworks* | -windiss*) 1730 vendor=wrs 1731 ;; 1732 -aux*) 1733 vendor=apple 1734 ;; 1735 -hms*) 1736 vendor=hitachi 1737 ;; 1738 -mpw* | -macos*) 1739 vendor=apple 1740 ;; 1741 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) 1742 vendor=atari 1743 ;; 1744 -vos*) 1745 vendor=stratus 1746 ;; 1747 esac 1748 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` 1749 ;; 1750esac 1751 1752echo $basic_machine$os 1753exit 1754 1755# Local variables: 1756# eval: (add-hook 'write-file-hooks 'time-stamp) 1757# time-stamp-start: "timestamp='" 1758# time-stamp-format: "%:y-%02m-%02d" 1759# time-stamp-end: "'" 1760# End: 1761