config.sub: improve consistency of shorthands and X-Y partial names.

It seems to me that if ‘fooco’ expands to ‘cpu-fooco-foonlyos’,
where ‘cpu’ is whatever CPU was hip at the time Fooco was making
computers, then ‘cpu-fooco’ should also expand to ‘cpu-fooco-foonlyos’,
and ‘cpu-foonlyos’ should as well, except when ‘foonlyos’ is something
generic like ‘sysv’ or ‘bsd’.  Implement a bunch of cases where we
didn’t do this quite right.  Probably there are more.

Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
This commit is contained in:
Zack Weinberg 2024-06-03 15:28:42 -04:00 committed by Dmitry V. Levin
parent a75beeb9f1
commit a824e7f40b
2 changed files with 48 additions and 11 deletions

49
config.sub vendored
View File

@ -209,6 +209,7 @@ case $1 in
| dec* \
| delta* \
| dg \
| digital \
| dolphin \
| encore* \
| gould \
@ -231,8 +232,10 @@ case $1 in
| omron* \
| pc533* \
| sequent* \
| siemens \
| sgi* \
| sim \
| sni \
| sony* \
| sun \
| sun[234]* \
@ -1066,14 +1069,28 @@ case $cpu-$vendor in
basic_os=${basic_os:-linux-gnueabihf}
;;
# Normalized CPU+vendor pairs that imply an OS,
# if not otherwise specified
# 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-*)
@ -1613,6 +1630,7 @@ case $os in
;;
utek*)
os=bsd
vendor=`echo "$vendor" | sed -e 's|^unknown$|tektronix|'`
;;
dynix*)
os=bsd
@ -1629,7 +1647,11 @@ case $os in
386bsd)
os=bsd
;;
ctix* | uts*)
ctix*)
os=sysv
vendor=`echo "$vendor" | sed -e 's|^unknown$|convergent|'`
;;
uts*)
os=sysv
;;
nova*)
@ -1639,9 +1661,11 @@ case $os in
# 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
@ -1782,6 +1806,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
@ -1794,7 +1826,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)
@ -1826,7 +1859,7 @@ case $cpu-$vendor in
os=hpux
;;
*-hitachi)
os=hiux
os=hiuxwe2
;;
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
os=sysv
@ -1870,12 +1903,6 @@ case $cpu-$vendor in
*-encore)
os=bsd
;;
*-sgi)
os=irix
;;
*-siemens)
os=sysv4
;;
*-masscomp)
os=rtu
;;

View File

@ -302,6 +302,8 @@ hp9k893 hppa1.1-hp-hpux
hppa hppa-unknown-none
hppa-next hppa-next-nextstep
hppa1.0 hppa1.0-unknown-none
hppa1.0-hitachi hppa1.0-hitachi-hiuxwe2
hppa1.1-hitachi hppa1.1-hitachi-hiuxwe2
hppa2.0 hppa2.0-unknown-none
hppa2.0n hppa2.0n-unknown-none
hppa64 hppa64-unknown-none
@ -449,6 +451,7 @@ m68knommu m68k-unknown-linux-gnu
m68knommu-elf m68k-unknown-elf
m68knommu-linux m68k-unknown-linux-gnu
m88k m88k-unknown-none
m88k-harris m88k-harris-sysv3
m88k-omron m88k-omron-luna
m9s12z s12z-unknown-none
mac m68k-apple-macos
@ -477,7 +480,14 @@ mingw32ce arm-unknown-mingw32ce
mingw64 x86_64-pc-mingw64
miniframe m68000-convergent-sysv
mips mips-unknown-elf
mips-digital mips-dec-ultrix4.2
mips-sde-elf mips-sde-elf
mips-sgi mips-sgi-irix
mips-siemens mips-siemens-sysv4
mips-sinix mips-sni-sysv4
mips-sinix5 mips-sni-sysv4
mips-sinix5.0 mips-sni-sysv5.0
mips-sni mips-sni-sysv4
mips-zephyr mips-unknown-zephyr
mips16 mips16-unknown-elf
mips64 mips64-unknown-elf