ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/BasiliskII/src/Unix/config.sub
Revision: 1.2
Committed: 2001-06-19T08:29:07Z (23 years, 4 months ago) by gbeauche
Branch: MAIN
Changes since 1.1: +236 -76 lines
Log Message:
- config.guess: import CVS version 1.195
- config.sub: import CVS version 1.212
As a side effect, it now recognizes MacOS X

File Contents

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