|
@@ -2,9 +2,9 @@
|
|
|
# Configuration validation subroutine script.
|
|
|
# Copyright 1992-2024 Free Software Foundation, Inc.
|
|
|
|
|
|
-# shellcheck disable=SC2006,SC2268 # see below for rationale
|
|
|
+# shellcheck disable=SC2006,SC2268,SC2162 # see below for rationale
|
|
|
|
|
|
-timestamp='2024-01-01'
|
|
|
+timestamp='2024-05-27'
|
|
|
|
|
|
# This file is free software; you can redistribute it and/or modify it
|
|
|
# under the terms of the GNU General Public License as published by
|
|
@@ -120,7 +120,6 @@ case $# in
|
|
|
esac
|
|
|
|
|
|
# Split fields of configuration type
|
|
|
-# shellcheck disable=SC2162
|
|
|
saved_IFS=$IFS
|
|
|
IFS="-" read field1 field2 field3 field4 <<EOF
|
|
|
$1
|
|
@@ -142,10 +141,20 @@ case $1 in
|
|
|
# parts
|
|
|
maybe_os=$field2-$field3
|
|
|
case $maybe_os in
|
|
|
- nto-qnx* | linux-* | uclinux-uclibc* \
|
|
|
- | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
|
|
|
- | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
|
|
|
- | storm-chaos* | os2-emx* | rtmk-nova* | managarm-* \
|
|
|
+ cloudabi*-eabi* \
|
|
|
+ | kfreebsd*-gnu* \
|
|
|
+ | knetbsd*-gnu* \
|
|
|
+ | kopensolaris*-gnu* \
|
|
|
+ | linux-* \
|
|
|
+ | managarm-* \
|
|
|
+ | netbsd*-eabi* \
|
|
|
+ | netbsd*-gnu* \
|
|
|
+ | nto-qnx* \
|
|
|
+ | os2-emx* \
|
|
|
+ | rtmk-nova* \
|
|
|
+ | storm-chaos* \
|
|
|
+ | uclinux-gnu* \
|
|
|
+ | uclinux-uclibc* \
|
|
|
| windows-* )
|
|
|
basic_machine=$field1
|
|
|
basic_os=$maybe_os
|
|
@@ -161,8 +170,12 @@ case $1 in
|
|
|
esac
|
|
|
;;
|
|
|
*-*)
|
|
|
- # A lone config we happen to match not fitting any pattern
|
|
|
case $field1-$field2 in
|
|
|
+ # Shorthands that happen to contain a single dash
|
|
|
+ convex-c[12] | convex-c3[248])
|
|
|
+ basic_machine=$field2-convex
|
|
|
+ basic_os=
|
|
|
+ ;;
|
|
|
decstation-3100)
|
|
|
basic_machine=mips-dec
|
|
|
basic_os=
|
|
@@ -170,28 +183,88 @@ case $1 in
|
|
|
*-*)
|
|
|
# Second component is usually, but not always the OS
|
|
|
case $field2 in
|
|
|
- # Prevent following clause from handling this valid os
|
|
|
+ # Do not treat sunos as a manufacturer
|
|
|
sun*os*)
|
|
|
basic_machine=$field1
|
|
|
basic_os=$field2
|
|
|
;;
|
|
|
- zephyr*)
|
|
|
- basic_machine=$field1-unknown
|
|
|
- basic_os=$field2
|
|
|
- ;;
|
|
|
# Manufacturers
|
|
|
- dec* | mips* | sequent* | encore* | pc533* | sgi* | sony* \
|
|
|
- | att* | 7300* | 3300* | delta* | motorola* | sun[234]* \
|
|
|
- | unicom* | ibm* | next | hp | isi* | apollo | altos* \
|
|
|
- | convergent* | ncr* | news | 32* | 3600* | 3100* \
|
|
|
- | hitachi* | c[123]* | convex* | sun | crds | omron* | dg \
|
|
|
- | ultra | tti* | harris | dolphin | highlevel | gould \
|
|
|
- | cbm | ns | masscomp | apple | axis | knuth | cray \
|
|
|
- | microblaze* | sim | cisco \
|
|
|
- | oki | wec | wrs | winbond)
|
|
|
+ 3100* \
|
|
|
+ | 32* \
|
|
|
+ | 3300* \
|
|
|
+ | 3600* \
|
|
|
+ | 7300* \
|
|
|
+ | acorn \
|
|
|
+ | altos* \
|
|
|
+ | apollo \
|
|
|
+ | apple \
|
|
|
+ | atari \
|
|
|
+ | att* \
|
|
|
+ | axis \
|
|
|
+ | be \
|
|
|
+ | bull \
|
|
|
+ | cbm \
|
|
|
+ | ccur \
|
|
|
+ | cisco \
|
|
|
+ | commodore \
|
|
|
+ | convergent* \
|
|
|
+ | convex* \
|
|
|
+ | cray \
|
|
|
+ | crds \
|
|
|
+ | dec* \
|
|
|
+ | delta* \
|
|
|
+ | dg \
|
|
|
+ | digital \
|
|
|
+ | dolphin \
|
|
|
+ | encore* \
|
|
|
+ | gould \
|
|
|
+ | harris \
|
|
|
+ | highlevel \
|
|
|
+ | hitachi* \
|
|
|
+ | hp \
|
|
|
+ | ibm* \
|
|
|
+ | intergraph \
|
|
|
+ | isi* \
|
|
|
+ | knuth \
|
|
|
+ | masscomp \
|
|
|
+ | microblaze* \
|
|
|
+ | mips* \
|
|
|
+ | motorola* \
|
|
|
+ | ncr* \
|
|
|
+ | news \
|
|
|
+ | next \
|
|
|
+ | ns \
|
|
|
+ | oki \
|
|
|
+ | omron* \
|
|
|
+ | pc533* \
|
|
|
+ | rebel \
|
|
|
+ | rom68k \
|
|
|
+ | rombug \
|
|
|
+ | semi \
|
|
|
+ | sequent* \
|
|
|
+ | siemens \
|
|
|
+ | sgi* \
|
|
|
+ | siemens \
|
|
|
+ | sim \
|
|
|
+ | sni \
|
|
|
+ | sony* \
|
|
|
+ | stratus \
|
|
|
+ | sun \
|
|
|
+ | sun[234]* \
|
|
|
+ | tektronix \
|
|
|
+ | tti* \
|
|
|
+ | ultra \
|
|
|
+ | unicom* \
|
|
|
+ | wec \
|
|
|
+ | winbond \
|
|
|
+ | wrs)
|
|
|
basic_machine=$field1-$field2
|
|
|
basic_os=
|
|
|
;;
|
|
|
+ zephyr*)
|
|
|
+ basic_machine=$field1-unknown
|
|
|
+ basic_os=$field2
|
|
|
+ ;;
|
|
|
*)
|
|
|
basic_machine=$field1
|
|
|
basic_os=$field2
|
|
@@ -272,26 +345,6 @@ case $1 in
|
|
|
basic_machine=arm-unknown
|
|
|
basic_os=cegcc
|
|
|
;;
|
|
|
- convex-c1)
|
|
|
- basic_machine=c1-convex
|
|
|
- basic_os=bsd
|
|
|
- ;;
|
|
|
- convex-c2)
|
|
|
- basic_machine=c2-convex
|
|
|
- basic_os=bsd
|
|
|
- ;;
|
|
|
- convex-c32)
|
|
|
- basic_machine=c32-convex
|
|
|
- basic_os=bsd
|
|
|
- ;;
|
|
|
- convex-c34)
|
|
|
- basic_machine=c34-convex
|
|
|
- basic_os=bsd
|
|
|
- ;;
|
|
|
- convex-c38)
|
|
|
- basic_machine=c38-convex
|
|
|
- basic_os=bsd
|
|
|
- ;;
|
|
|
cray)
|
|
|
basic_machine=j90-cray
|
|
|
basic_os=unicos
|
|
@@ -714,15 +767,26 @@ case $basic_machine in
|
|
|
vendor=dec
|
|
|
basic_os=tops20
|
|
|
;;
|
|
|
- delta | 3300 | motorola-3300 | motorola-delta \
|
|
|
- | 3300-motorola | delta-motorola)
|
|
|
+ delta | 3300 | delta-motorola | 3300-motorola | motorola-delta | motorola-3300)
|
|
|
cpu=m68k
|
|
|
vendor=motorola
|
|
|
;;
|
|
|
- dpx2*)
|
|
|
+ # This used to be dpx2*, but that gets the RS6000-based
|
|
|
+ # DPX/20 and the x86-based DPX/2-100 wrong. See
|
|
|
+ # https://oldskool.silicium.org/stations/bull_dpx20.htm
|
|
|
+ # https://www.feb-patrimoine.com/english/bull_dpx2.htm
|
|
|
+ # https://www.feb-patrimoine.com/english/unix_and_bull.htm
|
|
|
+ dpx2 | dpx2[23]00 | dpx2[23]xx)
|
|
|
cpu=m68k
|
|
|
vendor=bull
|
|
|
- basic_os=sysv3
|
|
|
+ ;;
|
|
|
+ dpx2100 | dpx21xx)
|
|
|
+ cpu=i386
|
|
|
+ vendor=bull
|
|
|
+ ;;
|
|
|
+ dpx20)
|
|
|
+ cpu=rs6000
|
|
|
+ vendor=bull
|
|
|
;;
|
|
|
encore | umax | mmax)
|
|
|
cpu=ns32k
|
|
@@ -837,18 +901,6 @@ case $basic_machine in
|
|
|
next | m*-next)
|
|
|
cpu=m68k
|
|
|
vendor=next
|
|
|
- case $basic_os in
|
|
|
- openstep*)
|
|
|
- ;;
|
|
|
- nextstep*)
|
|
|
- ;;
|
|
|
- ns2*)
|
|
|
- basic_os=nextstep2
|
|
|
- ;;
|
|
|
- *)
|
|
|
- basic_os=nextstep3
|
|
|
- ;;
|
|
|
- esac
|
|
|
;;
|
|
|
np1)
|
|
|
cpu=np1
|
|
@@ -937,7 +989,6 @@ case $basic_machine in
|
|
|
;;
|
|
|
|
|
|
*-*)
|
|
|
- # shellcheck disable=SC2162
|
|
|
saved_IFS=$IFS
|
|
|
IFS="-" read cpu vendor <<EOF
|
|
|
$basic_machine
|
|
@@ -972,15 +1023,19 @@ unset -v basic_machine
|
|
|
|
|
|
# Decode basic machines in the full and proper CPU-Company form.
|
|
|
case $cpu-$vendor in
|
|
|
- # Here we handle the default manufacturer of certain CPU types in canonical form. It is in
|
|
|
- # some cases the only manufacturer, in others, it is the most popular.
|
|
|
+ # Here we handle the default manufacturer of certain CPU types in canonical form.
|
|
|
+ # It is in some cases the only manufacturer, in others, it is the most popular.
|
|
|
+ c[12]-convex | c[12]-unknown | c3[248]-convex | c3[248]-unknown)
|
|
|
+ vendor=convex
|
|
|
+ basic_os=${basic_os:-bsd}
|
|
|
+ ;;
|
|
|
craynv-unknown)
|
|
|
vendor=cray
|
|
|
basic_os=${basic_os:-unicosmp}
|
|
|
;;
|
|
|
c90-unknown | c90-cray)
|
|
|
vendor=cray
|
|
|
- basic_os=${Basic_os:-unicos}
|
|
|
+ basic_os=${basic_os:-unicos}
|
|
|
;;
|
|
|
fx80-unknown)
|
|
|
vendor=alliant
|
|
@@ -1026,11 +1081,29 @@ case $cpu-$vendor in
|
|
|
vendor=alt
|
|
|
basic_os=${basic_os:-linux-gnueabihf}
|
|
|
;;
|
|
|
- dpx20-unknown | dpx20-bull)
|
|
|
- cpu=rs6000
|
|
|
- vendor=bull
|
|
|
+
|
|
|
+ # Normalized CPU+vendor pairs that imply an OS, if not otherwise specified
|
|
|
+ m68k-isi)
|
|
|
+ basic_os=${basic_os:-sysv}
|
|
|
+ ;;
|
|
|
+ m68k-sony)
|
|
|
+ basic_os=${basic_os:-newsos}
|
|
|
+ ;;
|
|
|
+ m68k-tektronix)
|
|
|
+ basic_os=${basic_os:-bsd}
|
|
|
+ ;;
|
|
|
+ m88k-harris)
|
|
|
+ basic_os=${basic_os:-sysv3}
|
|
|
+ ;;
|
|
|
+ i386-bull | m68k-bull)
|
|
|
+ basic_os=${basic_os:-sysv3}
|
|
|
+ ;;
|
|
|
+ rs6000-bull)
|
|
|
basic_os=${basic_os:-bosx}
|
|
|
;;
|
|
|
+ mips-sni)
|
|
|
+ basic_os=${basic_os:-sysv4}
|
|
|
+ ;;
|
|
|
|
|
|
# Here we normalize CPU types irrespective of the vendor
|
|
|
amd64-*)
|
|
@@ -1038,7 +1111,7 @@ case $cpu-$vendor in
|
|
|
;;
|
|
|
blackfin-*)
|
|
|
cpu=bfin
|
|
|
- basic_os=linux
|
|
|
+ basic_os=${basic_os:-linux}
|
|
|
;;
|
|
|
c54x-*)
|
|
|
cpu=tic54x
|
|
@@ -1061,7 +1134,7 @@ case $cpu-$vendor in
|
|
|
;;
|
|
|
m68knommu-*)
|
|
|
cpu=m68k
|
|
|
- basic_os=linux
|
|
|
+ basic_os=${basic_os:-linux}
|
|
|
;;
|
|
|
m9s12z-* | m68hcs12z-* | hcs12z-* | s12z-*)
|
|
|
cpu=s12z
|
|
@@ -1071,7 +1144,7 @@ case $cpu-$vendor in
|
|
|
;;
|
|
|
parisc-*)
|
|
|
cpu=hppa
|
|
|
- basic_os=linux
|
|
|
+ basic_os=${basic_os:-linux}
|
|
|
;;
|
|
|
pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
|
|
|
cpu=i586
|
|
@@ -1085,9 +1158,6 @@ case $cpu-$vendor in
|
|
|
pentium4-*)
|
|
|
cpu=i786
|
|
|
;;
|
|
|
- pc98-*)
|
|
|
- cpu=i386
|
|
|
- ;;
|
|
|
ppc-* | ppcbe-*)
|
|
|
cpu=powerpc
|
|
|
;;
|
|
@@ -1121,9 +1191,6 @@ case $cpu-$vendor in
|
|
|
tx39el-*)
|
|
|
cpu=mipstx39el
|
|
|
;;
|
|
|
- x64-*)
|
|
|
- cpu=x86_64
|
|
|
- ;;
|
|
|
xscale-* | xscalee[bl]-*)
|
|
|
cpu=`echo "$cpu" | sed 's/^xscale/arm/'`
|
|
|
;;
|
|
@@ -1179,90 +1246,227 @@ case $cpu-$vendor in
|
|
|
# Recognize the canonical CPU types that are allowed with any
|
|
|
# company name.
|
|
|
case $cpu in
|
|
|
- 1750a | 580 \
|
|
|
+ 1750a \
|
|
|
+ | 580 \
|
|
|
+ | [cjt]90 \
|
|
|
| a29k \
|
|
|
- | aarch64 | aarch64_be | aarch64c | arm64ec \
|
|
|
+ | aarch64 \
|
|
|
+ | aarch64_be \
|
|
|
+ | aarch64c \
|
|
|
| abacus \
|
|
|
- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
|
|
|
- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
|
|
|
- | alphapca5[67] | alpha64pca5[67] \
|
|
|
+ | alpha \
|
|
|
+ | alpha64 \
|
|
|
+ | alpha64ev56 \
|
|
|
+ | alpha64ev6[78] \
|
|
|
+ | alpha64ev[4-8] \
|
|
|
+ | alpha64pca5[67] \
|
|
|
+ | alphaev56 \
|
|
|
+ | alphaev6[78] \
|
|
|
+ | alphaev[4-8] \
|
|
|
+ | alphapca5[67] \
|
|
|
| am33_2.0 \
|
|
|
| amdgcn \
|
|
|
- | arc | arceb | arc32 | arc64 \
|
|
|
- | arm | arm[lb]e | arme[lb] | armv* \
|
|
|
- | avr | avr32 \
|
|
|
+ | arc \
|
|
|
+ | arc32 \
|
|
|
+ | arc64 \
|
|
|
+ | arceb \
|
|
|
+ | arm \
|
|
|
+ | arm64e \
|
|
|
+ | arm64ec \
|
|
|
+ | arm[lb]e \
|
|
|
+ | arme[lb] \
|
|
|
+ | armv* \
|
|
|
| asmjs \
|
|
|
+ | avr \
|
|
|
+ | avr32 \
|
|
|
| ba \
|
|
|
- | be32 | be64 \
|
|
|
- | bfin | bpf | bs2000 \
|
|
|
- | c[123]* | c30 | [cjt]90 | c4x \
|
|
|
- | c8051 | clipper | craynv | csky | cydra \
|
|
|
- | d10v | d30v | dlx | dsp16xx \
|
|
|
- | e2k | elxsi | epiphany \
|
|
|
- | f30[01] | f700 | fido | fr30 | frv | ft32 | fx80 \
|
|
|
- | javascript \
|
|
|
- | h8300 | h8500 \
|
|
|
- | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
|
|
|
+ | be32 \
|
|
|
+ | be64 \
|
|
|
+ | bfin \
|
|
|
+ | bpf \
|
|
|
+ | bs2000 \
|
|
|
+ | c30 \
|
|
|
+ | c4x \
|
|
|
+ | c8051 \
|
|
|
+ | c[123]* \
|
|
|
+ | clipper \
|
|
|
+ | craynv \
|
|
|
+ | csky \
|
|
|
+ | cydra \
|
|
|
+ | d10v \
|
|
|
+ | d30v \
|
|
|
+ | dlx \
|
|
|
+ | dsp16xx \
|
|
|
+ | e2k \
|
|
|
+ | elxsi \
|
|
|
+ | epiphany \
|
|
|
+ | f30[01] \
|
|
|
+ | f700 \
|
|
|
+ | fido \
|
|
|
+ | fr30 \
|
|
|
+ | frv \
|
|
|
+ | ft32 \
|
|
|
+ | fx80 \
|
|
|
+ | h8300 \
|
|
|
+ | h8500 \
|
|
|
| hexagon \
|
|
|
- | i370 | i*86 | i860 | i960 | ia16 | ia64 \
|
|
|
- | ip2k | iq2000 \
|
|
|
+ | hppa \
|
|
|
+ | hppa1.[01] \
|
|
|
+ | hppa2.0 \
|
|
|
+ | hppa2.0[nw] \
|
|
|
+ | hppa64 \
|
|
|
+ | i*86 \
|
|
|
+ | i370 \
|
|
|
+ | i860 \
|
|
|
+ | i960 \
|
|
|
+ | ia16 \
|
|
|
+ | ia64 \
|
|
|
+ | ip2k \
|
|
|
+ | iq2000 \
|
|
|
+ | javascript \
|
|
|
| k1om \
|
|
|
| kvx \
|
|
|
- | le32 | le64 \
|
|
|
+ | le32 \
|
|
|
+ | le64 \
|
|
|
| lm32 \
|
|
|
- | loongarch32 | loongarch64 \
|
|
|
- | m32c | m32r | m32rle \
|
|
|
- | m5200 | m68000 | m680[012346]0 | m68360 | m683?2 | m68k \
|
|
|
- | m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x \
|
|
|
- | m88110 | m88k | maxq | mb | mcore | mep | metag \
|
|
|
- | microblaze | microblazeel \
|
|
|
+ | loongarch32 \
|
|
|
+ | loongarch64 \
|
|
|
+ | m32c \
|
|
|
+ | m32r \
|
|
|
+ | m32rle \
|
|
|
+ | m5200 \
|
|
|
+ | m68000 \
|
|
|
+ | m680[012346]0 \
|
|
|
+ | m6811 \
|
|
|
+ | m6812 \
|
|
|
+ | m68360 \
|
|
|
+ | m683?2 \
|
|
|
+ | m68hc11 \
|
|
|
+ | m68hc12 \
|
|
|
+ | m68hcs12x \
|
|
|
+ | m68k \
|
|
|
+ | m88110 \
|
|
|
+ | m88k \
|
|
|
+ | maxq \
|
|
|
+ | mb \
|
|
|
+ | mcore \
|
|
|
+ | mep \
|
|
|
+ | metag \
|
|
|
+ | microblaze \
|
|
|
+ | microblazeel \
|
|
|
| mips* \
|
|
|
| mmix \
|
|
|
- | mn10200 | mn10300 \
|
|
|
+ | mn10200 \
|
|
|
+ | mn10300 \
|
|
|
| moxie \
|
|
|
- | mt \
|
|
|
| msp430 \
|
|
|
+ | mt \
|
|
|
| nanomips* \
|
|
|
- | nds32 | nds32le | nds32be \
|
|
|
+ | nds32 \
|
|
|
+ | nds32be \
|
|
|
+ | nds32le \
|
|
|
| nfp \
|
|
|
- | nios | nios2 | nios2eb | nios2el \
|
|
|
- | none | np1 | ns16k | ns32k | nvptx \
|
|
|
+ | nios \
|
|
|
+ | nios2 \
|
|
|
+ | nios2eb \
|
|
|
+ | nios2el \
|
|
|
+ | none \
|
|
|
+ | np1 \
|
|
|
+ | ns16k \
|
|
|
+ | ns32k \
|
|
|
+ | nvptx \
|
|
|
| open8 \
|
|
|
| or1k* \
|
|
|
| or32 \
|
|
|
| orion \
|
|
|
+ | pdp10 \
|
|
|
+ | pdp11 \
|
|
|
| picochip \
|
|
|
- | pdp10 | pdp11 | pj | pjl | pn | power \
|
|
|
- | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
|
|
|
+ | pj \
|
|
|
+ | pjl \
|
|
|
+ | pn \
|
|
|
+ | power \
|
|
|
+ | powerpc \
|
|
|
+ | powerpc64 \
|
|
|
+ | powerpc64le \
|
|
|
+ | powerpcle \
|
|
|
+ | powerpcspe \
|
|
|
| pru \
|
|
|
| pyramid \
|
|
|
- | riscv | riscv32 | riscv32be | riscv64 | riscv64be \
|
|
|
- | rl78 | romp | rs6000 | rx \
|
|
|
- | s390 | s390x \
|
|
|
+ | riscv \
|
|
|
+ | riscv32 \
|
|
|
+ | riscv32be \
|
|
|
+ | riscv64 \
|
|
|
+ | riscv64be \
|
|
|
+ | rl78 \
|
|
|
+ | romp \
|
|
|
+ | rs6000 \
|
|
|
+ | rx \
|
|
|
+ | s390 \
|
|
|
+ | s390x \
|
|
|
| score \
|
|
|
- | sh | shl \
|
|
|
- | sh[1234] | sh[24]a | sh[24]ae[lb] | sh[23]e | she[lb] | sh[lb]e \
|
|
|
- | sh[1234]e[lb] | sh[12345][lb]e | sh[23]ele | sh64 | sh64le \
|
|
|
- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet \
|
|
|
+ | sh \
|
|
|
+ | sh64 \
|
|
|
+ | sh64le \
|
|
|
+ | sh[12345][lb]e \
|
|
|
+ | sh[1234] \
|
|
|
+ | sh[1234]e[lb] \
|
|
|
+ | sh[23]e \
|
|
|
+ | sh[23]ele \
|
|
|
+ | sh[24]a \
|
|
|
+ | sh[24]ae[lb] \
|
|
|
+ | sh[lb]e \
|
|
|
+ | she[lb] \
|
|
|
+ | shl \
|
|
|
+ | sparc \
|
|
|
+ | sparc64 \
|
|
|
+ | sparc64b \
|
|
|
+ | sparc64v \
|
|
|
+ | sparc86x \
|
|
|
+ | sparclet \
|
|
|
| sparclite \
|
|
|
- | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
|
|
|
+ | sparcv8 \
|
|
|
+ | sparcv9 \
|
|
|
+ | sparcv9b \
|
|
|
+ | sparcv9v \
|
|
|
| spu \
|
|
|
+ | sv1 \
|
|
|
+ | sx* \
|
|
|
| tahoe \
|
|
|
| thumbv7* \
|
|
|
- | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
|
|
|
+ | tic30 \
|
|
|
+ | tic4x \
|
|
|
+ | tic54x \
|
|
|
+ | tic55x \
|
|
|
+ | tic6x \
|
|
|
+ | tic80 \
|
|
|
| tron \
|
|
|
| ubicom32 \
|
|
|
- | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
|
|
|
+ | v70 \
|
|
|
+ | v810 \
|
|
|
+ | v850 \
|
|
|
+ | v850e \
|
|
|
+ | v850e1 \
|
|
|
+ | v850e2 \
|
|
|
+ | v850e2v3 \
|
|
|
+ | v850es \
|
|
|
| vax \
|
|
|
| vc4 \
|
|
|
| visium \
|
|
|
| w65 \
|
|
|
- | wasm32 | wasm64 \
|
|
|
+ | wasm32 \
|
|
|
+ | wasm64 \
|
|
|
| we32k \
|
|
|
- | x86 | x86_64 | xc16x | xgate | xps100 \
|
|
|
- | xstormy16 | xtensa* \
|
|
|
+ | x86 \
|
|
|
+ | x86_64 \
|
|
|
+ | xc16x \
|
|
|
+ | xgate \
|
|
|
+ | xps100 \
|
|
|
+ | xstormy16 \
|
|
|
+ | xtensa* \
|
|
|
| ymp \
|
|
|
- | z8k | z80)
|
|
|
+ | z80 \
|
|
|
+ | z8k)
|
|
|
;;
|
|
|
|
|
|
*)
|
|
@@ -1307,7 +1511,6 @@ case $basic_os in
|
|
|
os=`echo "$basic_os" | sed -e 's|nto-qnx|qnx|'`
|
|
|
;;
|
|
|
*-*)
|
|
|
- # shellcheck disable=SC2162
|
|
|
saved_IFS=$IFS
|
|
|
IFS="-" read kernel os <<EOF
|
|
|
$basic_os
|
|
@@ -1354,6 +1557,23 @@ case $os in
|
|
|
unixware*)
|
|
|
os=sysv4.2uw
|
|
|
;;
|
|
|
+ # The marketing names for NeXT's operating systems were
|
|
|
+ # NeXTSTEP, NeXTSTEP 2, OpenSTEP 3, OpenSTEP 4. 'openstep' is
|
|
|
+ # mapped to 'openstep3', but 'openstep1' and 'openstep2' are
|
|
|
+ # mapped to 'nextstep' and 'nextstep2', consistent with the
|
|
|
+ # treatment of SunOS/Solaris.
|
|
|
+ ns | ns1 | nextstep | nextstep1 | openstep1)
|
|
|
+ os=nextstep
|
|
|
+ ;;
|
|
|
+ ns2 | nextstep2 | openstep2)
|
|
|
+ os=nextstep2
|
|
|
+ ;;
|
|
|
+ ns3 | nextstep3 | openstep | openstep3)
|
|
|
+ os=openstep3
|
|
|
+ ;;
|
|
|
+ ns4 | nextstep4 | openstep4)
|
|
|
+ os=openstep4
|
|
|
+ ;;
|
|
|
# es1800 is here to avoid being matched by es* (a different OS)
|
|
|
es1800*)
|
|
|
os=ose
|
|
@@ -1424,6 +1644,7 @@ case $os in
|
|
|
;;
|
|
|
utek*)
|
|
|
os=bsd
|
|
|
+ vendor=`echo "$vendor" | sed -e 's|^unknown$|tektronix|'`
|
|
|
;;
|
|
|
dynix*)
|
|
|
os=bsd
|
|
@@ -1440,21 +1661,25 @@ case $os in
|
|
|
386bsd)
|
|
|
os=bsd
|
|
|
;;
|
|
|
- ctix* | uts*)
|
|
|
+ ctix*)
|
|
|
os=sysv
|
|
|
+ vendor=`echo "$vendor" | sed -e 's|^unknown$|convergent|'`
|
|
|
;;
|
|
|
- nova*)
|
|
|
- os=rtmk-nova
|
|
|
+ uts*)
|
|
|
+ os=sysv
|
|
|
;;
|
|
|
- ns2)
|
|
|
- os=nextstep2
|
|
|
+ nova*)
|
|
|
+ kernel=rtmk
|
|
|
+ os=nova
|
|
|
;;
|
|
|
# Preserve the version number of sinix5.
|
|
|
sinix5.*)
|
|
|
os=`echo "$os" | sed -e 's|sinix|sysv|'`
|
|
|
+ vendor=`echo "$vendor" | sed -e 's|^unknown$|sni|'`
|
|
|
;;
|
|
|
sinix*)
|
|
|
os=sysv4
|
|
|
+ vendor=`echo "$vendor" | sed -e 's|^unknown$|sni|'`
|
|
|
;;
|
|
|
tpf*)
|
|
|
os=tpf
|
|
@@ -1595,6 +1820,14 @@ case $cpu-$vendor in
|
|
|
os=
|
|
|
obj=elf
|
|
|
;;
|
|
|
+ # The -sgi and -siemens entries must be before the mips- entry
|
|
|
+ # or we get the wrong os.
|
|
|
+ *-sgi)
|
|
|
+ os=irix
|
|
|
+ ;;
|
|
|
+ *-siemens)
|
|
|
+ os=sysv4
|
|
|
+ ;;
|
|
|
mips*-cisco)
|
|
|
os=
|
|
|
obj=elf
|
|
@@ -1607,7 +1840,8 @@ case $cpu-$vendor in
|
|
|
os=
|
|
|
obj=coff
|
|
|
;;
|
|
|
- *-tti) # must be before sparc entry or we get the wrong os.
|
|
|
+ # This must be before the sparc-* entry or we get the wrong os.
|
|
|
+ *-tti)
|
|
|
os=sysv3
|
|
|
;;
|
|
|
sparc-* | *-sun)
|
|
@@ -1639,7 +1873,7 @@ case $cpu-$vendor in
|
|
|
os=hpux
|
|
|
;;
|
|
|
*-hitachi)
|
|
|
- os=hiux
|
|
|
+ os=hiuxwe2
|
|
|
;;
|
|
|
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
|
|
|
os=sysv
|
|
@@ -1683,12 +1917,6 @@ case $cpu-$vendor in
|
|
|
*-encore)
|
|
|
os=bsd
|
|
|
;;
|
|
|
- *-sgi)
|
|
|
- os=irix
|
|
|
- ;;
|
|
|
- *-siemens)
|
|
|
- os=sysv4
|
|
|
- ;;
|
|
|
*-masscomp)
|
|
|
os=rtu
|
|
|
;;
|
|
@@ -1735,40 +1963,193 @@ case $os in
|
|
|
ghcjs)
|
|
|
;;
|
|
|
# Now accept the basic system types.
|
|
|
- # The portable systems comes first.
|
|
|
# Each alternative MUST end in a * to match a version number.
|
|
|
- gnu* | android* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
|
|
|
- | *vms* | esix* | aix* | cnk* | sunos | sunos[34]* \
|
|
|
- | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
|
|
|
- | sym* | plan9* | psp* | sim* | xray* | os68k* | v88r* \
|
|
|
- | hiux* | abug | nacl* | netware* | windows* \
|
|
|
- | os9* | macos* | osx* | ios* | tvos* | watchos* \
|
|
|
- | mpw* | magic* | mmixware* | mon960* | lnews* \
|
|
|
- | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
|
|
|
- | aos* | aros* | cloudabi* | sortix* | twizzler* \
|
|
|
- | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
|
|
|
- | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
|
|
|
- | mirbsd* | netbsd* | dicos* | openedition* | ose* \
|
|
|
- | bitrig* | openbsd* | secbsd* | solidbsd* | libertybsd* | os108* \
|
|
|
- | ekkobsd* | freebsd* | riscix* | lynxos* | os400* \
|
|
|
- | bosx* | nextstep* | cxux* | oabi* \
|
|
|
- | ptx* | ecoff* | winnt* | domain* | vsta* \
|
|
|
- | udi* | lites* | ieee* | go32* | aux* | hcos* \
|
|
|
- | chorusrdb* | cegcc* | glidix* | serenity* \
|
|
|
- | cygwin* | msys* | moss* | proelf* | rtems* \
|
|
|
- | midipix* | mingw32* | mingw64* | mint* \
|
|
|
- | uxpv* | beos* | mpeix* | udk* | moxiebox* \
|
|
|
- | interix* | uwin* | mks* | rhapsody* | darwin* \
|
|
|
- | openstep* | oskit* | conix* | pw32* | nonstopux* \
|
|
|
- | storm-chaos* | tops10* | tenex* | tops20* | its* \
|
|
|
- | os2* | vos* | palmos* | uclinux* | nucleus* | morphos* \
|
|
|
- | scout* | superux* | sysv* | rtmk* | tpf* | windiss* \
|
|
|
- | powermax* | dnix* | nx6 | nx7 | sei* | dragonfly* \
|
|
|
- | skyos* | haiku* | rdos* | toppers* | drops* | es* \
|
|
|
- | onefs* | tirtos* | phoenix* | fuchsia* | redox* | bme* \
|
|
|
- | midnightbsd* | amdhsa* | unleashed* | emscripten* | wasi* \
|
|
|
- | nsk* | powerunix* | genode* | zvmoe* | qnx* | emx* | zephyr* \
|
|
|
- | fiwix* | mlibc* | cos* | mbr* | ironclad* )
|
|
|
+ abug \
|
|
|
+ | aix* \
|
|
|
+ | amdhsa* \
|
|
|
+ | amigados* \
|
|
|
+ | amigaos* \
|
|
|
+ | android* \
|
|
|
+ | aof* \
|
|
|
+ | aos* \
|
|
|
+ | aros* \
|
|
|
+ | atheos* \
|
|
|
+ | auroraux* \
|
|
|
+ | aux* \
|
|
|
+ | beos* \
|
|
|
+ | bitrig* \
|
|
|
+ | bme* \
|
|
|
+ | bosx* \
|
|
|
+ | bsd* \
|
|
|
+ | cegcc* \
|
|
|
+ | chorusos* \
|
|
|
+ | chorusrdb* \
|
|
|
+ | clix* \
|
|
|
+ | cloudabi* \
|
|
|
+ | cnk* \
|
|
|
+ | conix* \
|
|
|
+ | cos* \
|
|
|
+ | cxux* \
|
|
|
+ | cygwin* \
|
|
|
+ | darwin* \
|
|
|
+ | dgux* \
|
|
|
+ | dicos* \
|
|
|
+ | dnix* \
|
|
|
+ | domain* \
|
|
|
+ | dragonfly* \
|
|
|
+ | drops* \
|
|
|
+ | ebmon* \
|
|
|
+ | ecoff* \
|
|
|
+ | ekkobsd* \
|
|
|
+ | emscripten* \
|
|
|
+ | emx* \
|
|
|
+ | es* \
|
|
|
+ | fiwix* \
|
|
|
+ | freebsd* \
|
|
|
+ | fuchsia* \
|
|
|
+ | genix* \
|
|
|
+ | genode* \
|
|
|
+ | glidix* \
|
|
|
+ | gnu* \
|
|
|
+ | go32* \
|
|
|
+ | haiku* \
|
|
|
+ | hcos* \
|
|
|
+ | hiux* \
|
|
|
+ | hms* \
|
|
|
+ | hpux* \
|
|
|
+ | ieee* \
|
|
|
+ | interix* \
|
|
|
+ | ios* \
|
|
|
+ | iris* \
|
|
|
+ | irix* \
|
|
|
+ | ironclad* \
|
|
|
+ | isc* \
|
|
|
+ | its* \
|
|
|
+ | l4re* \
|
|
|
+ | libertybsd* \
|
|
|
+ | lites* \
|
|
|
+ | lnews* \
|
|
|
+ | luna* \
|
|
|
+ | lynxos* \
|
|
|
+ | mach* \
|
|
|
+ | macos* \
|
|
|
+ | magic* \
|
|
|
+ | mbr* \
|
|
|
+ | midipix* \
|
|
|
+ | midnightbsd* \
|
|
|
+ | mingw32* \
|
|
|
+ | mingw64* \
|
|
|
+ | minix* \
|
|
|
+ | mint* \
|
|
|
+ | mirbsd* \
|
|
|
+ | mks* \
|
|
|
+ | mlibc* \
|
|
|
+ | mmixware* \
|
|
|
+ | mon960* \
|
|
|
+ | morphos* \
|
|
|
+ | moss* \
|
|
|
+ | moxiebox* \
|
|
|
+ | mpeix* \
|
|
|
+ | mpw* \
|
|
|
+ | msdos* \
|
|
|
+ | msys* \
|
|
|
+ | mvs* \
|
|
|
+ | nacl* \
|
|
|
+ | netbsd* \
|
|
|
+ | netware* \
|
|
|
+ | newsos* \
|
|
|
+ | nextstep* \
|
|
|
+ | nindy* \
|
|
|
+ | nonstopux* \
|
|
|
+ | nova* \
|
|
|
+ | nsk* \
|
|
|
+ | nucleus* \
|
|
|
+ | nx6 \
|
|
|
+ | nx7 \
|
|
|
+ | oabi* \
|
|
|
+ | ohos* \
|
|
|
+ | onefs* \
|
|
|
+ | openbsd* \
|
|
|
+ | openedition* \
|
|
|
+ | openstep* \
|
|
|
+ | os108* \
|
|
|
+ | os2* \
|
|
|
+ | os400* \
|
|
|
+ | os68k* \
|
|
|
+ | os9* \
|
|
|
+ | ose* \
|
|
|
+ | osf* \
|
|
|
+ | oskit* \
|
|
|
+ | osx* \
|
|
|
+ | palmos* \
|
|
|
+ | phoenix* \
|
|
|
+ | plan9* \
|
|
|
+ | powermax* \
|
|
|
+ | powerunix* \
|
|
|
+ | proelf* \
|
|
|
+ | psos* \
|
|
|
+ | psp* \
|
|
|
+ | ptx* \
|
|
|
+ | pw32* \
|
|
|
+ | qnx* \
|
|
|
+ | rdos* \
|
|
|
+ | redox* \
|
|
|
+ | rhapsody* \
|
|
|
+ | riscix* \
|
|
|
+ | riscos* \
|
|
|
+ | rtems* \
|
|
|
+ | rtmk* \
|
|
|
+ | rtu* \
|
|
|
+ | scout* \
|
|
|
+ | secbsd* \
|
|
|
+ | sei* \
|
|
|
+ | serenity* \
|
|
|
+ | sim* \
|
|
|
+ | skyos* \
|
|
|
+ | solaris* \
|
|
|
+ | solidbsd* \
|
|
|
+ | sortix* \
|
|
|
+ | storm-chaos* \
|
|
|
+ | sunos \
|
|
|
+ | sunos[34]* \
|
|
|
+ | superux* \
|
|
|
+ | syllable* \
|
|
|
+ | sym* \
|
|
|
+ | sysv* \
|
|
|
+ | tenex* \
|
|
|
+ | tirtos* \
|
|
|
+ | toppers* \
|
|
|
+ | tops10* \
|
|
|
+ | tops20* \
|
|
|
+ | tpf* \
|
|
|
+ | tvos* \
|
|
|
+ | twizzler* \
|
|
|
+ | uclinux* \
|
|
|
+ | udi* \
|
|
|
+ | udk* \
|
|
|
+ | ultrix* \
|
|
|
+ | unicos* \
|
|
|
+ | uniplus* \
|
|
|
+ | unleashed* \
|
|
|
+ | unos* \
|
|
|
+ | uwin* \
|
|
|
+ | uxpv* \
|
|
|
+ | v88r* \
|
|
|
+ |*vms* \
|
|
|
+ | vos* \
|
|
|
+ | vsta* \
|
|
|
+ | vxsim* \
|
|
|
+ | vxworks* \
|
|
|
+ | wasi* \
|
|
|
+ | watchos* \
|
|
|
+ | wince* \
|
|
|
+ | windiss* \
|
|
|
+ | windows* \
|
|
|
+ | winnt* \
|
|
|
+ | xenix* \
|
|
|
+ | xray* \
|
|
|
+ | zephyr* \
|
|
|
+ | zvmoe* )
|
|
|
;;
|
|
|
# This one is extra strict with allowed versions
|
|
|
sco3.2v2 | sco3.2v[4-9]* | sco5v6*)
|
|
@@ -1829,9 +2210,9 @@ esac
|
|
|
case $kernel-$os-$obj in
|
|
|
linux-gnu*- | linux-android*- | linux-dietlibc*- | linux-llvm*- \
|
|
|
| linux-mlibc*- | linux-musl*- | linux-newlib*- \
|
|
|
- | linux-relibc*- | linux-uclibc*- )
|
|
|
+ | linux-relibc*- | linux-uclibc*- | linux-ohos*- )
|
|
|
;;
|
|
|
- uclinux-uclibc*- )
|
|
|
+ uclinux-uclibc*- | uclinux-gnu*- )
|
|
|
;;
|
|
|
managarm-mlibc*- | managarm-kernel*- )
|
|
|
;;
|
|
@@ -1856,7 +2237,7 @@ case $kernel-$os-$obj in
|
|
|
echo "Invalid configuration '$1': '$os' needs 'windows'." 1>&2
|
|
|
exit 1
|
|
|
;;
|
|
|
- kfreebsd*-gnu*- | kopensolaris*-gnu*-)
|
|
|
+ kfreebsd*-gnu*- | knetbsd*-gnu*- | netbsd*-gnu*- | kopensolaris*-gnu*-)
|
|
|
;;
|
|
|
vxworks-simlinux- | vxworks-simwindows- | vxworks-spe-)
|
|
|
;;
|
|
@@ -1864,6 +2245,8 @@ case $kernel-$os-$obj in
|
|
|
;;
|
|
|
os2-emx-)
|
|
|
;;
|
|
|
+ rtmk-nova-)
|
|
|
+ ;;
|
|
|
*-eabi*- | *-gnueabi*-)
|
|
|
;;
|
|
|
none--*)
|
|
@@ -1890,7 +2273,7 @@ case $vendor in
|
|
|
*-riscix*)
|
|
|
vendor=acorn
|
|
|
;;
|
|
|
- *-sunos*)
|
|
|
+ *-sunos* | *-solaris*)
|
|
|
vendor=sun
|
|
|
;;
|
|
|
*-cnk* | *-aix*)
|