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-04-01' 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 80Free Software 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 strongarm | thumb | xscale) 329 basic_machine=arm-unknown 330 ;; 331 xscaleeb) 332 basic_machine=armeb-unknown 333 ;; 334 xscaleel) 335 basic_machine=armel-unknown 336 ;; 337 # We use `pc' rather than `unknown' 338 # because (1) that's what they normally are, and 339 # (2) the word "unknown" tends to confuse beginning users. 340 i*86 | x86_64) 341 basic_machine=$basic_machine-pc 342 ;; 343 # Object if more than one company name word. 344 *-*-*) 345 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 346 exit 1 347 ;; 348 # Recognize the basic CPU types with company name. 349 580-* \ 350 | a29k-* \ 351 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ 352 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ 353 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ 354 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ 355 | avr-* | avr32-* \ 356 | bfin-* | bs2000-* \ 357 | c[123]* | c30-* | [cjt]90-* | c4x-* \ 358 | clipper-* | craynv-* | cydra-* \ 359 | d10v-* | d30v-* | dlx-* \ 360 | elxsi-* \ 361 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ 362 | h8300-* | h8500-* \ 363 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ 364 | i*86-* | i860-* | i960-* | ia64-* \ 365 | ip2k-* | iq2000-* \ 366 | lm32-* \ 367 | m32c-* | m32r-* | m32rle-* \ 368 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ 369 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ 370 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ 371 | mips16-* \ 372 | mips64-* | mips64el-* \ 373 | mips64octeon-* | mips64octeonel-* \ 374 | mips64orion-* | mips64orionel-* \ 375 | mips64r5900-* | mips64r5900el-* \ 376 | mips64vr-* | mips64vrel-* \ 377 | mips64vr4100-* | mips64vr4100el-* \ 378 | mips64vr4300-* | mips64vr4300el-* \ 379 | mips64vr5000-* | mips64vr5000el-* \ 380 | mips64vr5900-* | mips64vr5900el-* \ 381 | mipsisa32-* | mipsisa32el-* \ 382 | mipsisa32r2-* | mipsisa32r2el-* \ 383 | mipsisa64-* | mipsisa64el-* \ 384 | mipsisa64r2-* | mipsisa64r2el-* \ 385 | mipsisa64sb1-* | mipsisa64sb1el-* \ 386 | mipsisa64sr71k-* | mipsisa64sr71kel-* \ 387 | mipstx39-* | mipstx39el-* \ 388 | mmix-* \ 389 | mt-* \ 390 | msp430-* \ 391 | nds32-* | nds32le-* | nds32be-* \ 392 | nios-* | nios2-* \ 393 | none-* | np1-* | ns16k-* | ns32k-* \ 394 | open8-* \ 395 | orion-* \ 396 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ 397 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ 398 | pyramid-* \ 399 | romp-* | rs6000-* | rx-* \ 400 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ 401 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ 402 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ 403 | sparclite-* \ 404 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ 405 | tahoe-* \ 406 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ 407 | tile-* | tilegx-* \ 408 | tron-* \ 409 | ubicom32-* \ 410 | v850-* | v850e-* | vax-* \ 411 | we32k-* \ 412 | x86-* | x86_64-* | xc16x-* | xps100-* \ 413 | xstormy16-* | xtensa*-* \ 414 | ymp-* \ 415 | z8k-* | z80-*) 416 ;; 417 # Recognize the basic CPU types without company name, with glob match. 418 xtensa*) 419 basic_machine=$basic_machine-unknown 420 ;; 421 # Recognize the various machine names and aliases which stand 422 # for a CPU type and a company and sometimes even an OS. 423 386bsd) 424 basic_machine=i386-unknown 425 os=-bsd 426 ;; 427 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) 428 basic_machine=m68000-att 429 ;; 430 3b*) 431 basic_machine=we32k-att 432 ;; 433 a29khif) 434 basic_machine=a29k-amd 435 os=-udi 436 ;; 437 abacus) 438 basic_machine=abacus-unknown 439 ;; 440 adobe68k) 441 basic_machine=m68010-adobe 442 os=-scout 443 ;; 444 alliant | fx80) 445 basic_machine=fx80-alliant 446 ;; 447 altos | altos3068) 448 basic_machine=m68k-altos 449 ;; 450 am29k) 451 basic_machine=a29k-none 452 os=-bsd 453 ;; 454 amd64) 455 basic_machine=x86_64-pc 456 ;; 457 amd64-*) 458 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` 459 ;; 460 amdahl) 461 basic_machine=580-amdahl 462 os=-sysv 463 ;; 464 amiga | amiga-*) 465 basic_machine=m68k-unknown 466 ;; 467 amigaos | amigados) 468 basic_machine=m68k-unknown 469 os=-amigaos 470 ;; 471 amigaunix | amix) 472 basic_machine=m68k-unknown 473 os=-sysv4 474 ;; 475 apollo68) 476 basic_machine=m68k-apollo 477 os=-sysv 478 ;; 479 apollo68bsd) 480 basic_machine=m68k-apollo 481 os=-bsd 482 ;; 483 aros) 484 basic_machine=i386-pc 485 os=-aros 486 ;; 487 aux) 488 basic_machine=m68k-apple 489 os=-aux 490 ;; 491 balance) 492 basic_machine=ns32k-sequent 493 os=-dynix 494 ;; 495 blackfin) 496 basic_machine=bfin-unknown 497 os=-linux 498 ;; 499 blackfin-*) 500 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` 501 os=-linux 502 ;; 503 bluegene*) 504 basic_machine=powerpc-ibm 505 os=-cnk 506 ;; 507 c54x-*) 508 basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` 509 ;; 510 c55x-*) 511 basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` 512 ;; 513 c6x-*) 514 basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` 515 ;; 516 c90) 517 basic_machine=c90-cray 518 os=-unicos 519 ;; 520 cegcc) 521 basic_machine=arm-unknown 522 os=-cegcc 523 ;; 524 convex-c1) 525 basic_machine=c1-convex 526 os=-bsd 527 ;; 528 convex-c2) 529 basic_machine=c2-convex 530 os=-bsd 531 ;; 532 convex-c32) 533 basic_machine=c32-convex 534 os=-bsd 535 ;; 536 convex-c34) 537 basic_machine=c34-convex 538 os=-bsd 539 ;; 540 convex-c38) 541 basic_machine=c38-convex 542 os=-bsd 543 ;; 544 cray | j90) 545 basic_machine=j90-cray 546 os=-unicos 547 ;; 548 craynv) 549 basic_machine=craynv-cray 550 os=-unicosmp 551 ;; 552 cr16 | cr16-*) 553 basic_machine=cr16-unknown 554 os=-elf 555 ;; 556 crds | unos) 557 basic_machine=m68k-crds 558 ;; 559 crisv32 | crisv32-* | etraxfs*) 560 basic_machine=crisv32-axis 561 ;; 562 cris | cris-* | etrax*) 563 basic_machine=cris-axis 564 ;; 565 crx) 566 basic_machine=crx-unknown 567 os=-elf 568 ;; 569 da30 | da30-*) 570 basic_machine=m68k-da30 571 ;; 572 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) 573 basic_machine=mips-dec 574 ;; 575 decsystem10* | dec10*) 576 basic_machine=pdp10-dec 577 os=-tops10 578 ;; 579 decsystem20* | dec20*) 580 basic_machine=pdp10-dec 581 os=-tops20 582 ;; 583 delta | 3300 | motorola-3300 | motorola-delta \ 584 | 3300-motorola | delta-motorola) 585 basic_machine=m68k-motorola 586 ;; 587 delta88) 588 basic_machine=m88k-motorola 589 os=-sysv3 590 ;; 591 dicos) 592 basic_machine=i686-pc 593 os=-dicos 594 ;; 595 djgpp) 596 basic_machine=i586-pc 597 os=-msdosdjgpp 598 ;; 599 dpx20 | dpx20-*) 600 basic_machine=rs6000-bull 601 os=-bosx 602 ;; 603 dpx2* | dpx2*-bull) 604 basic_machine=m68k-bull 605 os=-sysv3 606 ;; 607 ebmon29k) 608 basic_machine=a29k-amd 609 os=-ebmon 610 ;; 611 elxsi) 612 basic_machine=elxsi-elxsi 613 os=-bsd 614 ;; 615 encore | umax | mmax) 616 basic_machine=ns32k-encore 617 ;; 618 es1800 | OSE68k | ose68k | ose | OSE) 619 basic_machine=m68k-ericsson 620 os=-ose 621 ;; 622 fx2800) 623 basic_machine=i860-alliant 624 ;; 625 genix) 626 basic_machine=ns32k-ns 627 ;; 628 gmicro) 629 basic_machine=tron-gmicro 630 os=-sysv 631 ;; 632 go32) 633 basic_machine=i386-pc 634 os=-go32 635 ;; 636 h3050r* | hiux*) 637 basic_machine=hppa1.1-hitachi 638 os=-hiuxwe2 639 ;; 640 h8300hms) 641 basic_machine=h8300-hitachi 642 os=-hms 643 ;; 644 h8300xray) 645 basic_machine=h8300-hitachi 646 os=-xray 647 ;; 648 h8500hms) 649 basic_machine=h8500-hitachi 650 os=-hms 651 ;; 652 harris) 653 basic_machine=m88k-harris 654 os=-sysv3 655 ;; 656 hp300-*) 657 basic_machine=m68k-hp 658 ;; 659 hp300bsd) 660 basic_machine=m68k-hp 661 os=-bsd 662 ;; 663 hp300hpux) 664 basic_machine=m68k-hp 665 os=-hpux 666 ;; 667 hp3k9[0-9][0-9] | hp9[0-9][0-9]) 668 basic_machine=hppa1.0-hp 669 ;; 670 hp9k2[0-9][0-9] | hp9k31[0-9]) 671 basic_machine=m68000-hp 672 ;; 673 hp9k3[2-9][0-9]) 674 basic_machine=m68k-hp 675 ;; 676 hp9k6[0-9][0-9] | hp6[0-9][0-9]) 677 basic_machine=hppa1.0-hp 678 ;; 679 hp9k7[0-79][0-9] | hp7[0-79][0-9]) 680 basic_machine=hppa1.1-hp 681 ;; 682 hp9k78[0-9] | hp78[0-9]) 683 # FIXME: really hppa2.0-hp 684 basic_machine=hppa1.1-hp 685 ;; 686 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) 687 # FIXME: really hppa2.0-hp 688 basic_machine=hppa1.1-hp 689 ;; 690 hp9k8[0-9][13679] | hp8[0-9][13679]) 691 basic_machine=hppa1.1-hp 692 ;; 693 hp9k8[0-9][0-9] | hp8[0-9][0-9]) 694 basic_machine=hppa1.0-hp 695 ;; 696 hppa-next) 697 os=-nextstep3 698 ;; 699 hppaosf) 700 basic_machine=hppa1.1-hp 701 os=-osf 702 ;; 703 hppro) 704 basic_machine=hppa1.1-hp 705 os=-proelf 706 ;; 707 i370-ibm* | ibm*) 708 basic_machine=i370-ibm 709 ;; 710# I'm not sure what "Sysv32" means. Should this be sysv3.2? 711 i*86v32) 712 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 713 os=-sysv32 714 ;; 715 i*86v4*) 716 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 717 os=-sysv4 718 ;; 719 i*86v) 720 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 721 os=-sysv 722 ;; 723 i*86sol2) 724 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` 725 os=-solaris2 726 ;; 727 i386mach) 728 basic_machine=i386-mach 729 os=-mach 730 ;; 731 i386-vsta | vsta) 732 basic_machine=i386-unknown 733 os=-vsta 734 ;; 735 iris | iris4d) 736 basic_machine=mips-sgi 737 case $os in 738 -irix*) 739 ;; 740 *) 741 os=-irix4 742 ;; 743 esac 744 ;; 745 isi68 | isi) 746 basic_machine=m68k-isi 747 os=-sysv 748 ;; 749 m68knommu) 750 basic_machine=m68k-unknown 751 os=-linux 752 ;; 753 m68knommu-*) 754 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` 755 os=-linux 756 ;; 757 m88k-omron*) 758 basic_machine=m88k-omron 759 ;; 760 magnum | m3230) 761 basic_machine=mips-mips 762 os=-sysv 763 ;; 764 merlin) 765 basic_machine=ns32k-utek 766 os=-sysv 767 ;; 768 microblaze) 769 basic_machine=microblaze-xilinx 770 ;; 771 mingw32) 772 basic_machine=i386-pc 773 os=-mingw32 774 ;; 775 mingw32ce) 776 basic_machine=arm-unknown 777 os=-mingw32ce 778 ;; 779 miniframe) 780 basic_machine=m68000-convergent 781 ;; 782 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) 783 basic_machine=m68k-atari 784 os=-mint 785 ;; 786 mips3*-*) 787 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` 788 ;; 789 mips3*) 790 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown 791 ;; 792 monitor) 793 basic_machine=m68k-rom68k 794 os=-coff 795 ;; 796 morphos) 797 basic_machine=powerpc-unknown 798 os=-morphos 799 ;; 800 msdos) 801 basic_machine=i386-pc 802 os=-msdos 803 ;; 804 ms1-*) 805 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` 806 ;; 807 mvs) 808 basic_machine=i370-ibm 809 os=-mvs 810 ;; 811 ncr3000) 812 basic_machine=i486-ncr 813 os=-sysv4 814 ;; 815 netbsd386) 816 basic_machine=i386-unknown 817 os=-netbsd 818 ;; 819 netwinder) 820 basic_machine=armv4l-rebel 821 os=-linux 822 ;; 823 news | news700 | news800 | news900) 824 basic_machine=m68k-sony 825 os=-newsos 826 ;; 827 news1000) 828 basic_machine=m68030-sony 829 os=-newsos 830 ;; 831 news-3600 | risc-news) 832 basic_machine=mips-sony 833 os=-newsos 834 ;; 835 necv70) 836 basic_machine=v70-nec 837 os=-sysv 838 ;; 839 next | m*-next) 840 basic_machine=m68k-next 841 case $os in 842 -nextstep*) 843 ;; 844 -ns2*) 845 os=-nextstep2 846 ;; 847 *) 848 os=-nextstep3 849 ;; 850 esac 851 ;; 852 nh3000) 853 basic_machine=m68k-harris 854 os=-cxux 855 ;; 856 nh[45]000) 857 basic_machine=m88k-harris 858 os=-cxux 859 ;; 860 nindy960) 861 basic_machine=i960-intel 862 os=-nindy 863 ;; 864 mon960) 865 basic_machine=i960-intel 866 os=-mon960 867 ;; 868 nonstopux) 869 basic_machine=mips-compaq 870 os=-nonstopux 871 ;; 872 np1) 873 basic_machine=np1-gould 874 ;; 875 neo-tandem) 876 basic_machine=neo-tandem 877 ;; 878 nse-tandem) 879 basic_machine=nse-tandem 880 ;; 881 nsr-tandem) 882 basic_machine=nsr-tandem 883 ;; 884 op50n-* | op60c-*) 885 basic_machine=hppa1.1-oki 886 os=-proelf 887 ;; 888 openrisc | openrisc-*) 889 basic_machine=or32-unknown 890 ;; 891 os400) 892 basic_machine=powerpc-ibm 893 os=-os400 894 ;; 895 OSE68000 | ose68000) 896 basic_machine=m68000-ericsson 897 os=-ose 898 ;; 899 os68k) 900 basic_machine=m68k-none 901 os=-os68k 902 ;; 903 pa-hitachi) 904 basic_machine=hppa1.1-hitachi 905 os=-hiuxwe2 906 ;; 907 paragon) 908 basic_machine=i860-intel 909 os=-osf 910 ;; 911 parisc) 912 basic_machine=hppa-unknown 913 os=-linux 914 ;; 915 parisc-*) 916 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` 917 os=-linux 918 ;; 919 pbd) 920 basic_machine=sparc-tti 921 ;; 922 pbb) 923 basic_machine=m68k-tti 924 ;; 925 pc532 | pc532-*) 926 basic_machine=ns32k-pc532 927 ;; 928 pc98) 929 basic_machine=i386-pc 930 ;; 931 pc98-*) 932 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` 933 ;; 934 pentium | p5 | k5 | k6 | nexgen | viac3) 935 basic_machine=i586-pc 936 ;; 937 pentiumpro | p6 | 6x86 | athlon | athlon_*) 938 basic_machine=i686-pc 939 ;; 940 pentiumii | pentium2 | pentiumiii | pentium3) 941 basic_machine=i686-pc 942 ;; 943 pentium4) 944 basic_machine=i786-pc 945 ;; 946 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) 947 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` 948 ;; 949 pentiumpro-* | p6-* | 6x86-* | athlon-*) 950 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 951 ;; 952 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) 953 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` 954 ;; 955 pentium4-*) 956 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` 957 ;; 958 pn) 959 basic_machine=pn-gould 960 ;; 961 power) 962 basic_machine=power-ibm 963 ;; 964 ppc | ppcbe) 965 basic_machine=powerpc-unknown 966 ;; 967 ppc-* | ppcbe-*) 968 basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` 969 ;; 970 ppcle | powerpclittle | ppc-le | powerpc-little) 971 basic_machine=powerpcle-unknown 972 ;; 973 ppcle-* | powerpclittle-*) 974 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 975 ;; 976 ppc64) 977 basic_machine=powerpc64-unknown 978 ;; 979 ppc64-*) 980 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