summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lldb/tools/debugserver/source/CMakeLists.txt15
1 files changed, 15 insertions, 0 deletions
diff --git a/lldb/tools/debugserver/source/CMakeLists.txt b/lldb/tools/debugserver/source/CMakeLists.txt
index d63dc23ef3b..863afaaecfb 100644
--- a/lldb/tools/debugserver/source/CMakeLists.txt
+++ b/lldb/tools/debugserver/source/CMakeLists.txt
@@ -142,6 +142,21 @@ else()
message(STATUS "lldb debugserver will not be available.")
endif()
+# On MacOS, debugserver needs to be codesigned when built. Check if we have
+# a certificate instead of failing in the middle of the build.
+if(build_and_sign_debugserver)
+ execute_process(
+ COMMAND security find-certificate -Z -p -c ${LLDB_CODESIGN_IDENTITY_USED} /Library/Keychains/System.keychain
+ RESULT_VARIABLE cert_return
+ OUTPUT_QUIET
+ ERROR_QUIET)
+
+ if (cert_return)
+ message(FATAL_ERROR "Certificate for debugserver not found. Run scripts/macos-setup-codesign.sh or "
+ "use the system debugserver passing -DLLDB_USE_SYSTEM_DEBUGSERVER=ON to CMake")
+ endif()
+endif()
+
if(APPLE)
if(IOS)
find_library(BACKBOARD_LIBRARY BackBoardServices
OpenPOWER on IntegriCloud