1set(LLVM_TARGET_DEFINITIONS LLGSOptions.td) 2tablegen(LLVM LLGSOptions.inc -gen-opt-parser-defs) 3add_public_tablegen_target(LLGSOptionsTableGen) 4set_target_properties(LLGSOptionsTableGen PROPERTIES FOLDER "lldb misc") 5 6set(LLDB_PLUGINS) 7 8if(CMAKE_SYSTEM_NAME MATCHES "Linux|Android") 9 list(APPEND LLDB_PLUGINS lldbPluginProcessLinux) 10endif() 11 12if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") 13 list(APPEND LLDB_PLUGINS lldbPluginProcessFreeBSD) 14endif() 15 16if(CMAKE_SYSTEM_NAME MATCHES "NetBSD") 17 list(APPEND LLDB_PLUGINS lldbPluginProcessNetBSD) 18endif() 19 20if(CMAKE_SYSTEM_NAME MATCHES "OpenBSD") 21 list(APPEND LLDB_PLUGINS lldbPluginProcessOpenBSD) 22endif() 23 24if(CMAKE_SYSTEM_NAME MATCHES "Darwin") 25 list(APPEND LLDB_PLUGINS lldbPluginObjectFileMachO) 26elseif(CMAKE_SYSTEM_NAME MATCHES "Windows") 27 list(APPEND LLDB_PLUGINS lldbPluginObjectFilePECOFF) 28else() 29 list(APPEND LLDB_PLUGINS lldbPluginObjectFileELF) 30endif() 31 32if(APPLE_EMBEDDED) 33 if(LLDB_CODESIGN_IDENTITY) 34 # Use explicit LLDB identity 35 set(LLVM_CODESIGNING_IDENTITY ${LLDB_CODESIGN_IDENTITY}) 36 else() 37 # Use explicit LLVM identity or default to lldb_codesign if empty 38 if(NOT LLVM_CODESIGNING_IDENTITY) 39 set(LLVM_CODESIGNING_IDENTITY lldb_codesign) 40 endif() 41 endif() 42endif() 43 44add_lldb_tool(lldb-server 45 Acceptor.cpp 46 lldb-gdbserver.cpp 47 lldb-platform.cpp 48 lldb-server.cpp 49 LLDBServerUtilities.cpp 50 SystemInitializerLLGS.cpp 51 52 LINK_LIBS 53 lldbBase 54 lldbHost 55 lldbInitialization 56 ${LLDB_PLUGINS} 57 lldbPluginInstructionARM 58 lldbPluginInstructionMIPS 59 lldbPluginInstructionMIPS64 60 ${LLDB_SYSTEM_LIBS} 61 62 LINK_COMPONENTS 63 Option 64 Support 65) 66 67add_dependencies(lldb-server 68 LLGSOptionsTableGen 69 ${tablegen_deps} 70) 71target_include_directories(lldb-server PRIVATE "${LLDB_SOURCE_DIR}/source") 72target_link_libraries(lldb-server PRIVATE ${LLDB_SYSTEM_LIBS}) 73