From d71f2bd07a9a723158fb1ec59ec7398fe7aee577 Mon Sep 17 00:00:00 2001 From: Alexander Strasser Date: Sat, 21 Jun 2025 11:13:22 +0200 Subject: [PATCH] configure: Fix a regression when probing link.exe The version ident is printed on stdout for link.exe and redirecting stdout to /dev/null will cause the output of link.exe to be paged. This caused configure to hang for some configurations and by extension some FATE clients. You might want to check if you run affected configurations automated in FATE clients or similar setups. Fixes: 45a30e03613a3c63d74a40f7ac86ce28dce14ff8 --- configure | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/configure b/configure index 708ecd9025..ce027d3845 100755 --- a/configure +++ b/configure @@ -5130,10 +5130,9 @@ probe_cc(){ elif $_cc -nologo- 2>&1 | grep -q ^Microsoft || { $_cc -v 2>&1 | grep -q clang && $_cc -? > /dev/null 2>&1; }; then _type=msvc if $_cc -nologo- 2>&1 | grep -q ^Microsoft; then - # The version number is printed on the first line on stderr, stdout - # gets the usage instructions. Only include stderr, to avoid - # potential ordering race conditions. - _ident=$($_cc 2>&1 >/dev/null | head -n1 | tr -d '\r') + # Depending on the tool (cl.exe or link.exe), the version number + # is printed on the first line of stderr or stdout + _ident=$($_cc 2>&1 | grep ^Microsoft | head -n1 | tr -d '\r') else _ident=$($_cc --version 2>/dev/null | head -n1 | tr -d '\r') fi --