[Lldb-commits] [lldb] r310936 - [CMake] Disable code sign entitlements when using lldb_codesign

Chris Bieneman via lldb-commits lldb-commits at lists.llvm.org
Tue Aug 15 10:42:21 PDT 2017


Author: cbieneman
Date: Tue Aug 15 10:42:20 2017
New Revision: 310936

URL: http://llvm.org/viewvc/llvm-project?rev=310936&view=rev
Log:
[CMake] Disable code sign entitlements when using lldb_codesign

Turns out self-signed certificates and entitlements don't always play well together...

Modified:
    lldb/trunk/tools/debugserver/source/CMakeLists.txt

Modified: lldb/trunk/tools/debugserver/source/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/debugserver/source/CMakeLists.txt?rev=310936&r1=310935&r2=310936&view=diff
==============================================================================
--- lldb/trunk/tools/debugserver/source/CMakeLists.txt (original)
+++ lldb/trunk/tools/debugserver/source/CMakeLists.txt Tue Aug 15 10:42:20 2017
@@ -184,7 +184,16 @@ endif()
 
 set(LLDB_CODESIGN_IDENTITY "lldb_codesign"
   CACHE STRING "Identity used for code signing. Set to empty string to skip the signing step.")
+set(LLDB_USE_ENTITLEMENTS_Default On)
+if(LLDB_CODESIGN_INDENTITY STREQUAL "lldb_codesign")
+  set(LLDB_USE_ENTITLEMENTS_Default Off)
+endif()
+option(LLDB_USE_ENTITLEMENTS "Use entitlements when codesigning (Defaults Off when using lldb_codesign identity, otherwise On)" ${LLDB_USE_ENTITLEMENTS_Default})
+
 if (NOT ("${LLDB_CODESIGN_IDENTITY}" STREQUAL ""))
+  if(LLDB_USE_ENTITLEMENTS)
+    set(entitlements_flags --entitlements ${entitlements_xml})
+  endif()
   execute_process(
     COMMAND xcrun -f codesign_allocate
     OUTPUT_STRIP_TRAILING_WHITESPACE
@@ -194,7 +203,7 @@ if (NOT ("${LLDB_CODESIGN_IDENTITY}" STR
     POST_BUILD
     COMMAND ${CMAKE_COMMAND} -E env CODESIGN_ALLOCATE=${CODESIGN_ALLOCATE}
             codesign --force --sign ${LLDB_CODESIGN_IDENTITY}
-            --entitlements ${entitlements_xml}
+            ${entitlements_flags}
             $<TARGET_FILE:debugserver>
     WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin
   )
@@ -203,7 +212,7 @@ if (NOT ("${LLDB_CODESIGN_IDENTITY}" STR
       POST_BUILD
       COMMAND ${CMAKE_COMMAND} -E env CODESIGN_ALLOCATE=${CODESIGN_ALLOCATE}
               codesign --force --sign ${LLDB_CODESIGN_IDENTITY}
-              --entitlements ${entitlements_xml}
+              ${entitlements_flags}
               $<TARGET_FILE:debugserver>
       WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin
     )




More information about the lldb-commits mailing list