1 |
#! /bin/sh |
2 |
# Configuration validation subroutine script, version 1.1. |
3 |
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 |
4 |
# Free Software Foundation, Inc. |
5 |
# |
6 |
# This file is (in principle) common to ALL GNU software. |
7 |
# The presence of a machine in this file suggests that SOME GNU software |
8 |
# can handle that machine. It does not imply ALL GNU software can. |
9 |
# |
10 |
# This file is free software; you can redistribute it and/or modify |
11 |
# it under the terms of the GNU General Public License as published by |
12 |
# the Free Software Foundation; either version 2 of the License, or |
13 |
# (at your option) any later version. |
14 |
# |
15 |
# This program is distributed in the hope that it will be useful, |
16 |
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
17 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
18 |
# GNU General Public License for more details. |
19 |
# |
20 |
# You should have received a copy of the GNU General Public License |
21 |
# along with this program; if not, write to the Free Software |
22 |
# Foundation, Inc., 59 Temple Place - Suite 330, |
23 |
# Boston, MA 02111-1307, USA. |
24 |
|
25 |
# As a special exception to the GNU General Public License, if you |
26 |
# distribute this file as part of a program that contains a |
27 |
# configuration script generated by Autoconf, you may include it under |
28 |
# the same distribution terms that you use for the rest of that program. |
29 |
|
30 |
# Written by Per Bothner <bothner@cygnus.com>. |
31 |
# Please send patches to <config-patches@gnu.org>. |
32 |
# |
33 |
# Configuration subroutine to validate and canonicalize a configuration type. |
34 |
# Supply the specified configuration type as an argument. |
35 |
# If it is invalid, we print an error message on stderr and exit with code 1. |
36 |
# Otherwise, we print the canonical config type on stdout and succeed. |
37 |
|
38 |
# This file is supposed to be the same for all GNU packages |
39 |
# and recognize all the CPU types, system types and aliases |
40 |
# that are meaningful with *any* GNU software. |
41 |
# Each package is responsible for reporting which valid configurations |
42 |
# it does not support. The user should be able to distinguish |
43 |
# a failure to support a valid configuration from a meaningless |
44 |
# configuration. |
45 |
|
46 |
# The goal of this file is to map all the various variations of a given |
47 |
# machine specification into a single specification in the form: |
48 |
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM |
49 |
# or in some cases, the newer four-part form: |
50 |
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM |
51 |
# It is wrong to echo any other type of specification. |
52 |
|
53 |
if [ x$1 = x ] |
54 |
then |
55 |
echo Configuration name missing. 1>&2 |
56 |
echo "Usage: $0 CPU-MFR-OPSYS" 1>&2 |
57 |
echo "or $0 ALIAS" 1>&2 |
58 |
echo where ALIAS is a recognized configuration type. 1>&2 |
59 |
exit 1 |
60 |
fi |
61 |
|
62 |
# First pass through any local machine types. |
63 |
case $1 in |
64 |
*local*) |
65 |
echo $1 |
66 |
exit 0 |
67 |
;; |
68 |
*) |
69 |
;; |
70 |
esac |
71 |
|
72 |
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). |
73 |
# Here we must recognize all the valid KERNEL-OS combinations. |
74 |
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` |
75 |
case $maybe_os in |
76 |
nto-qnx* | linux-gnu*) |
77 |
os=-$maybe_os |
78 |
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` |
79 |
;; |
80 |
*) |
81 |
basic_machine=`echo $1 | sed 's/-[^-]*$//'` |
82 |
if [ $basic_machine != $1 ] |
83 |
then os=`echo $1 | sed 's/.*-/-/'` |
84 |
else os=; fi |
85 |
;; |
86 |
esac |
87 |
|
88 |
### Let's recognize common machines as not being operating systems so |
89 |
### that things like config.sub decstation-3100 work. We also |
90 |
### recognize some manufacturers as not being operating systems, so we |
91 |
### can provide default operating systems below. |
92 |
case $os in |
93 |
-sun*os*) |
94 |
# Prevent following clause from handling this invalid input. |
95 |
;; |
96 |
-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ |
97 |
-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ |
98 |
-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ |
99 |
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ |
100 |
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ |
101 |
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ |
102 |
-apple) |
103 |
os= |
104 |
basic_machine=$1 |
105 |
;; |
106 |
-sim | -cisco | -oki | -wec | -winbond) |
107 |
os= |
108 |
basic_machine=$1 |
109 |
;; |
110 |
-scout) |
111 |
;; |
112 |
-wrs) |
113 |
os=-vxworks |
114 |
basic_machine=$1 |
115 |
;; |
116 |
-hiux*) |
117 |
os=-hiuxwe2 |
118 |
;; |
119 |
-sco5) |
120 |
os=-sco3.2v5 |
121 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
122 |
;; |
123 |
-sco4) |
124 |
os=-sco3.2v4 |
125 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
126 |
;; |
127 |
-sco3.2.[4-9]*) |
128 |
os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` |
129 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
130 |
;; |
131 |
-sco3.2v[4-9]*) |
132 |
# Don't forget version if it is 3.2v4 or newer. |
133 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
134 |
;; |
135 |
-sco*) |
136 |
os=-sco3.2v2 |
137 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
138 |
;; |
139 |
-udk*) |
140 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
141 |
;; |
142 |
-isc) |
143 |
os=-isc2.2 |
144 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
145 |
;; |
146 |
-clix*) |
147 |
basic_machine=clipper-intergraph |
148 |
;; |
149 |
-isc*) |
150 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` |
151 |
;; |
152 |
-lynx*) |
153 |
os=-lynxos |
154 |
;; |
155 |
-ptx*) |
156 |
basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` |
157 |
;; |
158 |
-windowsnt*) |
159 |
os=`echo $os | sed -e 's/windowsnt/winnt/'` |
160 |
;; |
161 |
-psos*) |
162 |
os=-psos |
163 |
;; |
164 |
-mint | -mint[0-9]*) |
165 |
basic_machine=m68k-atari |
166 |
os=-mint |
167 |
;; |
168 |
esac |
169 |
|
170 |
# Decode aliases for certain CPU-COMPANY combinations. |
171 |
case $basic_machine in |
172 |
# Recognize the basic CPU types without company name. |
173 |
# Some are omitted here because they have special meanings below. |
174 |
tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ |
175 |
| arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \ |
176 |
| 580 | i960 | h8300 \ |
177 |
| x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \ |
178 |
| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ |
179 |
| hppa64 \ |
180 |
| alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ |
181 |
| alphaev6[78] \ |
182 |
| we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \ |
183 |
| 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ |
184 |
| mips64orion | mips64orionel | mipstx39 | mipstx39el \ |
185 |
| mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ |
186 |
| mips64vr5000 | miprs64vr5000el | mcore \ |
187 |
| sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ |
188 |
| thumb | d10v | fr30 | avr) |
189 |
basic_machine=$basic_machine-unknown |
190 |
;; |
191 |
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl) |
192 |
;; |
193 |
|
194 |
# We use `pc' rather than `unknown' |
195 |
# because (1) that's what they normally are, and |
196 |
# (2) the word "unknown" tends to confuse beginning users. |
197 |
i[34567]86) |
198 |
basic_machine=$basic_machine-pc |
199 |
;; |
200 |
# Object if more than one company name word. |
201 |
*-*-*) |
202 |
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 |
203 |
exit 1 |
204 |
;; |
205 |
# Recognize the basic CPU types with company name. |
206 |
# FIXME: clean up the formatting here. |
207 |
vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ |
208 |
| m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ |
209 |
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ |
210 |
| power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ |
211 |
| xmp-* | ymp-* \ |
212 |
| x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* | armbe-* | armle-* \ |
213 |
| hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ |
214 |
| hppa2.0n-* | hppa64-* \ |
215 |
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ |
216 |
| alphaev6[78]-* \ |
217 |
| we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ |
218 |
| clipper-* | orion-* \ |
219 |
| sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ |
220 |
| sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ |
221 |
| mips64el-* | mips64orion-* | mips64orionel-* \ |
222 |
| mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ |
223 |
| mipstx39-* | mipstx39el-* | mcore-* \ |
224 |
| f301-* | armv*-* | s390-* | sv1-* | t3e-* \ |
225 |
| m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ |
226 |
| thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \ |
227 |
| bs2000-*) |
228 |
;; |
229 |
# Recognize the various machine names and aliases which stand |
230 |
# for a CPU type and a company and sometimes even an OS. |
231 |
386bsd) |
232 |
basic_machine=i386-unknown |
233 |
os=-bsd |
234 |
;; |
235 |
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) |
236 |
basic_machine=m68000-att |
237 |
;; |
238 |
3b*) |
239 |
basic_machine=we32k-att |
240 |
;; |
241 |
a29khif) |
242 |
basic_machine=a29k-amd |
243 |
os=-udi |
244 |
;; |
245 |
adobe68k) |
246 |
basic_machine=m68010-adobe |
247 |
os=-scout |
248 |
;; |
249 |
alliant | fx80) |
250 |
basic_machine=fx80-alliant |
251 |
;; |
252 |
altos | altos3068) |
253 |
basic_machine=m68k-altos |
254 |
;; |
255 |
am29k) |
256 |
basic_machine=a29k-none |
257 |
os=-bsd |
258 |
;; |
259 |
amdahl) |
260 |
basic_machine=580-amdahl |
261 |
os=-sysv |
262 |
;; |
263 |
amiga | amiga-*) |
264 |
basic_machine=m68k-cbm |
265 |
;; |
266 |
amigaos | amigados) |
267 |
basic_machine=m68k-cbm |
268 |
os=-amigaos |
269 |
;; |
270 |
amigaunix | amix) |
271 |
basic_machine=m68k-cbm |
272 |
os=-sysv4 |
273 |
;; |
274 |
apollo68) |
275 |
basic_machine=m68k-apollo |
276 |
os=-sysv |
277 |
;; |
278 |
apollo68bsd) |
279 |
basic_machine=m68k-apollo |
280 |
os=-bsd |
281 |
;; |
282 |
aux) |
283 |
basic_machine=m68k-apple |
284 |
os=-aux |
285 |
;; |
286 |
balance) |
287 |
basic_machine=ns32k-sequent |
288 |
os=-dynix |
289 |
;; |
290 |
convex-c1) |
291 |
basic_machine=c1-convex |
292 |
os=-bsd |
293 |
;; |
294 |
convex-c2) |
295 |
basic_machine=c2-convex |
296 |
os=-bsd |
297 |
;; |
298 |
convex-c32) |
299 |
basic_machine=c32-convex |
300 |
os=-bsd |
301 |
;; |
302 |
convex-c34) |
303 |
basic_machine=c34-convex |
304 |
os=-bsd |
305 |
;; |
306 |
convex-c38) |
307 |
basic_machine=c38-convex |
308 |
os=-bsd |
309 |
;; |
310 |
cray | ymp) |
311 |
basic_machine=ymp-cray |
312 |
os=-unicos |
313 |
;; |
314 |
cray2) |
315 |
basic_machine=cray2-cray |
316 |
os=-unicos |
317 |
;; |
318 |
[ctj]90-cray) |
319 |
basic_machine=c90-cray |
320 |
os=-unicos |
321 |
;; |
322 |
crds | unos) |
323 |
basic_machine=m68k-crds |
324 |
;; |
325 |
da30 | da30-*) |
326 |
basic_machine=m68k-da30 |
327 |
;; |
328 |
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) |
329 |
basic_machine=mips-dec |
330 |
;; |
331 |
delta | 3300 | motorola-3300 | motorola-delta \ |
332 |
| 3300-motorola | delta-motorola) |
333 |
basic_machine=m68k-motorola |
334 |
;; |
335 |
delta88) |
336 |
basic_machine=m88k-motorola |
337 |
os=-sysv3 |
338 |
;; |
339 |
dpx20 | dpx20-*) |
340 |
basic_machine=rs6000-bull |
341 |
os=-bosx |
342 |
;; |
343 |
dpx2* | dpx2*-bull) |
344 |
basic_machine=m68k-bull |
345 |
os=-sysv3 |
346 |
;; |
347 |
ebmon29k) |
348 |
basic_machine=a29k-amd |
349 |
os=-ebmon |
350 |
;; |
351 |
elxsi) |
352 |
basic_machine=elxsi-elxsi |
353 |
os=-bsd |
354 |
;; |
355 |
encore | umax | mmax) |
356 |
basic_machine=ns32k-encore |
357 |
;; |
358 |
es1800 | OSE68k | ose68k | ose | OSE) |
359 |
basic_machine=m68k-ericsson |
360 |
os=-ose |
361 |
;; |
362 |
fx2800) |
363 |
basic_machine=i860-alliant |
364 |
;; |
365 |
genix) |
366 |
basic_machine=ns32k-ns |
367 |
;; |
368 |
gmicro) |
369 |
basic_machine=tron-gmicro |
370 |
os=-sysv |
371 |
;; |
372 |
h3050r* | hiux*) |
373 |
basic_machine=hppa1.1-hitachi |
374 |
os=-hiuxwe2 |
375 |
;; |
376 |
h8300hms) |
377 |
basic_machine=h8300-hitachi |
378 |
os=-hms |
379 |
;; |
380 |
h8300xray) |
381 |
basic_machine=h8300-hitachi |
382 |
os=-xray |
383 |
;; |
384 |
h8500hms) |
385 |
basic_machine=h8500-hitachi |
386 |
os=-hms |
387 |
;; |
388 |
harris) |
389 |
basic_machine=m88k-harris |
390 |
os=-sysv3 |
391 |
;; |
392 |
hp300-*) |
393 |
basic_machine=m68k-hp |
394 |
;; |
395 |
hp300bsd) |
396 |
basic_machine=m68k-hp |
397 |
os=-bsd |
398 |
;; |
399 |
hp300hpux) |
400 |
basic_machine=m68k-hp |
401 |
os=-hpux |
402 |
;; |
403 |
hp3k9[0-9][0-9] | hp9[0-9][0-9]) |
404 |
basic_machine=hppa1.0-hp |
405 |
;; |
406 |
hp9k2[0-9][0-9] | hp9k31[0-9]) |
407 |
basic_machine=m68000-hp |
408 |
;; |
409 |
hp9k3[2-9][0-9]) |
410 |
basic_machine=m68k-hp |
411 |
;; |
412 |
hp9k6[0-9][0-9] | hp6[0-9][0-9]) |
413 |
basic_machine=hppa1.0-hp |
414 |
;; |
415 |
hp9k7[0-79][0-9] | hp7[0-79][0-9]) |
416 |
basic_machine=hppa1.1-hp |
417 |
;; |
418 |
hp9k78[0-9] | hp78[0-9]) |
419 |
# FIXME: really hppa2.0-hp |
420 |
basic_machine=hppa1.1-hp |
421 |
;; |
422 |
hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) |
423 |
# FIXME: really hppa2.0-hp |
424 |
basic_machine=hppa1.1-hp |
425 |
;; |
426 |
hp9k8[0-9][13679] | hp8[0-9][13679]) |
427 |
basic_machine=hppa1.1-hp |
428 |
;; |
429 |
hp9k8[0-9][0-9] | hp8[0-9][0-9]) |
430 |
basic_machine=hppa1.0-hp |
431 |
;; |
432 |
hppa-next) |
433 |
os=-nextstep3 |
434 |
;; |
435 |
hppaosf) |
436 |
basic_machine=hppa1.1-hp |
437 |
os=-osf |
438 |
;; |
439 |
hppro) |
440 |
basic_machine=hppa1.1-hp |
441 |
os=-proelf |
442 |
;; |
443 |
i370-ibm* | ibm*) |
444 |
basic_machine=i370-ibm |
445 |
;; |
446 |
# I'm not sure what "Sysv32" means. Should this be sysv3.2? |
447 |
i[34567]86v32) |
448 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
449 |
os=-sysv32 |
450 |
;; |
451 |
i[34567]86v4*) |
452 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
453 |
os=-sysv4 |
454 |
;; |
455 |
i[34567]86v) |
456 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
457 |
os=-sysv |
458 |
;; |
459 |
i[34567]86sol2) |
460 |
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` |
461 |
os=-solaris2 |
462 |
;; |
463 |
i386mach) |
464 |
basic_machine=i386-mach |
465 |
os=-mach |
466 |
;; |
467 |
i386-vsta | vsta) |
468 |
basic_machine=i386-unknown |
469 |
os=-vsta |
470 |
;; |
471 |
i386-go32 | go32) |
472 |
basic_machine=i386-unknown |
473 |
os=-go32 |
474 |
;; |
475 |
i386-mingw32 | mingw32) |
476 |
basic_machine=i386-unknown |
477 |
os=-mingw32 |
478 |
;; |
479 |
iris | iris4d) |
480 |
basic_machine=mips-sgi |
481 |
case $os in |
482 |
-irix*) |
483 |
;; |
484 |
*) |
485 |
os=-irix4 |
486 |
;; |
487 |
esac |
488 |
;; |
489 |
isi68 | isi) |
490 |
basic_machine=m68k-isi |
491 |
os=-sysv |
492 |
;; |
493 |
m88k-omron*) |
494 |
basic_machine=m88k-omron |
495 |
;; |
496 |
magnum | m3230) |
497 |
basic_machine=mips-mips |
498 |
os=-sysv |
499 |
;; |
500 |
merlin) |
501 |
basic_machine=ns32k-utek |
502 |
os=-sysv |
503 |
;; |
504 |
miniframe) |
505 |
basic_machine=m68000-convergent |
506 |
;; |
507 |
*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) |
508 |
basic_machine=m68k-atari |
509 |
os=-mint |
510 |
;; |
511 |
mipsel*-linux*) |
512 |
basic_machine=mipsel-unknown |
513 |
os=-linux-gnu |
514 |
;; |
515 |
mips*-linux*) |
516 |
basic_machine=mips-unknown |
517 |
os=-linux-gnu |
518 |
;; |
519 |
mips3*-*) |
520 |
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` |
521 |
;; |
522 |
mips3*) |
523 |
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown |
524 |
;; |
525 |
mmix*) |
526 |
basic_machine=mmix-knuth |
527 |
os=-mmixware |
528 |
;; |
529 |
monitor) |
530 |
basic_machine=m68k-rom68k |
531 |
os=-coff |
532 |
;; |
533 |
msdos) |
534 |
basic_machine=i386-unknown |
535 |
os=-msdos |
536 |
;; |
537 |
mvs) |
538 |
basic_machine=i370-ibm |
539 |
os=-mvs |
540 |
;; |
541 |
ncr3000) |
542 |
basic_machine=i486-ncr |
543 |
os=-sysv4 |
544 |
;; |
545 |
netbsd386) |
546 |
basic_machine=i386-unknown |
547 |
os=-netbsd |
548 |
;; |
549 |
netwinder) |
550 |
basic_machine=armv4l-rebel |
551 |
os=-linux |
552 |
;; |
553 |
news | news700 | news800 | news900) |
554 |
basic_machine=m68k-sony |
555 |
os=-newsos |
556 |
;; |
557 |
news1000) |
558 |
basic_machine=m68030-sony |
559 |
os=-newsos |
560 |
;; |
561 |
news-3600 | risc-news) |
562 |
basic_machine=mips-sony |
563 |
os=-newsos |
564 |
;; |
565 |
necv70) |
566 |
basic_machine=v70-nec |
567 |
os=-sysv |
568 |
;; |
569 |
next | m*-next ) |
570 |
basic_machine=m68k-next |
571 |
case $os in |
572 |
-nextstep* ) |
573 |
;; |
574 |
-ns2*) |
575 |
os=-nextstep2 |
576 |
;; |
577 |
*) |
578 |
os=-nextstep3 |
579 |
;; |
580 |
esac |
581 |
;; |
582 |
nh3000) |
583 |
basic_machine=m68k-harris |
584 |
os=-cxux |
585 |
;; |
586 |
nh[45]000) |
587 |
basic_machine=m88k-harris |
588 |
os=-cxux |
589 |
;; |
590 |
nindy960) |
591 |
basic_machine=i960-intel |
592 |
os=-nindy |
593 |
;; |
594 |
mon960) |
595 |
basic_machine=i960-intel |
596 |
os=-mon960 |
597 |
;; |
598 |
np1) |
599 |
basic_machine=np1-gould |
600 |
;; |
601 |
nsr-tandem) |
602 |
basic_machine=nsr-tandem |
603 |
;; |
604 |
op50n-* | op60c-*) |
605 |
basic_machine=hppa1.1-oki |
606 |
os=-proelf |
607 |
;; |
608 |
OSE68000 | ose68000) |
609 |
basic_machine=m68000-ericsson |
610 |
os=-ose |
611 |
;; |
612 |
os68k) |
613 |
basic_machine=m68k-none |
614 |
os=-os68k |
615 |
;; |
616 |
pa-hitachi) |
617 |
basic_machine=hppa1.1-hitachi |
618 |
os=-hiuxwe2 |
619 |
;; |
620 |
paragon) |
621 |
basic_machine=i860-intel |
622 |
os=-osf |
623 |
;; |
624 |
pbd) |
625 |
basic_machine=sparc-tti |
626 |
;; |
627 |
pbb) |
628 |
basic_machine=m68k-tti |
629 |
;; |
630 |
pc532 | pc532-*) |
631 |
basic_machine=ns32k-pc532 |
632 |
;; |
633 |
pentium | p5 | k5 | k6 | nexen) |
634 |
basic_machine=i586-pc |
635 |
;; |
636 |
pentiumpro | p6 | 6x86) |
637 |
basic_machine=i686-pc |
638 |
;; |
639 |
pentiumii | pentium2) |
640 |
basic_machine=i786-pc |
641 |
;; |
642 |
pentium-* | p5-* | k5-* | k6-* | nexen-*) |
643 |
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` |
644 |
;; |
645 |
pentiumpro-* | p6-* | 6x86-*) |
646 |
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` |
647 |
;; |
648 |
pentiumii-* | pentium2-*) |
649 |
basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` |
650 |
;; |
651 |
pn) |
652 |
basic_machine=pn-gould |
653 |
;; |
654 |
power) basic_machine=rs6000-ibm |
655 |
;; |
656 |
ppc) basic_machine=powerpc-unknown |
657 |
;; |
658 |
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` |
659 |
;; |
660 |
ppcle | powerpclittle | ppc-le | powerpc-little) |
661 |
basic_machine=powerpcle-unknown |
662 |
;; |
663 |
ppcle-* | powerpclittle-*) |
664 |
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` |
665 |
;; |
666 |
ps2) |
667 |
basic_machine=i386-ibm |
668 |
;; |
669 |
rom68k) |
670 |
basic_machine=m68k-rom68k |
671 |
os=-coff |
672 |
;; |
673 |
rm[46]00) |
674 |
basic_machine=mips-siemens |
675 |
;; |
676 |
rtpc | rtpc-*) |
677 |
basic_machine=romp-ibm |
678 |
;; |
679 |
sa29200) |
680 |
basic_machine=a29k-amd |
681 |
os=-udi |
682 |
;; |
683 |
sequent) |
684 |
basic_machine=i386-sequent |
685 |
;; |
686 |
sh) |
687 |
basic_machine=sh-hitachi |
688 |
os=-hms |
689 |
;; |
690 |
sparclite-wrs) |
691 |
basic_machine=sparclite-wrs |
692 |
os=-vxworks |
693 |
;; |
694 |
sps7) |
695 |
basic_machine=m68k-bull |
696 |
os=-sysv2 |
697 |
;; |
698 |
spur) |
699 |
basic_machine=spur-unknown |
700 |
;; |
701 |
st2000) |
702 |
basic_machine=m68k-tandem |
703 |
;; |
704 |
stratus) |
705 |
basic_machine=i860-stratus |
706 |
os=-sysv4 |
707 |
;; |
708 |
sun2) |
709 |
basic_machine=m68000-sun |
710 |
;; |
711 |
sun2os3) |
712 |
basic_machine=m68000-sun |
713 |
os=-sunos3 |
714 |
;; |
715 |
sun2os4) |
716 |
basic_machine=m68000-sun |
717 |
os=-sunos4 |
718 |
;; |
719 |
sun3os3) |
720 |
basic_machine=m68k-sun |
721 |
os=-sunos3 |
722 |
;; |
723 |
sun3os4) |
724 |
basic_machine=m68k-sun |
725 |
os=-sunos4 |
726 |
;; |
727 |
sun4os3) |
728 |
basic_machine=sparc-sun |
729 |
os=-sunos3 |
730 |
;; |
731 |
sun4os4) |
732 |
basic_machine=sparc-sun |
733 |
os=-sunos4 |
734 |
;; |
735 |
sun4sol2) |
736 |
basic_machine=sparc-sun |
737 |
os=-solaris2 |
738 |
;; |
739 |
sun3 | sun3-*) |
740 |
basic_machine=m68k-sun |
741 |
;; |
742 |
sun4) |
743 |
basic_machine=sparc-sun |
744 |
;; |
745 |
sun386 | sun386i | roadrunner) |
746 |
basic_machine=i386-sun |
747 |
;; |
748 |
sv1) |
749 |
basic_machine=sv1-cray |
750 |
os=-unicos |
751 |
;; |
752 |
symmetry) |
753 |
basic_machine=i386-sequent |
754 |
os=-dynix |
755 |
;; |
756 |
t3e) |
757 |
basic_machine=t3e-cray |
758 |
os=-unicos |
759 |
;; |
760 |
tx39) |
761 |
basic_machine=mipstx39-unknown |
762 |
;; |
763 |
tx39el) |
764 |
basic_machine=mipstx39el-unknown |
765 |
;; |
766 |
tower | tower-32) |
767 |
basic_machine=m68k-ncr |
768 |
;; |
769 |
udi29k) |
770 |
basic_machine=a29k-amd |
771 |
os=-udi |
772 |
;; |
773 |
ultra3) |
774 |
basic_machine=a29k-nyu |
775 |
os=-sym1 |
776 |
;; |
777 |
v810 | necv810) |
778 |
basic_machine=v810-nec |
779 |
os=-none |
780 |
;; |
781 |
vaxv) |
782 |
basic_machine=vax-dec |
783 |
os=-sysv |
784 |
;; |
785 |
vms) |
786 |
basic_machine=vax-dec |
787 |
os=-vms |
788 |
;; |
789 |
vpp*|vx|vx-*) |
790 |
basic_machine=f301-fujitsu |
791 |
;; |
792 |
vxworks960) |
793 |
basic_machine=i960-wrs |
794 |
os=-vxworks |
795 |
;; |
796 |
vxworks68) |
797 |
basic_machine=m68k-wrs |
798 |
os=-vxworks |
799 |
;; |
800 |
vxworks29k) |
801 |
basic_machine=a29k-wrs |
802 |
os=-vxworks |
803 |
;; |
804 |
w65*) |
805 |
basic_machine=w65-wdc |
806 |
os=-none |
807 |
;; |
808 |
w89k-*) |
809 |
basic_machine=hppa1.1-winbond |
810 |
os=-proelf |
811 |
;; |
812 |
xmp) |
813 |
basic_machine=xmp-cray |
814 |
os=-unicos |
815 |
;; |
816 |
xps | xps100) |
817 |
basic_machine=xps100-honeywell |
818 |
;; |
819 |
z8k-*-coff) |
820 |
basic_machine=z8k-unknown |
821 |
os=-sim |
822 |
;; |
823 |
none) |
824 |
basic_machine=none-none |
825 |
os=-none |
826 |
;; |
827 |
|
828 |
# Here we handle the default manufacturer of certain CPU types. It is in |
829 |
# some cases the only manufacturer, in others, it is the most popular. |
830 |
w89k) |
831 |
basic_machine=hppa1.1-winbond |
832 |
;; |
833 |
op50n) |
834 |
basic_machine=hppa1.1-oki |
835 |
;; |
836 |
op60c) |
837 |
basic_machine=hppa1.1-oki |
838 |
;; |
839 |
mips) |
840 |
if [ x$os = x-linux-gnu ]; then |
841 |
basic_machine=mips-unknown |
842 |
else |
843 |
basic_machine=mips-mips |
844 |
fi |
845 |
;; |
846 |
romp) |
847 |
basic_machine=romp-ibm |
848 |
;; |
849 |
rs6000) |
850 |
basic_machine=rs6000-ibm |
851 |
;; |
852 |
vax) |
853 |
basic_machine=vax-dec |
854 |
;; |
855 |
pdp11) |
856 |
basic_machine=pdp11-dec |
857 |
;; |
858 |
we32k) |
859 |
basic_machine=we32k-att |
860 |
;; |
861 |
sparc | sparcv9) |
862 |
basic_machine=sparc-sun |
863 |
;; |
864 |
cydra) |
865 |
basic_machine=cydra-cydrome |
866 |
;; |
867 |
orion) |
868 |
basic_machine=orion-highlevel |
869 |
;; |
870 |
orion105) |
871 |
basic_machine=clipper-highlevel |
872 |
;; |
873 |
mac | mpw | mac-mpw) |
874 |
basic_machine=m68k-apple |
875 |
;; |
876 |
pmac | pmac-mpw) |
877 |
basic_machine=powerpc-apple |
878 |
;; |
879 |
c4x*) |
880 |
basic_machine=c4x-none |
881 |
os=-coff |
882 |
;; |
883 |
*) |
884 |
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 |
885 |
exit 1 |
886 |
;; |
887 |
esac |
888 |
|
889 |
# Here we canonicalize certain aliases for manufacturers. |
890 |
case $basic_machine in |
891 |
*-digital*) |
892 |
basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` |
893 |
;; |
894 |
*-commodore*) |
895 |
basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` |
896 |
;; |
897 |
*) |
898 |
;; |
899 |
esac |
900 |
|
901 |
# Decode manufacturer-specific aliases for certain operating systems. |
902 |
|
903 |
if [ x"$os" != x"" ] |
904 |
then |
905 |
case $os in |
906 |
# First match some system type aliases |
907 |
# that might get confused with valid system types. |
908 |
# -solaris* is a basic system type, with this one exception. |
909 |
-solaris1 | -solaris1.*) |
910 |
os=`echo $os | sed -e 's|solaris1|sunos4|'` |
911 |
;; |
912 |
-solaris) |
913 |
os=-solaris2 |
914 |
;; |
915 |
-svr4*) |
916 |
os=-sysv4 |
917 |
;; |
918 |
-unixware*) |
919 |
os=-sysv4.2uw |
920 |
;; |
921 |
-gnu/linux*) |
922 |
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` |
923 |
;; |
924 |
# First accept the basic system types. |
925 |
# The portable systems comes first. |
926 |
# Each alternative MUST END IN A *, to match a version number. |
927 |
# -sysv* is not here because it comes later, after sysvr4. |
928 |
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ |
929 |
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ |
930 |
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ |
931 |
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ |
932 |
| -aos* \ |
933 |
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ |
934 |
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ |
935 |
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ |
936 |
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ |
937 |
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ |
938 |
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ |
939 |
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ |
940 |
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ |
941 |
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ |
942 |
| -openstep* | -oskit*) |
943 |
# Remember, each alternative MUST END IN *, to match a version number. |
944 |
;; |
945 |
-qnx*) |
946 |
case $basic_machine in |
947 |
x86-* | i[34567]86-*) |
948 |
;; |
949 |
*) |
950 |
os=-nto$os |
951 |
;; |
952 |
esac |
953 |
;; |
954 |
-nto*) |
955 |
os=-nto-qnx |
956 |
;; |
957 |
-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ |
958 |
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \ |
959 |
| -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) |
960 |
;; |
961 |
-mac*) |
962 |
os=`echo $os | sed -e 's|mac|macos|'` |
963 |
;; |
964 |
-linux*) |
965 |
os=`echo $os | sed -e 's|linux|linux-gnu|'` |
966 |
;; |
967 |
-sunos5*) |
968 |
os=`echo $os | sed -e 's|sunos5|solaris2|'` |
969 |
;; |
970 |
-sunos6*) |
971 |
os=`echo $os | sed -e 's|sunos6|solaris3|'` |
972 |
;; |
973 |
-opened*) |
974 |
os=-openedition |
975 |
;; |
976 |
-wince*) |
977 |
os=-wince |
978 |
;; |
979 |
-osfrose*) |
980 |
os=-osfrose |
981 |
;; |
982 |
-osf*) |
983 |
os=-osf |
984 |
;; |
985 |
-utek*) |
986 |
os=-bsd |
987 |
;; |
988 |
-dynix*) |
989 |
os=-bsd |
990 |
;; |
991 |
-acis*) |
992 |
os=-aos |
993 |
;; |
994 |
-386bsd) |
995 |
os=-bsd |
996 |
;; |
997 |
-ctix* | -uts*) |
998 |
os=-sysv |
999 |
;; |
1000 |
-ns2 ) |
1001 |
os=-nextstep2 |
1002 |
;; |
1003 |
-nsk) |
1004 |
os=-nsk |
1005 |
;; |
1006 |
# Preserve the version number of sinix5. |
1007 |
-sinix5.*) |
1008 |
os=`echo $os | sed -e 's|sinix|sysv|'` |
1009 |
;; |
1010 |
-sinix*) |
1011 |
os=-sysv4 |
1012 |
;; |
1013 |
-triton*) |
1014 |
os=-sysv3 |
1015 |
;; |
1016 |
-oss*) |
1017 |
os=-sysv3 |
1018 |
;; |
1019 |
-svr4) |
1020 |
os=-sysv4 |
1021 |
;; |
1022 |
-svr3) |
1023 |
os=-sysv3 |
1024 |
;; |
1025 |
-sysvr4) |
1026 |
os=-sysv4 |
1027 |
;; |
1028 |
# This must come after -sysvr4. |
1029 |
-sysv*) |
1030 |
;; |
1031 |
-ose*) |
1032 |
os=-ose |
1033 |
;; |
1034 |
-es1800*) |
1035 |
os=-ose |
1036 |
;; |
1037 |
-xenix) |
1038 |
os=-xenix |
1039 |
;; |
1040 |
-*mint | -*MiNT) |
1041 |
os=-mint |
1042 |
;; |
1043 |
-none) |
1044 |
;; |
1045 |
*) |
1046 |
# Get rid of the `-' at the beginning of $os. |
1047 |
os=`echo $os | sed 's/[^-]*-//'` |
1048 |
echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 |
1049 |
exit 1 |
1050 |
;; |
1051 |
esac |
1052 |
else |
1053 |
|
1054 |
# Here we handle the default operating systems that come with various machines. |
1055 |
# The value should be what the vendor currently ships out the door with their |
1056 |
# machine or put another way, the most popular os provided with the machine. |
1057 |
|
1058 |
# Note that if you're going to try to match "-MANUFACTURER" here (say, |
1059 |
# "-sun"), then you have to tell the case statement up towards the top |
1060 |
# that MANUFACTURER isn't an operating system. Otherwise, code above |
1061 |
# will signal an error saying that MANUFACTURER isn't an operating |
1062 |
# system, and we'll never get to this point. |
1063 |
|
1064 |
case $basic_machine in |
1065 |
*-acorn) |
1066 |
os=-riscix1.2 |
1067 |
;; |
1068 |
arm*-rebel) |
1069 |
os=-linux |
1070 |
;; |
1071 |
arm*-semi) |
1072 |
os=-aout |
1073 |
;; |
1074 |
pdp11-*) |
1075 |
os=-none |
1076 |
;; |
1077 |
*-dec | vax-*) |
1078 |
os=-ultrix4.2 |
1079 |
;; |
1080 |
m68*-apollo) |
1081 |
os=-domain |
1082 |
;; |
1083 |
i386-sun) |
1084 |
os=-sunos4.0.2 |
1085 |
;; |
1086 |
m68000-sun) |
1087 |
os=-sunos3 |
1088 |
# This also exists in the configure program, but was not the |
1089 |
# default. |
1090 |
# os=-sunos4 |
1091 |
;; |
1092 |
m68*-cisco) |
1093 |
os=-aout |
1094 |
;; |
1095 |
mips*-cisco) |
1096 |
os=-elf |
1097 |
;; |
1098 |
mips*-*) |
1099 |
os=-elf |
1100 |
;; |
1101 |
*-tti) # must be before sparc entry or we get the wrong os. |
1102 |
os=-sysv3 |
1103 |
;; |
1104 |
sparc-* | *-sun) |
1105 |
os=-sunos4.1.1 |
1106 |
;; |
1107 |
*-be) |
1108 |
os=-beos |
1109 |
;; |
1110 |
*-ibm) |
1111 |
os=-aix |
1112 |
;; |
1113 |
*-wec) |
1114 |
os=-proelf |
1115 |
;; |
1116 |
*-winbond) |
1117 |
os=-proelf |
1118 |
;; |
1119 |
*-oki) |
1120 |
os=-proelf |
1121 |
;; |
1122 |
*-hp) |
1123 |
os=-hpux |
1124 |
;; |
1125 |
*-hitachi) |
1126 |
os=-hiux |
1127 |
;; |
1128 |
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) |
1129 |
os=-sysv |
1130 |
;; |
1131 |
*-cbm) |
1132 |
os=-amigaos |
1133 |
;; |
1134 |
*-dg) |
1135 |
os=-dgux |
1136 |
;; |
1137 |
*-dolphin) |
1138 |
os=-sysv3 |
1139 |
;; |
1140 |
m68k-ccur) |
1141 |
os=-rtu |
1142 |
;; |
1143 |
m88k-omron*) |
1144 |
os=-luna |
1145 |
;; |
1146 |
*-next ) |
1147 |
os=-nextstep |
1148 |
;; |
1149 |
*-sequent) |
1150 |
os=-ptx |
1151 |
;; |
1152 |
*-crds) |
1153 |
os=-unos |
1154 |
;; |
1155 |
*-ns) |
1156 |
os=-genix |
1157 |
;; |
1158 |
i370-*) |
1159 |
os=-mvs |
1160 |
;; |
1161 |
*-next) |
1162 |
os=-nextstep3 |
1163 |
;; |
1164 |
*-gould) |
1165 |
os=-sysv |
1166 |
;; |
1167 |
*-highlevel) |
1168 |
os=-bsd |
1169 |
;; |
1170 |
*-encore) |
1171 |
os=-bsd |
1172 |
;; |
1173 |
*-sgi) |
1174 |
os=-irix |
1175 |
;; |
1176 |
*-siemens) |
1177 |
os=-sysv4 |
1178 |
;; |
1179 |
*-masscomp) |
1180 |
os=-rtu |
1181 |
;; |
1182 |
f301-fujitsu) |
1183 |
os=-uxpv |
1184 |
;; |
1185 |
*-rom68k) |
1186 |
os=-coff |
1187 |
;; |
1188 |
*-*bug) |
1189 |
os=-coff |
1190 |
;; |
1191 |
*-apple) |
1192 |
os=-macos |
1193 |
;; |
1194 |
*-atari*) |
1195 |
os=-mint |
1196 |
;; |
1197 |
*) |
1198 |
os=-none |
1199 |
;; |
1200 |
esac |
1201 |
fi |
1202 |
|
1203 |
# Here we handle the case where we know the os, and the CPU type, but not the |
1204 |
# manufacturer. We pick the logical manufacturer. |
1205 |
vendor=unknown |
1206 |
case $basic_machine in |
1207 |
*-unknown) |
1208 |
case $os in |
1209 |
-riscix*) |
1210 |
vendor=acorn |
1211 |
;; |
1212 |
-sunos*) |
1213 |
vendor=sun |
1214 |
;; |
1215 |
-aix*) |
1216 |
vendor=ibm |
1217 |
;; |
1218 |
-beos*) |
1219 |
vendor=be |
1220 |
;; |
1221 |
-hpux*) |
1222 |
vendor=hp |
1223 |
;; |
1224 |
-mpeix*) |
1225 |
vendor=hp |
1226 |
;; |
1227 |
-hiux*) |
1228 |
vendor=hitachi |
1229 |
;; |
1230 |
-unos*) |
1231 |
vendor=crds |
1232 |
;; |
1233 |
-dgux*) |
1234 |
vendor=dg |
1235 |
;; |
1236 |
-luna*) |
1237 |
vendor=omron |
1238 |
;; |
1239 |
-genix*) |
1240 |
vendor=ns |
1241 |
;; |
1242 |
-mvs* | -opened*) |
1243 |
vendor=ibm |
1244 |
;; |
1245 |
-ptx*) |
1246 |
vendor=sequent |
1247 |
;; |
1248 |
-vxsim* | -vxworks*) |
1249 |
vendor=wrs |
1250 |
;; |
1251 |
-aux*) |
1252 |
vendor=apple |
1253 |
;; |
1254 |
-hms*) |
1255 |
vendor=hitachi |
1256 |
;; |
1257 |
-mpw* | -macos*) |
1258 |
vendor=apple |
1259 |
;; |
1260 |
-*mint | -*MiNT) |
1261 |
vendor=atari |
1262 |
;; |
1263 |
esac |
1264 |
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` |
1265 |
;; |
1266 |
esac |
1267 |
|
1268 |
echo $basic_machine$os |