xref: /openbsd-src/gnu/llvm/lldb/source/Plugins/CMakeLists.txt (revision f6aab3d83b51b91c24247ad2c2573574de475a82)
1add_subdirectory(ABI)
2add_subdirectory(Architecture)
3add_subdirectory(Disassembler)
4add_subdirectory(DynamicLoader)
5add_subdirectory(ExpressionParser)
6add_subdirectory(Instruction)
7add_subdirectory(InstrumentationRuntime)
8add_subdirectory(JITLoader)
9add_subdirectory(Language)
10add_subdirectory(LanguageRuntime)
11add_subdirectory(MemoryHistory)
12add_subdirectory(ObjectContainer)
13add_subdirectory(ObjectFile)
14add_subdirectory(OperatingSystem)
15add_subdirectory(Platform)
16add_subdirectory(Process)
17add_subdirectory(REPL)
18add_subdirectory(ScriptInterpreter)
19add_subdirectory(StructuredData)
20add_subdirectory(SymbolFile)
21add_subdirectory(SystemRuntime)
22add_subdirectory(SymbolVendor)
23add_subdirectory(Trace)
24add_subdirectory(TraceExporter)
25add_subdirectory(TypeSystem)
26add_subdirectory(UnwindAssembly)
27
28set(LLDB_STRIPPED_PLUGINS)
29get_property(LLDB_ALL_PLUGINS GLOBAL PROPERTY LLDB_PLUGINS)
30
31set(LLDB_ENUM_PLUGINS "")
32
33# FIXME: ProcessWindowsCommon needs to be initialized after all other process
34# plugins but before ProcessGDBRemote.
35set(LLDB_PROCESS_WINDOWS_PLUGIN "")
36set(LLDB_PROCESS_GDB_PLUGIN "")
37
38foreach(p ${LLDB_ALL_PLUGINS})
39  # Strip lldbPlugin from the plugin name.
40  string(SUBSTRING ${p} 10 -1 pStripped)
41  if(${pStripped} MATCHES "^ScriptInterpreter*")
42    set(LLDB_ENUM_PLUGINS "${LLDB_ENUM_PLUGINS}LLDB_SCRIPT_PLUGIN(${pStripped})\n")
43  elseif(${pStripped} STREQUAL "ProcessWindowsCommon")
44    set(LLDB_PROCESS_WINDOWS_PLUGIN "LLDB_PLUGIN(${pStripped})\n")
45  elseif(${pStripped} STREQUAL "ProcessGDBRemote")
46    set(LLDB_PROCESS_GDB_PLUGIN "LLDB_PLUGIN(${pStripped})\n")
47  else()
48    set(LLDB_ENUM_PLUGINS "${LLDB_ENUM_PLUGINS}LLDB_PLUGIN(${pStripped})\n")
49  endif()
50endforeach(p)
51
52configure_file(
53  ${CMAKE_CURRENT_SOURCE_DIR}/Plugins.def.in
54  ${CMAKE_CURRENT_BINARY_DIR}/Plugins.def
55  )
56
57set_property(GLOBAL PROPERTY LLDB_PLUGINS_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR})
58