config.sub revision 1.1.1.2 1 1.1 christos #! /bin/sh
2 1.1 christos # Configuration validation subroutine script.
3 1.1 christos # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4 1.1.1.2 christos # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
5 1.1.1.2 christos # 2011, 2012 Free Software Foundation, Inc.
6 1.1 christos
7 1.1.1.2 christos timestamp='2012-04-18'
8 1.1 christos
9 1.1 christos # This file is (in principle) common to ALL GNU software.
10 1.1 christos # The presence of a machine in this file suggests that SOME GNU software
11 1.1 christos # can handle that machine. It does not imply ALL GNU software can.
12 1.1 christos #
13 1.1 christos # This file is free software; you can redistribute it and/or modify
14 1.1 christos # it under the terms of the GNU General Public License as published by
15 1.1 christos # the Free Software Foundation; either version 2 of the License, or
16 1.1 christos # (at your option) any later version.
17 1.1 christos #
18 1.1 christos # This program is distributed in the hope that it will be useful,
19 1.1 christos # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 1.1 christos # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 1.1 christos # GNU General Public License for more details.
22 1.1 christos #
23 1.1 christos # You should have received a copy of the GNU General Public License
24 1.1.1.2 christos # along with this program; if not, see <http://www.gnu.org/licenses/>.
25 1.1 christos #
26 1.1 christos # As a special exception to the GNU General Public License, if you
27 1.1 christos # distribute this file as part of a program that contains a
28 1.1 christos # configuration script generated by Autoconf, you may include it under
29 1.1 christos # the same distribution terms that you use for the rest of that program.
30 1.1 christos
31 1.1 christos
32 1.1 christos # Please send patches to <config-patches (at] gnu.org>. Submit a context
33 1.1 christos # diff and a properly formatted GNU ChangeLog entry.
34 1.1 christos #
35 1.1 christos # Configuration subroutine to validate and canonicalize a configuration type.
36 1.1 christos # Supply the specified configuration type as an argument.
37 1.1 christos # If it is invalid, we print an error message on stderr and exit with code 1.
38 1.1 christos # Otherwise, we print the canonical config type on stdout and succeed.
39 1.1 christos
40 1.1 christos # You can get the latest version of this script from:
41 1.1 christos # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
42 1.1 christos
43 1.1 christos # This file is supposed to be the same for all GNU packages
44 1.1 christos # and recognize all the CPU types, system types and aliases
45 1.1 christos # that are meaningful with *any* GNU software.
46 1.1 christos # Each package is responsible for reporting which valid configurations
47 1.1 christos # it does not support. The user should be able to distinguish
48 1.1 christos # a failure to support a valid configuration from a meaningless
49 1.1 christos # configuration.
50 1.1 christos
51 1.1 christos # The goal of this file is to map all the various variations of a given
52 1.1 christos # machine specification into a single specification in the form:
53 1.1 christos # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
54 1.1 christos # or in some cases, the newer four-part form:
55 1.1 christos # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
56 1.1 christos # It is wrong to echo any other type of specification.
57 1.1 christos
58 1.1 christos me=`echo "$0" | sed -e 's,.*/,,'`
59 1.1 christos
60 1.1 christos usage="\
61 1.1 christos Usage: $0 [OPTION] CPU-MFR-OPSYS
62 1.1 christos $0 [OPTION] ALIAS
63 1.1 christos
64 1.1 christos Canonicalize a configuration name.
65 1.1 christos
66 1.1 christos Operation modes:
67 1.1 christos -h, --help print this help, then exit
68 1.1 christos -t, --time-stamp print date of last modification, then exit
69 1.1 christos -v, --version print version number, then exit
70 1.1 christos
71 1.1 christos Report bugs and patches to <config-patches (at] gnu.org>."
72 1.1 christos
73 1.1 christos version="\
74 1.1 christos GNU config.sub ($timestamp)
75 1.1 christos
76 1.1 christos Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
77 1.1.1.2 christos 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
78 1.1.1.2 christos Free Software Foundation, Inc.
79 1.1 christos
80 1.1 christos This is free software; see the source for copying conditions. There is NO
81 1.1 christos warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
82 1.1 christos
83 1.1 christos help="
84 1.1 christos Try \`$me --help' for more information."
85 1.1 christos
86 1.1 christos # Parse command line
87 1.1 christos while test $# -gt 0 ; do
88 1.1 christos case $1 in
89 1.1 christos --time-stamp | --time* | -t )
90 1.1 christos echo "$timestamp" ; exit ;;
91 1.1 christos --version | -v )
92 1.1 christos echo "$version" ; exit ;;
93 1.1 christos --help | --h* | -h )
94 1.1 christos echo "$usage"; exit ;;
95 1.1 christos -- ) # Stop option processing
96 1.1 christos shift; break ;;
97 1.1 christos - ) # Use stdin as input.
98 1.1 christos break ;;
99 1.1 christos -* )
100 1.1 christos echo "$me: invalid option $1$help"
101 1.1 christos exit 1 ;;
102 1.1 christos
103 1.1 christos *local*)
104 1.1 christos # First pass through any local machine types.
105 1.1 christos echo $1
106 1.1 christos exit ;;
107 1.1 christos
108 1.1 christos * )
109 1.1 christos break ;;
110 1.1 christos esac
111 1.1 christos done
112 1.1 christos
113 1.1 christos case $# in
114 1.1 christos 0) echo "$me: missing argument$help" >&2
115 1.1 christos exit 1;;
116 1.1 christos 1) ;;
117 1.1 christos *) echo "$me: too many arguments$help" >&2
118 1.1 christos exit 1;;
119 1.1 christos esac
120 1.1 christos
121 1.1 christos # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
122 1.1 christos # Here we must recognize all the valid KERNEL-OS combinations.
123 1.1 christos maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
124 1.1 christos case $maybe_os in
125 1.1.1.2 christos nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
126 1.1.1.2 christos linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
127 1.1.1.2 christos knetbsd*-gnu* | netbsd*-gnu* | \
128 1.1 christos kopensolaris*-gnu* | \
129 1.1 christos storm-chaos* | os2-emx* | rtmk-nova*)
130 1.1 christos os=-$maybe_os
131 1.1 christos basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
132 1.1 christos ;;
133 1.1.1.2 christos android-linux)
134 1.1.1.2 christos os=-linux-android
135 1.1.1.2 christos basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
136 1.1.1.2 christos ;;
137 1.1 christos *)
138 1.1 christos basic_machine=`echo $1 | sed 's/-[^-]*$//'`
139 1.1 christos if [ $basic_machine != $1 ]
140 1.1 christos then os=`echo $1 | sed 's/.*-/-/'`
141 1.1 christos else os=; fi
142 1.1 christos ;;
143 1.1 christos esac
144 1.1 christos
145 1.1 christos ### Let's recognize common machines as not being operating systems so
146 1.1 christos ### that things like config.sub decstation-3100 work. We also
147 1.1 christos ### recognize some manufacturers as not being operating systems, so we
148 1.1 christos ### can provide default operating systems below.
149 1.1 christos case $os in
150 1.1 christos -sun*os*)
151 1.1 christos # Prevent following clause from handling this invalid input.
152 1.1 christos ;;
153 1.1 christos -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
154 1.1 christos -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
155 1.1 christos -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
156 1.1 christos -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
157 1.1 christos -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
158 1.1 christos -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
159 1.1 christos -apple | -axis | -knuth | -cray | -microblaze)
160 1.1 christos os=
161 1.1 christos basic_machine=$1
162 1.1 christos ;;
163 1.1.1.2 christos -bluegene*)
164 1.1.1.2 christos os=-cnk
165 1.1 christos ;;
166 1.1 christos -sim | -cisco | -oki | -wec | -winbond)
167 1.1 christos os=
168 1.1 christos basic_machine=$1
169 1.1 christos ;;
170 1.1 christos -scout)
171 1.1 christos ;;
172 1.1 christos -wrs)
173 1.1 christos os=-vxworks
174 1.1 christos basic_machine=$1
175 1.1 christos ;;
176 1.1 christos -chorusos*)
177 1.1 christos os=-chorusos
178 1.1 christos basic_machine=$1
179 1.1 christos ;;
180 1.1.1.2 christos -chorusrdb)
181 1.1.1.2 christos os=-chorusrdb
182 1.1 christos basic_machine=$1
183 1.1.1.2 christos ;;
184 1.1 christos -hiux*)
185 1.1 christos os=-hiuxwe2
186 1.1 christos ;;
187 1.1 christos -sco6)
188 1.1 christos os=-sco5v6
189 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
190 1.1 christos ;;
191 1.1 christos -sco5)
192 1.1 christos os=-sco3.2v5
193 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194 1.1 christos ;;
195 1.1 christos -sco4)
196 1.1 christos os=-sco3.2v4
197 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198 1.1 christos ;;
199 1.1 christos -sco3.2.[4-9]*)
200 1.1 christos os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
201 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
202 1.1 christos ;;
203 1.1 christos -sco3.2v[4-9]*)
204 1.1 christos # Don't forget version if it is 3.2v4 or newer.
205 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
206 1.1 christos ;;
207 1.1 christos -sco5v6*)
208 1.1 christos # Don't forget version if it is 3.2v4 or newer.
209 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
210 1.1 christos ;;
211 1.1 christos -sco*)
212 1.1 christos os=-sco3.2v2
213 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
214 1.1 christos ;;
215 1.1 christos -udk*)
216 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
217 1.1 christos ;;
218 1.1 christos -isc)
219 1.1 christos os=-isc2.2
220 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
221 1.1 christos ;;
222 1.1 christos -clix*)
223 1.1 christos basic_machine=clipper-intergraph
224 1.1 christos ;;
225 1.1 christos -isc*)
226 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
227 1.1 christos ;;
228 1.1.1.2 christos -lynx*178)
229 1.1.1.2 christos os=-lynxos178
230 1.1.1.2 christos ;;
231 1.1.1.2 christos -lynx*5)
232 1.1.1.2 christos os=-lynxos5
233 1.1.1.2 christos ;;
234 1.1 christos -lynx*)
235 1.1 christos os=-lynxos
236 1.1 christos ;;
237 1.1 christos -ptx*)
238 1.1 christos basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
239 1.1 christos ;;
240 1.1 christos -windowsnt*)
241 1.1 christos os=`echo $os | sed -e 's/windowsnt/winnt/'`
242 1.1 christos ;;
243 1.1 christos -psos*)
244 1.1 christos os=-psos
245 1.1 christos ;;
246 1.1 christos -mint | -mint[0-9]*)
247 1.1 christos basic_machine=m68k-atari
248 1.1 christos os=-mint
249 1.1 christos ;;
250 1.1 christos esac
251 1.1 christos
252 1.1 christos # Decode aliases for certain CPU-COMPANY combinations.
253 1.1 christos case $basic_machine in
254 1.1 christos # Recognize the basic CPU types without company name.
255 1.1 christos # Some are omitted here because they have special meanings below.
256 1.1 christos 1750a | 580 \
257 1.1 christos | a29k \
258 1.1.1.2 christos | aarch64 | aarch64_be \
259 1.1 christos | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
260 1.1 christos | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
261 1.1 christos | am33_2.0 \
262 1.1 christos | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
263 1.1.1.2 christos | be32 | be64 \
264 1.1 christos | bfin \
265 1.1 christos | c4x | clipper \
266 1.1 christos | d10v | d30v | dlx | dsp16xx \
267 1.1.1.2 christos | epiphany \
268 1.1 christos | fido | fr30 | frv \
269 1.1 christos | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
270 1.1.1.2 christos | hexagon \
271 1.1 christos | i370 | i860 | i960 | ia64 \
272 1.1 christos | ip2k | iq2000 \
273 1.1.1.2 christos | le32 | le64 \
274 1.1 christos | lm32 \
275 1.1 christos | m32c | m32r | m32rle | m68000 | m68k | m88k \
276 1.1 christos | maxq | mb | microblaze | mcore | mep | metag \
277 1.1 christos | mips | mipsbe | mipseb | mipsel | mipsle \
278 1.1 christos | mips16 \
279 1.1 christos | mips64 | mips64el \
280 1.1 christos | mips64octeon | mips64octeonel \
281 1.1 christos | mips64orion | mips64orionel \
282 1.1 christos | mips64r5900 | mips64r5900el \
283 1.1 christos | mips64vr | mips64vrel \
284 1.1 christos | mips64vr4100 | mips64vr4100el \
285 1.1 christos | mips64vr4300 | mips64vr4300el \
286 1.1 christos | mips64vr5000 | mips64vr5000el \
287 1.1 christos | mips64vr5900 | mips64vr5900el \
288 1.1 christos | mipsisa32 | mipsisa32el \
289 1.1 christos | mipsisa32r2 | mipsisa32r2el \
290 1.1 christos | mipsisa64 | mipsisa64el \
291 1.1 christos | mipsisa64r2 | mipsisa64r2el \
292 1.1 christos | mipsisa64sb1 | mipsisa64sb1el \
293 1.1 christos | mipsisa64sr71k | mipsisa64sr71kel \
294 1.1 christos | mipstx39 | mipstx39el \
295 1.1 christos | mn10200 | mn10300 \
296 1.1 christos | moxie \
297 1.1 christos | mt \
298 1.1 christos | msp430 \
299 1.1.1.2 christos | nds32 | nds32le | nds32be \
300 1.1 christos | nios | nios2 \
301 1.1 christos | ns16k | ns32k \
302 1.1.1.2 christos | open8 \
303 1.1 christos | or32 \
304 1.1 christos | pdp10 | pdp11 | pj | pjl \
305 1.1.1.2 christos | powerpc | powerpc64 | powerpc64le | powerpcle \
306 1.1 christos | pyramid \
307 1.1.1.2 christos | rl78 | rx \
308 1.1 christos | score \
309 1.1 christos | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
310 1.1 christos | sh64 | sh64le \
311 1.1 christos | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
312 1.1 christos | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
313 1.1.1.2 christos | spu \
314 1.1.1.2 christos | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
315 1.1 christos | ubicom32 \
316 1.1.1.2 christos | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
317 1.1 christos | we32k \
318 1.1.1.2 christos | x86 | xc16x | xstormy16 | xtensa \
319 1.1 christos | z8k | z80)
320 1.1 christos basic_machine=$basic_machine-unknown
321 1.1 christos ;;
322 1.1.1.2 christos c54x)
323 1.1.1.2 christos basic_machine=tic54x-unknown
324 1.1.1.2 christos ;;
325 1.1.1.2 christos c55x)
326 1.1.1.2 christos basic_machine=tic55x-unknown
327 1.1.1.2 christos ;;
328 1.1.1.2 christos c6x)
329 1.1.1.2 christos basic_machine=tic6x-unknown
330 1.1.1.2 christos ;;
331 1.1.1.2 christos m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
332 1.1 christos basic_machine=$basic_machine-unknown
333 1.1 christos os=-none
334 1.1 christos ;;
335 1.1 christos m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
336 1.1 christos ;;
337 1.1 christos ms1)
338 1.1 christos basic_machine=mt-unknown
339 1.1 christos ;;
340 1.1 christos
341 1.1.1.2 christos strongarm | thumb | xscale)
342 1.1.1.2 christos basic_machine=arm-unknown
343 1.1.1.2 christos ;;
344 1.1.1.2 christos xgate)
345 1.1.1.2 christos basic_machine=$basic_machine-unknown
346 1.1.1.2 christos os=-none
347 1.1.1.2 christos ;;
348 1.1.1.2 christos xscaleeb)
349 1.1.1.2 christos basic_machine=armeb-unknown
350 1.1.1.2 christos ;;
351 1.1.1.2 christos
352 1.1.1.2 christos xscaleel)
353 1.1.1.2 christos basic_machine=armel-unknown
354 1.1.1.2 christos ;;
355 1.1.1.2 christos
356 1.1 christos # We use `pc' rather than `unknown'
357 1.1 christos # because (1) that's what they normally are, and
358 1.1 christos # (2) the word "unknown" tends to confuse beginning users.
359 1.1 christos i*86 | x86_64)
360 1.1 christos basic_machine=$basic_machine-pc
361 1.1 christos ;;
362 1.1 christos # Object if more than one company name word.
363 1.1 christos *-*-*)
364 1.1 christos echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
365 1.1 christos exit 1
366 1.1 christos ;;
367 1.1 christos # Recognize the basic CPU types with company name.
368 1.1 christos 580-* \
369 1.1 christos | a29k-* \
370 1.1.1.2 christos | aarch64-* | aarch64_be-* \
371 1.1 christos | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
372 1.1 christos | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
373 1.1 christos | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
374 1.1 christos | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
375 1.1 christos | avr-* | avr32-* \
376 1.1.1.2 christos | be32-* | be64-* \
377 1.1 christos | bfin-* | bs2000-* \
378 1.1.1.2 christos | c[123]* | c30-* | [cjt]90-* | c4x-* \
379 1.1 christos | clipper-* | craynv-* | cydra-* \
380 1.1 christos | d10v-* | d30v-* | dlx-* \
381 1.1 christos | elxsi-* \
382 1.1 christos | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
383 1.1 christos | h8300-* | h8500-* \
384 1.1 christos | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
385 1.1.1.2 christos | hexagon-* \
386 1.1 christos | i*86-* | i860-* | i960-* | ia64-* \
387 1.1 christos | ip2k-* | iq2000-* \
388 1.1.1.2 christos | le32-* | le64-* \
389 1.1 christos | lm32-* \
390 1.1 christos | m32c-* | m32r-* | m32rle-* \
391 1.1 christos | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
392 1.1 christos | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
393 1.1 christos | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
394 1.1 christos | mips16-* \
395 1.1 christos | mips64-* | mips64el-* \
396 1.1 christos | mips64octeon-* | mips64octeonel-* \
397 1.1 christos | mips64orion-* | mips64orionel-* \
398 1.1 christos | mips64r5900-* | mips64r5900el-* \
399 1.1 christos | mips64vr-* | mips64vrel-* \
400 1.1 christos | mips64vr4100-* | mips64vr4100el-* \
401 1.1 christos | mips64vr4300-* | mips64vr4300el-* \
402 1.1 christos | mips64vr5000-* | mips64vr5000el-* \
403 1.1 christos | mips64vr5900-* | mips64vr5900el-* \
404 1.1 christos | mipsisa32-* | mipsisa32el-* \
405 1.1 christos | mipsisa32r2-* | mipsisa32r2el-* \
406 1.1 christos | mipsisa64-* | mipsisa64el-* \
407 1.1 christos | mipsisa64r2-* | mipsisa64r2el-* \
408 1.1 christos | mipsisa64sb1-* | mipsisa64sb1el-* \
409 1.1 christos | mipsisa64sr71k-* | mipsisa64sr71kel-* \
410 1.1 christos | mipstx39-* | mipstx39el-* \
411 1.1 christos | mmix-* \
412 1.1 christos | mt-* \
413 1.1 christos | msp430-* \
414 1.1.1.2 christos | nds32-* | nds32le-* | nds32be-* \
415 1.1 christos | nios-* | nios2-* \
416 1.1 christos | none-* | np1-* | ns16k-* | ns32k-* \
417 1.1.1.2 christos | open8-* \
418 1.1 christos | orion-* \
419 1.1 christos | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
420 1.1.1.2 christos | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
421 1.1 christos | pyramid-* \
422 1.1.1.2 christos | rl78-* | romp-* | rs6000-* | rx-* \
423 1.1 christos | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
424 1.1 christos | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
425 1.1 christos | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
426 1.1 christos | sparclite-* \
427 1.1.1.2 christos | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
428 1.1.1.2 christos | tahoe-* \
429 1.1.1.2 christos | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
430 1.1.1.2 christos | tile*-* \
431 1.1 christos | tron-* \
432 1.1 christos | ubicom32-* \
433 1.1.1.2 christos | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
434 1.1.1.2 christos | vax-* \
435 1.1 christos | we32k-* \
436 1.1.1.2 christos | x86-* | x86_64-* | xc16x-* | xps100-* \
437 1.1 christos | xstormy16-* | xtensa*-* \
438 1.1 christos | ymp-* \
439 1.1 christos | z8k-* | z80-*)
440 1.1 christos ;;
441 1.1 christos # Recognize the basic CPU types without company name, with glob match.
442 1.1 christos xtensa*)
443 1.1 christos basic_machine=$basic_machine-unknown
444 1.1 christos ;;
445 1.1 christos # Recognize the various machine names and aliases which stand
446 1.1 christos # for a CPU type and a company and sometimes even an OS.
447 1.1 christos 386bsd)
448 1.1 christos basic_machine=i386-unknown
449 1.1 christos os=-bsd
450 1.1 christos ;;
451 1.1 christos 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
452 1.1 christos basic_machine=m68000-att
453 1.1 christos ;;
454 1.1 christos 3b*)
455 1.1 christos basic_machine=we32k-att
456 1.1 christos ;;
457 1.1 christos a29khif)
458 1.1 christos basic_machine=a29k-amd
459 1.1 christos os=-udi
460 1.1 christos ;;
461 1.1.1.2 christos abacus)
462 1.1 christos basic_machine=abacus-unknown
463 1.1 christos ;;
464 1.1 christos adobe68k)
465 1.1 christos basic_machine=m68010-adobe
466 1.1 christos os=-scout
467 1.1 christos ;;
468 1.1 christos alliant | fx80)
469 1.1 christos basic_machine=fx80-alliant
470 1.1 christos ;;
471 1.1 christos altos | altos3068)
472 1.1 christos basic_machine=m68k-altos
473 1.1 christos ;;
474 1.1 christos am29k)
475 1.1 christos basic_machine=a29k-none
476 1.1 christos os=-bsd
477 1.1 christos ;;
478 1.1 christos amd64)
479 1.1 christos basic_machine=x86_64-pc
480 1.1 christos ;;
481 1.1 christos amd64-*)
482 1.1 christos basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
483 1.1 christos ;;
484 1.1 christos amdahl)
485 1.1 christos basic_machine=580-amdahl
486 1.1 christos os=-sysv
487 1.1 christos ;;
488 1.1 christos amiga | amiga-*)
489 1.1 christos basic_machine=m68k-unknown
490 1.1 christos ;;
491 1.1 christos amigaos | amigados)
492 1.1 christos basic_machine=m68k-unknown
493 1.1 christos os=-amigaos
494 1.1 christos ;;
495 1.1 christos amigaunix | amix)
496 1.1 christos basic_machine=m68k-unknown
497 1.1 christos os=-sysv4
498 1.1 christos ;;
499 1.1 christos apollo68)
500 1.1 christos basic_machine=m68k-apollo
501 1.1 christos os=-sysv
502 1.1 christos ;;
503 1.1 christos apollo68bsd)
504 1.1 christos basic_machine=m68k-apollo
505 1.1 christos os=-bsd
506 1.1 christos ;;
507 1.1 christos aros)
508 1.1 christos basic_machine=i386-pc
509 1.1 christos os=-aros
510 1.1 christos ;;
511 1.1 christos aux)
512 1.1 christos basic_machine=m68k-apple
513 1.1 christos os=-aux
514 1.1 christos ;;
515 1.1 christos balance)
516 1.1 christos basic_machine=ns32k-sequent
517 1.1 christos os=-dynix
518 1.1 christos ;;
519 1.1 christos blackfin)
520 1.1 christos basic_machine=bfin-unknown
521 1.1 christos os=-linux
522 1.1 christos ;;
523 1.1 christos blackfin-*)
524 1.1 christos basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
525 1.1 christos os=-linux
526 1.1 christos ;;
527 1.1 christos bluegene*)
528 1.1 christos basic_machine=powerpc-ibm
529 1.1 christos os=-cnk
530 1.1 christos ;;
531 1.1.1.2 christos c54x-*)
532 1.1.1.2 christos basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
533 1.1.1.2 christos ;;
534 1.1.1.2 christos c55x-*)
535 1.1.1.2 christos basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
536 1.1.1.2 christos ;;
537 1.1.1.2 christos c6x-*)
538 1.1.1.2 christos basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
539 1.1.1.2 christos ;;
540 1.1 christos c90)
541 1.1 christos basic_machine=c90-cray
542 1.1 christos os=-unicos
543 1.1 christos ;;
544 1.1.1.2 christos cegcc)
545 1.1 christos basic_machine=arm-unknown
546 1.1 christos os=-cegcc
547 1.1 christos ;;
548 1.1 christos convex-c1)
549 1.1 christos basic_machine=c1-convex
550 1.1 christos os=-bsd
551 1.1 christos ;;
552 1.1 christos convex-c2)
553 1.1 christos basic_machine=c2-convex
554 1.1 christos os=-bsd
555 1.1 christos ;;
556 1.1 christos convex-c32)
557 1.1 christos basic_machine=c32-convex
558 1.1 christos os=-bsd
559 1.1 christos ;;
560 1.1 christos convex-c34)
561 1.1 christos basic_machine=c34-convex
562 1.1 christos os=-bsd
563 1.1 christos ;;
564 1.1 christos convex-c38)
565 1.1 christos basic_machine=c38-convex
566 1.1 christos os=-bsd
567 1.1 christos ;;
568 1.1 christos cray | j90)
569 1.1 christos basic_machine=j90-cray
570 1.1 christos os=-unicos
571 1.1 christos ;;
572 1.1 christos craynv)
573 1.1 christos basic_machine=craynv-cray
574 1.1 christos os=-unicosmp
575 1.1 christos ;;
576 1.1.1.2 christos cr16 | cr16-*)
577 1.1 christos basic_machine=cr16-unknown
578 1.1 christos os=-elf
579 1.1 christos ;;
580 1.1 christos crds | unos)
581 1.1 christos basic_machine=m68k-crds
582 1.1 christos ;;
583 1.1 christos crisv32 | crisv32-* | etraxfs*)
584 1.1 christos basic_machine=crisv32-axis
585 1.1 christos ;;
586 1.1 christos cris | cris-* | etrax*)
587 1.1 christos basic_machine=cris-axis
588 1.1 christos ;;
589 1.1 christos crx)
590 1.1 christos basic_machine=crx-unknown
591 1.1 christos os=-elf
592 1.1 christos ;;
593 1.1 christos da30 | da30-*)
594 1.1 christos basic_machine=m68k-da30
595 1.1 christos ;;
596 1.1 christos decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
597 1.1 christos basic_machine=mips-dec
598 1.1 christos ;;
599 1.1 christos decsystem10* | dec10*)
600 1.1 christos basic_machine=pdp10-dec
601 1.1 christos os=-tops10
602 1.1 christos ;;
603 1.1 christos decsystem20* | dec20*)
604 1.1 christos basic_machine=pdp10-dec
605 1.1 christos os=-tops20
606 1.1 christos ;;
607 1.1 christos delta | 3300 | motorola-3300 | motorola-delta \
608 1.1 christos | 3300-motorola | delta-motorola)
609 1.1 christos basic_machine=m68k-motorola
610 1.1 christos ;;
611 1.1 christos delta88)
612 1.1 christos basic_machine=m88k-motorola
613 1.1 christos os=-sysv3
614 1.1 christos ;;
615 1.1 christos dicos)
616 1.1 christos basic_machine=i686-pc
617 1.1 christos os=-dicos
618 1.1 christos ;;
619 1.1 christos djgpp)
620 1.1 christos basic_machine=i586-pc
621 1.1 christos os=-msdosdjgpp
622 1.1 christos ;;
623 1.1 christos dpx20 | dpx20-*)
624 1.1 christos basic_machine=rs6000-bull
625 1.1 christos os=-bosx
626 1.1 christos ;;
627 1.1 christos dpx2* | dpx2*-bull)
628 1.1 christos basic_machine=m68k-bull
629 1.1 christos os=-sysv3
630 1.1 christos ;;
631 1.1 christos ebmon29k)
632 1.1 christos basic_machine=a29k-amd
633 1.1 christos os=-ebmon
634 1.1 christos ;;
635 1.1 christos elxsi)
636 1.1 christos basic_machine=elxsi-elxsi
637 1.1 christos os=-bsd
638 1.1 christos ;;
639 1.1 christos encore | umax | mmax)
640 1.1 christos basic_machine=ns32k-encore
641 1.1 christos ;;
642 1.1 christos es1800 | OSE68k | ose68k | ose | OSE)
643 1.1 christos basic_machine=m68k-ericsson
644 1.1 christos os=-ose
645 1.1 christos ;;
646 1.1 christos fx2800)
647 1.1 christos basic_machine=i860-alliant
648 1.1 christos ;;
649 1.1 christos genix)
650 1.1 christos basic_machine=ns32k-ns
651 1.1 christos ;;
652 1.1 christos gmicro)
653 1.1 christos basic_machine=tron-gmicro
654 1.1 christos os=-sysv
655 1.1 christos ;;
656 1.1 christos go32)
657 1.1 christos basic_machine=i386-pc
658 1.1 christos os=-go32
659 1.1 christos ;;
660 1.1 christos h3050r* | hiux*)
661 1.1 christos basic_machine=hppa1.1-hitachi
662 1.1 christos os=-hiuxwe2
663 1.1 christos ;;
664 1.1 christos h8300hms)
665 1.1 christos basic_machine=h8300-hitachi
666 1.1 christos os=-hms
667 1.1 christos ;;
668 1.1 christos h8300xray)
669 1.1 christos basic_machine=h8300-hitachi
670 1.1 christos os=-xray
671 1.1 christos ;;
672 1.1 christos h8500hms)
673 1.1 christos basic_machine=h8500-hitachi
674 1.1 christos os=-hms
675 1.1 christos ;;
676 1.1 christos harris)
677 1.1 christos basic_machine=m88k-harris
678 1.1 christos os=-sysv3
679 1.1 christos ;;
680 1.1 christos hp300-*)
681 1.1 christos basic_machine=m68k-hp
682 1.1 christos ;;
683 1.1 christos hp300bsd)
684 1.1 christos basic_machine=m68k-hp
685 1.1 christos os=-bsd
686 1.1 christos ;;
687 1.1 christos hp300hpux)
688 1.1 christos basic_machine=m68k-hp
689 1.1 christos os=-hpux
690 1.1 christos ;;
691 1.1 christos hp3k9[0-9][0-9] | hp9[0-9][0-9])
692 1.1 christos basic_machine=hppa1.0-hp
693 1.1 christos ;;
694 1.1 christos hp9k2[0-9][0-9] | hp9k31[0-9])
695 1.1 christos basic_machine=m68000-hp
696 1.1 christos ;;
697 1.1 christos hp9k3[2-9][0-9])
698 1.1 christos basic_machine=m68k-hp
699 1.1 christos ;;
700 1.1 christos hp9k6[0-9][0-9] | hp6[0-9][0-9])
701 1.1 christos basic_machine=hppa1.0-hp
702 1.1 christos ;;
703 1.1 christos hp9k7[0-79][0-9] | hp7[0-79][0-9])
704 1.1 christos basic_machine=hppa1.1-hp
705 1.1 christos ;;
706 1.1 christos hp9k78[0-9] | hp78[0-9])
707 1.1 christos # FIXME: really hppa2.0-hp
708 1.1 christos basic_machine=hppa1.1-hp
709 1.1 christos ;;
710 1.1 christos hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
711 1.1 christos # FIXME: really hppa2.0-hp
712 1.1 christos basic_machine=hppa1.1-hp
713 1.1 christos ;;
714 1.1 christos hp9k8[0-9][13679] | hp8[0-9][13679])
715 1.1 christos basic_machine=hppa1.1-hp
716 1.1 christos ;;
717 1.1 christos hp9k8[0-9][0-9] | hp8[0-9][0-9])
718 1.1 christos basic_machine=hppa1.0-hp
719 1.1 christos ;;
720 1.1 christos hppa-next)
721 1.1 christos os=-nextstep3
722 1.1 christos ;;
723 1.1 christos hppaosf)
724 1.1 christos basic_machine=hppa1.1-hp
725 1.1 christos os=-osf
726 1.1 christos ;;
727 1.1 christos hppro)
728 1.1 christos basic_machine=hppa1.1-hp
729 1.1 christos os=-proelf
730 1.1 christos ;;
731 1.1 christos i370-ibm* | ibm*)
732 1.1 christos basic_machine=i370-ibm
733 1.1 christos ;;
734 1.1 christos i*86v32)
735 1.1 christos basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
736 1.1 christos os=-sysv32
737 1.1 christos ;;
738 1.1 christos i*86v4*)
739 1.1 christos basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
740 1.1 christos os=-sysv4
741 1.1 christos ;;
742 1.1 christos i*86v)
743 1.1 christos basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
744 1.1 christos os=-sysv
745 1.1 christos ;;
746 1.1 christos i*86sol2)
747 1.1 christos basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
748 1.1 christos os=-solaris2
749 1.1 christos ;;
750 1.1 christos i386mach)
751 1.1 christos basic_machine=i386-mach
752 1.1 christos os=-mach
753 1.1 christos ;;
754 1.1 christos i386-vsta | vsta)
755 1.1 christos basic_machine=i386-unknown
756 1.1 christos os=-vsta
757 1.1 christos ;;
758 1.1 christos iris | iris4d)
759 1.1 christos basic_machine=mips-sgi
760 1.1 christos case $os in
761 1.1 christos -irix*)
762 1.1 christos ;;
763 1.1 christos *)
764 1.1 christos os=-irix4
765 1.1 christos ;;
766 1.1 christos esac
767 1.1 christos ;;
768 1.1 christos isi68 | isi)
769 1.1 christos basic_machine=m68k-isi
770 1.1 christos os=-sysv
771 1.1 christos ;;
772 1.1 christos m68knommu)
773 1.1 christos basic_machine=m68k-unknown
774 1.1 christos os=-linux
775 1.1 christos ;;
776 1.1 christos m68knommu-*)
777 1.1 christos basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
778 1.1 christos os=-linux
779 1.1 christos ;;
780 1.1 christos m88k-omron*)
781 1.1 christos basic_machine=m88k-omron
782 1.1 christos ;;
783 1.1 christos magnum | m3230)
784 1.1 christos basic_machine=mips-mips
785 1.1 christos os=-sysv
786 1.1 christos ;;
787 1.1 christos merlin)
788 1.1 christos basic_machine=ns32k-utek
789 1.1 christos os=-sysv
790 1.1 christos ;;
791 1.1.1.2 christos microblaze)
792 1.1 christos basic_machine=microblaze-xilinx
793 1.1 christos ;;
794 1.1 christos mingw32)
795 1.1 christos basic_machine=i386-pc
796 1.1 christos os=-mingw32
797 1.1 christos ;;
798 1.1 christos mingw32ce)
799 1.1 christos basic_machine=arm-unknown
800 1.1 christos os=-mingw32ce
801 1.1 christos ;;
802 1.1 christos miniframe)
803 1.1 christos basic_machine=m68000-convergent
804 1.1 christos ;;
805 1.1 christos *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
806 1.1 christos basic_machine=m68k-atari
807 1.1 christos os=-mint
808 1.1 christos ;;
809 1.1 christos mips3*-*)
810 1.1 christos basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
811 1.1 christos ;;
812 1.1 christos mips3*)
813 1.1 christos basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
814 1.1 christos ;;
815 1.1 christos monitor)
816 1.1 christos basic_machine=m68k-rom68k
817 1.1 christos os=-coff
818 1.1 christos ;;
819 1.1 christos morphos)
820 1.1 christos basic_machine=powerpc-unknown
821 1.1 christos os=-morphos
822 1.1 christos ;;
823 1.1 christos msdos)
824 1.1 christos basic_machine=i386-pc
825 1.1 christos os=-msdos
826 1.1 christos ;;
827 1.1 christos ms1-*)
828 1.1 christos basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
829 1.1 christos ;;
830 1.1.1.2 christos msys)
831 1.1.1.2 christos basic_machine=i386-pc
832 1.1.1.2 christos os=-msys
833 1.1.1.2 christos ;;
834 1.1 christos mvs)
835 1.1 christos basic_machine=i370-ibm
836 1.1 christos os=-mvs
837 1.1 christos ;;
838 1.1.1.2 christos nacl)
839 1.1.1.2 christos basic_machine=le32-unknown
840 1.1.1.2 christos os=-nacl
841 1.1.1.2 christos ;;
842 1.1 christos ncr3000)
843 1.1 christos basic_machine=i486-ncr
844 1.1 christos os=-sysv4
845 1.1 christos ;;
846 1.1 christos netbsd386)
847 1.1 christos basic_machine=i386-unknown
848 1.1 christos os=-netbsd
849 1.1 christos ;;
850 1.1 christos netwinder)
851 1.1 christos basic_machine=armv4l-rebel
852 1.1 christos os=-linux
853 1.1 christos ;;
854 1.1 christos news | news700 | news800 | news900)
855 1.1 christos basic_machine=m68k-sony
856 1.1 christos os=-newsos
857 1.1 christos ;;
858 1.1 christos news1000)
859 1.1 christos basic_machine=m68030-sony
860 1.1 christos os=-newsos
861 1.1 christos ;;
862 1.1 christos news-3600 | risc-news)
863 1.1 christos basic_machine=mips-sony
864 1.1 christos os=-newsos
865 1.1 christos ;;
866 1.1 christos necv70)
867 1.1 christos basic_machine=v70-nec
868 1.1 christos os=-sysv
869 1.1 christos ;;
870 1.1 christos next | m*-next )
871 1.1 christos basic_machine=m68k-next
872 1.1 christos case $os in
873 1.1 christos -nextstep* )
874 1.1 christos ;;
875 1.1 christos -ns2*)
876 1.1 christos os=-nextstep2
877 1.1 christos ;;
878 1.1 christos *)
879 1.1 christos os=-nextstep3
880 1.1 christos ;;
881 1.1 christos esac
882 1.1 christos ;;
883 1.1 christos nh3000)
884 1.1 christos basic_machine=m68k-harris
885 1.1 christos os=-cxux
886 1.1 christos ;;
887 1.1 christos nh[45]000)
888 1.1 christos basic_machine=m88k-harris
889 1.1 christos os=-cxux
890 1.1 christos ;;
891 1.1 christos nindy960)
892 1.1 christos basic_machine=i960-intel
893 1.1 christos os=-nindy
894 1.1 christos ;;
895 1.1 christos mon960)
896 1.1 christos basic_machine=i960-intel
897 1.1 christos os=-mon960
898 1.1 christos ;;
899 1.1 christos nonstopux)
900 1.1 christos basic_machine=mips-compaq
901 1.1 christos os=-nonstopux
902 1.1 christos ;;
903 1.1 christos np1)
904 1.1 christos basic_machine=np1-gould
905 1.1 christos ;;
906 1.1.1.2 christos neo-tandem)
907 1.1.1.2 christos basic_machine=neo-tandem
908 1.1.1.2 christos ;;
909 1.1.1.2 christos nse-tandem)
910 1.1.1.2 christos basic_machine=nse-tandem
911 1.1.1.2 christos ;;
912 1.1 christos nsr-tandem)
913 1.1 christos basic_machine=nsr-tandem
914 1.1 christos ;;
915 1.1 christos op50n-* | op60c-*)
916 1.1 christos basic_machine=hppa1.1-oki
917 1.1 christos os=-proelf
918 1.1 christos ;;
919 1.1 christos openrisc | openrisc-*)
920 1.1 christos basic_machine=or32-unknown
921 1.1 christos ;;
922 1.1 christos os400)
923 1.1 christos basic_machine=powerpc-ibm
924 1.1 christos os=-os400
925 1.1 christos ;;
926 1.1 christos OSE68000 | ose68000)
927 1.1 christos basic_machine=m68000-ericsson
928 1.1 christos os=-ose
929 1.1 christos ;;
930 1.1 christos os68k)
931 1.1 christos basic_machine=m68k-none
932 1.1 christos os=-os68k
933 1.1 christos ;;
934 1.1 christos pa-hitachi)
935 1.1 christos basic_machine=hppa1.1-hitachi
936 1.1 christos os=-hiuxwe2
937 1.1 christos ;;
938 1.1 christos paragon)
939 1.1 christos basic_machine=i860-intel
940 1.1 christos os=-osf
941 1.1 christos ;;
942 1.1 christos parisc)
943 1.1 christos basic_machine=hppa-unknown
944 1.1 christos os=-linux
945 1.1 christos ;;
946 1.1 christos parisc-*)
947 1.1 christos basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
948 1.1 christos os=-linux
949 1.1 christos ;;
950 1.1 christos pbd)
951 1.1 christos basic_machine=sparc-tti
952 1.1 christos ;;
953 1.1 christos pbb)
954 1.1 christos basic_machine=m68k-tti
955 1.1 christos ;;
956 1.1 christos pc532 | pc532-*)
957 1.1 christos basic_machine=ns32k-pc532
958 1.1 christos ;;
959 1.1 christos pc98)
960 1.1 christos basic_machine=i386-pc
961 1.1 christos ;;
962 1.1 christos pc98-*)
963 1.1 christos basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
964 1.1 christos ;;
965 1.1 christos pentium | p5 | k5 | k6 | nexgen | viac3)
966 1.1 christos basic_machine=i586-pc
967 1.1 christos ;;
968 1.1 christos pentiumpro | p6 | 6x86 | athlon | athlon_*)
969 1.1 christos basic_machine=i686-pc
970 1.1 christos ;;
971 1.1 christos pentiumii | pentium2 | pentiumiii | pentium3)
972 1.1 christos basic_machine=i686-pc
973 1.1 christos ;;
974 1.1 christos pentium4)
975 1.1 christos basic_machine=i786-pc
976 1.1 christos ;;
977 1.1 christos pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
978 1.1 christos basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
979 1.1 christos ;;
980 1.1 christos pentiumpro-* | p6-* | 6x86-* | athlon-*)
981 1.1 christos basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
982 1.1 christos ;;
983 1.1 christos pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
984 1.1 christos basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
985 1.1 christos ;;
986 1.1 christos pentium4-*)
987 1.1 christos basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
988 1.1 christos ;;
989 1.1 christos pn)
990 1.1 christos basic_machine=pn-gould
991 1.1 christos ;;
992 1.1 christos power) basic_machine=power-ibm
993 1.1 christos ;;
994 1.1.1.2 christos ppc | ppcbe) basic_machine=powerpc-unknown
995 1.1 christos ;;
996 1.1.1.2 christos ppc-* | ppcbe-*)
997 1.1.1.2 christos basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
998 1.1 christos ;;
999 1.1 christos ppcle | powerpclittle | ppc-le | powerpc-little)
1000 1.1 christos basic_machine=powerpcle-unknown
1001 1.1 christos ;;
1002 1.1 christos ppcle-* | powerpclittle-*)
1003 1.1 christos basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1004 1.1 christos ;;
1005 1.1 christos ppc64) basic_machine=powerpc64-unknown
1006 1.1 christos ;;
1007 1.1 christos ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1008 1.1 christos ;;
1009 1.1 christos ppc64le | powerpc64little | ppc64-le | powerpc64-little)
1010 1.1 christos basic_machine=powerpc64le-unknown
1011 1.1 christos ;;
1012 1.1 christos ppc64le-* | powerpc64little-*)
1013 1.1 christos basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1014 1.1 christos ;;
1015 1.1 christos ps2)
1016 1.1 christos basic_machine=i386-ibm
1017 1.1 christos ;;
1018 1.1 christos pw32)
1019 1.1 christos basic_machine=i586-unknown
1020 1.1 christos os=-pw32
1021 1.1 christos ;;
1022 1.1 christos rdos)
1023 1.1 christos basic_machine=i386-pc
1024 1.1 christos os=-rdos
1025 1.1 christos ;;
1026 1.1 christos rom68k)
1027 1.1 christos basic_machine=m68k-rom68k
1028 1.1 christos os=-coff
1029 1.1 christos ;;
1030 1.1 christos rm[46]00)
1031 1.1 christos basic_machine=mips-siemens
1032 1.1 christos ;;
1033 1.1 christos rtpc | rtpc-*)
1034 1.1 christos basic_machine=romp-ibm
1035 1.1 christos ;;
1036 1.1 christos s390 | s390-*)
1037 1.1 christos basic_machine=s390-ibm
1038 1.1 christos ;;
1039 1.1 christos s390x | s390x-*)
1040 1.1 christos basic_machine=s390x-ibm
1041 1.1 christos ;;
1042 1.1 christos sa29200)
1043 1.1 christos basic_machine=a29k-amd
1044 1.1 christos os=-udi
1045 1.1 christos ;;
1046 1.1 christos sb1)
1047 1.1 christos basic_machine=mipsisa64sb1-unknown
1048 1.1 christos ;;
1049 1.1 christos sb1el)
1050 1.1 christos basic_machine=mipsisa64sb1el-unknown
1051 1.1 christos ;;
1052 1.1 christos sde)
1053 1.1 christos basic_machine=mipsisa32-sde
1054 1.1 christos os=-elf
1055 1.1 christos ;;
1056 1.1 christos sei)
1057 1.1 christos basic_machine=mips-sei
1058 1.1 christos os=-seiux
1059 1.1 christos ;;
1060 1.1 christos sequent)
1061 1.1 christos basic_machine=i386-sequent
1062 1.1 christos ;;
1063 1.1 christos sh)
1064 1.1 christos basic_machine=sh-hitachi
1065 1.1 christos os=-hms
1066 1.1 christos ;;
1067 1.1 christos sh5el)
1068 1.1 christos basic_machine=sh5le-unknown
1069 1.1 christos ;;
1070 1.1 christos sh64)
1071 1.1 christos basic_machine=sh64-unknown
1072 1.1 christos ;;
1073 1.1 christos sparclite-wrs | simso-wrs)
1074 1.1 christos basic_machine=sparclite-wrs
1075 1.1 christos os=-vxworks
1076 1.1 christos ;;
1077 1.1 christos sps7)
1078 1.1 christos basic_machine=m68k-bull
1079 1.1 christos os=-sysv2
1080 1.1 christos ;;
1081 1.1 christos spur)
1082 1.1 christos basic_machine=spur-unknown
1083 1.1 christos ;;
1084 1.1 christos st2000)
1085 1.1 christos basic_machine=m68k-tandem
1086 1.1 christos ;;
1087 1.1 christos stratus)
1088 1.1 christos basic_machine=i860-stratus
1089 1.1 christos os=-sysv4
1090 1.1 christos ;;
1091 1.1.1.2 christos strongarm-* | thumb-*)
1092 1.1.1.2 christos basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1093 1.1.1.2 christos ;;
1094 1.1 christos sun2)
1095 1.1 christos basic_machine=m68000-sun
1096 1.1 christos ;;
1097 1.1 christos sun2os3)
1098 1.1 christos basic_machine=m68000-sun
1099 1.1 christos os=-sunos3
1100 1.1 christos ;;
1101 1.1 christos sun2os4)
1102 1.1 christos basic_machine=m68000-sun
1103 1.1 christos os=-sunos4
1104 1.1 christos ;;
1105 1.1 christos sun3os3)
1106 1.1 christos basic_machine=m68k-sun
1107 1.1 christos os=-sunos3
1108 1.1 christos ;;
1109 1.1 christos sun3os4)
1110 1.1 christos basic_machine=m68k-sun
1111 1.1 christos os=-sunos4
1112 1.1 christos ;;
1113 1.1 christos sun4os3)
1114 1.1 christos basic_machine=sparc-sun
1115 1.1 christos os=-sunos3
1116 1.1 christos ;;
1117 1.1 christos sun4os4)
1118 1.1 christos basic_machine=sparc-sun
1119 1.1 christos os=-sunos4
1120 1.1 christos ;;
1121 1.1 christos sun4sol2)
1122 1.1 christos basic_machine=sparc-sun
1123 1.1 christos os=-solaris2
1124 1.1 christos ;;
1125 1.1 christos sun3 | sun3-*)
1126 1.1 christos basic_machine=m68k-sun
1127 1.1 christos ;;
1128 1.1 christos sun4)
1129 1.1 christos basic_machine=sparc-sun
1130 1.1 christos ;;
1131 1.1 christos sun386 | sun386i | roadrunner)
1132 1.1 christos basic_machine=i386-sun
1133 1.1 christos ;;
1134 1.1 christos sv1)
1135 1.1 christos basic_machine=sv1-cray
1136 1.1 christos os=-unicos
1137 1.1 christos ;;
1138 1.1 christos symmetry)
1139 1.1 christos basic_machine=i386-sequent
1140 1.1 christos os=-dynix
1141 1.1 christos ;;
1142 1.1 christos t3e)
1143 1.1 christos basic_machine=alphaev5-cray
1144 1.1 christos os=-unicos
1145 1.1 christos ;;
1146 1.1 christos t90)
1147 1.1 christos basic_machine=t90-cray
1148 1.1 christos os=-unicos
1149 1.1 christos ;;
1150 1.1 christos tile*)
1151 1.1.1.2 christos basic_machine=$basic_machine-unknown
1152 1.1 christos os=-linux-gnu
1153 1.1 christos ;;
1154 1.1 christos tx39)
1155 1.1 christos basic_machine=mipstx39-unknown
1156 1.1 christos ;;
1157 1.1 christos tx39el)
1158 1.1 christos basic_machine=mipstx39el-unknown
1159 1.1 christos ;;
1160 1.1 christos toad1)
1161 1.1 christos basic_machine=pdp10-xkl
1162 1.1 christos os=-tops20
1163 1.1 christos ;;
1164 1.1 christos tower | tower-32)
1165 1.1 christos basic_machine=m68k-ncr
1166 1.1 christos ;;
1167 1.1 christos tpf)
1168 1.1 christos basic_machine=s390x-ibm
1169 1.1 christos os=-tpf
1170 1.1 christos ;;
1171 1.1 christos udi29k)
1172 1.1 christos basic_machine=a29k-amd
1173 1.1 christos os=-udi
1174 1.1 christos ;;
1175 1.1 christos ultra3)
1176 1.1 christos basic_machine=a29k-nyu
1177 1.1 christos os=-sym1
1178 1.1 christos ;;
1179 1.1 christos v810 | necv810)
1180 1.1 christos basic_machine=v810-nec
1181 1.1 christos os=-none
1182 1.1 christos ;;
1183 1.1 christos vaxv)
1184 1.1 christos basic_machine=vax-dec
1185 1.1 christos os=-sysv
1186 1.1 christos ;;
1187 1.1 christos vms)
1188 1.1 christos basic_machine=vax-dec
1189 1.1 christos os=-vms
1190 1.1 christos ;;
1191 1.1 christos vpp*|vx|vx-*)
1192 1.1 christos basic_machine=f301-fujitsu
1193 1.1 christos ;;
1194 1.1 christos vxworks960)
1195 1.1 christos basic_machine=i960-wrs
1196 1.1 christos os=-vxworks
1197 1.1 christos ;;
1198 1.1 christos vxworks68)
1199 1.1 christos basic_machine=m68k-wrs
1200 1.1 christos os=-vxworks
1201 1.1 christos ;;
1202 1.1 christos vxworks29k)
1203 1.1 christos basic_machine=a29k-wrs
1204 1.1 christos os=-vxworks
1205 1.1 christos ;;
1206 1.1 christos w65*)
1207 1.1 christos basic_machine=w65-wdc
1208 1.1 christos os=-none
1209 1.1 christos ;;
1210 1.1 christos w89k-*)
1211 1.1 christos basic_machine=hppa1.1-winbond
1212 1.1 christos os=-proelf
1213 1.1 christos ;;
1214 1.1 christos xbox)
1215 1.1 christos basic_machine=i686-pc
1216 1.1 christos os=-mingw32
1217 1.1 christos ;;
1218 1.1 christos xps | xps100)
1219 1.1 christos basic_machine=xps100-honeywell
1220 1.1 christos ;;
1221 1.1.1.2 christos xscale-* | xscalee[bl]-*)
1222 1.1.1.2 christos basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1223 1.1.1.2 christos ;;
1224 1.1 christos ymp)
1225 1.1 christos basic_machine=ymp-cray
1226 1.1 christos os=-unicos
1227 1.1 christos ;;
1228 1.1 christos z8k-*-coff)
1229 1.1 christos basic_machine=z8k-unknown
1230 1.1 christos os=-sim
1231 1.1 christos ;;
1232 1.1 christos z80-*-coff)
1233 1.1 christos basic_machine=z80-unknown
1234 1.1 christos os=-sim
1235 1.1 christos ;;
1236 1.1 christos none)
1237 1.1 christos basic_machine=none-none
1238 1.1 christos os=-none
1239 1.1 christos ;;
1240 1.1 christos
1241 1.1 christos # Here we handle the default manufacturer of certain CPU types. It is in
1242 1.1 christos # some cases the only manufacturer, in others, it is the most popular.
1243 1.1 christos w89k)
1244 1.1 christos basic_machine=hppa1.1-winbond
1245 1.1 christos ;;
1246 1.1 christos op50n)
1247 1.1 christos basic_machine=hppa1.1-oki
1248 1.1 christos ;;
1249 1.1 christos op60c)
1250 1.1 christos basic_machine=hppa1.1-oki
1251 1.1 christos ;;
1252 1.1 christos romp)
1253 1.1 christos basic_machine=romp-ibm
1254 1.1 christos ;;
1255 1.1 christos mmix)
1256 1.1 christos basic_machine=mmix-knuth
1257 1.1 christos ;;
1258 1.1 christos rs6000)
1259 1.1 christos basic_machine=rs6000-ibm
1260 1.1 christos ;;
1261 1.1 christos vax)
1262 1.1 christos basic_machine=vax-dec
1263 1.1 christos ;;
1264 1.1 christos pdp10)
1265 1.1 christos # there are many clones, so DEC is not a safe bet
1266 1.1 christos basic_machine=pdp10-unknown
1267 1.1 christos ;;
1268 1.1 christos pdp11)
1269 1.1 christos basic_machine=pdp11-dec
1270 1.1 christos ;;
1271 1.1 christos we32k)
1272 1.1 christos basic_machine=we32k-att
1273 1.1 christos ;;
1274 1.1 christos sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1275 1.1 christos basic_machine=sh-unknown
1276 1.1 christos ;;
1277 1.1 christos sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1278 1.1 christos basic_machine=sparc-sun
1279 1.1 christos ;;
1280 1.1 christos cydra)
1281 1.1 christos basic_machine=cydra-cydrome
1282 1.1 christos ;;
1283 1.1 christos orion)
1284 1.1 christos basic_machine=orion-highlevel
1285 1.1 christos ;;
1286 1.1 christos orion105)
1287 1.1 christos basic_machine=clipper-highlevel
1288 1.1 christos ;;
1289 1.1 christos mac | mpw | mac-mpw)
1290 1.1 christos basic_machine=m68k-apple
1291 1.1 christos ;;
1292 1.1 christos pmac | pmac-mpw)
1293 1.1 christos basic_machine=powerpc-apple
1294 1.1 christos ;;
1295 1.1 christos *-unknown)
1296 1.1 christos # Make sure to match an already-canonicalized machine name.
1297 1.1 christos ;;
1298 1.1 christos *)
1299 1.1 christos echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1300 1.1 christos exit 1
1301 1.1 christos ;;
1302 1.1 christos esac
1303 1.1 christos
1304 1.1 christos # Here we canonicalize certain aliases for manufacturers.
1305 1.1 christos case $basic_machine in
1306 1.1 christos *-digital*)
1307 1.1 christos basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1308 1.1 christos ;;
1309 1.1 christos *-commodore*)
1310 1.1 christos basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1311 1.1 christos ;;
1312 1.1 christos *)
1313 1.1 christos ;;
1314 1.1 christos esac
1315 1.1 christos
1316 1.1 christos # Decode manufacturer-specific aliases for certain operating systems.
1317 1.1 christos
1318 1.1 christos if [ x"$os" != x"" ]
1319 1.1 christos then
1320 1.1 christos case $os in
1321 1.1.1.2 christos # First match some system type aliases
1322 1.1.1.2 christos # that might get confused with valid system types.
1323 1.1 christos # -solaris* is a basic system type, with this one exception.
1324 1.1.1.2 christos -auroraux)
1325 1.1.1.2 christos os=-auroraux
1326 1.1 christos ;;
1327 1.1 christos -solaris1 | -solaris1.*)
1328 1.1 christos os=`echo $os | sed -e 's|solaris1|sunos4|'`
1329 1.1 christos ;;
1330 1.1 christos -solaris)
1331 1.1 christos os=-solaris2
1332 1.1 christos ;;
1333 1.1 christos -svr4*)
1334 1.1 christos os=-sysv4
1335 1.1 christos ;;
1336 1.1 christos -unixware*)
1337 1.1 christos os=-sysv4.2uw
1338 1.1 christos ;;
1339 1.1 christos -gnu/linux*)
1340 1.1 christos os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1341 1.1 christos ;;
1342 1.1 christos # First accept the basic system types.
1343 1.1 christos # The portable systems comes first.
1344 1.1 christos # Each alternative MUST END IN A *, to match a version number.
1345 1.1 christos # -sysv* is not here because it comes later, after sysvr4.
1346 1.1 christos -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1347 1.1 christos | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1348 1.1 christos | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1349 1.1 christos | -sym* | -kopensolaris* \
1350 1.1 christos | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1351 1.1 christos | -aos* | -aros* \
1352 1.1 christos | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1353 1.1 christos | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1354 1.1 christos | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1355 1.1 christos | -openbsd* | -solidbsd* \
1356 1.1 christos | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1357 1.1 christos | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1358 1.1 christos | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1359 1.1 christos | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1360 1.1 christos | -chorusos* | -chorusrdb* | -cegcc* \
1361 1.1.1.2 christos | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1362 1.1.1.2 christos | -mingw32* | -linux-gnu* | -linux-android* \
1363 1.1.1.2 christos | -linux-newlib* | -linux-uclibc* \
1364 1.1 christos | -uxpv* | -beos* | -mpeix* | -udk* \
1365 1.1 christos | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1366 1.1 christos | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1367 1.1 christos | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1368 1.1 christos | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1369 1.1 christos | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1370 1.1 christos | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1371 1.1 christos | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1372 1.1 christos # Remember, each alternative MUST END IN *, to match a version number.
1373 1.1 christos ;;
1374 1.1 christos -qnx*)
1375 1.1 christos case $basic_machine in
1376 1.1 christos x86-* | i*86-*)
1377 1.1 christos ;;
1378 1.1 christos *)
1379 1.1 christos os=-nto$os
1380 1.1 christos ;;
1381 1.1 christos esac
1382 1.1 christos ;;
1383 1.1 christos -nto-qnx*)
1384 1.1 christos ;;
1385 1.1 christos -nto*)
1386 1.1 christos os=`echo $os | sed -e 's|nto|nto-qnx|'`
1387 1.1 christos ;;
1388 1.1 christos -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1389 1.1 christos | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1390 1.1 christos | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1391 1.1 christos ;;
1392 1.1 christos -mac*)
1393 1.1 christos os=`echo $os | sed -e 's|mac|macos|'`
1394 1.1 christos ;;
1395 1.1 christos -linux-dietlibc)
1396 1.1 christos os=-linux-dietlibc
1397 1.1 christos ;;
1398 1.1 christos -linux*)
1399 1.1 christos os=`echo $os | sed -e 's|linux|linux-gnu|'`
1400 1.1 christos ;;
1401 1.1 christos -sunos5*)
1402 1.1 christos os=`echo $os | sed -e 's|sunos5|solaris2|'`
1403 1.1 christos ;;
1404 1.1 christos -sunos6*)
1405 1.1 christos os=`echo $os | sed -e 's|sunos6|solaris3|'`
1406 1.1 christos ;;
1407 1.1 christos -opened*)
1408 1.1 christos os=-openedition
1409 1.1 christos ;;
1410 1.1.1.2 christos -os400*)
1411 1.1 christos os=-os400
1412 1.1 christos ;;
1413 1.1 christos -wince*)
1414 1.1 christos os=-wince
1415 1.1 christos ;;
1416 1.1 christos -osfrose*)
1417 1.1 christos os=-osfrose
1418 1.1 christos ;;
1419 1.1 christos -osf*)
1420 1.1 christos os=-osf
1421 1.1 christos ;;
1422 1.1 christos -utek*)
1423 1.1 christos os=-bsd
1424 1.1 christos ;;
1425 1.1 christos -dynix*)
1426 1.1 christos os=-bsd
1427 1.1 christos ;;
1428 1.1 christos -acis*)
1429 1.1 christos os=-aos
1430 1.1 christos ;;
1431 1.1 christos -atheos*)
1432 1.1 christos os=-atheos
1433 1.1 christos ;;
1434 1.1 christos -syllable*)
1435 1.1 christos os=-syllable
1436 1.1 christos ;;
1437 1.1 christos -386bsd)
1438 1.1 christos os=-bsd
1439 1.1 christos ;;
1440 1.1 christos -ctix* | -uts*)
1441 1.1 christos os=-sysv
1442 1.1 christos ;;
1443 1.1 christos -nova*)
1444 1.1 christos os=-rtmk-nova
1445 1.1 christos ;;
1446 1.1 christos -ns2 )
1447 1.1 christos os=-nextstep2
1448 1.1 christos ;;
1449 1.1 christos -nsk*)
1450 1.1 christos os=-nsk
1451 1.1 christos ;;
1452 1.1 christos # Preserve the version number of sinix5.
1453 1.1 christos -sinix5.*)
1454 1.1 christos os=`echo $os | sed -e 's|sinix|sysv|'`
1455 1.1 christos ;;
1456 1.1 christos -sinix*)
1457 1.1 christos os=-sysv4
1458 1.1 christos ;;
1459 1.1.1.2 christos -tpf*)
1460 1.1 christos os=-tpf
1461 1.1 christos ;;
1462 1.1 christos -triton*)
1463 1.1 christos os=-sysv3
1464 1.1 christos ;;
1465 1.1 christos -oss*)
1466 1.1 christos os=-sysv3
1467 1.1 christos ;;
1468 1.1 christos -svr4)
1469 1.1 christos os=-sysv4
1470 1.1 christos ;;
1471 1.1 christos -svr3)
1472 1.1 christos os=-sysv3
1473 1.1 christos ;;
1474 1.1 christos -sysvr4)
1475 1.1 christos os=-sysv4
1476 1.1 christos ;;
1477 1.1 christos # This must come after -sysvr4.
1478 1.1 christos -sysv*)
1479 1.1 christos ;;
1480 1.1 christos -ose*)
1481 1.1 christos os=-ose
1482 1.1 christos ;;
1483 1.1 christos -es1800*)
1484 1.1 christos os=-ose
1485 1.1 christos ;;
1486 1.1 christos -xenix)
1487 1.1 christos os=-xenix
1488 1.1 christos ;;
1489 1.1 christos -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1490 1.1 christos os=-mint
1491 1.1 christos ;;
1492 1.1 christos -aros*)
1493 1.1 christos os=-aros
1494 1.1 christos ;;
1495 1.1 christos -kaos*)
1496 1.1 christos os=-kaos
1497 1.1 christos ;;
1498 1.1 christos -zvmoe)
1499 1.1 christos os=-zvmoe
1500 1.1 christos ;;
1501 1.1 christos -dicos*)
1502 1.1 christos os=-dicos
1503 1.1 christos ;;
1504 1.1.1.2 christos -nacl*)
1505 1.1.1.2 christos ;;
1506 1.1 christos -none)
1507 1.1 christos ;;
1508 1.1 christos *)
1509 1.1 christos # Get rid of the `-' at the beginning of $os.
1510 1.1 christos os=`echo $os | sed 's/[^-]*-//'`
1511 1.1 christos echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1512 1.1 christos exit 1
1513 1.1 christos ;;
1514 1.1 christos esac
1515 1.1 christos else
1516 1.1 christos
1517 1.1 christos # Here we handle the default operating systems that come with various machines.
1518 1.1 christos # The value should be what the vendor currently ships out the door with their
1519 1.1 christos # machine or put another way, the most popular os provided with the machine.
1520 1.1 christos
1521 1.1 christos # Note that if you're going to try to match "-MANUFACTURER" here (say,
1522 1.1 christos # "-sun"), then you have to tell the case statement up towards the top
1523 1.1 christos # that MANUFACTURER isn't an operating system. Otherwise, code above
1524 1.1 christos # will signal an error saying that MANUFACTURER isn't an operating
1525 1.1 christos # system, and we'll never get to this point.
1526 1.1 christos
1527 1.1 christos case $basic_machine in
1528 1.1.1.2 christos score-*)
1529 1.1 christos os=-elf
1530 1.1 christos ;;
1531 1.1.1.2 christos spu-*)
1532 1.1 christos os=-elf
1533 1.1 christos ;;
1534 1.1 christos *-acorn)
1535 1.1 christos os=-riscix1.2
1536 1.1 christos ;;
1537 1.1 christos arm*-rebel)
1538 1.1 christos os=-linux
1539 1.1 christos ;;
1540 1.1 christos arm*-semi)
1541 1.1 christos os=-aout
1542 1.1 christos ;;
1543 1.1.1.2 christos c4x-* | tic4x-*)
1544 1.1.1.2 christos os=-coff
1545 1.1.1.2 christos ;;
1546 1.1.1.2 christos tic54x-*)
1547 1.1.1.2 christos os=-coff
1548 1.1.1.2 christos ;;
1549 1.1.1.2 christos tic55x-*)
1550 1.1.1.2 christos os=-coff
1551 1.1.1.2 christos ;;
1552 1.1.1.2 christos tic6x-*)
1553 1.1.1.2 christos os=-coff
1554 1.1 christos ;;
1555 1.1 christos # This must come before the *-dec entry.
1556 1.1 christos pdp10-*)
1557 1.1 christos os=-tops20
1558 1.1 christos ;;
1559 1.1 christos pdp11-*)
1560 1.1 christos os=-none
1561 1.1 christos ;;
1562 1.1 christos *-dec | vax-*)
1563 1.1 christos os=-ultrix4.2
1564 1.1 christos ;;
1565 1.1 christos m68*-apollo)
1566 1.1 christos os=-domain
1567 1.1 christos ;;
1568 1.1 christos i386-sun)
1569 1.1 christos os=-sunos4.0.2
1570 1.1 christos ;;
1571 1.1 christos m68000-sun)
1572 1.1 christos os=-sunos3
1573 1.1 christos ;;
1574 1.1 christos m68*-cisco)
1575 1.1 christos os=-aout
1576 1.1 christos ;;
1577 1.1.1.2 christos mep-*)
1578 1.1 christos os=-elf
1579 1.1 christos ;;
1580 1.1 christos mips*-cisco)
1581 1.1 christos os=-elf
1582 1.1 christos ;;
1583 1.1 christos mips*-*)
1584 1.1 christos os=-elf
1585 1.1 christos ;;
1586 1.1 christos or32-*)
1587 1.1 christos os=-coff
1588 1.1 christos ;;
1589 1.1 christos *-tti) # must be before sparc entry or we get the wrong os.
1590 1.1 christos os=-sysv3
1591 1.1 christos ;;
1592 1.1 christos sparc-* | *-sun)
1593 1.1 christos os=-sunos4.1.1
1594 1.1 christos ;;
1595 1.1 christos *-be)
1596 1.1 christos os=-beos
1597 1.1 christos ;;
1598 1.1 christos *-haiku)
1599 1.1 christos os=-haiku
1600 1.1 christos ;;
1601 1.1 christos *-ibm)
1602 1.1 christos os=-aix
1603 1.1 christos ;;
1604 1.1.1.2 christos *-knuth)
1605 1.1 christos os=-mmixware
1606 1.1 christos ;;
1607 1.1 christos *-wec)
1608 1.1 christos os=-proelf
1609 1.1 christos ;;
1610 1.1 christos *-winbond)
1611 1.1 christos os=-proelf
1612 1.1 christos ;;
1613 1.1 christos *-oki)
1614 1.1 christos os=-proelf
1615 1.1 christos ;;
1616 1.1 christos *-hp)
1617 1.1 christos os=-hpux
1618 1.1 christos ;;
1619 1.1 christos *-hitachi)
1620 1.1 christos os=-hiux
1621 1.1 christos ;;
1622 1.1 christos i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1623 1.1 christos os=-sysv
1624 1.1 christos ;;
1625 1.1 christos *-cbm)
1626 1.1 christos os=-amigaos
1627 1.1 christos ;;
1628 1.1 christos *-dg)
1629 1.1 christos os=-dgux
1630 1.1 christos ;;
1631 1.1 christos *-dolphin)
1632 1.1 christos os=-sysv3
1633 1.1 christos ;;
1634 1.1 christos m68k-ccur)
1635 1.1 christos os=-rtu
1636 1.1 christos ;;
1637 1.1 christos m88k-omron*)
1638 1.1 christos os=-luna
1639 1.1 christos ;;
1640 1.1 christos *-next )
1641 1.1 christos os=-nextstep
1642 1.1 christos ;;
1643 1.1 christos *-sequent)
1644 1.1 christos os=-ptx
1645 1.1 christos ;;
1646 1.1 christos *-crds)
1647 1.1 christos os=-unos
1648 1.1 christos ;;
1649 1.1 christos *-ns)
1650 1.1 christos os=-genix
1651 1.1 christos ;;
1652 1.1 christos i370-*)
1653 1.1 christos os=-mvs
1654 1.1 christos ;;
1655 1.1 christos *-next)
1656 1.1 christos os=-nextstep3
1657 1.1 christos ;;
1658 1.1 christos *-gould)
1659 1.1 christos os=-sysv
1660 1.1 christos ;;
1661 1.1 christos *-highlevel)
1662 1.1 christos os=-bsd
1663 1.1 christos ;;
1664 1.1 christos *-encore)
1665 1.1 christos os=-bsd
1666 1.1 christos ;;
1667 1.1 christos *-sgi)
1668 1.1 christos os=-irix
1669 1.1 christos ;;
1670 1.1 christos *-siemens)
1671 1.1 christos os=-sysv4
1672 1.1 christos ;;
1673 1.1 christos *-masscomp)
1674 1.1 christos os=-rtu
1675 1.1 christos ;;
1676 1.1 christos f30[01]-fujitsu | f700-fujitsu)
1677 1.1 christos os=-uxpv
1678 1.1 christos ;;
1679 1.1 christos *-rom68k)
1680 1.1 christos os=-coff
1681 1.1 christos ;;
1682 1.1 christos *-*bug)
1683 1.1 christos os=-coff
1684 1.1 christos ;;
1685 1.1 christos *-apple)
1686 1.1 christos os=-macos
1687 1.1 christos ;;
1688 1.1 christos *-atari*)
1689 1.1 christos os=-mint
1690 1.1 christos ;;
1691 1.1 christos *)
1692 1.1 christos os=-none
1693 1.1 christos ;;
1694 1.1 christos esac
1695 1.1 christos fi
1696 1.1 christos
1697 1.1 christos # Here we handle the case where we know the os, and the CPU type, but not the
1698 1.1 christos # manufacturer. We pick the logical manufacturer.
1699 1.1 christos vendor=unknown
1700 1.1 christos case $basic_machine in
1701 1.1 christos *-unknown)
1702 1.1 christos case $os in
1703 1.1 christos -riscix*)
1704 1.1 christos vendor=acorn
1705 1.1 christos ;;
1706 1.1 christos -sunos*)
1707 1.1 christos vendor=sun
1708 1.1 christos ;;
1709 1.1 christos -cnk*|-aix*)
1710 1.1 christos vendor=ibm
1711 1.1 christos ;;
1712 1.1 christos -beos*)
1713 1.1 christos vendor=be
1714 1.1 christos ;;
1715 1.1 christos -hpux*)
1716 1.1 christos vendor=hp
1717 1.1 christos ;;
1718 1.1 christos -mpeix*)
1719 1.1 christos vendor=hp
1720 1.1 christos ;;
1721 1.1 christos -hiux*)
1722 1.1 christos vendor=hitachi
1723 1.1 christos ;;
1724 1.1 christos -unos*)
1725 1.1 christos vendor=crds
1726 1.1 christos ;;
1727 1.1 christos -dgux*)
1728 1.1 christos vendor=dg
1729 1.1 christos ;;
1730 1.1 christos -luna*)
1731 1.1 christos vendor=omron
1732 1.1 christos ;;
1733 1.1 christos -genix*)
1734 1.1 christos vendor=ns
1735 1.1 christos ;;
1736 1.1 christos -mvs* | -opened*)
1737 1.1 christos vendor=ibm
1738 1.1 christos ;;
1739 1.1 christos -os400*)
1740 1.1 christos vendor=ibm
1741 1.1 christos ;;
1742 1.1 christos -ptx*)
1743 1.1 christos vendor=sequent
1744 1.1 christos ;;
1745 1.1 christos -tpf*)
1746 1.1 christos vendor=ibm
1747 1.1 christos ;;
1748 1.1 christos -vxsim* | -vxworks* | -windiss*)
1749 1.1 christos vendor=wrs
1750 1.1 christos ;;
1751 1.1 christos -aux*)
1752 1.1 christos vendor=apple
1753 1.1 christos ;;
1754 1.1 christos -hms*)
1755 1.1 christos vendor=hitachi
1756 1.1 christos ;;
1757 1.1 christos -mpw* | -macos*)
1758 1.1 christos vendor=apple
1759 1.1 christos ;;
1760 1.1 christos -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1761 1.1 christos vendor=atari
1762 1.1 christos ;;
1763 1.1 christos -vos*)
1764 1.1 christos vendor=stratus
1765 1.1 christos ;;
1766 1.1 christos esac
1767 1.1 christos basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1768 1.1 christos ;;
1769 1.1 christos esac
1770 1.1 christos
1771 1.1 christos echo $basic_machine$os
1772 1.1 christos exit
1773 1.1 christos
1774 1.1 christos # Local variables:
1775 1.1 christos # eval: (add-hook 'write-file-hooks 'time-stamp)
1776 1.1 christos # time-stamp-start: "timestamp='"
1777 1.1 christos # time-stamp-format: "%:y-%02m-%02d"
1778 1.1 christos # time-stamp-end: "'"
1779 1.1 christos # End:
1780