Files
clang-p2996/lldb/tools/debugserver/source/MacOSX/CMakeLists.txt
Kuba Brecka 58bd5cfecd Don't hardcode path to codesign_allocate.
Building OS X debugserver assumes you have an Xcode installation at /Application/Xcode.app. Let's instead detect where Xcode is using xcrun.

See http://reviews.llvm.org/D4152

llvm-svn: 211074
2014-06-16 22:55:16 +00:00

70 lines
1.7 KiB
CMake

set(LLVM_NO_RTTI 1)
#add_subdirectory(arm64)
#add_subdirectory(arm)
add_subdirectory(i386)
#add_subdirectory(ppc)
add_subdirectory(x86_64)
include_directories(..)
set(generated_mach_interfaces
${CMAKE_CURRENT_BINARY_DIR}/mach_exc.h
${CMAKE_CURRENT_BINARY_DIR}/mach_excServer.c
${CMAKE_CURRENT_BINARY_DIR}/mach_excUser.c
)
add_custom_command(OUTPUT ${generated_mach_interfaces}
COMMAND mig -I${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/dbgnub-mig.defs
DEPENDS ${dnbconfig_header}
)
set(DEBUGSERVER_USED_LIBS
lldbDebugserverCommon
lldbUtility
lldbDebugserverMacOSX_I386
lldbDebugserverMacOSX_X86_64
)
add_lldb_executable(debugserver
${dnbconfig_header}
HasAVX.s
CFBundle.cpp
CFData.cpp
CFString.cpp
Genealogy.cpp
MachException.cpp
MachProcess.mm
MachTask.mm
MachThread.cpp
MachThreadList.cpp
MachVMMemory.cpp
MachVMRegion.cpp
${generated_mach_interfaces}
)
set_source_files_properties(
HasAVX.s
# Necessary since compilation will fail with stand-alone assembler
PROPERTIES LANGUAGE C COMPILE_FLAGS "-x assembler-with-cpp"
)
add_dependencies(debugserver generate_dnbconfig)
target_link_libraries(debugserver ${DEBUGSERVER_USED_LIBS})
# Sign the debugserver binary
set (CODESIGN_IDENTITY lldb_codesign)
execute_process(
COMMAND xcrun -f codesign_allocate
OUTPUT_STRIP_TRAILING_WHITESPACE
OUTPUT_VARIABLE CODESIGN_ALLOCATE
)
add_custom_command(TARGET debugserver
POST_BUILD
COMMAND CODESIGN_ALLOCATE=${CODESIGN_ALLOCATE} codesign --entitlements ${CMAKE_CURRENT_SOURCE_DIR}/../debugserver-entitlements.plist --force --sign ${CODESIGN_IDENTITY} debugserver
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/bin
)
install(TARGETS debugserver
RUNTIME DESTINATION bin
)