forked from OSchip/llvm-project
760a9ee63c
Summary: Clangd's framework is assembled by copying binaries from the lib and bin directories into a bundle shape. This results in an invalid bundle code signature because the signature only applies to the binaries not the resources. This patch adds two new options to `llvm_codesign` to enable re-signing the library and XPC service as bundles. The `BUNDLE_PATH` option allow specifying an explicit path to codesign, which enables signing bundles which aren't generated using CMake's `FRAMEWORK` or `BUNDLE` target properties. The `FORCE` option allows re-signing binaries that have already been signed. This is required for how clangd exposes the clangd library and tools as both XPC and non-XPC services using the same binary. Reviewers: jkorous, bogner Reviewed By: bogner Subscribers: mgorny, ilya-biryukov, dexonsmith, arphaman, kadircet, cfe-commits, llvm-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D62693 llvm-svn: 362169 |
||
---|---|---|
.. | ||
cmake | ||
framework | ||
test-client | ||
CMakeLists.txt | ||
Conversion.cpp | ||
Conversion.h | ||
README.txt | ||
XPCTransport.cpp |
README.txt
This directory contains: - the XPC transport layer (alternative transport layer to JSON-RPC) - XPC framework wrapper that wraps around Clangd to make it a valid XPC service - XPC test-client MacOS only. Feature is guarded by CLANGD_BUILD_XPC, including whole xpc/ dir.