[all-commits] [llvm/llvm-project] 815250: [compiler-rt] Don't rely on automatic codesigning ...
Mark Rowe via All-commits
all-commits at lists.llvm.org
Wed May 29 20:56:27 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 815250b219a04966e4ea5de3a09965bea4d4cc41
https://github.com/llvm/llvm-project/commit/815250b219a04966e4ea5de3a09965bea4d4cc41
Author: Mark Rowe <mrowe at bdash.net.nz>
Date: 2024-05-29 (Wed, 29 May 2024)
Changed paths:
M compiler-rt/cmake/Modules/AddCompilerRT.cmake
Log Message:
-----------
[compiler-rt] Don't rely on automatic codesigning with Apple's linker (#91681)
In https://github.com/llvm/llvm-project/pull/88323, I changed the logic
within `add_compiler_rt_runtime` to only explicitly code sign the
resulting library if an older version of Apple's ld64 was in use. This
was based on the assumption that newer versions of ld64 and the new
Apple linker always ad-hoc sign their output binaries. This is true in
most cases, but not when using Apple's new linker with the
`-darwin-target-variant` flag to build Mac binaries that are compatible
with Catalyst.
Rather than adding increasingly complicated logic to detect the exact
scenarios that require explicit code signing, I've opted to always
explicitly code sign when using any Apple linker. We instead detect and
use the 'linker-signed' codesigning option when possible to match the
signatures that the linker would otherwise create. This avoids having
non-'linker-signed' ad-hoc signatures which was the underlying problem
that https://github.com/llvm/llvm-project/pull/88323 was intended to
address.
Co-authored-by: Mark Rowe <markrowe at chromium.org>
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list