aboutsummaryrefslogtreecommitdiff
path: root/tools/lldb-server/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'tools/lldb-server/CMakeLists.txt')
-rw-r--r--tools/lldb-server/CMakeLists.txt140
1 files changed, 13 insertions, 127 deletions
diff --git a/tools/lldb-server/CMakeLists.txt b/tools/lldb-server/CMakeLists.txt
index c3b405f67b2e..4f76ebd6881c 100644
--- a/tools/lldb-server/CMakeLists.txt
+++ b/tools/lldb-server/CMakeLists.txt
@@ -17,96 +17,13 @@ endif ()
if ( CMAKE_SYSTEM_NAME MATCHES "NetBSD" )
include_directories(
../../../../llvm/include
+ ../../source/Plugins/Process/NetBSD
../../source/Plugins/Process/POSIX
)
endif ()
include_directories(../../source)
-
-set( LLDB_USED_LIBS
- lldbBase
- lldbBreakpoint
- lldbCommands
- lldbDataFormatters
- lldbHost
- lldbCore
- lldbExpression
- lldbInitialization
- lldbInterpreter
- lldbSymbol
- lldbTarget
- lldbUtility
-
- # Plugins
- lldbPluginDisassemblerLLVM
- lldbPluginSymbolFileDWARF
- lldbPluginSymbolFilePDB
- lldbPluginSymbolFileSymtab
- lldbPluginDynamicLoaderPosixDYLD
-
- lldbPluginCPlusPlusLanguage
- lldbPluginGoLanguage
- lldbPluginJavaLanguage
- lldbPluginObjCLanguage
- lldbPluginObjCPlusPlusLanguage
- lldbPluginOCamlLanguage
-
- lldbPluginObjectFileELF
- lldbPluginObjectFileJIT
- lldbPluginSymbolVendorELF
- lldbPluginPlatformPOSIX
- lldbPluginObjectContainerBSDArchive
- lldbPluginObjectContainerMachOArchive
- lldbPluginProcessGDBRemote
- lldbPluginProcessUtility
- lldbPluginObjectContainerMachOArchive
- lldbPluginObjectContainerBSDArchive
- lldbPluginPlatformMacOSX
- lldbPluginUnwindAssemblyInstEmulation
- lldbPluginUnwindAssemblyX86
- lldbPluginAppleObjCRuntime
- lldbPluginCXXItaniumABI
- lldbPluginInstructionARM
- lldbPluginInstructionARM64
- lldbPluginInstructionMIPS
- lldbPluginInstructionMIPS64
- lldbPluginObjectFilePECOFF
- lldbPluginExpressionParserClang
- lldbPluginExpressionParserGo
- )
-
-# Linux-only libraries
-if ( CMAKE_SYSTEM_NAME MATCHES "Linux" )
- list(APPEND LLDB_USED_LIBS
- lldbPluginProcessLinux
- lldbPluginProcessPOSIX
- )
-endif ()
-
-# Darwin-only libraries
-if ( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
- list(APPEND LLDB_USED_LIBS
- lldbPluginObjectFileMachO
- )
-endif()
-
-set( CLANG_USED_LIBS
- clangAnalysis
- clangAST
- clangBasic
- clangCodeGen
- clangDriver
- clangEdit
- clangFrontend
- clangLex
- clangParse
- clangRewrite
- clangRewriteFrontend
- clangSema
- clangSerialization
- )
-
set(LLDB_SYSTEM_LIBS)
if (NOT LLDB_DISABLE_LIBEDIT)
list(APPEND LLDB_SYSTEM_LIBS edit)
@@ -142,55 +59,24 @@ if (LLVM_BUILD_STATIC)
endif()
endif()
-set(LLVM_LINK_COMPONENTS
- ${LLVM_TARGETS_TO_BUILD}
- interpreter
- asmparser
- bitreader
- bitwriter
- codegen
- demangle
- ipo
- selectiondag
- bitreader
- mc
- mcjit
- core
- mcdisassembler
- executionengine
- runtimedyld
- option
- support
- coverage
- target
- )
-
add_lldb_tool(lldb-server INCLUDE_IN_FRAMEWORK
Acceptor.cpp
lldb-gdbserver.cpp
lldb-platform.cpp
lldb-server.cpp
LLDBServerUtilities.cpp
-)
-# The Darwin linker doesn't understand --start-group/--end-group.
-if (LLDB_LINKER_SUPPORTS_GROUPS)
- target_link_libraries(lldb-server
- -Wl,--start-group ${LLDB_USED_LIBS} -Wl,--end-group)
- target_link_libraries(lldb-server
- -Wl,--start-group ${CLANG_USED_LIBS} -Wl,--end-group)
-else()
- target_link_libraries(lldb-server ${LLDB_USED_LIBS})
- target_link_libraries(lldb-server ${CLANG_USED_LIBS})
-endif()
-if(NOT LLVM_LINK_LLVM_DYLIB)
- # This is necessary in !LLVM_LINK_LLVM_DYLIB as LLDB's libs do not track their
- # dependencies properly. It is conditional because in a LLVM_LINK_LLVM_DYLIB
- # build it would introduce duplicate symbols (add_lldb_tool links to libLLVM,
- # and this would add the individual .a files as well).
- llvm_config(lldb-server ${LLVM_LINK_COMPONENTS})
-endif()
+ LINK_LIBS
+ lldbBase
+ lldbCore
+ lldbHost
+ lldbInitialization
+ lldbInterpreter
+ ${EXTRA_LLDB_LIBS}
+ ${LLDB_SYSTEM_LIBS}
+
+ LINK_COMPONENTS
+ Support
+)
target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS})
-
-set_target_properties(lldb-server PROPERTIES VERSION ${LLDB_VERSION})