ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/thttpd/config.sub
Revision: 1.1
Committed: Mon Jun 18 21:11:56 2001 UTC (22 years, 11 months ago) by root
Branch: MAIN
CVS Tags: mp_j, dp_j, cp_j, HEAD
Branch point for: connpatch, dirpatch, mmapppatch
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 root 1.1 #! /bin/sh
2     # Configuration validation subroutine script, version 1.1.
3     # Copyright (C) 1991, 92, 93, 94, 95, 1996 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 | m68k | m68000 | m88k | ns32k | arm \
153     | arme[lb] | pyramid \
154     | tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
155     | alpha | we32k | ns16k | clipper | i370 | sh \
156     | powerpc | powerpcle | 1750a | dsp16xx | mips64 | mipsel \
157     | pdp11 | mips64el | mips64orion | mips64orionel \
158     | sparc | sparclet | sparclite | sparc64)
159     basic_machine=$basic_machine-unknown
160     ;;
161     # We use `pc' rather than `unknown'
162     # because (1) that's what they normally are, and
163     # (2) the word "unknown" tends to confuse beginning users.
164     i[3456]86)
165     basic_machine=$basic_machine-pc
166     ;;
167     # Object if more than one company name word.
168     *-*-*)
169     echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
170     exit 1
171     ;;
172     # Recognize the basic CPU types with company name.
173     vax-* | tahoe-* | i[3456]86-* | i860-* | m68k-* | m68000-* | m88k-* \
174     | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
175     | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* | power-* \
176     | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
177     | hppa-* | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
178     | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
179     | pdp11-* | sh-* | powerpc-* | powerpcle-* | sparc64-* | mips64-* | mipsel-* \
180     | mips64el-* | mips64orion-* | mips64orionel-* | f301-*)
181     ;;
182     # Recognize the various machine names and aliases which stand
183     # for a CPU type and a company and sometimes even an OS.
184     3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
185     basic_machine=m68000-att
186     ;;
187     3b*)
188     basic_machine=we32k-att
189     ;;
190     alliant | fx80)
191     basic_machine=fx80-alliant
192     ;;
193     altos | altos3068)
194     basic_machine=m68k-altos
195     ;;
196     am29k)
197     basic_machine=a29k-none
198     os=-bsd
199     ;;
200     amdahl)
201     basic_machine=580-amdahl
202     os=-sysv
203     ;;
204     amiga | amiga-*)
205     basic_machine=m68k-cbm
206     ;;
207     amigados)
208     basic_machine=m68k-cbm
209     os=-amigados
210     ;;
211     amigaunix | amix)
212     basic_machine=m68k-cbm
213     os=-sysv4
214     ;;
215     apollo68)
216     basic_machine=m68k-apollo
217     os=-sysv
218     ;;
219     aux)
220     basic_machine=m68k-apple
221     os=-aux
222     ;;
223     balance)
224     basic_machine=ns32k-sequent
225     os=-dynix
226     ;;
227     convex-c1)
228     basic_machine=c1-convex
229     os=-bsd
230     ;;
231     convex-c2)
232     basic_machine=c2-convex
233     os=-bsd
234     ;;
235     convex-c32)
236     basic_machine=c32-convex
237     os=-bsd
238     ;;
239     convex-c34)
240     basic_machine=c34-convex
241     os=-bsd
242     ;;
243     convex-c38)
244     basic_machine=c38-convex
245     os=-bsd
246     ;;
247     cray | ymp)
248     basic_machine=ymp-cray
249     os=-unicos
250     ;;
251     cray2)
252     basic_machine=cray2-cray
253     os=-unicos
254     ;;
255     [ctj]90-cray)
256     basic_machine=c90-cray
257     os=-unicos
258     ;;
259     crds | unos)
260     basic_machine=m68k-crds
261     ;;
262     da30 | da30-*)
263     basic_machine=m68k-da30
264     ;;
265     decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
266     basic_machine=mips-dec
267     ;;
268     delta | 3300 | motorola-3300 | motorola-delta \
269     | 3300-motorola | delta-motorola)
270     basic_machine=m68k-motorola
271     ;;
272     delta88)
273     basic_machine=m88k-motorola
274     os=-sysv3
275     ;;
276     dpx20 | dpx20-*)
277     basic_machine=rs6000-bull
278     os=-bosx
279     ;;
280     dpx2* | dpx2*-bull)
281     basic_machine=m68k-bull
282     os=-sysv3
283     ;;
284     ebmon29k)
285     basic_machine=a29k-amd
286     os=-ebmon
287     ;;
288     elxsi)
289     basic_machine=elxsi-elxsi
290     os=-bsd
291     ;;
292     encore | umax | mmax)
293     basic_machine=ns32k-encore
294     ;;
295     fx2800)
296     basic_machine=i860-alliant
297     ;;
298     genix)
299     basic_machine=ns32k-ns
300     ;;
301     gmicro)
302     basic_machine=tron-gmicro
303     os=-sysv
304     ;;
305     h3050r* | hiux*)
306     basic_machine=hppa1.1-hitachi
307     os=-hiuxwe2
308     ;;
309     h8300hms)
310     basic_machine=h8300-hitachi
311     os=-hms
312     ;;
313     harris)
314     basic_machine=m88k-harris
315     os=-sysv3
316     ;;
317     hp300-*)
318     basic_machine=m68k-hp
319     ;;
320     hp300bsd)
321     basic_machine=m68k-hp
322     os=-bsd
323     ;;
324     hp300hpux)
325     basic_machine=m68k-hp
326     os=-hpux
327     ;;
328     hp9k2[0-9][0-9] | hp9k31[0-9])
329     basic_machine=m68000-hp
330     ;;
331     hp9k3[2-9][0-9])
332     basic_machine=m68k-hp
333     ;;
334     hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
335     basic_machine=hppa1.1-hp
336     ;;
337     hp9k8[0-9][0-9] | hp8[0-9][0-9])
338     basic_machine=hppa1.0-hp
339     ;;
340     hppa-next)
341     os=-nextstep3
342     ;;
343     i370-ibm* | ibm*)
344     basic_machine=i370-ibm
345     os=-mvs
346     ;;
347     # I'm not sure what "Sysv32" means. Should this be sysv3.2?
348     i[3456]86v32)
349     basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
350     os=-sysv32
351     ;;
352     i[3456]86v4*)
353     basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
354     os=-sysv4
355     ;;
356     i[3456]86v)
357     basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
358     os=-sysv
359     ;;
360     i[3456]86sol2)
361     basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
362     os=-solaris2
363     ;;
364     iris | iris4d)
365     basic_machine=mips-sgi
366     case $os in
367     -irix*)
368     ;;
369     *)
370     os=-irix4
371     ;;
372     esac
373     ;;
374     isi68 | isi)
375     basic_machine=m68k-isi
376     os=-sysv
377     ;;
378     m88k-omron*)
379     basic_machine=m88k-omron
380     ;;
381     magnum | m3230)
382     basic_machine=mips-mips
383     os=-sysv
384     ;;
385     merlin)
386     basic_machine=ns32k-utek
387     os=-sysv
388     ;;
389     miniframe)
390     basic_machine=m68000-convergent
391     ;;
392     mips3*-*)
393     basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
394     ;;
395     mips3*)
396     basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
397     ;;
398     ncr3000)
399     basic_machine=i486-ncr
400     os=-sysv4
401     ;;
402     news | news700 | news800 | news900)
403     basic_machine=m68k-sony
404     os=-newsos
405     ;;
406     news1000)
407     basic_machine=m68030-sony
408     os=-newsos
409     ;;
410     news-3600 | risc-news)
411     basic_machine=mips-sony
412     os=-newsos
413     ;;
414     next | m*-next )
415     basic_machine=m68k-next
416     case $os in
417     -nextstep* )
418     ;;
419     -ns2*)
420     os=-nextstep2
421     ;;
422     *)
423     os=-nextstep3
424     ;;
425     esac
426     ;;
427     nh3000)
428     basic_machine=m68k-harris
429     os=-cxux
430     ;;
431     nh[45]000)
432     basic_machine=m88k-harris
433     os=-cxux
434     ;;
435     nindy960)
436     basic_machine=i960-intel
437     os=-nindy
438     ;;
439     np1)
440     basic_machine=np1-gould
441     ;;
442     pa-hitachi)
443     basic_machine=hppa1.1-hitachi
444     os=-hiuxwe2
445     ;;
446     paragon)
447     basic_machine=i860-intel
448     os=-osf
449     ;;
450     pbd)
451     basic_machine=sparc-tti
452     ;;
453     pbb)
454     basic_machine=m68k-tti
455     ;;
456     pc532 | pc532-*)
457     basic_machine=ns32k-pc532
458     ;;
459     pentium | p5)
460     basic_machine=i586-intel
461     ;;
462     pentiumpro | p6)
463     basic_machine=i686-intel
464     ;;
465     pentium-* | p5-*)
466     basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
467     ;;
468     pentiumpro-* | p6-*)
469     basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
470     ;;
471     k5)
472     # We don't have specific support for AMD's K5 yet, so just call it a Pentium
473     basic_machine=i586-amd
474     ;;
475     nexen)
476     # We don't have specific support for Nexgen yet, so just call it a Pentium
477     basic_machine=i586-nexgen
478     ;;
479     pn)
480     basic_machine=pn-gould
481     ;;
482     power) basic_machine=rs6000-ibm
483     ;;
484     ppc) basic_machine=powerpc-unknown
485     ;;
486     ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
487     ;;
488     ppcle | powerpclittle | ppc-le | powerpc-little)
489     basic_machine=powerpcle-unknown
490     ;;
491     ppcle-* | powerpclittle-*)
492     basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
493     ;;
494     ps2)
495     basic_machine=i386-ibm
496     ;;
497     rm[46]00)
498     basic_machine=mips-siemens
499     ;;
500     rtpc | rtpc-*)
501     basic_machine=romp-ibm
502     ;;
503     sequent)
504     basic_machine=i386-sequent
505     ;;
506     sh)
507     basic_machine=sh-hitachi
508     os=-hms
509     ;;
510     sps7)
511     basic_machine=m68k-bull
512     os=-sysv2
513     ;;
514     spur)
515     basic_machine=spur-unknown
516     ;;
517     sun2)
518     basic_machine=m68000-sun
519     ;;
520     sun2os3)
521     basic_machine=m68000-sun
522     os=-sunos3
523     ;;
524     sun2os4)
525     basic_machine=m68000-sun
526     os=-sunos4
527     ;;
528     sun3os3)
529     basic_machine=m68k-sun
530     os=-sunos3
531     ;;
532     sun3os4)
533     basic_machine=m68k-sun
534     os=-sunos4
535     ;;
536     sun4os3)
537     basic_machine=sparc-sun
538     os=-sunos3
539     ;;
540     sun4os4)
541     basic_machine=sparc-sun
542     os=-sunos4
543     ;;
544     sun4sol2)
545     basic_machine=sparc-sun
546     os=-solaris2
547     ;;
548     sun3 | sun3-*)
549     basic_machine=m68k-sun
550     ;;
551     sun4)
552     basic_machine=sparc-sun
553     ;;
554     sun386 | sun386i | roadrunner)
555     basic_machine=i386-sun
556     ;;
557     symmetry)
558     basic_machine=i386-sequent
559     os=-dynix
560     ;;
561     tower | tower-32)
562     basic_machine=m68k-ncr
563     ;;
564     udi29k)
565     basic_machine=a29k-amd
566     os=-udi
567     ;;
568     ultra3)
569     basic_machine=a29k-nyu
570     os=-sym1
571     ;;
572     vaxv)
573     basic_machine=vax-dec
574     os=-sysv
575     ;;
576     vms)
577     basic_machine=vax-dec
578     os=-vms
579     ;;
580     vpp*|vx|vx-*)
581     basic_machine=f301-fujitsu
582     ;;
583     vxworks960)
584     basic_machine=i960-wrs
585     os=-vxworks
586     ;;
587     vxworks68)
588     basic_machine=m68k-wrs
589     os=-vxworks
590     ;;
591     vxworks29k)
592     basic_machine=a29k-wrs
593     os=-vxworks
594     ;;
595     xmp)
596     basic_machine=xmp-cray
597     os=-unicos
598     ;;
599     xps | xps100)
600     basic_machine=xps100-honeywell
601     ;;
602     none)
603     basic_machine=none-none
604     os=-none
605     ;;
606    
607     # Here we handle the default manufacturer of certain CPU types. It is in
608     # some cases the only manufacturer, in others, it is the most popular.
609     mips)
610     basic_machine=mips-mips
611     ;;
612     romp)
613     basic_machine=romp-ibm
614     ;;
615     rs6000)
616     basic_machine=rs6000-ibm
617     ;;
618     vax)
619     basic_machine=vax-dec
620     ;;
621     pdp11)
622     basic_machine=pdp11-dec
623     ;;
624     we32k)
625     basic_machine=we32k-att
626     ;;
627     sparc)
628     basic_machine=sparc-sun
629     ;;
630     cydra)
631     basic_machine=cydra-cydrome
632     ;;
633     orion)
634     basic_machine=orion-highlevel
635     ;;
636     orion105)
637     basic_machine=clipper-highlevel
638     ;;
639     *)
640     echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
641     exit 1
642     ;;
643     esac
644    
645     # Here we canonicalize certain aliases for manufacturers.
646     case $basic_machine in
647     *-digital*)
648     basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
649     ;;
650     *-commodore*)
651     basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
652     ;;
653     *)
654     ;;
655     esac
656    
657     # Decode manufacturer-specific aliases for certain operating systems.
658    
659     if [ x"$os" != x"" ]
660     then
661     case $os in
662     # First match some system type aliases
663     # that might get confused with valid system types.
664     # -solaris* is a basic system type, with this one exception.
665     -solaris1 | -solaris1.*)
666     os=`echo $os | sed -e 's|solaris1|sunos4|'`
667     ;;
668     -solaris)
669     os=-solaris2
670     ;;
671     -unixware* | svr4*)
672     os=-sysv4
673     ;;
674     -gnu/linux*)
675     os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
676     ;;
677     # First accept the basic system types.
678     # The portable systems comes first.
679     # Each alternative MUST END IN A *, to match a version number.
680     # -sysv* is not here because it comes later, after sysvr4.
681     -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
682     | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
683     | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
684     | -amigados* | -msdos* | -newsos* | -unicos* | -aof* | -aos* \
685     | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
686     | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
687     | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
688     | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
689     | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
690     | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
691     | -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
692     | -linux-gnu* | -uxpv*)
693     # Remember, each alternative MUST END IN *, to match a version number.
694     ;;
695     -linux*)
696     os=`echo $os | sed -e 's|linux|linux-gnu|'`
697     ;;
698     -sunos5*)
699     os=`echo $os | sed -e 's|sunos5|solaris2|'`
700     ;;
701     -sunos6*)
702     os=`echo $os | sed -e 's|sunos6|solaris3|'`
703     ;;
704     -osfrose*)
705     os=-osfrose
706     ;;
707     -osf*)
708     os=-osf
709     ;;
710     -utek*)
711     os=-bsd
712     ;;
713     -dynix*)
714     os=-bsd
715     ;;
716     -acis*)
717     os=-aos
718     ;;
719     -ctix* | -uts*)
720     os=-sysv
721     ;;
722     -ns2 )
723     os=-nextstep2
724     ;;
725     # Preserve the version number of sinix5.
726     -sinix5.*)
727     os=`echo $os | sed -e 's|sinix|sysv|'`
728     ;;
729     -sinix*)
730     os=-sysv4
731     ;;
732     -triton*)
733     os=-sysv3
734     ;;
735     -oss*)
736     os=-sysv3
737     ;;
738     -svr4)
739     os=-sysv4
740     ;;
741     -svr3)
742     os=-sysv3
743     ;;
744     -sysvr4)
745     os=-sysv4
746     ;;
747     # This must come after -sysvr4.
748     -sysv*)
749     ;;
750     -xenix)
751     os=-xenix
752     ;;
753     -none)
754     ;;
755     *)
756     # Get rid of the `-' at the beginning of $os.
757     os=`echo $os | sed 's/[^-]*-//'`
758     echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
759     exit 1
760     ;;
761     esac
762     else
763    
764     # Here we handle the default operating systems that come with various machines.
765     # The value should be what the vendor currently ships out the door with their
766     # machine or put another way, the most popular os provided with the machine.
767    
768     # Note that if you're going to try to match "-MANUFACTURER" here (say,
769     # "-sun"), then you have to tell the case statement up towards the top
770     # that MANUFACTURER isn't an operating system. Otherwise, code above
771     # will signal an error saying that MANUFACTURER isn't an operating
772     # system, and we'll never get to this point.
773    
774     case $basic_machine in
775     *-acorn)
776     os=-riscix1.2
777     ;;
778     arm*-semi)
779     os=-aout
780     ;;
781     pdp11-*)
782     os=-none
783     ;;
784     *-dec | vax-*)
785     os=-ultrix4.2
786     ;;
787     m68*-apollo)
788     os=-domain
789     ;;
790     i386-sun)
791     os=-sunos4.0.2
792     ;;
793     m68000-sun)
794     os=-sunos3
795     # This also exists in the configure program, but was not the
796     # default.
797     # os=-sunos4
798     ;;
799     *-tti) # must be before sparc entry or we get the wrong os.
800     os=-sysv3
801     ;;
802     sparc-* | *-sun)
803     os=-sunos4.1.1
804     ;;
805     *-ibm)
806     os=-aix
807     ;;
808     *-hp)
809     os=-hpux
810     ;;
811     *-hitachi)
812     os=-hiux
813     ;;
814     i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
815     os=-sysv
816     ;;
817     *-cbm)
818     os=-amigados
819     ;;
820     *-dg)
821     os=-dgux
822     ;;
823     *-dolphin)
824     os=-sysv3
825     ;;
826     m68k-ccur)
827     os=-rtu
828     ;;
829     m88k-omron*)
830     os=-luna
831     ;;
832     *-next )
833     os=-nextstep
834     ;;
835     *-sequent)
836     os=-ptx
837     ;;
838     *-crds)
839     os=-unos
840     ;;
841     *-ns)
842     os=-genix
843     ;;
844     i370-*)
845     os=-mvs
846     ;;
847     *-next)
848     os=-nextstep3
849     ;;
850     *-gould)
851     os=-sysv
852     ;;
853     *-highlevel)
854     os=-bsd
855     ;;
856     *-encore)
857     os=-bsd
858     ;;
859     *-sgi)
860     os=-irix
861     ;;
862     *-siemens)
863     os=-sysv4
864     ;;
865     *-masscomp)
866     os=-rtu
867     ;;
868     f301-fujitsu)
869     os=-uxpv
870     ;;
871     *)
872     os=-none
873     ;;
874     esac
875     fi
876    
877     # Here we handle the case where we know the os, and the CPU type, but not the
878     # manufacturer. We pick the logical manufacturer.
879     vendor=unknown
880     case $basic_machine in
881     *-unknown)
882     case $os in
883     -riscix*)
884     vendor=acorn
885     ;;
886     -sunos*)
887     vendor=sun
888     ;;
889     -aix*)
890     vendor=ibm
891     ;;
892     -hpux*)
893     vendor=hp
894     ;;
895     -hiux*)
896     vendor=hitachi
897     ;;
898     -unos*)
899     vendor=crds
900     ;;
901     -dgux*)
902     vendor=dg
903     ;;
904     -luna*)
905     vendor=omron
906     ;;
907     -genix*)
908     vendor=ns
909     ;;
910     -mvs*)
911     vendor=ibm
912     ;;
913     -ptx*)
914     vendor=sequent
915     ;;
916     -vxsim* | -vxworks*)
917     vendor=wrs
918     ;;
919     -aux*)
920     vendor=apple
921     ;;
922     esac
923     basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
924     ;;
925     esac
926    
927     echo $basic_machine$os