diff --git a/recipes/libs/libffi/recipe.toml b/recipes/libs/libffi/recipe.toml
index 81db1894..d8f82efd 100644
--- a/recipes/libs/libffi/recipe.toml
+++ b/recipes/libs/libffi/recipe.toml
@@ -1,9 +1,36 @@
[source]
-tar = "https://sourceware.org/pub/libffi/libffi-3.2.1.tar.gz"
-blake3 = "a00597a8bd26304977d7c180135e91969a175a5108bd0024a03eb0636e6cb0bf"
-patches = [
- "redox.patch"
-]
+tar = "https://github.com/libffi/libffi/releases/download/v3.4.5/libffi-3.4.5.tar.gz"
+blake3 = "f9a2cfe1d2ac8d211c18c99f9cfafe5537925101bfb92c2d44d844680dd82264"
+script = """
+DYNAMIC_INIT
+cp ${COOKBOOK_HOST_SYSROOT}/share/aclocal/libtool.m4 ./m4/
+cp -fp ${COOKBOOK_HOST_SYSROOT}/share/libtool/build-aux/ltmain.sh ./
+cp ${COOKBOOK_HOST_SYSROOT}/share/aclocal/ltversion.m4 ./m4/
+
+autotools_recursive_regenerate -I$(realpath ./m4)
+"""
[build]
-template = "configure"
+template = "custom"
+script = """
+DYNAMIC_INIT
+COOKBOOK_CONFIGURE_FLAGS=(
+ --host="${GNU_TARGET}"
+ --prefix=""
+)
+if [[ -n "$COOKBOOK_PREFER_STATIC" ]]; then
+ COOKBOOK_CONFIGURE_FLAGS+=(
+ --enable-static
+ --disable-shared
+ )
+else
+ COOKBOOK_CONFIGURE_FLAGS+=(
+ --enable-shared
+ --enable-static
+ )
+fi
+cookbook_configure
+"""
+
+[package]
+shared-deps = ["libgcc"]
diff --git a/recipes/libs/libffi/redox.patch b/recipes/libs/libffi/redox.patch
deleted file mode 100644
index c96d3cf9..00000000
--- a/recipes/libs/libffi/redox.patch
+++ /dev/null
@@ -1,2820 +0,0 @@
---- source/config.sub 2014-11-12 04:59:58.000000000 -0700
-+++ source-newconfig.sub 2020-05-20 15:41:56.000000000 -0600
-@@ -1,8 +1,8 @@
- #! /bin/sh
- # Configuration validation subroutine script.
--# Copyright 1992-2013 Free Software Foundation, Inc.
-+# Copyright 1992-2020 Free Software Foundation, Inc.
-
--timestamp='2013-04-24'
-+timestamp='2020-05-04'
-
- # 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
-@@ -15,7 +15,7 @@
- # General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
--# along with this program; if not, see .
-+# along with this program; if not, see .
- #
- # As a special exception to the GNU General Public License, if you
- # distribute this file as part of a program that contains a
-@@ -25,7 +25,7 @@
- # of the GNU General Public License, version 3 ("GPLv3").
-
-
--# Please send patches with a ChangeLog entry to config-patches@gnu.org.
-+# Please send patches to .
- #
- # Configuration subroutine to validate and canonicalize a configuration type.
- # Supply the specified configuration type as an argument.
-@@ -33,7 +33,7 @@
- # Otherwise, we print the canonical config type on stdout and succeed.
-
- # You can get the latest version of this script from:
--# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
-
- # This file is supposed to be the same for all GNU packages
- # and recognize all the CPU types, system types and aliases
-@@ -53,12 +53,11 @@
- me=`echo "$0" | sed -e 's,.*/,,'`
-
- usage="\
--Usage: $0 [OPTION] CPU-MFR-OPSYS
-- $0 [OPTION] ALIAS
-+Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
-
- Canonicalize a configuration name.
-
--Operation modes:
-+Options:
- -h, --help print this help, then exit
- -t, --time-stamp print date of last modification, then exit
- -v, --version print version number, then exit
-@@ -68,7 +67,7 @@
- version="\
- GNU config.sub ($timestamp)
-
--Copyright 1992-2013 Free Software Foundation, Inc.
-+Copyright 1992-2020 Free Software Foundation, Inc.
-
- This is free software; see the source for copying conditions. There is NO
- warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-@@ -90,12 +89,12 @@
- - ) # Use stdin as input.
- break ;;
- -* )
-- echo "$me: invalid option $1$help"
-+ echo "$me: invalid option $1$help" >&2
- exit 1 ;;
-
- *local*)
- # First pass through any local machine types.
-- echo $1
-+ echo "$1"
- exit ;;
-
- * )
-@@ -111,1209 +110,1164 @@
- exit 1;;
- esac
-
--# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
--# Here we must recognize all the valid KERNEL-OS combinations.
--maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-+# Split fields of configuration type
-+# shellcheck disable=SC2162
-+IFS="-" read field1 field2 field3 field4 <&2
-+ exit 1
-+ ;;
-+ *-*-*-*)
-+ basic_machine=$field1-$field2
-+ os=$field3-$field4
-+ ;;
-+ *-*-*)
-+ # Ambiguous whether COMPANY is present, or skipped and KERNEL-OS is two
-+ # parts
-+ maybe_os=$field2-$field3
- case $maybe_os in
-- nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
-- linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
-- knetbsd*-gnu* | netbsd*-gnu* | \
-- kopensolaris*-gnu* | \
-- storm-chaos* | os2-emx* | rtmk-nova*)
-- os=-$maybe_os
-- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-+ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc \
-+ | linux-newlib* | linux-musl* | linux-uclibc* | uclinux-uclibc* \
-+ | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* \
-+ | netbsd*-eabi* | kopensolaris*-gnu* | cloudabi*-eabi* \
-+ | storm-chaos* | os2-emx* | rtmk-nova*)
-+ basic_machine=$field1
-+ os=$maybe_os
- ;;
- android-linux)
-- os=-linux-android
-- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
-+ basic_machine=$field1-unknown
-+ os=linux-android
- ;;
- *)
-- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-- if [ $basic_machine != $1 ]
-- then os=`echo $1 | sed 's/.*-/-/'`
-- else os=; fi
-+ basic_machine=$field1-$field2
-+ os=$field3
- ;;
- esac
--
--### Let's recognize common machines as not being operating systems so
--### that things like config.sub decstation-3100 work. We also
--### recognize some manufacturers as not being operating systems, so we
--### can provide default operating systems below.
--case $os in
-- -sun*os*)
-- # Prevent following clause from handling this invalid input.
- ;;
-- -dec* | -mips* | -sequent* | -encore* | -pc532* | -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*)
-+ *-*)
-+ # A lone config we happen to match not fitting any pattern
-+ case $field1-$field2 in
-+ decstation-3100)
-+ basic_machine=mips-dec
- os=
-- basic_machine=$1
-- ;;
-- -bluegene*)
-- os=-cnk
- ;;
-- -sim | -cisco | -oki | -wec | -winbond)
-+ *-*)
-+ # Second component is usually, but not always the OS
-+ case $field2 in
-+ # Prevent following clause from handling this valid os
-+ sun*os*)
-+ basic_machine=$field1
-+ 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)
-+ basic_machine=$field1-$field2
- os=
-- basic_machine=$1
-- ;;
-- -scout)
-- ;;
-- -wrs)
-- os=-vxworks
-- basic_machine=$1
-- ;;
-- -chorusos*)
-- os=-chorusos
-- basic_machine=$1
-- ;;
-- -chorusrdb)
-- os=-chorusrdb
-- basic_machine=$1
-- ;;
-- -hiux*)
-- os=-hiuxwe2
-- ;;
-- -sco6)
-- os=-sco5v6
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -sco5)
-- os=-sco3.2v5
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -sco4)
-- os=-sco3.2v4
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
- ;;
-- -sco3.2.[4-9]*)
-- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -sco3.2v[4-9]*)
-- # Don't forget version if it is 3.2v4 or newer.
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -sco5v6*)
-- # Don't forget version if it is 3.2v4 or newer.
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -sco*)
-- os=-sco3.2v2
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -udk*)
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -isc)
-- os=-isc2.2
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -clix*)
-- basic_machine=clipper-intergraph
-- ;;
-- -isc*)
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-- ;;
-- -lynx*178)
-- os=-lynxos178
-- ;;
-- -lynx*5)
-- os=-lynxos5
-- ;;
-- -lynx*)
-- os=-lynxos
-- ;;
-- -ptx*)
-- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
-- ;;
-- -windowsnt*)
-- os=`echo $os | sed -e 's/windowsnt/winnt/'`
-- ;;
-- -psos*)
-- os=-psos
-- ;;
-- -mint | -mint[0-9]*)
-- basic_machine=m68k-atari
-- os=-mint
-+ *)
-+ basic_machine=$field1
-+ os=$field2
- ;;
- esac
--
--# Decode aliases for certain CPU-COMPANY combinations.
--case $basic_machine in
-- # Recognize the basic CPU types without company name.
-- # Some are omitted here because they have special meanings below.
-- 1750a | 580 \
-- | a29k \
-- | aarch64 | aarch64_be \
-- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-- | am33_2.0 \
-- | arc | arceb \
-- | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
-- | avr | avr32 \
-- | be32 | be64 \
-- | bfin \
-- | c4x | clipper \
-- | d10v | d30v | dlx | dsp16xx \
-- | epiphany \
-- | fido | fr30 | frv \
-- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-- | hexagon \
-- | i370 | i860 | i960 | ia64 \
-- | ip2k | iq2000 \
-- | le32 | le64 \
-- | lm32 \
-- | m32c | m32r | m32rle | m68000 | m68k | m88k \
-- | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
-- | mips | mipsbe | mipseb | mipsel | mipsle \
-- | mips16 \
-- | mips64 | mips64el \
-- | mips64octeon | mips64octeonel \
-- | mips64orion | mips64orionel \
-- | mips64r5900 | mips64r5900el \
-- | mips64vr | mips64vrel \
-- | mips64vr4100 | mips64vr4100el \
-- | mips64vr4300 | mips64vr4300el \
-- | mips64vr5000 | mips64vr5000el \
-- | mips64vr5900 | mips64vr5900el \
-- | mipsisa32 | mipsisa32el \
-- | mipsisa32r2 | mipsisa32r2el \
-- | mipsisa64 | mipsisa64el \
-- | mipsisa64r2 | mipsisa64r2el \
-- | mipsisa64sb1 | mipsisa64sb1el \
-- | mipsisa64sr71k | mipsisa64sr71kel \
-- | mipsr5900 | mipsr5900el \
-- | mipstx39 | mipstx39el \
-- | mn10200 | mn10300 \
-- | moxie \
-- | mt \
-- | msp430 \
-- | nds32 | nds32le | nds32be \
-- | nios | nios2 | nios2eb | nios2el \
-- | ns16k | ns32k \
-- | open8 \
-- | or1k | or32 \
-- | pdp10 | pdp11 | pj | pjl \
-- | powerpc | powerpc64 | powerpc64le | powerpcle \
-- | pyramid \
-- | rl78 | rx \
-- | score \
-- | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
-- | sh64 | sh64le \
-- | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-- | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-- | spu \
-- | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
-- | ubicom32 \
-- | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
-- | we32k \
-- | x86 | xc16x | xstormy16 | xtensa \
-- | z8k | z80)
-- basic_machine=$basic_machine-unknown
-- ;;
-- c54x)
-- basic_machine=tic54x-unknown
-- ;;
-- c55x)
-- basic_machine=tic55x-unknown
-- ;;
-- c6x)
-- basic_machine=tic6x-unknown
-- ;;
-- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
-- basic_machine=$basic_machine-unknown
-- os=-none
-- ;;
-- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
-- ;;
-- ms1)
-- basic_machine=mt-unknown
-- ;;
--
-- strongarm | thumb | xscale)
-- basic_machine=arm-unknown
-- ;;
-- xgate)
-- basic_machine=$basic_machine-unknown
-- os=-none
-- ;;
-- xscaleeb)
-- basic_machine=armeb-unknown
-- ;;
--
-- xscaleel)
-- basic_machine=armel-unknown
-- ;;
--
-- # We use `pc' rather than `unknown'
-- # because (1) that's what they normally are, and
-- # (2) the word "unknown" tends to confuse beginning users.
-- i*86 | x86_64)
-- basic_machine=$basic_machine-pc
- ;;
-- # Object if more than one company name word.
-- *-*-*)
-- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-- exit 1
-- ;;
-- # Recognize the basic CPU types with company name.
-- 580-* \
-- | a29k-* \
-- | aarch64-* | aarch64_be-* \
-- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
-- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
-- | avr-* | avr32-* \
-- | be32-* | be64-* \
-- | bfin-* | bs2000-* \
-- | c[123]* | c30-* | [cjt]90-* | c4x-* \
-- | clipper-* | craynv-* | cydra-* \
-- | d10v-* | d30v-* | dlx-* \
-- | elxsi-* \
-- | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
-- | h8300-* | h8500-* \
-- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-- | hexagon-* \
-- | i*86-* | i860-* | i960-* | ia64-* \
-- | ip2k-* | iq2000-* \
-- | le32-* | le64-* \
-- | lm32-* \
-- | m32c-* | m32r-* | m32rle-* \
-- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-- | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
-- | microblaze-* | microblazeel-* \
-- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-- | mips16-* \
-- | mips64-* | mips64el-* \
-- | mips64octeon-* | mips64octeonel-* \
-- | mips64orion-* | mips64orionel-* \
-- | mips64r5900-* | mips64r5900el-* \
-- | mips64vr-* | mips64vrel-* \
-- | mips64vr4100-* | mips64vr4100el-* \
-- | mips64vr4300-* | mips64vr4300el-* \
-- | mips64vr5000-* | mips64vr5000el-* \
-- | mips64vr5900-* | mips64vr5900el-* \
-- | mipsisa32-* | mipsisa32el-* \
-- | mipsisa32r2-* | mipsisa32r2el-* \
-- | mipsisa64-* | mipsisa64el-* \
-- | mipsisa64r2-* | mipsisa64r2el-* \
-- | mipsisa64sb1-* | mipsisa64sb1el-* \
-- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
-- | mipsr5900-* | mipsr5900el-* \
-- | mipstx39-* | mipstx39el-* \
-- | mmix-* \
-- | mt-* \
-- | msp430-* \
-- | nds32-* | nds32le-* | nds32be-* \
-- | nios-* | nios2-* | nios2eb-* | nios2el-* \
-- | none-* | np1-* | ns16k-* | ns32k-* \
-- | open8-* \
-- | orion-* \
-- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
-- | pyramid-* \
-- | rl78-* | romp-* | rs6000-* | rx-* \
-- | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-- | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-- | sparclite-* \
-- | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
-- | tahoe-* \
-- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
-- | tile*-* \
-- | tron-* \
-- | ubicom32-* \
-- | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
-- | vax-* \
-- | we32k-* \
-- | x86-* | x86_64-* | xc16x-* | xps100-* \
-- | xstormy16-* | xtensa*-* \
-- | ymp-* \
-- | z8k-* | z80-*)
-- ;;
-- # Recognize the basic CPU types without company name, with glob match.
-- xtensa*)
-- basic_machine=$basic_machine-unknown
-+ esac
- ;;
-- # Recognize the various machine names and aliases which stand
-- # for a CPU type and a company and sometimes even an OS.
-+ *)
-+ # Convert single-component short-hands not valid as part of
-+ # multi-component configurations.
-+ case $field1 in
- 386bsd)
-- basic_machine=i386-unknown
-- os=-bsd
-- ;;
-- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-- basic_machine=m68000-att
-- ;;
-- 3b*)
-- basic_machine=we32k-att
-+ basic_machine=i386-pc
-+ os=bsd
- ;;
- a29khif)
- basic_machine=a29k-amd
-- os=-udi
-- ;;
-- abacus)
-- basic_machine=abacus-unknown
-+ os=udi
- ;;
- adobe68k)
- basic_machine=m68010-adobe
-- os=-scout
-+ os=scout
- ;;
-- alliant | fx80)
-+ alliant)
- basic_machine=fx80-alliant
-+ os=
- ;;
- altos | altos3068)
- basic_machine=m68k-altos
-+ os=
- ;;
- am29k)
- basic_machine=a29k-none
-- os=-bsd
-- ;;
-- amd64)
-- basic_machine=x86_64-pc
-- ;;
-- amd64-*)
-- basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ os=bsd
- ;;
- amdahl)
- basic_machine=580-amdahl
-- os=-sysv
-+ os=sysv
- ;;
-- amiga | amiga-*)
-+ amiga)
- basic_machine=m68k-unknown
-+ os=
- ;;
- amigaos | amigados)
- basic_machine=m68k-unknown
-- os=-amigaos
-+ os=amigaos
- ;;
- amigaunix | amix)
- basic_machine=m68k-unknown
-- os=-sysv4
-+ os=sysv4
- ;;
- apollo68)
- basic_machine=m68k-apollo
-- os=-sysv
-+ os=sysv
- ;;
- apollo68bsd)
- basic_machine=m68k-apollo
-- os=-bsd
-+ os=bsd
- ;;
- aros)
- basic_machine=i386-pc
-- os=-aros
-+ os=aros
- ;;
- aux)
- basic_machine=m68k-apple
-- os=-aux
-+ os=aux
- ;;
- balance)
- basic_machine=ns32k-sequent
-- os=-dynix
-+ os=dynix
- ;;
- blackfin)
- basic_machine=bfin-unknown
-- os=-linux
-- ;;
-- blackfin-*)
-- basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
-- os=-linux
-- ;;
-- bluegene*)
-- basic_machine=powerpc-ibm
-- os=-cnk
-- ;;
-- c54x-*)
-- basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- c55x-*)
-- basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- c6x-*)
-- basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- c90)
-- basic_machine=c90-cray
-- os=-unicos
-+ os=linux
- ;;
- cegcc)
- basic_machine=arm-unknown
-- os=-cegcc
-+ os=cegcc
- ;;
- convex-c1)
- basic_machine=c1-convex
-- os=-bsd
-+ os=bsd
- ;;
- convex-c2)
- basic_machine=c2-convex
-- os=-bsd
-+ os=bsd
- ;;
- convex-c32)
- basic_machine=c32-convex
-- os=-bsd
-+ os=bsd
- ;;
- convex-c34)
- basic_machine=c34-convex
-- os=-bsd
-+ os=bsd
- ;;
- convex-c38)
- basic_machine=c38-convex
-- os=-bsd
-+ os=bsd
- ;;
-- cray | j90)
-+ cray)
- basic_machine=j90-cray
-- os=-unicos
-- ;;
-- craynv)
-- basic_machine=craynv-cray
-- os=-unicosmp
-- ;;
-- cr16 | cr16-*)
-- basic_machine=cr16-unknown
-- os=-elf
-+ os=unicos
- ;;
- crds | unos)
- basic_machine=m68k-crds
-+ os=
- ;;
-- crisv32 | crisv32-* | etraxfs*)
-- basic_machine=crisv32-axis
-- ;;
-- cris | cris-* | etrax*)
-- basic_machine=cris-axis
-- ;;
-- crx)
-- basic_machine=crx-unknown
-- os=-elf
-- ;;
-- da30 | da30-*)
-+ da30)
- basic_machine=m68k-da30
-+ os=
- ;;
-- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
-+ decstation | pmax | pmin | dec3100 | decstatn)
- basic_machine=mips-dec
-- ;;
-- decsystem10* | dec10*)
-- basic_machine=pdp10-dec
-- os=-tops10
-- ;;
-- decsystem20* | dec20*)
-- basic_machine=pdp10-dec
-- os=-tops20
-- ;;
-- delta | 3300 | motorola-3300 | motorola-delta \
-- | 3300-motorola | delta-motorola)
-- basic_machine=m68k-motorola
-+ os=
- ;;
- delta88)
- basic_machine=m88k-motorola
-- os=-sysv3
-+ os=sysv3
- ;;
- dicos)
- basic_machine=i686-pc
-- os=-dicos
-+ os=dicos
- ;;
- djgpp)
- basic_machine=i586-pc
-- os=-msdosdjgpp
-- ;;
-- dpx20 | dpx20-*)
-- basic_machine=rs6000-bull
-- os=-bosx
-- ;;
-- dpx2* | dpx2*-bull)
-- basic_machine=m68k-bull
-- os=-sysv3
-+ os=msdosdjgpp
- ;;
- ebmon29k)
- basic_machine=a29k-amd
-- os=-ebmon
-- ;;
-- elxsi)
-- basic_machine=elxsi-elxsi
-- os=-bsd
-- ;;
-- encore | umax | mmax)
-- basic_machine=ns32k-encore
-+ os=ebmon
- ;;
- es1800 | OSE68k | ose68k | ose | OSE)
- basic_machine=m68k-ericsson
-- os=-ose
-- ;;
-- fx2800)
-- basic_machine=i860-alliant
-- ;;
-- genix)
-- basic_machine=ns32k-ns
-+ os=ose
- ;;
- gmicro)
- basic_machine=tron-gmicro
-- os=-sysv
-+ os=sysv
- ;;
- go32)
- basic_machine=i386-pc
-- os=-go32
-- ;;
-- h3050r* | hiux*)
-- basic_machine=hppa1.1-hitachi
-- os=-hiuxwe2
-+ os=go32
- ;;
- h8300hms)
- basic_machine=h8300-hitachi
-- os=-hms
-+ os=hms
- ;;
- h8300xray)
- basic_machine=h8300-hitachi
-- os=-xray
-+ os=xray
- ;;
- h8500hms)
- basic_machine=h8500-hitachi
-- os=-hms
-+ os=hms
- ;;
- harris)
- basic_machine=m88k-harris
-- os=-sysv3
-+ os=sysv3
- ;;
-- hp300-*)
-+ hp300 | hp300hpux)
- basic_machine=m68k-hp
-+ os=hpux
- ;;
- hp300bsd)
- basic_machine=m68k-hp
-- os=-bsd
-- ;;
-- hp300hpux)
-- basic_machine=m68k-hp
-- os=-hpux
-- ;;
-- hp3k9[0-9][0-9] | hp9[0-9][0-9])
-- basic_machine=hppa1.0-hp
-- ;;
-- hp9k2[0-9][0-9] | hp9k31[0-9])
-- basic_machine=m68000-hp
-- ;;
-- hp9k3[2-9][0-9])
-- basic_machine=m68k-hp
-- ;;
-- hp9k6[0-9][0-9] | hp6[0-9][0-9])
-- basic_machine=hppa1.0-hp
-- ;;
-- hp9k7[0-79][0-9] | hp7[0-79][0-9])
-- basic_machine=hppa1.1-hp
-- ;;
-- hp9k78[0-9] | hp78[0-9])
-- # FIXME: really hppa2.0-hp
-- basic_machine=hppa1.1-hp
-- ;;
-- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
-- # FIXME: really hppa2.0-hp
-- basic_machine=hppa1.1-hp
-- ;;
-- hp9k8[0-9][13679] | hp8[0-9][13679])
-- basic_machine=hppa1.1-hp
-- ;;
-- hp9k8[0-9][0-9] | hp8[0-9][0-9])
-- basic_machine=hppa1.0-hp
-- ;;
-- hppa-next)
-- os=-nextstep3
-+ os=bsd
- ;;
- hppaosf)
- basic_machine=hppa1.1-hp
-- os=-osf
-+ os=osf
- ;;
- hppro)
- basic_machine=hppa1.1-hp
-- os=-proelf
-- ;;
-- i370-ibm* | ibm*)
-- basic_machine=i370-ibm
-- ;;
-- i*86v32)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-- os=-sysv32
-- ;;
-- i*86v4*)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-- os=-sysv4
-- ;;
-- i*86v)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-- os=-sysv
-- ;;
-- i*86sol2)
-- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-- os=-solaris2
-+ os=proelf
- ;;
- i386mach)
- basic_machine=i386-mach
-- os=-mach
-- ;;
-- i386-vsta | vsta)
-- basic_machine=i386-unknown
-- os=-vsta
-- ;;
-- iris | iris4d)
-- basic_machine=mips-sgi
-- case $os in
-- -irix*)
-- ;;
-- *)
-- os=-irix4
-- ;;
-- esac
-+ os=mach
- ;;
- isi68 | isi)
- basic_machine=m68k-isi
-- os=-sysv
-+ os=sysv
- ;;
- m68knommu)
- basic_machine=m68k-unknown
-- os=-linux
-- ;;
-- m68knommu-*)
-- basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
-- os=-linux
-- ;;
-- m88k-omron*)
-- basic_machine=m88k-omron
-+ os=linux
- ;;
- magnum | m3230)
- basic_machine=mips-mips
-- os=-sysv
-+ os=sysv
- ;;
- merlin)
- basic_machine=ns32k-utek
-- os=-sysv
-- ;;
-- microblaze*)
-- basic_machine=microblaze-xilinx
-+ os=sysv
- ;;
- mingw64)
- basic_machine=x86_64-pc
-- os=-mingw64
-+ os=mingw64
- ;;
- mingw32)
-- basic_machine=i386-pc
-- os=-mingw32
-+ basic_machine=i686-pc
-+ os=mingw32
- ;;
- mingw32ce)
- basic_machine=arm-unknown
-- os=-mingw32ce
-- ;;
-- miniframe)
-- basic_machine=m68000-convergent
-- ;;
-- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-- basic_machine=m68k-atari
-- os=-mint
-- ;;
-- mips3*-*)
-- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
-- ;;
-- mips3*)
-- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
-+ os=mingw32ce
- ;;
- monitor)
- basic_machine=m68k-rom68k
-- os=-coff
-+ os=coff
- ;;
- morphos)
- basic_machine=powerpc-unknown
-- os=-morphos
-+ os=morphos
-+ ;;
-+ moxiebox)
-+ basic_machine=moxie-unknown
-+ os=moxiebox
- ;;
- msdos)
- basic_machine=i386-pc
-- os=-msdos
-- ;;
-- ms1-*)
-- basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
-+ os=msdos
- ;;
- msys)
-- basic_machine=i386-pc
-- os=-msys
-+ basic_machine=i686-pc
-+ os=msys
- ;;
- mvs)
- basic_machine=i370-ibm
-- os=-mvs
-+ os=mvs
- ;;
- nacl)
- basic_machine=le32-unknown
-- os=-nacl
-+ os=nacl
- ;;
- ncr3000)
- basic_machine=i486-ncr
-- os=-sysv4
-+ os=sysv4
- ;;
- netbsd386)
-- basic_machine=i386-unknown
-- os=-netbsd
-+ basic_machine=i386-pc
-+ os=netbsd
- ;;
- netwinder)
- basic_machine=armv4l-rebel
-- os=-linux
-+ os=linux
- ;;
- news | news700 | news800 | news900)
- basic_machine=m68k-sony
-- os=-newsos
-+ os=newsos
- ;;
- news1000)
- basic_machine=m68030-sony
-- os=-newsos
-- ;;
-- news-3600 | risc-news)
-- basic_machine=mips-sony
-- os=-newsos
-+ os=newsos
- ;;
- necv70)
- basic_machine=v70-nec
-- os=-sysv
-- ;;
-- next | m*-next )
-- basic_machine=m68k-next
-- case $os in
-- -nextstep* )
-- ;;
-- -ns2*)
-- os=-nextstep2
-- ;;
-- *)
-- os=-nextstep3
-- ;;
-- esac
-+ os=sysv
- ;;
- nh3000)
- basic_machine=m68k-harris
-- os=-cxux
-+ os=cxux
- ;;
- nh[45]000)
- basic_machine=m88k-harris
-- os=-cxux
-+ os=cxux
- ;;
- nindy960)
- basic_machine=i960-intel
-- os=-nindy
-+ os=nindy
- ;;
- mon960)
- basic_machine=i960-intel
-- os=-mon960
-+ os=mon960
- ;;
- nonstopux)
- basic_machine=mips-compaq
-- os=-nonstopux
-- ;;
-- np1)
-- basic_machine=np1-gould
-- ;;
-- neo-tandem)
-- basic_machine=neo-tandem
-- ;;
-- nse-tandem)
-- basic_machine=nse-tandem
-- ;;
-- nsr-tandem)
-- basic_machine=nsr-tandem
-- ;;
-- op50n-* | op60c-*)
-- basic_machine=hppa1.1-oki
-- os=-proelf
-- ;;
-- openrisc | openrisc-*)
-- basic_machine=or32-unknown
-+ os=nonstopux
- ;;
- os400)
- basic_machine=powerpc-ibm
-- os=-os400
-+ os=os400
- ;;
- OSE68000 | ose68000)
- basic_machine=m68000-ericsson
-- os=-ose
-+ os=ose
- ;;
- os68k)
- basic_machine=m68k-none
-- os=-os68k
-- ;;
-- pa-hitachi)
-- basic_machine=hppa1.1-hitachi
-- os=-hiuxwe2
-+ os=os68k
- ;;
- paragon)
- basic_machine=i860-intel
-- os=-osf
-+ os=osf
- ;;
- parisc)
- basic_machine=hppa-unknown
-- os=-linux
-- ;;
-- parisc-*)
-- basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
-- os=-linux
-- ;;
-- pbd)
-- basic_machine=sparc-tti
-- ;;
-- pbb)
-- basic_machine=m68k-tti
-- ;;
-- pc532 | pc532-*)
-- basic_machine=ns32k-pc532
-- ;;
-- pc98)
-- basic_machine=i386-pc
-- ;;
-- pc98-*)
-- basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- pentium | p5 | k5 | k6 | nexgen | viac3)
-- basic_machine=i586-pc
-- ;;
-- pentiumpro | p6 | 6x86 | athlon | athlon_*)
-- basic_machine=i686-pc
-- ;;
-- pentiumii | pentium2 | pentiumiii | pentium3)
-- basic_machine=i686-pc
-- ;;
-- pentium4)
-- basic_machine=i786-pc
-- ;;
-- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- pentiumpro-* | p6-* | 6x86-* | athlon-*)
-- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- pentium4-*)
-- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- pn)
-- basic_machine=pn-gould
-- ;;
-- power) basic_machine=power-ibm
-- ;;
-- ppc | ppcbe) basic_machine=powerpc-unknown
-- ;;
-- ppc-* | ppcbe-*)
-- basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- ppcle | powerpclittle | ppc-le | powerpc-little)
-- basic_machine=powerpcle-unknown
-- ;;
-- ppcle-* | powerpclittle-*)
-- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- ppc64) basic_machine=powerpc64-unknown
-- ;;
-- ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-- basic_machine=powerpc64le-unknown
-- ;;
-- ppc64le-* | powerpc64little-*)
-- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-- ;;
-- ps2)
-- basic_machine=i386-ibm
-+ os=linux
- ;;
- pw32)
- basic_machine=i586-unknown
-- os=-pw32
-+ os=pw32
- ;;
- rdos | rdos64)
- basic_machine=x86_64-pc
-- os=-rdos
-+ os=rdos
- ;;
- rdos32)
- basic_machine=i386-pc
-- os=-rdos
-+ os=rdos
- ;;
- rom68k)
- basic_machine=m68k-rom68k
-- os=-coff
-- ;;
-- rm[46]00)
-- basic_machine=mips-siemens
-- ;;
-- rtpc | rtpc-*)
-- basic_machine=romp-ibm
-- ;;
-- s390 | s390-*)
-- basic_machine=s390-ibm
-- ;;
-- s390x | s390x-*)
-- basic_machine=s390x-ibm
-+ os=coff
- ;;
- sa29200)
- basic_machine=a29k-amd
-- os=-udi
-- ;;
-- sb1)
-- basic_machine=mipsisa64sb1-unknown
-- ;;
-- sb1el)
-- basic_machine=mipsisa64sb1el-unknown
-- ;;
-- sde)
-- basic_machine=mipsisa32-sde
-- os=-elf
-+ os=udi
- ;;
- sei)
- basic_machine=mips-sei
-- os=-seiux
-+ os=seiux
- ;;
- sequent)
- basic_machine=i386-sequent
-- ;;
-- sh)
-- basic_machine=sh-hitachi
-- os=-hms
-- ;;
-- sh5el)
-- basic_machine=sh5le-unknown
-- ;;
-- sh64)
-- basic_machine=sh64-unknown
-- ;;
-- sparclite-wrs | simso-wrs)
-- basic_machine=sparclite-wrs
-- os=-vxworks
-+ os=
- ;;
- sps7)
- basic_machine=m68k-bull
-- os=-sysv2
-- ;;
-- spur)
-- basic_machine=spur-unknown
-+ os=sysv2
- ;;
- st2000)
- basic_machine=m68k-tandem
-+ os=
- ;;
- stratus)
- basic_machine=i860-stratus
-- os=-sysv4
-- ;;
-- strongarm-* | thumb-*)
-- basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
-+ os=sysv4
- ;;
- sun2)
- basic_machine=m68000-sun
-+ os=
- ;;
- sun2os3)
- basic_machine=m68000-sun
-- os=-sunos3
-+ os=sunos3
- ;;
- sun2os4)
- basic_machine=m68000-sun
-- os=-sunos4
-+ os=sunos4
-+ ;;
-+ sun3)
-+ basic_machine=m68k-sun
-+ os=
- ;;
- sun3os3)
- basic_machine=m68k-sun
-- os=-sunos3
-+ os=sunos3
- ;;
- sun3os4)
- basic_machine=m68k-sun
-- os=-sunos4
-+ os=sunos4
-+ ;;
-+ sun4)
-+ basic_machine=sparc-sun
-+ os=
- ;;
- sun4os3)
- basic_machine=sparc-sun
-- os=-sunos3
-+ os=sunos3
- ;;
- sun4os4)
- basic_machine=sparc-sun
-- os=-sunos4
-+ os=sunos4
- ;;
- sun4sol2)
- basic_machine=sparc-sun
-- os=-solaris2
-- ;;
-- sun3 | sun3-*)
-- basic_machine=m68k-sun
-- ;;
-- sun4)
-- basic_machine=sparc-sun
-+ os=solaris2
- ;;
- sun386 | sun386i | roadrunner)
- basic_machine=i386-sun
-+ os=
- ;;
- sv1)
- basic_machine=sv1-cray
-- os=-unicos
-+ os=unicos
- ;;
- symmetry)
- basic_machine=i386-sequent
-- os=-dynix
-+ os=dynix
- ;;
- t3e)
- basic_machine=alphaev5-cray
-- os=-unicos
-+ os=unicos
- ;;
- t90)
- basic_machine=t90-cray
-- os=-unicos
-- ;;
-- tile*)
-- basic_machine=$basic_machine-unknown
-- os=-linux-gnu
-- ;;
-- tx39)
-- basic_machine=mipstx39-unknown
-- ;;
-- tx39el)
-- basic_machine=mipstx39el-unknown
-+ os=unicos
- ;;
- toad1)
- basic_machine=pdp10-xkl
-- os=-tops20
-- ;;
-- tower | tower-32)
-- basic_machine=m68k-ncr
-+ os=tops20
- ;;
- tpf)
- basic_machine=s390x-ibm
-- os=-tpf
-+ os=tpf
- ;;
- udi29k)
- basic_machine=a29k-amd
-- os=-udi
-+ os=udi
- ;;
- ultra3)
- basic_machine=a29k-nyu
-- os=-sym1
-+ os=sym1
- ;;
- v810 | necv810)
- basic_machine=v810-nec
-- os=-none
-+ os=none
- ;;
- vaxv)
- basic_machine=vax-dec
-- os=-sysv
-+ os=sysv
- ;;
- vms)
- basic_machine=vax-dec
-- os=-vms
-+ os=vms
- ;;
-- vpp*|vx|vx-*)
-- basic_machine=f301-fujitsu
-+ vsta)
-+ basic_machine=i386-pc
-+ os=vsta
- ;;
- vxworks960)
- basic_machine=i960-wrs
-- os=-vxworks
-+ os=vxworks
- ;;
- vxworks68)
- basic_machine=m68k-wrs
-- os=-vxworks
-+ os=vxworks
- ;;
- vxworks29k)
- basic_machine=a29k-wrs
-- os=-vxworks
-- ;;
-- w65*)
-- basic_machine=w65-wdc
-- os=-none
-- ;;
-- w89k-*)
-- basic_machine=hppa1.1-winbond
-- os=-proelf
-+ os=vxworks
- ;;
- xbox)
- basic_machine=i686-pc
-- os=-mingw32
-- ;;
-- xps | xps100)
-- basic_machine=xps100-honeywell
-- ;;
-- xscale-* | xscalee[bl]-*)
-- basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
-+ os=mingw32
- ;;
- ymp)
- basic_machine=ymp-cray
-- os=-unicos
-+ os=unicos
- ;;
-- z8k-*-coff)
-- basic_machine=z8k-unknown
-- os=-sim
-- ;;
-- z80-*-coff)
-- basic_machine=z80-unknown
-- os=-sim
-+ *)
-+ basic_machine=$1
-+ os=
- ;;
-- none)
-- basic_machine=none-none
-- os=-none
-+ esac
- ;;
-+esac
-
-+# Decode 1-component or ad-hoc basic machines
-+case $basic_machine in
- # Here we handle the default manufacturer of certain CPU types. It is in
- # some cases the only manufacturer, in others, it is the most popular.
- w89k)
-- basic_machine=hppa1.1-winbond
-+ cpu=hppa1.1
-+ vendor=winbond
- ;;
- op50n)
-- basic_machine=hppa1.1-oki
-+ cpu=hppa1.1
-+ vendor=oki
- ;;
- op60c)
-- basic_machine=hppa1.1-oki
-+ cpu=hppa1.1
-+ vendor=oki
- ;;
-- romp)
-- basic_machine=romp-ibm
-+ ibm*)
-+ cpu=i370
-+ vendor=ibm
- ;;
-- mmix)
-- basic_machine=mmix-knuth
-+ orion105)
-+ cpu=clipper
-+ vendor=highlevel
- ;;
-- rs6000)
-- basic_machine=rs6000-ibm
-+ mac | mpw | mac-mpw)
-+ cpu=m68k
-+ vendor=apple
- ;;
-- vax)
-- basic_machine=vax-dec
-+ pmac | pmac-mpw)
-+ cpu=powerpc
-+ vendor=apple
- ;;
-- pdp10)
-- # there are many clones, so DEC is not a safe bet
-- basic_machine=pdp10-unknown
-+
-+ # Recognize the various machine names and aliases which stand
-+ # for a CPU type and a company and sometimes even an OS.
-+ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-+ cpu=m68000
-+ vendor=att
- ;;
-- pdp11)
-- basic_machine=pdp11-dec
-+ 3b*)
-+ cpu=we32k
-+ vendor=att
- ;;
-- we32k)
-- basic_machine=we32k-att
-+ bluegene*)
-+ cpu=powerpc
-+ vendor=ibm
-+ os=cnk
- ;;
-- sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
-- basic_machine=sh-unknown
-+ decsystem10* | dec10*)
-+ cpu=pdp10
-+ vendor=dec
-+ os=tops10
- ;;
-- sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
-- basic_machine=sparc-sun
-+ decsystem20* | dec20*)
-+ cpu=pdp10
-+ vendor=dec
-+ os=tops20
- ;;
-- cydra)
-- basic_machine=cydra-cydrome
-+ delta | 3300 | motorola-3300 | motorola-delta \
-+ | 3300-motorola | delta-motorola)
-+ cpu=m68k
-+ vendor=motorola
- ;;
-- orion)
-- basic_machine=orion-highlevel
-+ dpx2*)
-+ cpu=m68k
-+ vendor=bull
-+ os=sysv3
- ;;
-- orion105)
-- basic_machine=clipper-highlevel
-+ encore | umax | mmax)
-+ cpu=ns32k
-+ vendor=encore
- ;;
-- mac | mpw | mac-mpw)
-- basic_machine=m68k-apple
-+ elxsi)
-+ cpu=elxsi
-+ vendor=elxsi
-+ os=${os:-bsd}
- ;;
-- pmac | pmac-mpw)
-- basic_machine=powerpc-apple
-+ fx2800)
-+ cpu=i860
-+ vendor=alliant
-+ ;;
-+ genix)
-+ cpu=ns32k
-+ vendor=ns
-+ ;;
-+ h3050r* | hiux*)
-+ cpu=hppa1.1
-+ vendor=hitachi
-+ os=hiuxwe2
-+ ;;
-+ hp3k9[0-9][0-9] | hp9[0-9][0-9])
-+ cpu=hppa1.0
-+ vendor=hp
-+ ;;
-+ hp9k2[0-9][0-9] | hp9k31[0-9])
-+ cpu=m68000
-+ vendor=hp
-+ ;;
-+ hp9k3[2-9][0-9])
-+ cpu=m68k
-+ vendor=hp
-+ ;;
-+ hp9k6[0-9][0-9] | hp6[0-9][0-9])
-+ cpu=hppa1.0
-+ vendor=hp
-+ ;;
-+ hp9k7[0-79][0-9] | hp7[0-79][0-9])
-+ cpu=hppa1.1
-+ vendor=hp
-+ ;;
-+ hp9k78[0-9] | hp78[0-9])
-+ # FIXME: really hppa2.0-hp
-+ cpu=hppa1.1
-+ vendor=hp
-+ ;;
-+ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
-+ # FIXME: really hppa2.0-hp
-+ cpu=hppa1.1
-+ vendor=hp
-+ ;;
-+ hp9k8[0-9][13679] | hp8[0-9][13679])
-+ cpu=hppa1.1
-+ vendor=hp
-+ ;;
-+ hp9k8[0-9][0-9] | hp8[0-9][0-9])
-+ cpu=hppa1.0
-+ vendor=hp
-+ ;;
-+ i*86v32)
-+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
-+ vendor=pc
-+ os=sysv32
-+ ;;
-+ i*86v4*)
-+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
-+ vendor=pc
-+ os=sysv4
-+ ;;
-+ i*86v)
-+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
-+ vendor=pc
-+ os=sysv
-+ ;;
-+ i*86sol2)
-+ cpu=`echo "$1" | sed -e 's/86.*/86/'`
-+ vendor=pc
-+ os=solaris2
-+ ;;
-+ j90 | j90-cray)
-+ cpu=j90
-+ vendor=cray
-+ os=${os:-unicos}
-+ ;;
-+ iris | iris4d)
-+ cpu=mips
-+ vendor=sgi
-+ case $os in
-+ irix*)
-+ ;;
-+ *)
-+ os=irix4
-+ ;;
-+ esac
-+ ;;
-+ miniframe)
-+ cpu=m68000
-+ vendor=convergent
-+ ;;
-+ *mint | mint[0-9]* | *MiNT | *MiNT[0-9]*)
-+ cpu=m68k
-+ vendor=atari
-+ os=mint
-+ ;;
-+ news-3600 | risc-news)
-+ cpu=mips
-+ vendor=sony
-+ os=newsos
-+ ;;
-+ next | m*-next)
-+ cpu=m68k
-+ vendor=next
-+ case $os in
-+ openstep*)
-+ ;;
-+ nextstep*)
-+ ;;
-+ ns2*)
-+ os=nextstep2
-+ ;;
-+ *)
-+ os=nextstep3
-+ ;;
-+ esac
-+ ;;
-+ np1)
-+ cpu=np1
-+ vendor=gould
-+ ;;
-+ op50n-* | op60c-*)
-+ cpu=hppa1.1
-+ vendor=oki
-+ os=proelf
-+ ;;
-+ pa-hitachi)
-+ cpu=hppa1.1
-+ vendor=hitachi
-+ os=hiuxwe2
-+ ;;
-+ pbd)
-+ cpu=sparc
-+ vendor=tti
-+ ;;
-+ pbb)
-+ cpu=m68k
-+ vendor=tti
-+ ;;
-+ pc532)
-+ cpu=ns32k
-+ vendor=pc532
-+ ;;
-+ pn)
-+ cpu=pn
-+ vendor=gould
-+ ;;
-+ power)
-+ cpu=power
-+ vendor=ibm
-+ ;;
-+ ps2)
-+ cpu=i386
-+ vendor=ibm
-+ ;;
-+ rm[46]00)
-+ cpu=mips
-+ vendor=siemens
-+ ;;
-+ rtpc | rtpc-*)
-+ cpu=romp
-+ vendor=ibm
-+ ;;
-+ sde)
-+ cpu=mipsisa32
-+ vendor=sde
-+ os=${os:-elf}
-+ ;;
-+ simso-wrs)
-+ cpu=sparclite
-+ vendor=wrs
-+ os=vxworks
-+ ;;
-+ tower | tower-32)
-+ cpu=m68k
-+ vendor=ncr
-+ ;;
-+ vpp*|vx|vx-*)
-+ cpu=f301
-+ vendor=fujitsu
-+ ;;
-+ w65)
-+ cpu=w65
-+ vendor=wdc
-+ ;;
-+ w89k-*)
-+ cpu=hppa1.1
-+ vendor=winbond
-+ os=proelf
-+ ;;
-+ none)
-+ cpu=none
-+ vendor=none
-+ ;;
-+ leon|leon[3-9])
-+ cpu=sparc
-+ vendor=$basic_machine
-+ ;;
-+ leon-*|leon[3-9]-*)
-+ cpu=sparc
-+ vendor=`echo "$basic_machine" | sed 's/-.*//'`
-+ ;;
-+
-+ *-*)
-+ # shellcheck disable=SC2162
-+ IFS="-" read cpu vendor <&2
-+ # Recognize the canonical CPU types that are allowed with any
-+ # company name.
-+ case $cpu in
-+ 1750a | 580 \
-+ | a29k \
-+ | aarch64 | aarch64_be \
-+ | abacus \
-+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] \
-+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] \
-+ | alphapca5[67] | alpha64pca5[67] \
-+ | am33_2.0 \
-+ | amdgcn \
-+ | arc | arceb \
-+ | arm | arm[lb]e | arme[lb] | armv* \
-+ | avr | avr32 \
-+ | asmjs \
-+ | 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 \
-+ | h8300 | h8500 \
-+ | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-+ | hexagon \
-+ | i370 | i*86 | i860 | i960 | ia16 | ia64 \
-+ | ip2k | iq2000 \
-+ | k1om \
-+ | le32 | le64 \
-+ | lm32 \
-+ | 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 \
-+ | mips | mipsbe | mipseb | mipsel | mipsle \
-+ | mips16 \
-+ | mips64 | mips64eb | mips64el \
-+ | mips64octeon | mips64octeonel \
-+ | mips64orion | mips64orionel \
-+ | mips64r5900 | mips64r5900el \
-+ | mips64vr | mips64vrel \
-+ | mips64vr4100 | mips64vr4100el \
-+ | mips64vr4300 | mips64vr4300el \
-+ | mips64vr5000 | mips64vr5000el \
-+ | mips64vr5900 | mips64vr5900el \
-+ | mipsisa32 | mipsisa32el \
-+ | mipsisa32r2 | mipsisa32r2el \
-+ | mipsisa32r6 | mipsisa32r6el \
-+ | mipsisa64 | mipsisa64el \
-+ | mipsisa64r2 | mipsisa64r2el \
-+ | mipsisa64r6 | mipsisa64r6el \
-+ | mipsisa64sb1 | mipsisa64sb1el \
-+ | mipsisa64sr71k | mipsisa64sr71kel \
-+ | mipsr5900 | mipsr5900el \
-+ | mipstx39 | mipstx39el \
-+ | mmix \
-+ | mn10200 | mn10300 \
-+ | moxie \
-+ | mt \
-+ | msp430 \
-+ | nds32 | nds32le | nds32be \
-+ | nfp \
-+ | nios | nios2 | nios2eb | nios2el \
-+ | none | np1 | ns16k | ns32k | nvptx \
-+ | open8 \
-+ | or1k* \
-+ | or32 \
-+ | orion \
-+ | picochip \
-+ | pdp10 | pdp11 | pj | pjl | pn | power \
-+ | powerpc | powerpc64 | powerpc64le | powerpcle | powerpcspe \
-+ | pru \
-+ | pyramid \
-+ | riscv | riscv32 | riscv64 \
-+ | rl78 | romp | rs6000 | rx \
-+ | 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 \
-+ | sparclite \
-+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v | sv1 | sx* \
-+ | spu \
-+ | tahoe \
-+ | tic30 | tic4x | tic54x | tic55x | tic6x | tic80 \
-+ | tron \
-+ | ubicom32 \
-+ | v70 | v850 | v850e | v850e1 | v850es | v850e2 | v850e2v3 \
-+ | vax \
-+ | visium \
-+ | w65 \
-+ | wasm32 | wasm64 \
-+ | we32k \
-+ | x86 | x86_64 | xc16x | xgate | xps100 \
-+ | xstormy16 | xtensa* \
-+ | ymp \
-+ | z8k | z80)
-+ ;;
-+
-+ *)
-+ echo Invalid configuration \`"$1"\': machine \`"$cpu-$vendor"\' not recognized 1>&2
- exit 1
- ;;
- esac
-+ ;;
-+esac
-
- # Here we canonicalize certain aliases for manufacturers.
--case $basic_machine in
-- *-digital*)
-- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
-+case $vendor in
-+ digital*)
-+ vendor=dec
- ;;
-- *-commodore*)
-- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
-+ commodore*)
-+ vendor=cbm
- ;;
- *)
- ;;
-@@ -1321,197 +1275,244 @@
-
- # Decode manufacturer-specific aliases for certain operating systems.
-
--if [ x"$os" != x"" ]
-+if [ x$os != x ]
- then
- case $os in
-- # First match some system type aliases
-- # that might get confused with valid system types.
-- # -solaris* is a basic system type, with this one exception.
-- -auroraux)
-- os=-auroraux
-+ # First match some system type aliases that might get confused
-+ # with valid system types.
-+ # solaris* is a basic system type, with this one exception.
-+ auroraux)
-+ os=auroraux
- ;;
-- -solaris1 | -solaris1.*)
-- os=`echo $os | sed -e 's|solaris1|sunos4|'`
-+ bluegene*)
-+ os=cnk
- ;;
-- -solaris)
-- os=-solaris2
-+ solaris1 | solaris1.*)
-+ os=`echo $os | sed -e 's|solaris1|sunos4|'`
- ;;
-- -svr4*)
-- os=-sysv4
-+ solaris)
-+ os=solaris2
- ;;
-- -unixware*)
-- os=-sysv4.2uw
-+ unixware*)
-+ os=sysv4.2uw
- ;;
-- -gnu/linux*)
-+ gnu/linux*)
- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
- ;;
-- # First accept the basic system types.
-+ # es1800 is here to avoid being matched by es* (a different OS)
-+ es1800*)
-+ os=ose
-+ ;;
-+ # Some version numbers need modification
-+ chorusos*)
-+ os=chorusos
-+ ;;
-+ isc)
-+ os=isc2.2
-+ ;;
-+ sco6)
-+ os=sco5v6
-+ ;;
-+ sco5)
-+ os=sco3.2v5
-+ ;;
-+ sco4)
-+ os=sco3.2v4
-+ ;;
-+ sco3.2.[4-9]*)
-+ os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-+ ;;
-+ sco3.2v[4-9]* | sco5v6*)
-+ # Don't forget version if it is 3.2v4 or newer.
-+ ;;
-+ scout)
-+ # Don't match below
-+ ;;
-+ sco*)
-+ os=sco3.2v2
-+ ;;
-+ psos*)
-+ os=psos
-+ ;;
-+ # Now accept the basic system types.
- # The portable systems comes first.
-- # Each alternative MUST END IN A *, to match a version number.
-- # -sysv* is not here because it comes later, after sysvr4.
-- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-- | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
-- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
-- | -sym* | -kopensolaris* | -plan9* \
-- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-- | -aos* | -aros* \
-- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
-- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-- | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-- | -bitrig* | -openbsd* | -solidbsd* \
-- | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-- | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
-- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-- | -chorusos* | -chorusrdb* | -cegcc* \
-- | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-- | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
-- | -linux-newlib* | -linux-musl* | -linux-uclibc* \
-- | -uxpv* | -beos* | -mpeix* | -udk* \
-- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-- | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
-+ # Each alternative MUST end in a * to match a version number.
-+ # sysv* is not here because it comes later, after sysvr4.
-+ gnu* | bsd* | mach* | minix* | genix* | ultrix* | irix* \
-+ | *vms* | esix* | aix* | cnk* | sunos | sunos[34]*\
-+ | hpux* | unos* | osf* | luna* | dgux* | auroraux* | solaris* \
-+ | sym* | kopensolaris* | plan9* \
-+ | amigaos* | amigados* | msdos* | newsos* | unicos* | aof* \
-+ | aos* | aros* | cloudabi* | sortix* | twizzler* \
-+ | nindy* | vxsim* | vxworks* | ebmon* | hms* | mvs* \
-+ | clix* | riscos* | uniplus* | iris* | isc* | rtu* | xenix* \
-+ | knetbsd* | mirbsd* | netbsd* \
-+ | bitrig* | openbsd* | solidbsd* | libertybsd* | os108* \
-+ | ekkobsd* | kfreebsd* | freebsd* | riscix* | lynxos* \
-+ | bosx* | nextstep* | cxux* | aout* | elf* | oabi* \
-+ | ptx* | coff* | ecoff* | winnt* | domain* | vsta* \
-+ | udi* | eabi* | lites* | ieee* | go32* | aux* | hcos* \
-+ | chorusrdb* | cegcc* | glidix* \
-+ | cygwin* | msys* | pe* | moss* | proelf* | rtems* \
-+ | midipix* | mingw32* | mingw64* | linux-gnu* | linux-android* \
-+ | linux-newlib* | linux-musl* | linux-uclibc* \
-+ | 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* | superux* | rtmk* | 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*)
- # Remember, each alternative MUST END IN *, to match a version number.
- ;;
-- -qnx*)
-- case $basic_machine in
-- x86-* | i*86-*)
-+ qnx*)
-+ case $cpu in
-+ x86 | i*86)
- ;;
- *)
-- os=-nto$os
-+ os=nto-$os
- ;;
- esac
- ;;
-- -nto-qnx*)
-+ hiux*)
-+ os=hiuxwe2
- ;;
-- -nto*)
-- os=`echo $os | sed -e 's|nto|nto-qnx|'`
-+ nto-qnx*)
- ;;
-- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-- | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
-- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
-+ nto*)
-+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
- ;;
-- -mac*)
-- os=`echo $os | sed -e 's|mac|macos|'`
-+ sim | xray | os68k* | v88r* \
-+ | windows* | osx | abug | netware* | os9* \
-+ | macos* | mpw* | magic* | mmixware* | mon960* | lnews*)
- ;;
-- -linux-dietlibc)
-- os=-linux-dietlibc
-+ linux-dietlibc)
-+ os=linux-dietlibc
- ;;
-- -linux*)
-+ linux*)
- os=`echo $os | sed -e 's|linux|linux-gnu|'`
- ;;
-- -sunos5*)
-- os=`echo $os | sed -e 's|sunos5|solaris2|'`
-+ lynx*178)
-+ os=lynxos178
-+ ;;
-+ lynx*5)
-+ os=lynxos5
- ;;
-- -sunos6*)
-- os=`echo $os | sed -e 's|sunos6|solaris3|'`
-+ lynx*)
-+ os=lynxos
- ;;
-- -opened*)
-- os=-openedition
-+ mac*)
-+ os=`echo "$os" | sed -e 's|mac|macos|'`
- ;;
-- -os400*)
-- os=-os400
-+ opened*)
-+ os=openedition
- ;;
-- -wince*)
-- os=-wince
-+ os400*)
-+ os=os400
- ;;
-- -osfrose*)
-- os=-osfrose
-+ sunos5*)
-+ os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
- ;;
-- -osf*)
-- os=-osf
-+ sunos6*)
-+ os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
- ;;
-- -utek*)
-- os=-bsd
-+ wince*)
-+ os=wince
- ;;
-- -dynix*)
-- os=-bsd
-+ utek*)
-+ os=bsd
- ;;
-- -acis*)
-- os=-aos
-+ dynix*)
-+ os=bsd
- ;;
-- -atheos*)
-- os=-atheos
-+ acis*)
-+ os=aos
- ;;
-- -syllable*)
-- os=-syllable
-+ atheos*)
-+ os=atheos
- ;;
-- -386bsd)
-- os=-bsd
-+ syllable*)
-+ os=syllable
- ;;
-- -ctix* | -uts*)
-- os=-sysv
-+ 386bsd)
-+ os=bsd
- ;;
-- -nova*)
-- os=-rtmk-nova
-+ ctix* | uts*)
-+ os=sysv
- ;;
-- -ns2 )
-- os=-nextstep2
-+ nova*)
-+ os=rtmk-nova
- ;;
-- -nsk*)
-- os=-nsk
-+ ns2)
-+ os=nextstep2
- ;;
- # Preserve the version number of sinix5.
-- -sinix5.*)
-+ sinix5.*)
- os=`echo $os | sed -e 's|sinix|sysv|'`
- ;;
-- -sinix*)
-- os=-sysv4
-+ sinix*)
-+ os=sysv4
-+ ;;
-+ tpf*)
-+ os=tpf
-+ ;;
-+ triton*)
-+ os=sysv3
- ;;
-- -tpf*)
-- os=-tpf
-+ oss*)
-+ os=sysv3
- ;;
-- -triton*)
-- os=-sysv3
-+ svr4*)
-+ os=sysv4
- ;;
-- -oss*)
-- os=-sysv3
-+ svr3)
-+ os=sysv3
- ;;
-- -svr4)
-- os=-sysv4
-+ sysvr4)
-+ os=sysv4
- ;;
-- -svr3)
-- os=-sysv3
-+ # This must come after sysvr4.
-+ sysv*)
- ;;
-- -sysvr4)
-- os=-sysv4
-+ ose*)
-+ os=ose
- ;;
-- # This must come after -sysvr4.
-- -sysv*)
-+ *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
-+ os=mint
- ;;
-- -ose*)
-- os=-ose
-+ zvmoe)
-+ os=zvmoe
- ;;
-- -es1800*)
-- os=-ose
-+ dicos*)
-+ os=dicos
- ;;
-- -xenix)
-- os=-xenix
-+ pikeos*)
-+ # Until real need of OS specific support for
-+ # particular features comes up, bare metal
-+ # configurations are quite functional.
-+ case $cpu in
-+ arm*)
-+ os=eabi
- ;;
-- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-- os=-mint
-+ *)
-+ os=elf
- ;;
-- -aros*)
-- os=-aros
-+ esac
- ;;
-- -zvmoe)
-- os=-zvmoe
-+ nacl*)
- ;;
-- -dicos*)
-- os=-dicos
-+ ios)
- ;;
-- -nacl*)
-+ none)
- ;;
-- -none)
-+ *-eabi)
- ;;
- *)
-- # Get rid of the `-' at the beginning of $os.
-- os=`echo $os | sed 's/[^-]*-//'`
-- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
-+ echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
- exit 1
- ;;
- esac
-@@ -1527,261 +1528,265 @@
- # will signal an error saying that MANUFACTURER isn't an operating
- # system, and we'll never get to this point.
-
--case $basic_machine in
-+case $cpu-$vendor in
- score-*)
-- os=-elf
-+ os=elf
- ;;
- spu-*)
-- os=-elf
-+ os=elf
- ;;
- *-acorn)
-- os=-riscix1.2
-+ os=riscix1.2
- ;;
- arm*-rebel)
-- os=-linux
-+ os=linux
- ;;
- arm*-semi)
-- os=-aout
-+ os=aout
- ;;
- c4x-* | tic4x-*)
-- os=-coff
-+ os=coff
-+ ;;
-+ c8051-*)
-+ os=elf
-+ ;;
-+ clipper-intergraph)
-+ os=clix
- ;;
- hexagon-*)
-- os=-elf
-+ os=elf
- ;;
- tic54x-*)
-- os=-coff
-+ os=coff
- ;;
- tic55x-*)
-- os=-coff
-+ os=coff
- ;;
- tic6x-*)
-- os=-coff
-+ os=coff
- ;;
- # This must come before the *-dec entry.
- pdp10-*)
-- os=-tops20
-+ os=tops20
- ;;
- pdp11-*)
-- os=-none
-+ os=none
- ;;
- *-dec | vax-*)
-- os=-ultrix4.2
-+ os=ultrix4.2
- ;;
- m68*-apollo)
-- os=-domain
-+ os=domain
- ;;
- i386-sun)
-- os=-sunos4.0.2
-+ os=sunos4.0.2
- ;;
- m68000-sun)
-- os=-sunos3
-+ os=sunos3
- ;;
- m68*-cisco)
-- os=-aout
-+ os=aout
- ;;
- mep-*)
-- os=-elf
-+ os=elf
- ;;
- mips*-cisco)
-- os=-elf
-+ os=elf
- ;;
- mips*-*)
-- os=-elf
-- ;;
-- or1k-*)
-- os=-elf
-+ os=elf
- ;;
- or32-*)
-- os=-coff
-+ os=coff
- ;;
- *-tti) # must be before sparc entry or we get the wrong os.
-- os=-sysv3
-+ os=sysv3
- ;;
- sparc-* | *-sun)
-- os=-sunos4.1.1
-+ os=sunos4.1.1
- ;;
-- *-be)
-- os=-beos
-+ pru-*)
-+ os=elf
- ;;
-- *-haiku)
-- os=-haiku
-+ *-be)
-+ os=beos
- ;;
- *-ibm)
-- os=-aix
-+ os=aix
- ;;
- *-knuth)
-- os=-mmixware
-+ os=mmixware
- ;;
- *-wec)
-- os=-proelf
-+ os=proelf
- ;;
- *-winbond)
-- os=-proelf
-+ os=proelf
- ;;
- *-oki)
-- os=-proelf
-+ os=proelf
- ;;
- *-hp)
-- os=-hpux
-+ os=hpux
- ;;
- *-hitachi)
-- os=-hiux
-+ os=hiux
- ;;
- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
-- os=-sysv
-+ os=sysv
- ;;
- *-cbm)
-- os=-amigaos
-+ os=amigaos
- ;;
- *-dg)
-- os=-dgux
-+ os=dgux
- ;;
- *-dolphin)
-- os=-sysv3
-+ os=sysv3
- ;;
- m68k-ccur)
-- os=-rtu
-+ os=rtu
- ;;
- m88k-omron*)
-- os=-luna
-+ os=luna
- ;;
- *-next )
-- os=-nextstep
-+ os=nextstep
- ;;
- *-sequent)
-- os=-ptx
-+ os=ptx
- ;;
- *-crds)
-- os=-unos
-+ os=unos
- ;;
- *-ns)
-- os=-genix
-+ os=genix
- ;;
- i370-*)
-- os=-mvs
-- ;;
-- *-next)
-- os=-nextstep3
-+ os=mvs
- ;;
- *-gould)
-- os=-sysv
-+ os=sysv
- ;;
- *-highlevel)
-- os=-bsd
-+ os=bsd
- ;;
- *-encore)
-- os=-bsd
-+ os=bsd
- ;;
- *-sgi)
-- os=-irix
-+ os=irix
- ;;
- *-siemens)
-- os=-sysv4
-+ os=sysv4
- ;;
- *-masscomp)
-- os=-rtu
-+ os=rtu
- ;;
- f30[01]-fujitsu | f700-fujitsu)
-- os=-uxpv
-+ os=uxpv
- ;;
- *-rom68k)
-- os=-coff
-+ os=coff
- ;;
- *-*bug)
-- os=-coff
-+ os=coff
- ;;
- *-apple)
-- os=-macos
-+ os=macos
- ;;
- *-atari*)
-- os=-mint
-+ os=mint
-+ ;;
-+ *-wrs)
-+ os=vxworks
- ;;
- *)
-- os=-none
-+ os=none
- ;;
- esac
- fi
-
- # Here we handle the case where we know the os, and the CPU type, but not the
- # manufacturer. We pick the logical manufacturer.
--vendor=unknown
--case $basic_machine in
-- *-unknown)
-+case $vendor in
-+ unknown)
- case $os in
-- -riscix*)
-+ riscix*)
- vendor=acorn
- ;;
-- -sunos*)
-+ sunos*)
- vendor=sun
- ;;
-- -cnk*|-aix*)
-+ cnk*|-aix*)
- vendor=ibm
- ;;
-- -beos*)
-+ beos*)
- vendor=be
- ;;
-- -hpux*)
-+ hpux*)
- vendor=hp
- ;;
-- -mpeix*)
-+ mpeix*)
- vendor=hp
- ;;
-- -hiux*)
-+ hiux*)
- vendor=hitachi
- ;;
-- -unos*)
-+ unos*)
- vendor=crds
- ;;
-- -dgux*)
-+ dgux*)
- vendor=dg
- ;;
-- -luna*)
-+ luna*)
- vendor=omron
- ;;
-- -genix*)
-+ genix*)
- vendor=ns
- ;;
-- -mvs* | -opened*)
-+ clix*)
-+ vendor=intergraph
-+ ;;
-+ mvs* | opened*)
- vendor=ibm
- ;;
-- -os400*)
-+ os400*)
- vendor=ibm
- ;;
-- -ptx*)
-+ ptx*)
- vendor=sequent
- ;;
-- -tpf*)
-+ tpf*)
- vendor=ibm
- ;;
-- -vxsim* | -vxworks* | -windiss*)
-+ vxsim* | vxworks* | windiss*)
- vendor=wrs
- ;;
-- -aux*)
-+ aux*)
- vendor=apple
- ;;
-- -hms*)
-+ hms*)
- vendor=hitachi
- ;;
-- -mpw* | -macos*)
-+ mpw* | macos*)
- vendor=apple
- ;;
-- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-+ *mint | mint[0-9]* | *MiNT | MiNT[0-9]*)
- vendor=atari
- ;;
-- -vos*)
-+ vos*)
- vendor=stratus
- ;;
- esac
-- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
- ;;
- esac
-
--echo $basic_machine$os
-+echo "$cpu-$vendor-$os"
- exit
-
- # Local variables:
--# eval: (add-hook 'write-file-hooks 'time-stamp)
-+# eval: (add-hook 'before-save-hook 'time-stamp)
- # time-stamp-start: "timestamp='"
- # time-stamp-format: "%:y-%02m-%02d"
- # time-stamp-end: "'"