[llvm] [LLVM][CMake] Set LANG to "C" before linker detection. (PR #95913)
Carlo Bramini via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 18 05:48:04 PDT 2024
https://github.com/carlo-bramini created https://github.com/llvm/llvm-project/pull/95913
This PR fixes issue #62634
>From 6d894b440433696e83e78a843c512f529f8c3c55 Mon Sep 17 00:00:00 2001
From: Carlo Bramini <carlo_bramini at users.sourceforge.net>
Date: Tue, 18 Jun 2024 14:46:37 +0200
Subject: [PATCH] [LLVM][CMake] Set LANG to "C" before linker detection.
This PR fixes issue #62634
---
llvm/cmake/modules/AddLLVM.cmake | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
index 03f4e1f190fd9..d6aa7bb7adc91 100644
--- a/llvm/cmake/modules/AddLLVM.cmake
+++ b/llvm/cmake/modules/AddLLVM.cmake
@@ -220,12 +220,22 @@ if (NOT DEFINED LLVM_LINKER_DETECTED AND NOT WIN32)
separate_arguments(flags UNIX_COMMAND "${CMAKE_EXE_LINKER_FLAGS}")
set(command ${CMAKE_C_COMPILER} ${flags} ${version_flag} -o ${DEVNULL})
endif()
+
+ # Save current LANG environment variable and set it to "C"
+ set(old_LANG $ENV{LANG})
+ unset(ENV{LANG})
+ set(ENV{LANG} "C")
+
execute_process(
COMMAND ${command}
OUTPUT_VARIABLE stdout
ERROR_VARIABLE stderr
)
+ # Restore original value of LANG
+ unset(ENV{LANG})
+ set(ENV{LANG} ${old_LANG})
+
if(APPLE)
if("${stderr}" MATCHES "PROGRAM:ld")
set(LLVM_LINKER_DETECTED YES CACHE INTERNAL "")
More information about the llvm-commits
mailing list