xref: /openbsd-src/gnu/llvm/lldb/source/Core/CMakeLists.txt (revision f6aab3d83b51b91c24247ad2c2573574de475a82)
1lldb_tablegen(CoreProperties.inc -gen-lldb-property-defs
2  SOURCE CoreProperties.td
3  TARGET LLDBCorePropertiesGen)
4
5lldb_tablegen(CorePropertiesEnum.inc -gen-lldb-property-enum-defs
6  SOURCE CoreProperties.td
7  TARGET LLDBCorePropertiesEnumGen)
8
9set(LLDB_CURSES_LIBS)
10set(LLDB_LIBEDIT_LIBS)
11
12if (LLDB_ENABLE_CURSES)
13  list(APPEND LLDB_CURSES_LIBS ${CURSES_LIBRARIES} ${PANEL_LIBRARIES})
14  if(LLVM_ENABLE_TERMINFO)
15    list(APPEND LLDB_CURSES_LIBS ${TERMINFO_LIB})
16  endif()
17  if (LLVM_BUILD_STATIC)
18    list(APPEND LLDB_CURSES_LIBS gpm)
19  endif()
20endif()
21
22add_lldb_library(lldbCore
23  Address.cpp
24  AddressRange.cpp
25  AddressResolver.cpp
26  AddressResolverFileLine.cpp
27  Communication.cpp
28  DataFileCache.cpp
29  Debugger.cpp
30  DebuggerEvents.cpp
31  Declaration.cpp
32  Disassembler.cpp
33  DumpDataExtractor.cpp
34  DumpRegisterValue.cpp
35  DynamicLoader.cpp
36  EmulateInstruction.cpp
37  FileLineResolver.cpp
38  FileSpecList.cpp
39  FormatEntity.cpp
40  Highlighter.cpp
41  IOHandler.cpp
42  IOHandlerCursesGUI.cpp
43  Mangled.cpp
44  Module.cpp
45  ModuleChild.cpp
46  ModuleList.cpp
47  Opcode.cpp
48  PluginManager.cpp
49  Progress.cpp
50  RichManglingContext.cpp
51  SearchFilter.cpp
52  Section.cpp
53  SourceLocationSpec.cpp
54  SourceManager.cpp
55  StreamAsynchronousIO.cpp
56  StreamFile.cpp
57  ThreadedCommunication.cpp
58  UserSettingsController.cpp
59  Value.cpp
60  ValueObject.cpp
61  ValueObjectCast.cpp
62  ValueObjectChild.cpp
63  ValueObjectConstResult.cpp
64  ValueObjectConstResultCast.cpp
65  ValueObjectConstResultChild.cpp
66  ValueObjectConstResultImpl.cpp
67  ValueObjectDynamicValue.cpp
68  ValueObjectList.cpp
69  ValueObjectMemory.cpp
70  ValueObjectRegister.cpp
71  ValueObjectSyntheticFilter.cpp
72  ValueObjectUpdater.cpp
73  ValueObjectVariable.cpp
74
75  DEPENDS
76    clang-tablegen-targets
77
78  LINK_LIBS
79    lldbBreakpoint
80    lldbDataFormatters
81    lldbExpression
82    lldbHost
83    lldbInterpreter
84    lldbSymbol
85    lldbTarget
86    lldbUtility
87    lldbPluginCPlusPlusLanguage
88    lldbPluginObjCLanguage
89    ${LLDB_CURSES_LIBS}
90
91  CLANG_LIBS
92    clangDriver
93
94  LINK_COMPONENTS
95    Support
96    Demangle
97    TargetParser
98  )
99
100add_dependencies(lldbCore
101  LLDBCorePropertiesGen
102  LLDBCorePropertiesEnumGen)
103
104# Needed to properly resolve references in a debug build.
105# TODO: Remove once we have better layering
106set_target_properties(lldbCore PROPERTIES LINK_INTERFACE_MULTIPLICITY 5)
107
108if (LLDB_ENABLE_CURSES)
109  target_include_directories(lldbCore PRIVATE ${CURSES_INCLUDE_DIRS})
110endif()
111