By default the cmake build doesn't build LLDB.framework, but thanks for raising the point, we can avoid the copy when that build setting is in place.
vedant > On Feb 13, 2018, at 3:11 PM, Greg Clayton <clayb...@gmail.com> wrote: > > If "debugserver" isn't put into the LLDB.framework, then it falls back to > using the one in the currently selected Xcode. We don't really need to copy > it if we just want to use the active system version? > >> On Feb 13, 2018, at 3:08 PM, Vedant Kumar via lldb-commits >> <lldb-commits@lists.llvm.org> wrote: >> >> @Davide I think you ran into this issue yesterday, let me know if this >> resolves it for you. >> >> vedant >> >>> On Feb 13, 2018, at 3:05 PM, Vedant Kumar via lldb-commits >>> <lldb-commits@lists.llvm.org> wrote: >>> >>> Author: vedantk >>> Date: Tue Feb 13 15:05:46 2018 >>> New Revision: 325068 >>> >>> URL: http://llvm.org/viewvc/llvm-project?rev=325068&view=rev >>> Log: >>> [cmake] Darwin: Copy in the system debugserver if needed >>> >>> This makes the built debugger functional on Darwin when compiling >>> without code signing (as documented in docs/code-signing.txt). >>> >>> Modified: >>> lldb/trunk/CMakeLists.txt >>> lldb/trunk/test/CMakeLists.txt >>> lldb/trunk/tools/debugserver/source/CMakeLists.txt >>> lldb/trunk/unittests/tools/lldb-server/CMakeLists.txt >>> >>> Modified: lldb/trunk/CMakeLists.txt >>> URL: >>> http://llvm.org/viewvc/llvm-project/lldb/trunk/CMakeLists.txt?rev=325068&r1=325067&r2=325068&view=diff >>> ============================================================================== >>> --- lldb/trunk/CMakeLists.txt (original) >>> +++ lldb/trunk/CMakeLists.txt Tue Feb 13 15:05:46 2018 >>> @@ -56,6 +56,22 @@ if (NOT LLDB_DISABLE_PYTHON) >>> >>> add_subdirectory(scripts) >>> endif () >>> + >>> +if(CMAKE_HOST_APPLE) >>> + if(LLDB_CODESIGN_IDENTITY) >>> + set(DEBUGSERVER_PATH $<TARGET_FILE:debugserver>) >>> + else() >>> + execute_process( >>> + COMMAND xcode-select -p >>> + OUTPUT_VARIABLE XCODE_DEV_DIR) >>> + string(STRIP ${XCODE_DEV_DIR} XCODE_DEV_DIR) >>> + set(DEBUGSERVER_PATH >>> + >>> "${XCODE_DEV_DIR}/../SharedFrameworks/LLDB.framework/Resources/debugserver") >>> + set(SKIP_DEBUGSERVER True) >>> + endif() >>> + message(STATUS "Path to the lldb debugserver: ${DEBUGSERVER_PATH}") >>> +endif() >>> + >>> add_subdirectory(source) >>> add_subdirectory(tools) >>> >>> >>> Modified: lldb/trunk/test/CMakeLists.txt >>> URL: >>> http://llvm.org/viewvc/llvm-project/lldb/trunk/test/CMakeLists.txt?rev=325068&r1=325067&r2=325068&view=diff >>> ============================================================================== >>> --- lldb/trunk/test/CMakeLists.txt (original) >>> +++ lldb/trunk/test/CMakeLists.txt Tue Feb 13 15:05:46 2018 >>> @@ -110,17 +110,6 @@ if (NOT ${CMAKE_SYSTEM_NAME} MATCHES "Wi >>> endif() >>> >>> if(CMAKE_HOST_APPLE) >>> - if(LLDB_CODESIGN_IDENTITY) >>> - set(DEBUGSERVER_PATH $<TARGET_FILE:debugserver>) >>> - else() >>> - execute_process( >>> - COMMAND xcode-select -p >>> - OUTPUT_VARIABLE XCODE_DEV_DIR) >>> - string(STRIP ${XCODE_DEV_DIR} XCODE_DEV_DIR) >>> - set(DEBUGSERVER_PATH >>> - >>> "${XCODE_DEV_DIR}/../SharedFrameworks/LLDB.framework/Resources/debugserver") >>> - endif() >>> - message(STATUS "Path to the lldb debugserver: ${DEBUGSERVER_PATH}") >>> list(APPEND LLDB_TEST_COMMON_ARGS --server ${DEBUGSERVER_PATH}) >>> endif() >>> >>> >>> Modified: lldb/trunk/tools/debugserver/source/CMakeLists.txt >>> URL: >>> http://llvm.org/viewvc/llvm-project/lldb/trunk/tools/debugserver/source/CMakeLists.txt?rev=325068&r1=325067&r2=325068&view=diff >>> ============================================================================== >>> --- lldb/trunk/tools/debugserver/source/CMakeLists.txt (original) >>> +++ lldb/trunk/tools/debugserver/source/CMakeLists.txt Tue Feb 13 15:05:46 >>> 2018 >>> @@ -195,7 +195,15 @@ if("${LLDB_CODESIGN_IDENTITY}" STREQUAL >>> 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_CODESIGN_IDENTITY}" STREQUAL "") >>> + if (CMAKE_HOST_APPLE) >>> + # If we haven't built a signed debugserver, copy the one from the >>> system. >>> + add_custom_target(debugserver >>> + COMMAND ${CMAKE_COMMAND} -E copy_if_different ${DEBUGSERVER_PATH} >>> ${CMAKE_BINARY_DIR}/bin >>> + VERBATIM >>> + COMMENT "Copying the system debugserver to LLDB's binaries >>> directory.") >>> + endif() >>> +else() >>> if(LLDB_USE_ENTITLEMENTS) >>> set(entitlements_flags --entitlements ${entitlements_xml}) >>> endif() >>> >>> Modified: lldb/trunk/unittests/tools/lldb-server/CMakeLists.txt >>> URL: >>> http://llvm.org/viewvc/llvm-project/lldb/trunk/unittests/tools/lldb-server/CMakeLists.txt?rev=325068&r1=325067&r2=325068&view=diff >>> ============================================================================== >>> --- lldb/trunk/unittests/tools/lldb-server/CMakeLists.txt (original) >>> +++ lldb/trunk/unittests/tools/lldb-server/CMakeLists.txt Tue Feb 13 >>> 15:05:46 2018 >>> @@ -13,7 +13,7 @@ add_lldb_test_executable(thread_inferior >>> add_lldb_test_executable(environment_check inferior/environment_check.cpp) >>> >>> if (CMAKE_SYSTEM_NAME MATCHES "Darwin") >>> - add_definitions(-DLLDB_SERVER="$<TARGET_FILE:debugserver>" >>> -DLLDB_SERVER_IS_DEBUGSERVER=1) >>> + add_definitions(-DLLDB_SERVER="${DEBUGSERVER_PATH}" >>> -DLLDB_SERVER_IS_DEBUGSERVER=1) >>> else() >>> add_definitions(-DLLDB_SERVER="$<TARGET_FILE:lldb-server>" >>> -DLLDB_SERVER_IS_DEBUGSERVER=0) >>> endif() >>> >>> >>> _______________________________________________ >>> lldb-commits mailing list >>> lldb-commits@lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits >> >> _______________________________________________ >> lldb-commits mailing list >> lldb-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits > _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits