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