2
2
# Configuration validation subroutine script.
3
3
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
4
# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
5
# Free Software Foundation, Inc.
8
9
# This file is (in principle) common to ALL GNU software.
9
10
# The presence of a machine in this file suggests that SOME GNU software
22
23
# You should have received a copy of the GNU General Public License
23
24
# along with this program; if not, write to the Free Software
24
# Foundation, Inc., 59 Temple Place - Suite 330,
25
# Boston, MA 02111-1307, USA.
25
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
27
28
# As a special exception to the GNU General Public License, if you
28
29
# distribute this file as part of a program that contains a
29
30
# configuration script generated by Autoconf, you may include it under
30
31
# the same distribution terms that you use for the rest of that program.
32
34
# Please send patches to <config-patches@gnu.org>. Submit a context
33
# diff and a properly formatted ChangeLog entry.
35
# diff and a properly formatted GNU ChangeLog entry.
35
37
# Configuration subroutine to validate and canonicalize a configuration type.
36
38
# Supply the specified configuration type as an argument.
37
39
# If it is invalid, we print an error message on stderr and exit with code 1.
38
40
# Otherwise, we print the canonical config type on stdout and succeed.
42
# You can get the latest version of this script from:
43
# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
40
45
# This file is supposed to be the same for all GNU packages
41
46
# and recognize all the CPU types, system types and aliases
42
47
# that are meaningful with *any* GNU software.
71
76
GNU config.sub ($timestamp)
73
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
74
Free Software Foundation, Inc.
78
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
79
2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
76
81
This is free software; see the source for copying conditions. There is NO
77
82
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
229
248
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
230
249
| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
231
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
251
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
232
253
| c4x | clipper \
233
254
| d10v | d30v | dlx | dsp16xx \
255
| fido | fr30 | frv \
235
256
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
236
257
| i370 | i860 | i960 | ia64 \
238
| m32r | m68000 | m68k | m88k | mcore \
260
| m32c | m32r | m32rle | m68000 | m68k | m88k \
261
| maxq | mb | microblaze | mcore | mep | metag \
239
262
| mips | mipsbe | mipseb | mipsel | mipsle \
241
264
| mips64 | mips64el \
265
| mips64octeon | mips64octeonel \
266
| mips64orion | mips64orionel \
267
| mips64r5900 | mips64r5900el \
242
268
| mips64vr | mips64vrel \
243
| mips64orion | mips64orionel \
244
269
| mips64vr4100 | mips64vr4100el \
245
270
| mips64vr4300 | mips64vr4300el \
246
271
| mips64vr5000 | mips64vr5000el \
272
| mips64vr5900 | mips64vr5900el \
247
273
| mipsisa32 | mipsisa32el \
248
274
| mipsisa32r2 | mipsisa32r2el \
249
275
| mipsisa64 | mipsisa64el \
276
| mipsisa64r2 | mipsisa64r2el \
250
277
| mipsisa64sb1 | mipsisa64sb1el \
251
278
| mipsisa64sr71k | mipsisa64sr71kel \
252
279
| mipstx39 | mipstx39el \
253
280
| mn10200 | mn10300 \
255
285
| ns16k | ns32k \
257
287
| pdp10 | pdp11 | pj | pjl \
258
288
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
261
| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
292
| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
262
293
| sh64 | sh64le \
263
| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv8 | sparcv9 | sparcv9b \
294
| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
295
| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
265
297
| tahoe | thumb | tic4x | tic80 | tron \
268
| x86 | xscale | xstormy16 | xtensa \
301
| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
270
303
basic_machine=$basic_machine-unknown
272
m6811 | m68hc11 | m6812 | m68hc12)
305
m6811 | m68hc11 | m6812 | m68hc12 | picochip)
273
306
# Motorola 68HC11/12.
274
307
basic_machine=$basic_machine-unknown
277
310
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
313
basic_machine=mt-unknown
280
316
# We use `pc' rather than `unknown'
281
317
# because (1) that's what they normally are, and
295
331
| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
296
332
| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
297
333
| arm-* | armbe-* | armle-* | armeb-* | armv*-* \
335
| bfin-* | bs2000-* \
300
336
| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
301
| clipper-* | cydra-* \
337
| clipper-* | craynv-* | cydra-* \
302
338
| d10v-* | d30v-* | dlx-* \
304
| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
340
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
305
341
| h8300-* | h8500-* \
306
342
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
307
343
| i*86-* | i860-* | i960-* | ia64-* \
344
| ip2k-* | iq2000-* \
346
| m32c-* | m32r-* | m32rle-* \
310
347
| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
311
| m88110-* | m88k-* | mcore-* \
348
| m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
312
349
| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
314
351
| mips64-* | mips64el-* \
352
| mips64octeon-* | mips64octeonel-* \
353
| mips64orion-* | mips64orionel-* \
354
| mips64r5900-* | mips64r5900el-* \
315
355
| mips64vr-* | mips64vrel-* \
316
| mips64orion-* | mips64orionel-* \
317
356
| mips64vr4100-* | mips64vr4100el-* \
318
357
| mips64vr4300-* | mips64vr4300el-* \
319
358
| mips64vr5000-* | mips64vr5000el-* \
359
| mips64vr5900-* | mips64vr5900el-* \
320
360
| mipsisa32-* | mipsisa32el-* \
321
361
| mipsisa32r2-* | mipsisa32r2el-* \
322
362
| mipsisa64-* | mipsisa64el-* \
363
| mipsisa64r2-* | mipsisa64r2el-* \
323
364
| mipsisa64sb1-* | mipsisa64sb1el-* \
324
365
| mipsisa64sr71k-* | mipsisa64sr71kel-* \
325
366
| mipstx39-* | mipstx39el-* \
327
| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
371
| none-* | np1-* | ns16k-* | ns32k-* \
329
373
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
330
374
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
332
| romp-* | rs6000-* \
334
| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
376
| romp-* | rs6000-* | rx-* \
377
| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
335
378
| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
336
| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
337
| sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
379
| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
381
| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
338
382
| tahoe-* | thumb-* \
339
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
383
| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
341
386
| v850-* | v850e-* | vax-* \
343
| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
388
| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
389
| xstormy16-* | xtensa*-* \
393
# Recognize the basic CPU types without company name, with glob match.
395
basic_machine=$basic_machine-unknown
348
397
# Recognize the various machine names and aliases which stand
349
398
# for a CPU type and a company and sometimes even an OS.
1118
1279
# Each alternative MUST END IN A *, to match a version number.
1119
1280
# -sysv* is not here because it comes later, after sysvr4.
1120
1281
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1121
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1122
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1282
| -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1283
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1284
| -sym* | -kopensolaris* \
1123
1285
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1125
1287
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1126
1288
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1127
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
1128
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1289
| -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1290
| -openbsd* | -solidbsd* \
1291
| -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1292
| -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1129
1293
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1130
1294
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1131
| -chorusos* | -chorusrdb* \
1295
| -chorusos* | -chorusrdb* | -cegcc* \
1132
1296
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1133
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
1297
| -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
1298
| -uxpv* | -beos* | -mpeix* | -udk* \
1134
1299
| -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1135
1300
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1136
1301
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1137
1302
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1138
1303
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1139
| -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
1304
| -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1305
| -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
1140
1306
# Remember, each alternative MUST END IN *, to match a version number.