Thanks! /haubi/
>From 276322edfce1265e2567fcf20bbcc926f6dc97e4 Mon Sep 17 00:00:00 2001 From: Michael Haubenwallner <michael.haubenwall...@ssi-schaefer.com> Date: Wed, 19 Apr 2017 19:24:54 +0200 Subject: [PATCH] * config.guess: Support MSVC compiler on Windows.
On Windows, each POSIX-like subsystem or addon is able to run the native MSVC compiler cl.exe, either immediately or via some wrapper. Using the precompiler allows to detect various *-winnt triplets. --- config.guess | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/config.guess b/config.guess index 69ed3e5..af60668 100755 --- a/config.guess +++ b/config.guess @@ -151,11 +151,68 @@ Linux|GNU|GNU/*) EOF eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` ;; +CYGWIN*|Interix*|MINGW*|MSYS*|PW*|UWIN*|windows*|Windows*|unknown) + # These systems can probably run the MSVC compiler, + # either immediately or via some wrapper. + eval $set_cc_for_build + cat <<-EOF > $dummy.c + #if defined(_MSC_VER) && (defined(_WIN32) || defined(_WIN64)) + UNAME_SYSTEM=WINNT + # if defined(_M_X64) || defined(_M_AMD64) + UNAME_MACHINE=x86_64-pc + # elif defined(_M_IX86) + # if _M_IX86 - 0 >= 600 + UNAME_MACHINE=i686-pc + # elif _M_IX86 - 0 >= 500 + UNAME_MACHINE=i586-pc + # elif _M_IX86 - 0 >= 400 + UNAME_MACHINE=i486-pc + # else + UNAME_MACHINE=i386-pc + # endif + # elif defined(_M_ARM64) + UNAME_MACHINE=armv8-unknown + # elif defined(_M_ARM_ARMV7VE) + UNAME_MACHINE=armv7-unknown + # elif defined(_M_ARM) || defined(_M_ARM_FP) + # if _M_ARM - 0 >= 5 + UNAME_MACHINE=armv _M_ARM -unknown + # elif _M_ARM - 0 >= 4 || _M_ARM_FP - 0 >= 40 + UNAME_MACHINE=armv4-unknown + # elif _M_ARM - 0 >= 3 || _M_ARM_FP - 0 >= 30 + UNAME_MACHINE=armv3-unknown + # else + UNAME_MACHINE=arm-unknown + # endif + # elif defined(_M_IA64) + UNAME_MACHINE=ia64-unknown + # elif defined(_M_SH) + UNAME_MACHINE=sh _M_SH -unknown + # elif defined(_M_MPPC) + UNAME_MACHINE=powerpc-apple + # elif defined(_M_PPC) + UNAME_MACHINE=powerpc-unknown + # elif defined(_M_ALPHA) + UNAME_MACHINE=alpha-dec + # elif defined(_M_MRX000) + UNAME_MACHINE=mips-unknown + # else + UNAME_MACHINE=unknown-unknown + # endif + #endif + EOF + # POSIX path in $dummy is not understood by unwrapped MSVC. + eval `cd "$tmp" && $CC_FOR_BUILD -E dummy.c 2>/dev/null | grep '^UNAME_' | tr -d " \\\\015"` + ;; esac # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:WINNT:*:*) + # UNAME_MACHINE includes -pc or -unknown + echo ${UNAME_MACHINE}-winnt + exit ;; *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, -- 2.10.2
_______________________________________________ config-patches mailing list config-patches@gnu.org https://lists.gnu.org/mailman/listinfo/config-patches