[compiler-rt] [compiler-rt] Do not search for sysroots for disabled Darwin targets (PR #161877)
Nathan Corbyn via llvm-commits
llvm-commits at lists.llvm.org
Fri Oct 3 09:52:12 PDT 2025
https://github.com/cofibrant created https://github.com/llvm/llvm-project/pull/161877
This patch improves CMake configuration time for Darwin builds by removing the need to search for sysroots for disabled targets. In particular, when the disabled targets are not installed, this search takes a while to fail.
CC @florianhumblot @citymarina
>From 3b9eb58521984e8566951ce1758105dd53f61294 Mon Sep 17 00:00:00 2001
From: Nathan Corbyn <n_corbyn at apple.com>
Date: Fri, 3 Oct 2025 17:46:57 +0100
Subject: [PATCH] [compiler-rt] Do not search for sysroots for disabled Darwin
targets
---
compiler-rt/cmake/builtin-config-ix.cmake | 24 +++++++++++++++--------
compiler-rt/cmake/config-ix.cmake | 18 +++++++++++------
2 files changed, 28 insertions(+), 14 deletions(-)
diff --git a/compiler-rt/cmake/builtin-config-ix.cmake b/compiler-rt/cmake/builtin-config-ix.cmake
index b86bb1bca7cda..eaff8135cff45 100644
--- a/compiler-rt/cmake/builtin-config-ix.cmake
+++ b/compiler-rt/cmake/builtin-config-ix.cmake
@@ -117,14 +117,22 @@ include(CompilerRTDarwinUtils)
if(APPLE)
find_darwin_sdk_dir(DARWIN_osx_SYSROOT macosx)
- find_darwin_sdk_dir(DARWIN_iossim_SYSROOT iphonesimulator)
- find_darwin_sdk_dir(DARWIN_ios_SYSROOT iphoneos)
- find_darwin_sdk_dir(DARWIN_watchossim_SYSROOT watchsimulator)
- find_darwin_sdk_dir(DARWIN_watchos_SYSROOT watchos)
- find_darwin_sdk_dir(DARWIN_tvossim_SYSROOT appletvsimulator)
- find_darwin_sdk_dir(DARWIN_tvos_SYSROOT appletvos)
- find_darwin_sdk_dir(DARWIN_xrossim_SYSROOT xrsimulator)
- find_darwin_sdk_dir(DARWIN_xros_SYSROOT xros)
+ if(COMPILER_RT_ENABLE_IOS)
+ find_darwin_sdk_dir(DARWIN_iossim_SYSROOT iphonesimulator)
+ find_darwin_sdk_dir(DARWIN_ios_SYSROOT iphoneos)
+ endif()
+ if(COMPILER_RT_ENABLE_WATCHOS)
+ find_darwin_sdk_dir(DARWIN_watchossim_SYSROOT watchsimulator)
+ find_darwin_sdk_dir(DARWIN_watchos_SYSROOT watchos)
+ endif()
+ if(COMPILER_RT_ENABLE_TVOS)
+ find_darwin_sdk_dir(DARWIN_tvossim_SYSROOT appletvsimulator)
+ find_darwin_sdk_dir(DARWIN_tvos_SYSROOT appletvos)
+ endif()
+ if(COMPILER_RT_ENABLE_XROS)
+ find_darwin_sdk_dir(DARWIN_xrossim_SYSROOT xrsimulator)
+ find_darwin_sdk_dir(DARWIN_xros_SYSROOT xros)
+ endif()
# Get supported architecture from SDKSettings.
function(sdk_has_arch_support sdk_path os arch has_support)
diff --git a/compiler-rt/cmake/config-ix.cmake b/compiler-rt/cmake/config-ix.cmake
index 67db4383ec3dc..8dfbdecbd6b97 100644
--- a/compiler-rt/cmake/config-ix.cmake
+++ b/compiler-rt/cmake/config-ix.cmake
@@ -408,12 +408,18 @@ if(APPLE)
include(CompilerRTDarwinUtils)
find_darwin_sdk_dir(DARWIN_osx_SYSROOT macosx)
- find_darwin_sdk_dir(DARWIN_iossim_SYSROOT iphonesimulator)
- find_darwin_sdk_dir(DARWIN_ios_SYSROOT iphoneos)
- find_darwin_sdk_dir(DARWIN_watchossim_SYSROOT watchsimulator)
- find_darwin_sdk_dir(DARWIN_watchos_SYSROOT watchos)
- find_darwin_sdk_dir(DARWIN_tvossim_SYSROOT appletvsimulator)
- find_darwin_sdk_dir(DARWIN_tvos_SYSROOT appletvos)
+ if(COMPILER_RT_ENABLE_IOS)
+ find_darwin_sdk_dir(DARWIN_iossim_SYSROOT iphonesimulator)
+ find_darwin_sdk_dir(DARWIN_ios_SYSROOT iphoneos)
+ endif()
+ if(COMPILER_RT_ENABLE_WATCHOS)
+ find_darwin_sdk_dir(DARWIN_watchossim_SYSROOT watchsimulator)
+ find_darwin_sdk_dir(DARWIN_watchos_SYSROOT watchos)
+ endif()
+ if(COMPILER_RT_ENABLE_TVOS)
+ find_darwin_sdk_dir(DARWIN_tvossim_SYSROOT appletvsimulator)
+ find_darwin_sdk_dir(DARWIN_tvos_SYSROOT appletvos)
+ endif()
if(NOT DARWIN_osx_SYSROOT)
message(WARNING "Could not determine OS X sysroot, trying /usr/include")
More information about the llvm-commits
mailing list