| 1 |
#! /bin/sh |
| 2 |
# Configuration validation subroutine script, version 1.1. |
| 3 |
# Copyright (C) 1991, 92-97, 1998 Free Software Foundation, Inc. |
| 4 |
# This file is (in principle) common to ALL GNU software. |
| 5 |
# The presence of a machine in this file suggests that SOME GNU software |
| 6 |
# can handle that machine. It does not imply ALL GNU software can. |
| 7 |
# |
| 8 |
# This file is free software; you can redistribute it and/or modify |
| 9 |
# it under the terms of the GNU General Public License as published by |
| 10 |
# the Free Software Foundation; either version 2 of the License, or |
| 11 |
# (at your option) any later version. |
| 12 |
# |
| 13 |
# This program is distributed in the hope that it will be useful, |
| 14 |
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 15 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 16 |
# GNU General Public License for more details. |
| 17 |
# |
| 18 |
# You should have received a copy of the GNU General Public License |
| 19 |
# along with this program; if not, write to the Free Software |
| 20 |
# Foundation, Inc., 59 Temple Place - Suite 330, |
| 21 |
# Boston, MA 02111-1307, USA. |
| 22 |
|
| 23 |
# As a special exception to the GNU General Public License, if you |
| 24 |
# distribute this file as part of a program that contains a |
| 25 |
# configuration script generated by Autoconf, you may include it under |
| 26 |
# the same distribution terms that you use for the rest of that program. |
| 27 |
|
| 28 |
# Configuration subroutine to validate and canonicalize a configuration type. |
| 29 |
# Supply the specified configuration type as an argument. |
| 30 |
# If it is invalid, we print an error message on stderr and exit with code 1. |
| 31 |
# Otherwise, we print the canonical config type on stdout and succeed. |
| 32 |
|
| 33 |
# This file is supposed to be the same for all GNU packages |
| 34 |
# and recognize all the CPU types, system types and aliases |
| 35 |
# that are meaningful with *any* GNU software. |
| 36 |
# Each package is responsible for reporting which valid configurations |
| 37 |
# it does not support. The user should be able to distinguish |
| 38 |
# a failure to support a valid configuration from a meaningless |
| 39 |
# configuration. |
| 40 |
|
| 41 |
# The goal of this file is to map all the various variations of a given |
| 42 |
# machine specification into a single specification in the form: |
| 43 |
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM |
| 44 |
# or in some cases, the newer four-part form: |
| 45 |
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM |
| 46 |
# It is wrong to echo any other type of specification. |
| 47 |
|
| 48 |
if [ x$1 = x ] |
| 49 |
then |
| 50 |
echo Configuration name missing. 1>&2 |
| 51 |
echo "Usage: $0 CPU-MFR-OPSYS" 1>&2 |
| 52 |
echo "or $0 ALIAS" 1>&2 |
| 53 |
echo where ALIAS is a recognized configuration type. 1>&2 |
| 54 |
exit 1 |
| 55 |
fi |
| 56 |
|
| 57 |
# First pass through any local machine types. |
| 58 |
case $1 in |
| 59 |
*local*) |
| 60 |
echo $1 |
| 61 |
exit 0 |
| 62 |
;; |
| 63 |
*) |
| 64 |
;; |
| 65 |
esac |
| 66 |
|
| 67 |
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). |
| 68 |
# Here we must recognize all the valid KERNEL-OS combinations. |
| 69 |
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` |
| 70 |
case $maybe_os in |
| 71 |
linux-gnu*) |
| 72 |
os=-$maybe_os |
| 73 |
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` |
| 74 |
;; |
| 75 |
*) |
| 76 |
basic_machine=`echo $1 | sed 's/-[^-]*$//'` |
| 77 |
if [ $basic_machine != $1 ] |
| 78 |
then os=`echo $1 | sed 's/.*-/-/'` |
| 79 |
else os=; fi |
| 80 |
;; |
| 81 |
esac |
| 82 |
|
| 83 |
### Let's recognize common machines as not being operating systems so |
| 84 |
### that things like config.sub decstation-3100 work. We also |
| 85 |
### recognize some manufacturers as not being operating systems, so we |
| 86 |
### can provide default operating systems below. |
| 87 |
case $os in |
| 88 |
-sun*os*) |
| 89 |
# Prevent following clause from handling this invalid input. |
| 90 |
;; |
| 91 |
-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ |
| 92 |
-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ |
| 93 |
-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ |
| 94 |
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ |
| 95 |
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ |
| 96 |
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ |
| 97 |
-apple) |
| 98 |
os= |
| 99 |
basic_machine=$1 |
| 100 |
;; |
| 101 |
-hiux*) |
| 102 |
os=-hiuxwe2 |
| 103 |
;; |
| 104 |
-sco5) |
| 105 |
os=sco3.2v5 |
| 106 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| 107 |
;; |
| 108 |
-sco4) |
| 109 |
os=-sco3.2v4 |
| 110 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| 111 |
;; |
| 112 |
-sco3.2.[4-9]*) |
| 113 |
os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` |
| 114 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| 115 |
;; |
| 116 |
-sco3.2v[4-9]*) |
| 117 |
# Don't forget version if it is 3.2v4 or newer. |
| 118 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| 119 |
;; |
| 120 |
-sco*) |
| 121 |
os=-sco3.2v2 |
| 122 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| 123 |
;; |
| 124 |
-isc) |
| 125 |
os=-isc2.2 |
| 126 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| 127 |
;; |
| 128 |
-clix*) |
| 129 |
basic_machine=clipper-intergraph |
| 130 |
;; |
| 131 |
-isc*) |
| 132 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
| 133 |
;; |
| 134 |
-lynx*) |
| 135 |
os=-lynxos |
| 136 |
;; |
| 137 |
-ptx*) |
| 138 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` |
| 139 |
;; |
| 140 |
-windowsnt*) |
| 141 |
os=`echo $os | sed -e 's/windowsnt/winnt/'` |
| 142 |
;; |
| 143 |
-psos*) |
| 144 |
os=-psos |
| 145 |
;; |
| 146 |
esac |
| 147 |
|
| 148 |
# Decode aliases for certain CPU-COMPANY combinations. |
| 149 |
case $basic_machine in |
| 150 |
# Recognize the basic CPU types without company name. |
| 151 |
# Some are omitted here because they have special meanings below. |
| 152 |
tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ |
| 153 |
| arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \ |
| 154 |
| 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 | hppa2.0 \ |
| 155 |
| alpha | alphaev5 | alphaev56 | we32k | ns16k | clipper \ |
| 156 |
| i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \ |
| 157 |
| mips64 | mipsel | mips64el | mips64orion | mips64orionel \ |
| 158 |
| mipstx39 | mipstx39el \ |
| 159 |
| sparc | sparclet | sparclite | sparc64 | v850) |
| 160 |
basic_machine=$basic_machine-unknown |
| 161 |
;; |
| 162 |
# We use `pc' rather than `unknown' |
| 163 |
# because (1) that's what they normally are, and |
| 164 |
# (2) the word "unknown" tends to confuse beginning users. |
| 165 |
i[34567]86) |
| 166 |
basic_machine=$basic_machine-pc |
| 167 |
;; |
| 168 |
# Object if more than one company name word. |
| 169 |
*-*-*) |
| 170 |
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 |
| 171 |
exit 1 |
| 172 |
;; |
| 173 |
# Recognize the basic CPU types with company name. |
| 174 |
vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \ |
| 175 |
| m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ |
| 176 |
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ |
| 177 |
| power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \ |
| 178 |
| xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* \ |
| 179 |
| alpha-* | alphaev5-* | alphaev56-* | we32k-* | cydra-* \ |
| 180 |
| ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \ |
| 181 |
| sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ |
| 182 |
| sparc64-* | mips64-* | mipsel-* \ |
| 183 |
| mips64el-* | mips64orion-* | mips64orionel-* \ |
| 184 |
| mipstx39-* | mipstx39el-* \ |
| 185 |
| f301-*) |
| 186 |
;; |
| 187 |
# Recognize the various machine names and aliases which stand |
| 188 |
# for a CPU type and a company and sometimes even an OS. |
| 189 |
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) |
| 190 |
basic_machine=m68000-att |
| 191 |
;; |
| 192 |
3b*) |
| 193 |
basic_machine=we32k-att |
| 194 |
;; |
| 195 |
alliant | fx80) |
| 196 |
basic_machine=fx80-alliant |
| 197 |
;; |
| 198 |
altos | altos3068) |
| 199 |
basic_machine=m68k-altos |
| 200 |
;; |
| 201 |
am29k) |
| 202 |
basic_machine=a29k-none |
| 203 |
os=-bsd |
| 204 |
;; |
| 205 |
amdahl) |
| 206 |
basic_machine=580-amdahl |
| 207 |
os=-sysv |
| 208 |
;; |
| 209 |
amiga | amiga-*) |
| 210 |
basic_machine=m68k-cbm |
| 211 |
;; |
| 212 |
amigaos | amigados) |
| 213 |
basic_machine=m68k-cbm |
| 214 |
os=-amigaos |
| 215 |
;; |
| 216 |
amigaunix | amix) |
| 217 |
basic_machine=m68k-cbm |
| 218 |
os=-sysv4 |
| 219 |
;; |
| 220 |
apollo68) |
| 221 |
basic_machine=m68k-apollo |
| 222 |
os=-sysv |
| 223 |
;; |
| 224 |
aux) |
| 225 |
basic_machine=m68k-apple |
| 226 |
os=-aux |
| 227 |
;; |
| 228 |
balance) |
| 229 |
basic_machine=ns32k-sequent |
| 230 |
os=-dynix |
| 231 |
;; |
| 232 |
convex-c1) |
| 233 |
basic_machine=c1-convex |
| 234 |
os=-bsd |
| 235 |
;; |
| 236 |
convex-c2) |
| 237 |
basic_machine=c2-convex |
| 238 |
os=-bsd |
| 239 |
;; |
| 240 |
convex-c32) |
| 241 |
basic_machine=c32-convex |
| 242 |
os=-bsd |
| 243 |
;; |
| 244 |
convex-c34) |
| 245 |
basic_machine=c34-convex |
| 246 |
os=-bsd |
| 247 |
;; |
| 248 |
convex-c38) |
| 249 |
basic_machine=c38-convex |
| 250 |
os=-bsd |
| 251 |
;; |
| 252 |
cray | ymp) |
| 253 |
basic_machine=ymp-cray |
| 254 |
os=-unicos |
| 255 |
;; |
| 256 |
cray2) |
| 257 |
basic_machine=cray2-cray |
| 258 |
os=-unicos |
| 259 |
;; |
| 260 |
[ctj]90-cray) |
| 261 |
basic_machine=c90-cray |
| 262 |
os=-unicos |
| 263 |
;; |
| 264 |
crds | unos) |
| 265 |
basic_machine=m68k-crds |
| 266 |
;; |
| 267 |
da30 | da30-*) |
| 268 |
basic_machine=m68k-da30 |
| 269 |
;; |
| 270 |
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) |
| 271 |
basic_machine=mips-dec |
| 272 |
;; |
| 273 |
delta | 3300 | motorola-3300 | motorola-delta \ |
| 274 |
| 3300-motorola | delta-motorola) |
| 275 |
basic_machine=m68k-motorola |
| 276 |
;; |
| 277 |
delta88) |
| 278 |
basic_machine=m88k-motorola |
| 279 |
os=-sysv3 |
| 280 |
;; |
| 281 |
dpx20 | dpx20-*) |
| 282 |
basic_machine=rs6000-bull |
| 283 |
os=-bosx |
| 284 |
;; |
| 285 |
dpx2* | dpx2*-bull) |
| 286 |
basic_machine=m68k-bull |
| 287 |
os=-sysv3 |
| 288 |
;; |
| 289 |
ebmon29k) |
| 290 |
basic_machine=a29k-amd |
| 291 |
os=-ebmon |
| 292 |
;; |
| 293 |
elxsi) |
| 294 |
basic_machine=elxsi-elxsi |
| 295 |
os=-bsd |
| 296 |
;; |
| 297 |
encore | umax | mmax) |
| 298 |
basic_machine=ns32k-encore |
| 299 |
;; |
| 300 |
fx2800) |
| 301 |
basic_machine=i860-alliant |
| 302 |
;; |
| 303 |
genix) |
| 304 |
basic_machine=ns32k-ns |
| 305 |
;; |
| 306 |
gmicro) |
| 307 |
basic_machine=tron-gmicro |
| 308 |
os=-sysv |
| 309 |
;; |
| 310 |
h3050r* | hiux*) |
| 311 |
basic_machine=hppa1.1-hitachi |
| 312 |
os=-hiuxwe2 |
| 313 |
;; |
| 314 |
h8300hms) |
| 315 |
basic_machine=h8300-hitachi |
| 316 |
os=-hms |
| 317 |
;; |
| 318 |
harris) |
| 319 |
basic_machine=m88k-harris |
| 320 |
os=-sysv3 |
| 321 |
;; |
| 322 |
hp300-*) |
| 323 |
basic_machine=m68k-hp |
| 324 |
;; |
| 325 |
hp300bsd) |
| 326 |
basic_machine=m68k-hp |
| 327 |
os=-bsd |
| 328 |
;; |
| 329 |
hp300hpux) |
| 330 |
basic_machine=m68k-hp |
| 331 |
os=-hpux |
| 332 |
;; |
| 333 |
hp9k2[0-9][0-9] | hp9k31[0-9]) |
| 334 |
basic_machine=m68000-hp |
| 335 |
;; |
| 336 |
hp9k3[2-9][0-9]) |
| 337 |
basic_machine=m68k-hp |
| 338 |
;; |
| 339 |
hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7) |
| 340 |
basic_machine=hppa1.1-hp |
| 341 |
;; |
| 342 |
hp9k8[0-9][0-9] | hp8[0-9][0-9]) |
| 343 |
basic_machine=hppa1.0-hp |
| 344 |
;; |
| 345 |
hppa-next) |
| 346 |
os=-nextstep3 |
| 347 |
;; |
| 348 |
i370-ibm* | ibm*) |
| 349 |
basic_machine=i370-ibm |
| 350 |
os=-mvs |
| 351 |
;; |
| 352 |
# I'm not sure what "Sysv32" means. Should this be sysv3.2? |
| 353 |
i[34567]86v32) |
| 354 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
| 355 |
os=-sysv32 |
| 356 |
;; |
| 357 |
i[34567]86v4*) |
| 358 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
| 359 |
os=-sysv4 |
| 360 |
;; |
| 361 |
i[34567]86v) |
| 362 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
| 363 |
os=-sysv |
| 364 |
;; |
| 365 |
i[34567]86sol2) |
| 366 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
| 367 |
os=-solaris2 |
| 368 |
;; |
| 369 |
iris | iris4d) |
| 370 |
basic_machine=mips-sgi |
| 371 |
case $os in |
| 372 |
-irix*) |
| 373 |
;; |
| 374 |
*) |
| 375 |
os=-irix4 |
| 376 |
;; |
| 377 |
esac |
| 378 |
;; |
| 379 |
isi68 | isi) |
| 380 |
basic_machine=m68k-isi |
| 381 |
os=-sysv |
| 382 |
;; |
| 383 |
m88k-omron*) |
| 384 |
basic_machine=m88k-omron |
| 385 |
;; |
| 386 |
magnum | m3230) |
| 387 |
basic_machine=mips-mips |
| 388 |
os=-sysv |
| 389 |
;; |
| 390 |
merlin) |
| 391 |
basic_machine=ns32k-utek |
| 392 |
os=-sysv |
| 393 |
;; |
| 394 |
miniframe) |
| 395 |
basic_machine=m68000-convergent |
| 396 |
;; |
| 397 |
mipsel*-linux*) |
| 398 |
basic_machine=mipsel-unknown |
| 399 |
os=-linux-gnu |
| 400 |
;; |
| 401 |
mips*-linux*) |
| 402 |
basic_machine=mips-unknown |
| 403 |
os=-linux-gnu |
| 404 |
;; |
| 405 |
mips3*-*) |
| 406 |
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` |
| 407 |
;; |
| 408 |
mips3*) |
| 409 |
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown |
| 410 |
;; |
| 411 |
ncr3000) |
| 412 |
basic_machine=i486-ncr |
| 413 |
os=-sysv4 |
| 414 |
;; |
| 415 |
news | news700 | news800 | news900) |
| 416 |
basic_machine=m68k-sony |
| 417 |
os=-newsos |
| 418 |
;; |
| 419 |
news1000) |
| 420 |
basic_machine=m68030-sony |
| 421 |
os=-newsos |
| 422 |
;; |
| 423 |
news-3600 | risc-news) |
| 424 |
basic_machine=mips-sony |
| 425 |
os=-newsos |
| 426 |
;; |
| 427 |
next | m*-next ) |
| 428 |
basic_machine=m68k-next |
| 429 |
case $os in |
| 430 |
-nextstep* ) |
| 431 |
;; |
| 432 |
-ns2*) |
| 433 |
os=-nextstep2 |
| 434 |
;; |
| 435 |
*) |
| 436 |
os=-nextstep3 |
| 437 |
;; |
| 438 |
esac |
| 439 |
;; |
| 440 |
nh3000) |
| 441 |
basic_machine=m68k-harris |
| 442 |
os=-cxux |
| 443 |
;; |
| 444 |
nh[45]000) |
| 445 |
basic_machine=m88k-harris |
| 446 |
os=-cxux |
| 447 |
;; |
| 448 |
nindy960) |
| 449 |
basic_machine=i960-intel |
| 450 |
os=-nindy |
| 451 |
;; |
| 452 |
np1) |
| 453 |
basic_machine=np1-gould |
| 454 |
;; |
| 455 |
pa-hitachi) |
| 456 |
basic_machine=hppa1.1-hitachi |
| 457 |
os=-hiuxwe2 |
| 458 |
;; |
| 459 |
paragon) |
| 460 |
basic_machine=i860-intel |
| 461 |
os=-osf |
| 462 |
;; |
| 463 |
pbd) |
| 464 |
basic_machine=sparc-tti |
| 465 |
;; |
| 466 |
pbb) |
| 467 |
basic_machine=m68k-tti |
| 468 |
;; |
| 469 |
pc532 | pc532-*) |
| 470 |
basic_machine=ns32k-pc532 |
| 471 |
;; |
| 472 |
pentium | p5 | k5 | nexen) |
| 473 |
basic_machine=i586-pc |
| 474 |
;; |
| 475 |
pentiumpro | p6 | k6 | 6x86) |
| 476 |
basic_machine=i686-pc |
| 477 |
;; |
| 478 |
pentiumii | pentium2) |
| 479 |
basic_machine=i786-pc |
| 480 |
;; |
| 481 |
pentium-* | p5-* | k5-* | nexen-*) |
| 482 |
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` |
| 483 |
;; |
| 484 |
pentiumpro-* | p6-* | k6-* | 6x86-*) |
| 485 |
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` |
| 486 |
;; |
| 487 |
pentiumii-* | pentium2-*) |
| 488 |
basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` |
| 489 |
;; |
| 490 |
pn) |
| 491 |
basic_machine=pn-gould |
| 492 |
;; |
| 493 |
power) basic_machine=rs6000-ibm |
| 494 |
;; |
| 495 |
ppc) basic_machine=powerpc-unknown |
| 496 |
;; |
| 497 |
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` |
| 498 |
;; |
| 499 |
ppcle | powerpclittle | ppc-le | powerpc-little) |
| 500 |
basic_machine=powerpcle-unknown |
| 501 |
;; |
| 502 |
ppcle-* | powerpclittle-*) |
| 503 |
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` |
| 504 |
;; |
| 505 |
ps2) |
| 506 |
basic_machine=i386-ibm |
| 507 |
;; |
| 508 |
rm[46]00) |
| 509 |
basic_machine=mips-siemens |
| 510 |
;; |
| 511 |
rtpc | rtpc-*) |
| 512 |
basic_machine=romp-ibm |
| 513 |
;; |
| 514 |
sequent) |
| 515 |
basic_machine=i386-sequent |
| 516 |
;; |
| 517 |
sh) |
| 518 |
basic_machine=sh-hitachi |
| 519 |
os=-hms |
| 520 |
;; |
| 521 |
sps7) |
| 522 |
basic_machine=m68k-bull |
| 523 |
os=-sysv2 |
| 524 |
;; |
| 525 |
spur) |
| 526 |
basic_machine=spur-unknown |
| 527 |
;; |
| 528 |
sun2) |
| 529 |
basic_machine=m68000-sun |
| 530 |
;; |
| 531 |
sun2os3) |
| 532 |
basic_machine=m68000-sun |
| 533 |
os=-sunos3 |
| 534 |
;; |
| 535 |
sun2os4) |
| 536 |
basic_machine=m68000-sun |
| 537 |
os=-sunos4 |
| 538 |
;; |
| 539 |
sun3os3) |
| 540 |
basic_machine=m68k-sun |
| 541 |
os=-sunos3 |
| 542 |
;; |
| 543 |
sun3os4) |
| 544 |
basic_machine=m68k-sun |
| 545 |
os=-sunos4 |
| 546 |
;; |
| 547 |
sun4os3) |
| 548 |
basic_machine=sparc-sun |
| 549 |
os=-sunos3 |
| 550 |
;; |
| 551 |
sun4os4) |
| 552 |
basic_machine=sparc-sun |
| 553 |
os=-sunos4 |
| 554 |
;; |
| 555 |
sun4sol2) |
| 556 |
basic_machine=sparc-sun |
| 557 |
os=-solaris2 |
| 558 |
;; |
| 559 |
sun3 | sun3-*) |
| 560 |
basic_machine=m68k-sun |
| 561 |
;; |
| 562 |
sun4) |
| 563 |
basic_machine=sparc-sun |
| 564 |
;; |
| 565 |
sun386 | sun386i | roadrunner) |
| 566 |
basic_machine=i386-sun |
| 567 |
;; |
| 568 |
symmetry) |
| 569 |
basic_machine=i386-sequent |
| 570 |
os=-dynix |
| 571 |
;; |
| 572 |
tx39) |
| 573 |
basic_machine=mipstx39-unknown |
| 574 |
;; |
| 575 |
tx39el) |
| 576 |
basic_machine=mipstx39el-unknown |
| 577 |
;; |
| 578 |
tower | tower-32) |
| 579 |
basic_machine=m68k-ncr |
| 580 |
;; |
| 581 |
udi29k) |
| 582 |
basic_machine=a29k-amd |
| 583 |
os=-udi |
| 584 |
;; |
| 585 |
ultra3) |
| 586 |
basic_machine=a29k-nyu |
| 587 |
os=-sym1 |
| 588 |
;; |
| 589 |
vaxv) |
| 590 |
basic_machine=vax-dec |
| 591 |
os=-sysv |
| 592 |
;; |
| 593 |
vms) |
| 594 |
basic_machine=vax-dec |
| 595 |
os=-vms |
| 596 |
;; |
| 597 |
vpp*|vx|vx-*) |
| 598 |
basic_machine=f301-fujitsu |
| 599 |
;; |
| 600 |
vxworks960) |
| 601 |
basic_machine=i960-wrs |
| 602 |
os=-vxworks |
| 603 |
;; |
| 604 |
vxworks68) |
| 605 |
basic_machine=m68k-wrs |
| 606 |
os=-vxworks |
| 607 |
;; |
| 608 |
vxworks29k) |
| 609 |
basic_machine=a29k-wrs |
| 610 |
os=-vxworks |
| 611 |
;; |
| 612 |
xmp) |
| 613 |
basic_machine=xmp-cray |
| 614 |
os=-unicos |
| 615 |
;; |
| 616 |
xps | xps100) |
| 617 |
basic_machine=xps100-honeywell |
| 618 |
;; |
| 619 |
none) |
| 620 |
basic_machine=none-none |
| 621 |
os=-none |
| 622 |
;; |
| 623 |
|
| 624 |
# Here we handle the default manufacturer of certain CPU types. It is in |
| 625 |
# some cases the only manufacturer, in others, it is the most popular. |
| 626 |
mips) |
| 627 |
if [ x$os = x-linux-gnu ]; then |
| 628 |
basic_machine=mips-unknown |
| 629 |
else |
| 630 |
basic_machine=mips-mips |
| 631 |
fi |
| 632 |
;; |
| 633 |
romp) |
| 634 |
basic_machine=romp-ibm |
| 635 |
;; |
| 636 |
rs6000) |
| 637 |
basic_machine=rs6000-ibm |
| 638 |
;; |
| 639 |
vax) |
| 640 |
basic_machine=vax-dec |
| 641 |
;; |
| 642 |
pdp11) |
| 643 |
basic_machine=pdp11-dec |
| 644 |
;; |
| 645 |
we32k) |
| 646 |
basic_machine=we32k-att |
| 647 |
;; |
| 648 |
sparc) |
| 649 |
basic_machine=sparc-sun |
| 650 |
;; |
| 651 |
cydra) |
| 652 |
basic_machine=cydra-cydrome |
| 653 |
;; |
| 654 |
orion) |
| 655 |
basic_machine=orion-highlevel |
| 656 |
;; |
| 657 |
orion105) |
| 658 |
basic_machine=clipper-highlevel |
| 659 |
;; |
| 660 |
*) |
| 661 |
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 |
| 662 |
exit 1 |
| 663 |
;; |
| 664 |
esac |
| 665 |
|
| 666 |
# Here we canonicalize certain aliases for manufacturers. |
| 667 |
case $basic_machine in |
| 668 |
*-digital*) |
| 669 |
basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` |
| 670 |
;; |
| 671 |
*-commodore*) |
| 672 |
basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` |
| 673 |
;; |
| 674 |
*) |
| 675 |
;; |
| 676 |
esac |
| 677 |
|
| 678 |
# Decode manufacturer-specific aliases for certain operating systems. |
| 679 |
|
| 680 |
if [ x"$os" != x"" ] |
| 681 |
then |
| 682 |
case $os in |
| 683 |
# First match some system type aliases |
| 684 |
# that might get confused with valid system types. |
| 685 |
# -solaris* is a basic system type, with this one exception. |
| 686 |
-solaris1 | -solaris1.*) |
| 687 |
os=`echo $os | sed -e 's|solaris1|sunos4|'` |
| 688 |
;; |
| 689 |
-solaris) |
| 690 |
os=-solaris2 |
| 691 |
;; |
| 692 |
-svr4*) |
| 693 |
os=-sysv4 |
| 694 |
;; |
| 695 |
-unixware*) |
| 696 |
os=-sysv4.2uw |
| 697 |
;; |
| 698 |
-gnu/linux*) |
| 699 |
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` |
| 700 |
;; |
| 701 |
# First accept the basic system types. |
| 702 |
# The portable systems comes first. |
| 703 |
# Each alternative MUST END IN A *, to match a version number. |
| 704 |
# -sysv* is not here because it comes later, after sysvr4. |
| 705 |
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ |
| 706 |
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ |
| 707 |
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ |
| 708 |
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ |
| 709 |
| -aos* \ |
| 710 |
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ |
| 711 |
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ |
| 712 |
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ |
| 713 |
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \ |
| 714 |
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ |
| 715 |
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ |
| 716 |
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ |
| 717 |
| -mingw32* | -linux-gnu* | -uxpv* | -beos*) |
| 718 |
# Remember, each alternative MUST END IN *, to match a version number. |
| 719 |
;; |
| 720 |
-linux*) |
| 721 |
os=`echo $os | sed -e 's|linux|linux-gnu|'` |
| 722 |
;; |
| 723 |
-sunos5*) |
| 724 |
os=`echo $os | sed -e 's|sunos5|solaris2|'` |
| 725 |
;; |
| 726 |
-sunos6*) |
| 727 |
os=`echo $os | sed -e 's|sunos6|solaris3|'` |
| 728 |
;; |
| 729 |
-osfrose*) |
| 730 |
os=-osfrose |
| 731 |
;; |
| 732 |
-osf*) |
| 733 |
os=-osf |
| 734 |
;; |
| 735 |
-utek*) |
| 736 |
os=-bsd |
| 737 |
;; |
| 738 |
-dynix*) |
| 739 |
os=-bsd |
| 740 |
;; |
| 741 |
-acis*) |
| 742 |
os=-aos |
| 743 |
;; |
| 744 |
-ctix* | -uts*) |
| 745 |
os=-sysv |
| 746 |
;; |
| 747 |
-ns2 ) |
| 748 |
os=-nextstep2 |
| 749 |
;; |
| 750 |
# Preserve the version number of sinix5. |
| 751 |
-sinix5.*) |
| 752 |
os=`echo $os | sed -e 's|sinix|sysv|'` |
| 753 |
;; |
| 754 |
-sinix*) |
| 755 |
os=-sysv4 |
| 756 |
;; |
| 757 |
-triton*) |
| 758 |
os=-sysv3 |
| 759 |
;; |
| 760 |
-oss*) |
| 761 |
os=-sysv3 |
| 762 |
;; |
| 763 |
-svr4) |
| 764 |
os=-sysv4 |
| 765 |
;; |
| 766 |
-svr3) |
| 767 |
os=-sysv3 |
| 768 |
;; |
| 769 |
-sysvr4) |
| 770 |
os=-sysv4 |
| 771 |
;; |
| 772 |
# This must come after -sysvr4. |
| 773 |
-sysv*) |
| 774 |
;; |
| 775 |
-xenix) |
| 776 |
os=-xenix |
| 777 |
;; |
| 778 |
-none) |
| 779 |
;; |
| 780 |
*) |
| 781 |
# Get rid of the `-' at the beginning of $os. |
| 782 |
os=`echo $os | sed 's/[^-]*-//'` |
| 783 |
echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 |
| 784 |
exit 1 |
| 785 |
;; |
| 786 |
esac |
| 787 |
else |
| 788 |
|
| 789 |
# Here we handle the default operating systems that come with various machines. |
| 790 |
# The value should be what the vendor currently ships out the door with their |
| 791 |
# machine or put another way, the most popular os provided with the machine. |
| 792 |
|
| 793 |
# Note that if you're going to try to match "-MANUFACTURER" here (say, |
| 794 |
# "-sun"), then you have to tell the case statement up towards the top |
| 795 |
# that MANUFACTURER isn't an operating system. Otherwise, code above |
| 796 |
# will signal an error saying that MANUFACTURER isn't an operating |
| 797 |
# system, and we'll never get to this point. |
| 798 |
|
| 799 |
case $basic_machine in |
| 800 |
*-acorn) |
| 801 |
os=-riscix1.2 |
| 802 |
;; |
| 803 |
arm*-semi) |
| 804 |
os=-aout |
| 805 |
;; |
| 806 |
pdp11-*) |
| 807 |
os=-none |
| 808 |
;; |
| 809 |
*-dec | vax-*) |
| 810 |
os=-ultrix4.2 |
| 811 |
;; |
| 812 |
m68*-apollo) |
| 813 |
os=-domain |
| 814 |
;; |
| 815 |
i386-sun) |
| 816 |
os=-sunos4.0.2 |
| 817 |
;; |
| 818 |
m68000-sun) |
| 819 |
os=-sunos3 |
| 820 |
# This also exists in the configure program, but was not the |
| 821 |
# default. |
| 822 |
# os=-sunos4 |
| 823 |
;; |
| 824 |
*-tti) # must be before sparc entry or we get the wrong os. |
| 825 |
os=-sysv3 |
| 826 |
;; |
| 827 |
sparc-* | *-sun) |
| 828 |
os=-sunos4.1.1 |
| 829 |
;; |
| 830 |
*-be) |
| 831 |
os=-beos |
| 832 |
;; |
| 833 |
*-ibm) |
| 834 |
os=-aix |
| 835 |
;; |
| 836 |
*-hp) |
| 837 |
os=-hpux |
| 838 |
;; |
| 839 |
*-hitachi) |
| 840 |
os=-hiux |
| 841 |
;; |
| 842 |
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) |
| 843 |
os=-sysv |
| 844 |
;; |
| 845 |
*-cbm) |
| 846 |
os=-amigaos |
| 847 |
;; |
| 848 |
*-dg) |
| 849 |
os=-dgux |
| 850 |
;; |
| 851 |
*-dolphin) |
| 852 |
os=-sysv3 |
| 853 |
;; |
| 854 |
m68k-ccur) |
| 855 |
os=-rtu |
| 856 |
;; |
| 857 |
m88k-omron*) |
| 858 |
os=-luna |
| 859 |
;; |
| 860 |
*-next ) |
| 861 |
os=-nextstep |
| 862 |
;; |
| 863 |
*-sequent) |
| 864 |
os=-ptx |
| 865 |
;; |
| 866 |
*-crds) |
| 867 |
os=-unos |
| 868 |
;; |
| 869 |
*-ns) |
| 870 |
os=-genix |
| 871 |
;; |
| 872 |
i370-*) |
| 873 |
os=-mvs |
| 874 |
;; |
| 875 |
*-next) |
| 876 |
os=-nextstep3 |
| 877 |
;; |
| 878 |
*-gould) |
| 879 |
os=-sysv |
| 880 |
;; |
| 881 |
*-highlevel) |
| 882 |
os=-bsd |
| 883 |
;; |
| 884 |
*-encore) |
| 885 |
os=-bsd |
| 886 |
;; |
| 887 |
*-sgi) |
| 888 |
os=-irix |
| 889 |
;; |
| 890 |
*-siemens) |
| 891 |
os=-sysv4 |
| 892 |
;; |
| 893 |
*-masscomp) |
| 894 |
os=-rtu |
| 895 |
;; |
| 896 |
f301-fujitsu) |
| 897 |
os=-uxpv |
| 898 |
;; |
| 899 |
*) |
| 900 |
os=-none |
| 901 |
;; |
| 902 |
esac |
| 903 |
fi |
| 904 |
|
| 905 |
# Here we handle the case where we know the os, and the CPU type, but not the |
| 906 |
# manufacturer. We pick the logical manufacturer. |
| 907 |
vendor=unknown |
| 908 |
case $basic_machine in |
| 909 |
*-unknown) |
| 910 |
case $os in |
| 911 |
-riscix*) |
| 912 |
vendor=acorn |
| 913 |
;; |
| 914 |
-sunos*) |
| 915 |
vendor=sun |
| 916 |
;; |
| 917 |
-aix*) |
| 918 |
vendor=ibm |
| 919 |
;; |
| 920 |
-hpux*) |
| 921 |
vendor=hp |
| 922 |
;; |
| 923 |
-hiux*) |
| 924 |
vendor=hitachi |
| 925 |
;; |
| 926 |
-unos*) |
| 927 |
vendor=crds |
| 928 |
;; |
| 929 |
-dgux*) |
| 930 |
vendor=dg |
| 931 |
;; |
| 932 |
-luna*) |
| 933 |
vendor=omron |
| 934 |
;; |
| 935 |
-genix*) |
| 936 |
vendor=ns |
| 937 |
;; |
| 938 |
-mvs*) |
| 939 |
vendor=ibm |
| 940 |
;; |
| 941 |
-ptx*) |
| 942 |
vendor=sequent |
| 943 |
;; |
| 944 |
-vxsim* | -vxworks*) |
| 945 |
vendor=wrs |
| 946 |
;; |
| 947 |
-aux*) |
| 948 |
vendor=apple |
| 949 |
;; |
| 950 |
esac |
| 951 |
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` |
| 952 |
;; |
| 953 |
esac |
| 954 |
|
| 955 |
echo $basic_machine$os |