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