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