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