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