From 62cb49a3711c416c3670095d93460788624e7805 Mon Sep 17 00:00:00 2001 From: wuggy Date: Tue, 30 Jun 2026 06:01:23 +0100 Subject: [PATCH] Fix lld-link --- old-configure.in | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/old-configure.in b/old-configure.in index 8364310d8d..21f4dd8bdd 100644 --- a/old-configure.in +++ b/old-configure.in @@ -255,12 +255,24 @@ case "$target" in WIN32_REDIST_DIR=`cd "$WIN32_REDIST_DIR" && pwd -W` fi - # Check linker version - _LD_FULL_VERSION=`"${LD}" -v 2>&1 | sed -nre "$_MSVC_VER_FILTER"` +# Check linker version +_LD_FULL_VERSION=`"${LD}" -v 2>&1` + +# If using lld-link, force version to match clang-cl's MSVC suite (14) +case "$_LD_FULL_VERSION" in + *LLD*) + _LD_MAJOR_VERSION=$_CC_SUITE + ;; + *) + _LD_FULL_VERSION=`echo "$_LD_FULL_VERSION" | sed -nre "$_MSVC_VER_FILTER"` _LD_MAJOR_VERSION=`echo ${_LD_FULL_VERSION} | $AWK -F\. '{ print $1 }'` - if test "$_LD_MAJOR_VERSION" != "$_CC_SUITE"; then - AC_MSG_ERROR([The linker major version, $_LD_FULL_VERSION, does not match the compiler suite version, $_CC_SUITE.]) - fi + ;; +esac + +if test "$_LD_MAJOR_VERSION" != "$_CC_SUITE"; then + AC_MSG_ERROR([The linker major version, $_LD_FULL_VERSION, does not match the compiler suite version, $_CC_SUITE.]) +fi + INCREMENTAL_LINKER=1