Dear GNU config maintainers,

I am writing to propose a patch that improves how config.guess resolves the
vendor field in target triplets, with a specific focus on easing the
distribution packaging process for downstream maintainers.

Background & Motivation:
For over two decades, openSUSE have carried downstream patches
(historically known as automake-SuSE.patch since 2001) targeting
config.guess. The purpose of these patches is to ensure that a plain
./config.guess run on our systems returns the correct distribution-branded
vendor name (e.g., aarch64-suse-linux-gnu instead of
aarch64-unknown-linux-gnu) to match our compiler toolchain's target
definitions. This has been added following the `automake` package.

However, carrying a 500+ line patch that replaces "-unknown-" across
hundreds of case matches is extremely fragile and painful to maintain. As
upstream structures evolve, downstream patches inevitably suffer from merge
conflicts and silently miss new or changed targets.

The Solution: Dynamic VENDOR_GUESS
The attached patch replaces hardcoded -unknown- strings in target triplets
with a dynamic ${VENDOR_GUESS} variable.

Key changes in this patch:
 1. Dynamic Initialization: It initializes VENDOR_GUESS based on
system-wide and environment configurations. It auto-detects SUSE/openSUSE
systems by checking /etc/os-release, /etc/SuSE-release, or the chroot
/.buildenv file, defaulting it to suse. Otherwise, it falls back to unknown
(or pc on i?86 systems).
 2. Ecosystem-wide Benefits: Other distributions (e.g., Fedora, Debian,
Alpine, etc.) can easily add their own file-based detection blocks to this
initialization list to customize their canonical output.

I would love to hear your thoughts and feedback on integrating this model.
Thank you for your time and continued maintenance of these core GNU build
tools.

PS: I prefer to attach the patch instead of copying the content due to the
number of lines changed, but if you prefer me to copy it into the mail
message, I will do so in response.


Valentin Lefebvre

Linux Distribution Engineer - packager
Member of System Boot and Init team
SUSE Software Solutions Germany GmbH

56100 Lorient, France
From 1461df4fca12449b555594bdcbee1a3f6ee61dde Mon Sep 17 00:00:00 2001
From: vlefebvre <[email protected]>
Date: Fri, 11 Sep 2026 15:14:24 +0200
Subject: [PATCH] config_guess: use dynamic GUESS_VENDOR

* Replace the hardcoded -unknown- by the vendor information
  according the environment.
* Use GUESS_VENDOR global var, and set in
  - "pc" if architectire matches i?86
  - "suse" if according files are found on the system
* List of Linux distribution can be easily added if needed
---
 lib/config.guess | 204 +++++++++++++++++++++++++----------------------
 1 file changed, 110 insertions(+), 94 deletions(-)

diff --git a/lib/config.guess b/lib/config.guess
index c7f4c3294..d8591765c 100755
--- a/lib/config.guess
+++ b/lib/config.guess
@@ -196,6 +196,22 @@ Ironclad|Linux|GNU|GNU/*)
 	;;
 esac
 
+# Distribution GUESS vendor detection
+if [ -f /etc/os-release ] && grep -q suse /etc/os-release ||
+   [ -f /.buildenv ] || [ -f /etc/SuSE-release ]; then
+    VENDOR_GUESS=suse
+fi
+
+# Architecture GUESS detection
+case "${UNAME_MACHINE}" in
+  i?86)
+     test -z "${VENDOR_GUESS}" && VENDOR_GUESS=pc
+     ;;
+  *)
+     test -z "${VENDOR_GUESS}" && VENDOR_GUESS=unknown
+     ;;
+esac
+
 # Note: order is significant - the case branches are not exclusive.
 
 case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
@@ -277,46 +293,46 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
 	;;
     *:Bitrig:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
-	GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE_ARCH-${VENDOR_GUESS}-bitrig$UNAME_RELEASE
 	;;
     *:OpenBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE_ARCH-${VENDOR_GUESS}-openbsd$UNAME_RELEASE
 	;;
     *:SecBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'`
-	GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE_ARCH-${VENDOR_GUESS}-secbsd$UNAME_RELEASE
 	;;
     *:LibertyBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
-	GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE_ARCH-${VENDOR_GUESS}-libertybsd$UNAME_RELEASE
 	;;
     *:MidnightBSD:*:*)
-	GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-midnightbsd$UNAME_RELEASE
 	;;
     *:ekkoBSD:*:*)
-	GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-ekkobsd$UNAME_RELEASE
 	;;
     *:SolidBSD:*:*)
-	GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-solidbsd$UNAME_RELEASE
 	;;
     *:OS108:*:*)
-	GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-os108_$UNAME_RELEASE
 	;;
     macppc:MirBSD:*:*)
-	GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE
+	GUESS=powerpc-${VENDOR_GUESS}-mirbsd$UNAME_RELEASE
 	;;
     *:MirBSD:*:*)
-	GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-mirbsd$UNAME_RELEASE
 	;;
     *:Sortix:*:*)
-	GUESS=$UNAME_MACHINE-unknown-sortix
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-sortix
 	;;
     *:Twizzler:*:*)
-	GUESS=$UNAME_MACHINE-unknown-twizzler
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-twizzler
 	;;
     *:Redox:*:*)
-	GUESS=$UNAME_MACHINE-unknown-redox
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-redox
 	;;
     mips:OSF1:*.*)
 	GUESS=mips-dec-osf1
@@ -378,13 +394,13 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
 	GUESS=$UNAME_MACHINE-dec-osf$OSF_REL
 	;;
     Amiga*:UNIX_System_V:4.0:*)
-	GUESS=m68k-unknown-sysv4
+	GUESS=m68k-${VENDOR_GUESS}-sysv4
 	;;
     *:[Aa]miga[Oo][Ss]:*:*)
-	GUESS=$UNAME_MACHINE-unknown-amigaos
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-amigaos
 	;;
     *:[Mm]orph[Oo][Ss]:*:*)
-	GUESS=$UNAME_MACHINE-unknown-morphos
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-morphos
 	;;
     *:OS/390:*:*)
 	GUESS=i370-ibm-openedition
@@ -399,7 +415,7 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
 	GUESS=arm-acorn-riscix$UNAME_RELEASE
 	;;
     arm*:riscos:*:*|arm*:RISCOS:*:*)
-	GUESS=arm-unknown-riscos
+	GUESS=arm-${VENDOR_GUESS}-riscos
 	;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
 	GUESS=hppa1.1-hitachi-hiuxmpp
@@ -513,7 +529,7 @@ case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in
 	GUESS=m68k-hades-mint$UNAME_RELEASE
 	;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-	GUESS=m68k-unknown-mint$UNAME_RELEASE
+	GUESS=m68k-${VENDOR_GUESS}-mint$UNAME_RELEASE
 	;;
     m68k:machten:*:*)
 	GUESS=m68k-apple-machten$UNAME_RELEASE
@@ -828,9 +844,9 @@ EOF
 	;;
     i*86:OSF1:*:*)
 	if test -x /usr/sbin/sysversion ; then
-	    GUESS=$UNAME_MACHINE-unknown-osf1mk
+	    GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-osf1mk
 	else
-	    GUESS=$UNAME_MACHINE-unknown-osf1
+	    GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-osf1
 	fi
 	;;
     parisc*:Lites*:*:*)
@@ -895,10 +911,10 @@ EOF
 	GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE
 	;;
     sparc*:BSD/OS:*:*)
-	GUESS=sparc-unknown-bsdi$UNAME_RELEASE
+	GUESS=sparc-${VENDOR_GUESS}-bsdi$UNAME_RELEASE
 	;;
     *:BSD/OS:*:*)
-	GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-bsdi$UNAME_RELEASE
 	;;
     arm:FreeBSD:*:*)
 	UNAME_PROCESSOR=`uname -p`
@@ -907,10 +923,10 @@ EOF
 	    | grep -q __ARM_PCS_VFP
 	then
 	    FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
-	    GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi
+	    GUESS=$UNAME_PROCESSOR-${VENDOR_GUESS}-freebsd$FREEBSD_REL-gnueabi
 	else
 	    FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
-	    GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf
+	    GUESS=$UNAME_PROCESSOR-${VENDOR_GUESS}-freebsd$FREEBSD_REL-gnueabihf
 	fi
 	;;
     *:FreeBSD:*:*)
@@ -922,7 +938,7 @@ EOF
 		UNAME_PROCESSOR=i586 ;;
 	esac
 	FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
-	GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL
+	GUESS=$UNAME_PROCESSOR-${VENDOR_GUESS}-freebsd$FREEBSD_REL
 	;;
     i*:CYGWIN*:*)
 	GUESS=$UNAME_MACHINE-pc-cygwin
@@ -948,10 +964,10 @@ EOF
 		GUESS=i586-pc-interix$UNAME_RELEASE
 		;;
 	    authenticamd | genuineintel | EM64T)
-		GUESS=x86_64-unknown-interix$UNAME_RELEASE
+		GUESS=x86_64-${VENDOR_GUESS}-interix$UNAME_RELEASE
 		;;
 	    IA64)
-		GUESS=ia64-unknown-interix$UNAME_RELEASE
+		GUESS=ia64-${VENDOR_GUESS}-interix$UNAME_RELEASE
 		;;
 	esac ;;
     i*:UWIN*:*)
@@ -962,28 +978,28 @@ EOF
 	;;
     prep*:SunOS:5.*:*)
 	SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`
-	GUESS=powerpcle-unknown-solaris2$SUN_REL
+	GUESS=powerpcle-${VENDOR_GUESS}-solaris2$SUN_REL
 	;;
     *:GNU:*:*)
 	# the GNU system
 	GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'`
 	GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'`
-	GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL
+	GUESS=$GNU_ARCH-${VENDOR_GUESS}-$LIBC$GNU_REL
 	;;
     *:GNU/*:*:*)
 	# other systems with GNU libc and userland
 	GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"`
 	GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
-	GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-$GNU_SYS$GNU_REL-$LIBC
 	;;
     x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*)
 	GUESS="$UNAME_MACHINE-pc-managarm-mlibc"
 	;;
     *:[Mm]anagarm:*:*)
-	GUESS="$UNAME_MACHINE-unknown-managarm-mlibc"
+	GUESS="$UNAME_MACHINE-${VENDOR_GUESS}-managarm-mlibc"
 	;;
     *:Minix:*:*)
-	GUESS=$UNAME_MACHINE-unknown-minix
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-minix
 	;;
     aarch64:Linux:*:*)
 	set_cc_for_build
@@ -1006,11 +1022,11 @@ EOF
 		eabi | eabihf) CPU=armv8l; LIBCABI=$LIBC$ABI ;;
 	    esac
 	fi
-	GUESS=$CPU-unknown-linux-$LIBCABI
+	GUESS=$CPU-${VENDOR_GUESS}-linux-$LIBCABI
 	;;
     aarch64_be:Linux:*:*)
 	UNAME_MACHINE=aarch64_be
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     alpha:Linux:*:*)
 	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in
@@ -1024,29 +1040,29 @@ EOF
 	esac
 	objdump --private-headers /bin/sh | grep -q ld.so.1
 	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     arm*:Linux:*:*)
 	set_cc_for_build
 	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
 	    | grep -q __ARM_EABI__
 	then
-	    GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	    GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	else
 	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
 		| grep -q __ARM_PCS_VFP
 	    then
-		GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi
+		GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-${LIBC}eabi
 	    else
-		GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf
+		GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-${LIBC}eabihf
 	    fi
 	fi
 	;;
     avr32*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     cris:Linux:*:*)
 	GUESS=$UNAME_MACHINE-axis-linux-$LIBC
@@ -1055,40 +1071,40 @@ EOF
 	GUESS=$UNAME_MACHINE-axis-linux-$LIBC
 	;;
     e2k:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     frv:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     hexagon:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     i*86:Linux:*:*)
 	GUESS=$UNAME_MACHINE-pc-linux-$LIBC
 	;;
     ia64:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     k1om:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     kvx:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     kvx:cos:*:*)
-	GUESS=$UNAME_MACHINE-unknown-cos
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-cos
 	;;
     kvx:mbr:*:*)
-	GUESS=$UNAME_MACHINE-unknown-mbr
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-mbr
 	;;
     loongarch32:Linux:*:* | loongarch64:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     m32r*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     m68*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     mips:Linux:*:* | mips64:Linux:*:*)
 	set_cc_for_build
@@ -1136,63 +1152,63 @@ EOF
 EOF
 	cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'`
 	eval "$cc_set_vars"
-	test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; }
+	test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-${VENDOR_GUESS}-linux-$LIBCABI"; exit; }
 	;;
     mips64el:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     openrisc*:Linux:*:*)
-	GUESS=or1k-unknown-linux-$LIBC
+	GUESS=or1k-${VENDOR_GUESS}-linux-$LIBC
 	;;
     or32:Linux:*:* | or1k*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     padre:Linux:*:*)
-	GUESS=sparc-unknown-linux-$LIBC
+	GUESS=sparc-${VENDOR_GUESS}-linux-$LIBC
 	;;
     parisc64:Linux:*:* | hppa64:Linux:*:*)
-	GUESS=hppa64-unknown-linux-$LIBC
+	GUESS=hppa64-${VENDOR_GUESS}-linux-$LIBC
 	;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;;
-	  PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;;
-	  *)    GUESS=hppa-unknown-linux-$LIBC ;;
+	  PA7*) GUESS=hppa1.1-${VENDOR_GUESS}-linux-$LIBC ;;
+	  PA8*) GUESS=hppa2.0-${VENDOR_GUESS}-linux-$LIBC ;;
+	  *)    GUESS=hppa-${VENDOR_GUESS}-linux-$LIBC ;;
 	esac
 	;;
     ppc64:Linux:*:*)
-	GUESS=powerpc64-unknown-linux-$LIBC
+	GUESS=powerpc64-${VENDOR_GUESS}-linux-$LIBC
 	;;
     ppc:Linux:*:*)
-	GUESS=powerpc-unknown-linux-$LIBC
+	GUESS=powerpc-${VENDOR_GUESS}-linux-$LIBC
 	;;
     ppc64le:Linux:*:*)
-	GUESS=powerpc64le-unknown-linux-$LIBC
+	GUESS=powerpc64le-${VENDOR_GUESS}-linux-$LIBC
 	;;
     ppcle:Linux:*:*)
-	GUESS=powerpcle-unknown-linux-$LIBC
+	GUESS=powerpcle-${VENDOR_GUESS}-linux-$LIBC
 	;;
     riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     s390:Linux:*:* | s390x:Linux:*:*)
 	GUESS=$UNAME_MACHINE-ibm-linux-$LIBC
 	;;
     sh64*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     sh*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     sw_64:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     tile*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     vax:Linux:*:*)
 	GUESS=$UNAME_MACHINE-dec-linux-$LIBC
@@ -1222,7 +1238,7 @@ EOF
 	GUESS=$CPU-pc-linux-$LIBCABI
 	;;
     xtensa*:Linux:*:*)
-	GUESS=$UNAME_MACHINE-unknown-linux-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-linux-$LIBC
 	;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1244,16 +1260,16 @@ EOF
 	GUESS=$UNAME_MACHINE-pc-os2-emx
 	;;
     i*86:XTS-300:*:STOP)
-	GUESS=$UNAME_MACHINE-unknown-stop
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-stop
 	;;
     i*86:atheos:*:*)
-	GUESS=$UNAME_MACHINE-unknown-atheos
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-atheos
 	;;
     i*86:syllable:*:*)
 	GUESS=$UNAME_MACHINE-pc-syllable
 	;;
     i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
-	GUESS=i386-unknown-lynxos$UNAME_RELEASE
+	GUESS=i386-${VENDOR_GUESS}-lynxos$UNAME_RELEASE
 	;;
     i*86:*DOS:*:*)
 	GUESS=$UNAME_MACHINE-pc-msdosdjgpp
@@ -1273,7 +1289,7 @@ EOF
 	    *Pentium)	     UNAME_MACHINE=i586 ;;
 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
 	esac
-	GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
 	;;
     i*86:*:3.2:*)
 	if test -f /usr/options/cb.name; then
@@ -1312,7 +1328,7 @@ EOF
 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
 	  GUESS=i860-stardent-sysv$UNAME_RELEASE    # Stardent Vistra i860-SVR4
 	else # Add other i860-SVR4 vendors below as they are discovered.
-	  GUESS=i860-unknown-sysv$UNAME_RELEASE     # Unknown i860-SVR4
+	  GUESS=i860-${VENDOR_GUESS}-sysv$UNAME_RELEASE     # Unknown i860-SVR4
 	fi
 	;;
     mini*:CTIX:SYS*5:*)
@@ -1349,19 +1365,19 @@ EOF
 	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
 	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	GUESS=m68k-unknown-lynxos$UNAME_RELEASE
+	GUESS=m68k-${VENDOR_GUESS}-lynxos$UNAME_RELEASE
 	;;
     mc68030:UNIX_System_V:4.*:*)
 	GUESS=m68k-atari-sysv4
 	;;
     TSUNAMI:LynxOS:2.*:*)
-	GUESS=sparc-unknown-lynxos$UNAME_RELEASE
+	GUESS=sparc-${VENDOR_GUESS}-lynxos$UNAME_RELEASE
 	;;
     rs6000:LynxOS:2.*:*)
-	GUESS=rs6000-unknown-lynxos$UNAME_RELEASE
+	GUESS=rs6000-${VENDOR_GUESS}-lynxos$UNAME_RELEASE
 	;;
     PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
-	GUESS=powerpc-unknown-lynxos$UNAME_RELEASE
+	GUESS=powerpc-${VENDOR_GUESS}-lynxos$UNAME_RELEASE
 	;;
     SM[BE]S:UNIX_SV:*:*)
 	GUESS=mips-dde-sysv$UNAME_RELEASE
@@ -1411,7 +1427,7 @@ EOF
 	if test -d /usr/nec; then
 		GUESS=mips-nec-sysv$UNAME_RELEASE
 	else
-		GUESS=mips-unknown-sysv$UNAME_RELEASE
+		GUESS=mips-${VENDOR_GUESS}-sysv$UNAME_RELEASE
 	fi
 	;;
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
@@ -1430,7 +1446,7 @@ EOF
 	GUESS=powerpc-apple-haiku
 	;;
     *:Haiku:*:*)	# Haiku modern gcc (not bound by BeOS compat)
-	GUESS=$UNAME_MACHINE-unknown-haiku
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-haiku
 	;;
     SX-4:SUPER-UX:*:*)
 	GUESS=sx4-nec-superux$UNAME_RELEASE
@@ -1543,13 +1559,13 @@ EOF
 	elif test "x${cputype-}" != x; then
 	    UNAME_MACHINE=$cputype
 	fi
-	GUESS=$UNAME_MACHINE-unknown-plan9
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-plan9
 	;;
     *:TOPS-10:*:*)
-	GUESS=pdp10-unknown-tops10
+	GUESS=pdp10-${VENDOR_GUESS}-tops10
 	;;
     *:TENEX:*:*)
-	GUESS=pdp10-unknown-tenex
+	GUESS=pdp10-${VENDOR_GUESS}-tenex
 	;;
     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
 	GUESS=pdp10-dec-tops20
@@ -1558,17 +1574,17 @@ EOF
 	GUESS=pdp10-xkl-tops20
 	;;
     *:TOPS-20:*:*)
-	GUESS=pdp10-unknown-tops20
+	GUESS=pdp10-${VENDOR_GUESS}-tops20
 	;;
     *:ITS:*:*)
-	GUESS=pdp10-unknown-its
+	GUESS=pdp10-${VENDOR_GUESS}-its
 	;;
     SEI:*:*:SEIUX)
 	GUESS=mips-sei-seiux$UNAME_RELEASE
 	;;
     *:DragonFly:*:*)
 	DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'`
-	GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-dragonfly$DRAGONFLY_REL
 	;;
     *:*VMS:*:*)
 	UNAME_MACHINE=`(uname -p) 2>/dev/null`
@@ -1591,22 +1607,22 @@ EOF
 	GUESS=$UNAME_MACHINE-pc-fiwix
 	;;
     *:AROS:*:*)
-	GUESS=$UNAME_MACHINE-unknown-aros
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-aros
 	;;
     x86_64:VMkernel:*:*)
-	GUESS=$UNAME_MACHINE-unknown-esx
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-esx
 	;;
     amd64:Isilon\ OneFS:*:*)
-	GUESS=x86_64-unknown-onefs
+	GUESS=x86_64-${VENDOR_GUESS}-onefs
 	;;
     *:Unleashed:*:*)
-	GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-unleashed$UNAME_RELEASE
 	;;
     x86_64:[Ii]ronclad:*:*|i?86:[Ii]ronclad:*:*)
 	GUESS=$UNAME_MACHINE-pc-ironclad-$LIBC
 	;;
     *:[Ii]ronclad:*:*)
-	GUESS=$UNAME_MACHINE-unknown-ironclad-$LIBC
+	GUESS=$UNAME_MACHINE-${VENDOR_GUESS}-ironclad-$LIBC
 	;;
 esac
 
@@ -1749,7 +1765,7 @@ main ()
 EOF
 
 $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` &&
-	{ echo "$SYSTEM_NAME"; exit; }
+    { echo "$SYSTEM_NAME"; exit; }
 
 # Apollos put the system type in the environment.
 test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; }
-- 
2.54.0

Reply via email to