From b1ef7187e31d6e7b8fc17bec0d8c852f9486a709 Mon Sep 17 00:00:00 2001 From: Muhammad Omair Javaid Date: Thu, 2 May 2024 13:27:48 +0500 Subject: [PATCH 1/2] [compiler-rt] Fix CMake configure on Windows CMake configure compiler-rt got broken as a result of following commit: d3925e65a7ab88eb0ba68d3ab79cd95db5629951 This patch fixes the break by porting the above commit for clang-cl. This problem was not caught on Windows buildbots beacuase it appeared when compiler-rt was included via LLVM_ENABLE_PROJECTS while buildbots include compiler-rt project using LLVM_ENABLE_RUNTIMES flag. --- compiler-rt/cmake/Modules/CompilerRTUtils.cmake | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake index a6c6ef93500d5..240c9837b2d20 100644 --- a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake +++ b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake @@ -369,7 +369,11 @@ macro(construct_compiler_rt_default_triple) endif() if ("${CMAKE_C_COMPILER_ID}" MATCHES "Clang") - execute_process(COMMAND ${CMAKE_C_COMPILER} --target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE} -print-target-triple + set(cmd_prefix "") + if (CMAKE_C_SIMULATE_ID MATCHES "MSVC") + set(cmd_prefix "/clang:") + endif() + execute_process(COMMAND ${CMAKE_C_COMPILER} ${cmd_prefix}--target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE} ${cmd_prefix}-print-target-triple OUTPUT_VARIABLE COMPILER_RT_DEFAULT_TARGET_TRIPLE OUTPUT_STRIP_TRAILING_WHITESPACE) endif() From e53230696c2b311a59f13b6d1913fb44fc629709 Mon Sep 17 00:00:00 2001 From: Omair Javaid Date: Thu, 2 May 2024 15:46:58 +0500 Subject: [PATCH 2/2] Update CompilerRTUtils.cmake --- compiler-rt/cmake/Modules/CompilerRTUtils.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake index 240c9837b2d20..8e331634b76bd 100644 --- a/compiler-rt/cmake/Modules/CompilerRTUtils.cmake +++ b/compiler-rt/cmake/Modules/CompilerRTUtils.cmake @@ -369,11 +369,11 @@ macro(construct_compiler_rt_default_triple) endif() if ("${CMAKE_C_COMPILER_ID}" MATCHES "Clang") - set(cmd_prefix "") + set(option_prefix "") if (CMAKE_C_SIMULATE_ID MATCHES "MSVC") - set(cmd_prefix "/clang:") + set(option_prefix "/clang:") endif() - execute_process(COMMAND ${CMAKE_C_COMPILER} ${cmd_prefix}--target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE} ${cmd_prefix}-print-target-triple + execute_process(COMMAND ${CMAKE_C_COMPILER} ${option_prefix}--target=${COMPILER_RT_DEFAULT_TARGET_TRIPLE} ${option_prefix}-print-target-triple OUTPUT_VARIABLE COMPILER_RT_DEFAULT_TARGET_TRIPLE OUTPUT_STRIP_TRAILING_WHITESPACE) endif()