diff options
| -rw-r--r-- | compiler-rt/cmake/Modules/AddCompilerRT.cmake | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler-rt/cmake/Modules/AddCompilerRT.cmake b/compiler-rt/cmake/Modules/AddCompilerRT.cmake index e0400a8ea952..dc36f16c661c 100644 --- a/compiler-rt/cmake/Modules/AddCompilerRT.cmake +++ b/compiler-rt/cmake/Modules/AddCompilerRT.cmake @@ -405,11 +405,14 @@ function(add_compiler_rt_runtime name type) if (HAD_ERROR) message(FATAL_ERROR "${CMAKE_LINKER} failed with status ${HAD_ERROR}") endif() - set(NEED_EXPLICIT_ADHOC_CODESIGN 1) + set(NEED_EXPLICIT_ADHOC_CODESIGN 0) + # Apple introduced a new linker by default in Xcode 15. This linker reports itself as ld + # rather than ld64 and does not match this version regex. That's ok since it never needs + # the explicit ad-hoc code signature. if ("${LD_V_OUTPUT}" MATCHES ".*ld64-([0-9.]+).*") string(REGEX REPLACE ".*ld64-([0-9.]+).*" "\\1" HOST_LINK_VERSION ${LD_V_OUTPUT}) - if (HOST_LINK_VERSION VERSION_GREATER_EQUAL 609) - set(NEED_EXPLICIT_ADHOC_CODESIGN 0) + if (HOST_LINK_VERSION VERSION_LESS 609) + set(NEED_EXPLICIT_ADHOC_CODESIGN 1) endif() endif() if (NEED_EXPLICIT_ADHOC_CODESIGN) |
