Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

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