[Lldb-commits] [lldb] 18f667d - Revert "[lldb/cmake] Plugin layering enforcement mechanism (#144543)"
Pavel Labath via lldb-commits
lldb-commits at lists.llvm.org
Mon Jun 23 03:07:26 PDT 2025
Author: Pavel Labath
Date: 2025-06-23T12:07:10+02:00
New Revision: 18f667d804144e74d3ba2c67ee6f3610916002a8
URL: https://github.com/llvm/llvm-project/commit/18f667d804144e74d3ba2c67ee6f3610916002a8
DIFF: https://github.com/llvm/llvm-project/commit/18f667d804144e74d3ba2c67ee6f3610916002a8.diff
LOG: Revert "[lldb/cmake] Plugin layering enforcement mechanism (#144543)"
Causes failures on several bots.
This reverts commits 714b2fdf3a385e5b9a95c435f56b1696ec3ec9e8 and
e7c1da7c8ef31c258619c1668062985e7ae83b70.
Added:
Modified:
lldb/CMakeLists.txt
lldb/docs/resources/contributing.rst
lldb/source/Plugins/ABI/CMakeLists.txt
lldb/source/Plugins/Architecture/CMakeLists.txt
lldb/source/Plugins/Disassembler/CMakeLists.txt
lldb/source/Plugins/DynamicLoader/CMakeLists.txt
lldb/source/Plugins/ExpressionParser/CMakeLists.txt
lldb/source/Plugins/Instruction/CMakeLists.txt
lldb/source/Plugins/InstrumentationRuntime/CMakeLists.txt
lldb/source/Plugins/JITLoader/CMakeLists.txt
lldb/source/Plugins/Language/CMakeLists.txt
lldb/source/Plugins/LanguageRuntime/CMakeLists.txt
lldb/source/Plugins/MemoryHistory/CMakeLists.txt
lldb/source/Plugins/ObjectContainer/CMakeLists.txt
lldb/source/Plugins/ObjectFile/CMakeLists.txt
lldb/source/Plugins/OperatingSystem/CMakeLists.txt
lldb/source/Plugins/Platform/CMakeLists.txt
lldb/source/Plugins/Process/CMakeLists.txt
lldb/source/Plugins/Process/Utility/CMakeLists.txt
lldb/source/Plugins/REPL/CMakeLists.txt
lldb/source/Plugins/RegisterTypeBuilder/CMakeLists.txt
lldb/source/Plugins/ScriptInterpreter/CMakeLists.txt
lldb/source/Plugins/StructuredData/CMakeLists.txt
lldb/source/Plugins/SymbolFile/CMakeLists.txt
lldb/source/Plugins/SymbolLocator/CMakeLists.txt
lldb/source/Plugins/SymbolVendor/CMakeLists.txt
lldb/source/Plugins/SystemRuntime/CMakeLists.txt
lldb/source/Plugins/Trace/CMakeLists.txt
lldb/source/Plugins/TraceExporter/CMakeLists.txt
lldb/source/Plugins/TypeSystem/CMakeLists.txt
lldb/source/Plugins/UnwindAssembly/CMakeLists.txt
Removed:
lldb/cmake/modules/LLDBLayeringCheck.cmake
################################################################################
diff --git a/lldb/CMakeLists.txt b/lldb/CMakeLists.txt
index e3b72e94d4beb..2aaf75dd87bc3 100644
--- a/lldb/CMakeLists.txt
+++ b/lldb/CMakeLists.txt
@@ -37,7 +37,6 @@ endif()
include(LLDBConfig)
include(AddLLDB)
-include(LLDBLayeringCheck)
set(LLDB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/include)
@@ -128,8 +127,6 @@ add_subdirectory(source)
add_subdirectory(tools)
add_subdirectory(docs)
-check_lldb_plugin_layering()
-
if (LLDB_ENABLE_PYTHON)
if(LLDB_BUILD_FRAMEWORK)
set(lldb_python_target_dir "${LLDB_FRAMEWORK_ABSOLUTE_BUILD_DIR}/LLDB.framework/Resources/Python/lldb")
diff --git a/lldb/cmake/modules/LLDBLayeringCheck.cmake b/lldb/cmake/modules/LLDBLayeringCheck.cmake
deleted file mode 100644
index 1669f6150cca9..0000000000000
--- a/lldb/cmake/modules/LLDBLayeringCheck.cmake
+++ /dev/null
@@ -1,74 +0,0 @@
-define_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND
- BRIEF_DOCS "LLDB plugin kind (Process, SymbolFile, etc.")
-define_property(TARGET PROPERTY LLDB_PLUGIN_KIND INHERITED
- BRIEF_DOCS "LLDB plugin kind (Process, SymbolFile, etc.")
-
-define_property(DIRECTORY PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES
- BRIEF_DOCS "LLDB plugin kinds which the plugin can depend on")
-define_property(TARGET PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES INHERITED
- BRIEF_DOCS "LLDB plugin kinds which the plugin can depend on")
-
-define_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES
- BRIEF_DOCS "LLDB plugin kinds which are depended on for historic reasons.")
-define_property(TARGET PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES INHERITED
- BRIEF_DOCS "LLDB plugin kinds which are depended on for historic reasons.")
-
-option(LLDB_GENERATE_PLUGIN_DEP_GRAPH OFF)
-
-function(check_lldb_plugin_layering)
- get_property(plugins GLOBAL PROPERTY LLDB_PLUGINS)
- foreach(plugin ${plugins})
- get_property(plugin_kind TARGET ${plugin} PROPERTY LLDB_PLUGIN_KIND)
- get_property(acceptable_deps TARGET ${plugin}
- PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES)
- get_property(tolerated_deps TARGET ${plugin}
- PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES)
-
- # A plugin is always permitted to depend on its own kind for the purposes
- # subclassing. Ideally the intra-kind dependencies should not form a loop,
- # but we're not checking that here.
- list(APPEND acceptable_deps ${plugin_kind})
-
- list(APPEND all_plugin_kinds ${plugin_kind})
-
- get_property(link_libs TARGET ${plugin} PROPERTY LINK_LIBRARIES)
- foreach(link_lib ${link_libs})
- if(link_lib IN_LIST plugins)
- get_property(lib_kind TARGET ${link_lib} PROPERTY LLDB_PLUGIN_KIND)
- if (lib_kind)
- if (lib_kind IN_LIST acceptable_deps)
- set(dep_kind green)
- elseif (lib_kind IN_LIST tolerated_deps)
- set(dep_kind yellow)
- else()
- set(dep_kind red)
- message(SEND_ERROR "Plugin ${plugin} cannot depend on ${lib_kind} "
- "plugin ${link_lib}")
- endif()
- list(APPEND dep_${dep_kind}_${plugin_kind}_${lib_kind} ${plugin})
- endif()
- endif()
- endforeach()
- endforeach()
-
- if (LLDB_GENERATE_PLUGIN_DEP_GRAPH)
- set(dep_graph "digraph Plugins {\n")
- list(REMOVE_DUPLICATES all_plugin_kinds)
- foreach (from ${all_plugin_kinds})
- foreach (to ${all_plugin_kinds})
- foreach (dep_kind green yellow red)
- if (dep_${dep_kind}_${from}_${to})
- list(REMOVE_DUPLICATES dep_${dep_kind}_${from}_${to})
- string(REGEX REPLACE "lldbPlugin|${from}" "" short_deps
- "${dep_${dep_kind}_${from}_${to}}")
- string(JOIN "\n" plugins ${short_deps})
- string(APPEND dep_graph
- " ${from}->${to}[color=\"${dep_kind}\" label=\"${plugins}\"];\n")
- endif()
- endforeach()
- endforeach()
- endforeach()
- string(APPEND dep_graph "}\n")
- file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/lldb-plugin-deps.dot" "${dep_graph}")
- endif()
-endfunction()
diff --git a/lldb/docs/resources/contributing.rst b/lldb/docs/resources/contributing.rst
index e7d46c9061d53..48fd000765f66 100644
--- a/lldb/docs/resources/contributing.rst
+++ b/lldb/docs/resources/contributing.rst
@@ -56,56 +56,6 @@ subset of LLDB tests (the API tests) use a
diff erent system. Refer to the
`lldb/test <https://github.com/llvm/llvm-project/tree/main/lldb/test>`_ folder
for examples.
-
-LLDB plugins and their dependencies
------------------------------------
-
-LLDB has a concept of *plugins*, which are used to provide abstraction
-boundaries over functionality that is specific to a certain architecture,
-operating system, programming language, etc. A plugin implements an abstract
-base class (rarely, a set of related base classes), which is a part of LLDB
-core. This setup allows the LLDB core to remain generic while making it possible
-to support for new architectures, languages, and so on. For this to work, all
-code needs to obey certain rules.
-
-The principal rule is that LLDB core (defined as: everything under lldb/source
-*minus* lldb/source/Plugins) must not depend on any specific plugin. The only
-way it can interact with them is through the abstract interface. Explicit
-dependencies such as casting the base class to the plugin type are not permitted
-and neither are more subtle dependencies like checking the name plugin or or
-other situations where some code in LLDB core is tightly coupled to the
-implementation details of a specific plugin.
-
-The rule for interaction between
diff erent plugins is more nuanced. We recognize
-that some cross-plugin dependencies are unavoidable or even desirable. For
-example, a plugin may want to extend a plugin of the same kind to
-add/override/refine some functionality (e.g., Android is a "kind of" Linux, but
-it handles some things
diff erently). Alternatively, a plugin of one kind may
-want to build on the functionality offered by a specific plugin of another kind
-(ELFCore Process plugin uses ELF ObjectFile plugin to create a process out of an
-ELF core file).
-
-In cases such as these, direct dependencies are acceptable. However, to keep the
-dependency graph manageable, we still have some rules to govern these
-relationships:
-
-* All dependencies between plugins of the same kind must flow in the same
- direction (if plugin `A1` depends on plugin `B1`, then `B2` must not depend on
- `A2`)
-* Dependency graph of plugin kinds must not contain loops (dependencies like
- `A1->B1`, `B2->C2` and `C3->A3` are forbidden because they induce a cycle in
- the plugin kind graph even though the plugins themselves are acyclical)
-
-
-The first of these rules is checked via CMake scripts (using the
-`LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES` property). Dependencies in this category
-are expected and permitted (subject to other constraints such as that dependency
-making sense for the particular pair of plugins). Unfortunately, due to historic
-reasons, not all plugin dependencies follow this rule, which is why we have
-another category called `LLDB_TOLERATED_PLUGIN_DEPENDENCIES`. New dependencies
-are forbidden (even though they are accepted by CMake) and existing ones should
-be removed whereever possible.
-
.. _Error handling:
Error handling and use of assertions in LLDB
diff --git a/lldb/source/Plugins/ABI/CMakeLists.txt b/lldb/source/Plugins/ABI/CMakeLists.txt
index 97a20364ae7d7..e33ac87354860 100644
--- a/lldb/source/Plugins/ABI/CMakeLists.txt
+++ b/lldb/source/Plugins/ABI/CMakeLists.txt
@@ -1,9 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND ABI)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES
- ProcessUtility
- TypeSystem
-)
-
foreach(target AArch64 ARM ARC Hexagon LoongArch Mips MSP430 PowerPC RISCV SystemZ X86)
if (${target} IN_LIST LLVM_TARGETS_TO_BUILD)
add_subdirectory(${target})
diff --git a/lldb/source/Plugins/Architecture/CMakeLists.txt b/lldb/source/Plugins/Architecture/CMakeLists.txt
index 0f898ef5116e9..9ed8edf70af3f 100644
--- a/lldb/source/Plugins/Architecture/CMakeLists.txt
+++ b/lldb/source/Plugins/Architecture/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND Architecture)
-
add_subdirectory(Arm)
add_subdirectory(Mips)
add_subdirectory(PPC64)
diff --git a/lldb/source/Plugins/Disassembler/CMakeLists.txt b/lldb/source/Plugins/Disassembler/CMakeLists.txt
index 1d1ea206e2774..bec56765b60fd 100644
--- a/lldb/source/Plugins/Disassembler/CMakeLists.txt
+++ b/lldb/source/Plugins/Disassembler/CMakeLists.txt
@@ -1,3 +1 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND Disassembler)
-
add_subdirectory(LLVMC)
diff --git a/lldb/source/Plugins/DynamicLoader/CMakeLists.txt b/lldb/source/Plugins/DynamicLoader/CMakeLists.txt
index 01aba34b94169..30607159acdc0 100644
--- a/lldb/source/Plugins/DynamicLoader/CMakeLists.txt
+++ b/lldb/source/Plugins/DynamicLoader/CMakeLists.txt
@@ -1,10 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND DynamicLoader)
-set_property(DIRECTORY PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES ObjectFile)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES
- Process # part of a loop (Process<->DynamicLoader).
- TypeSystem
-)
-
add_subdirectory(Darwin-Kernel)
add_subdirectory(FreeBSD-Kernel)
add_subdirectory(MacOSX-DYLD)
diff --git a/lldb/source/Plugins/ExpressionParser/CMakeLists.txt b/lldb/source/Plugins/ExpressionParser/CMakeLists.txt
index 8a8089879bd9f..17c40aee44cc2 100644
--- a/lldb/source/Plugins/ExpressionParser/CMakeLists.txt
+++ b/lldb/source/Plugins/ExpressionParser/CMakeLists.txt
@@ -1,3 +1 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND ExpressionParser)
-
add_subdirectory(Clang)
diff --git a/lldb/source/Plugins/Instruction/CMakeLists.txt b/lldb/source/Plugins/Instruction/CMakeLists.txt
index bf48a1c1cc11e..46d610f261e0d 100644
--- a/lldb/source/Plugins/Instruction/CMakeLists.txt
+++ b/lldb/source/Plugins/Instruction/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND Instruction)
-
add_subdirectory(ARM)
add_subdirectory(ARM64)
add_subdirectory(LoongArch)
diff --git a/lldb/source/Plugins/InstrumentationRuntime/CMakeLists.txt b/lldb/source/Plugins/InstrumentationRuntime/CMakeLists.txt
index 2a6cf930945d1..7f301bca14a83 100644
--- a/lldb/source/Plugins/InstrumentationRuntime/CMakeLists.txt
+++ b/lldb/source/Plugins/InstrumentationRuntime/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND InstrumentationRuntime)
-
add_subdirectory(ASan)
add_subdirectory(ASanLibsanitizers)
add_subdirectory(MainThreadChecker)
diff --git a/lldb/source/Plugins/JITLoader/CMakeLists.txt b/lldb/source/Plugins/JITLoader/CMakeLists.txt
index ffba54f8b287b..e52230199109f 100644
--- a/lldb/source/Plugins/JITLoader/CMakeLists.txt
+++ b/lldb/source/Plugins/JITLoader/CMakeLists.txt
@@ -1,4 +1 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND JITLoader)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES ObjectFile)
-
add_subdirectory(GDB)
diff --git a/lldb/source/Plugins/Language/CMakeLists.txt b/lldb/source/Plugins/Language/CMakeLists.txt
index b432dd300668e..7869074566d1e 100644
--- a/lldb/source/Plugins/Language/CMakeLists.txt
+++ b/lldb/source/Plugins/Language/CMakeLists.txt
@@ -1,9 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND Language)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES
- LanguageRuntime
- TypeSystem
-)
-
add_subdirectory(ClangCommon)
add_subdirectory(CPlusPlus)
add_subdirectory(ObjC)
diff --git a/lldb/source/Plugins/LanguageRuntime/CMakeLists.txt b/lldb/source/Plugins/LanguageRuntime/CMakeLists.txt
index 32528d6d6171f..034ae1545ae88 100644
--- a/lldb/source/Plugins/LanguageRuntime/CMakeLists.txt
+++ b/lldb/source/Plugins/LanguageRuntime/CMakeLists.txt
@@ -1,5 +1,2 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND LanguageRuntime)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES TypeSystem)
-
add_subdirectory(CPlusPlus)
add_subdirectory(ObjC)
diff --git a/lldb/source/Plugins/MemoryHistory/CMakeLists.txt b/lldb/source/Plugins/MemoryHistory/CMakeLists.txt
index 50838bb8a0770..113f063625789 100644
--- a/lldb/source/Plugins/MemoryHistory/CMakeLists.txt
+++ b/lldb/source/Plugins/MemoryHistory/CMakeLists.txt
@@ -1,3 +1 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND MemoryHistory)
-
add_subdirectory(asan)
diff --git a/lldb/source/Plugins/ObjectContainer/CMakeLists.txt b/lldb/source/Plugins/ObjectContainer/CMakeLists.txt
index 4ae1bb138a9a4..cda0c8151dd8a 100644
--- a/lldb/source/Plugins/ObjectContainer/CMakeLists.txt
+++ b/lldb/source/Plugins/ObjectContainer/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND ObjectContainer)
-
add_subdirectory(BSD-Archive)
add_subdirectory(Universal-Mach-O)
add_subdirectory(Mach-O-Fileset)
diff --git a/lldb/source/Plugins/ObjectFile/CMakeLists.txt b/lldb/source/Plugins/ObjectFile/CMakeLists.txt
index 6004b1f414d43..7abd0c96f4fd7 100644
--- a/lldb/source/Plugins/ObjectFile/CMakeLists.txt
+++ b/lldb/source/Plugins/ObjectFile/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND ObjectFile)
-
add_subdirectory(Breakpad)
add_subdirectory(COFF)
add_subdirectory(ELF)
diff --git a/lldb/source/Plugins/OperatingSystem/CMakeLists.txt b/lldb/source/Plugins/OperatingSystem/CMakeLists.txt
index 1a29f9ad3af4c..06d909b862a04 100644
--- a/lldb/source/Plugins/OperatingSystem/CMakeLists.txt
+++ b/lldb/source/Plugins/OperatingSystem/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND OperatingSystem)
-
if (LLDB_ENABLE_PYTHON)
add_subdirectory(Python)
endif()
diff --git a/lldb/source/Plugins/Platform/CMakeLists.txt b/lldb/source/Plugins/Platform/CMakeLists.txt
index f4753ab47ce11..0220e734b36d1 100644
--- a/lldb/source/Plugins/Platform/CMakeLists.txt
+++ b/lldb/source/Plugins/Platform/CMakeLists.txt
@@ -1,10 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND Platform)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES
- DynamicLoader
- ObjectContainer
- Process
-)
-
add_subdirectory(AIX)
add_subdirectory(Android)
add_subdirectory(FreeBSD)
diff --git a/lldb/source/Plugins/Process/CMakeLists.txt b/lldb/source/Plugins/Process/CMakeLists.txt
index bd9b1b86dbf13..058b4b9ad2157 100644
--- a/lldb/source/Plugins/Process/CMakeLists.txt
+++ b/lldb/source/Plugins/Process/CMakeLists.txt
@@ -1,8 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND Process)
-set_property(DIRECTORY PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES ObjectFile)
-# This dependency is part of a loop (Process<->DynamicLoader).
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES DynamicLoader)
-
if (CMAKE_SYSTEM_NAME MATCHES "Linux|Android")
add_subdirectory(Linux)
add_subdirectory(POSIX)
diff --git a/lldb/source/Plugins/Process/Utility/CMakeLists.txt b/lldb/source/Plugins/Process/Utility/CMakeLists.txt
index 48646b784f931..fd3019613892a 100644
--- a/lldb/source/Plugins/Process/Utility/CMakeLists.txt
+++ b/lldb/source/Plugins/Process/Utility/CMakeLists.txt
@@ -1,6 +1,3 @@
-# TODO: Clean up this directory and its dependencies
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND ProcessUtility)
-
add_lldb_library(lldbPluginProcessUtility
AuxVector.cpp
FreeBSDSignals.cpp
diff --git a/lldb/source/Plugins/REPL/CMakeLists.txt b/lldb/source/Plugins/REPL/CMakeLists.txt
index 8b51b3899625b..17c40aee44cc2 100644
--- a/lldb/source/Plugins/REPL/CMakeLists.txt
+++ b/lldb/source/Plugins/REPL/CMakeLists.txt
@@ -1,4 +1 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND REPL)
-set_property(DIRECTORY PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES TypeSystem)
-
add_subdirectory(Clang)
diff --git a/lldb/source/Plugins/RegisterTypeBuilder/CMakeLists.txt b/lldb/source/Plugins/RegisterTypeBuilder/CMakeLists.txt
index 7411b24c86cbd..336ae91058021 100644
--- a/lldb/source/Plugins/RegisterTypeBuilder/CMakeLists.txt
+++ b/lldb/source/Plugins/RegisterTypeBuilder/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND RegisterTypeBuilder)
-
add_lldb_library(lldbPluginRegisterTypeBuilderClang PLUGIN
RegisterTypeBuilderClang.cpp
diff --git a/lldb/source/Plugins/ScriptInterpreter/CMakeLists.txt b/lldb/source/Plugins/ScriptInterpreter/CMakeLists.txt
index 4429b006173a7..fa1c72a32fe13 100644
--- a/lldb/source/Plugins/ScriptInterpreter/CMakeLists.txt
+++ b/lldb/source/Plugins/ScriptInterpreter/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND ScriptInterpreter)
-
add_subdirectory(None)
if (LLDB_ENABLE_PYTHON)
add_subdirectory(Python)
diff --git a/lldb/source/Plugins/StructuredData/CMakeLists.txt b/lldb/source/Plugins/StructuredData/CMakeLists.txt
index a6caa233f2220..40d64558482db 100644
--- a/lldb/source/Plugins/StructuredData/CMakeLists.txt
+++ b/lldb/source/Plugins/StructuredData/CMakeLists.txt
@@ -1,4 +1,2 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND StructuredData)
-
add_subdirectory(DarwinLog)
diff --git a/lldb/source/Plugins/SymbolFile/CMakeLists.txt b/lldb/source/Plugins/SymbolFile/CMakeLists.txt
index 3516528464200..106387b45ec1a 100644
--- a/lldb/source/Plugins/SymbolFile/CMakeLists.txt
+++ b/lldb/source/Plugins/SymbolFile/CMakeLists.txt
@@ -1,10 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND SymbolFile)
-set_property(DIRECTORY PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES ObjectFile)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES
- Language
- TypeSystem # part of a loop (TypeSystem<->SymbolFile).
-)
-
add_subdirectory(Breakpad)
add_subdirectory(CTF)
add_subdirectory(DWARF)
diff --git a/lldb/source/Plugins/SymbolLocator/CMakeLists.txt b/lldb/source/Plugins/SymbolLocator/CMakeLists.txt
index 3b466f71dca58..3367022639ab8 100644
--- a/lldb/source/Plugins/SymbolLocator/CMakeLists.txt
+++ b/lldb/source/Plugins/SymbolLocator/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND SymbolLocator)
-
# Order matters here: the first symbol locator prevents further searching.
# For DWARF binaries that are both stripped and split, the Default plugin
# will return the stripped binary when asked for the ObjectFile, which then
diff --git a/lldb/source/Plugins/SymbolVendor/CMakeLists.txt b/lldb/source/Plugins/SymbolVendor/CMakeLists.txt
index a07330d7d8bc4..1981706e06f4a 100644
--- a/lldb/source/Plugins/SymbolVendor/CMakeLists.txt
+++ b/lldb/source/Plugins/SymbolVendor/CMakeLists.txt
@@ -1,6 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND SymbolVendor)
-set_property(DIRECTORY PROPERTY LLDB_ACCEPTABLE_PLUGIN_DEPENDENCIES ObjectFile)
-
add_subdirectory(ELF)
if (CMAKE_SYSTEM_NAME MATCHES "Darwin")
diff --git a/lldb/source/Plugins/SystemRuntime/CMakeLists.txt b/lldb/source/Plugins/SystemRuntime/CMakeLists.txt
index 58fdc060bda3a..0955a9eb74c2d 100644
--- a/lldb/source/Plugins/SystemRuntime/CMakeLists.txt
+++ b/lldb/source/Plugins/SystemRuntime/CMakeLists.txt
@@ -1,4 +1 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND SystemRuntime)
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES TypeSystem)
-
add_subdirectory(MacOSX)
diff --git a/lldb/source/Plugins/Trace/CMakeLists.txt b/lldb/source/Plugins/Trace/CMakeLists.txt
index 331b48f95f1a4..955f88cec3404 100644
--- a/lldb/source/Plugins/Trace/CMakeLists.txt
+++ b/lldb/source/Plugins/Trace/CMakeLists.txt
@@ -1,5 +1,3 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND Trace)
-
option(LLDB_BUILD_INTEL_PT "Enable Building of Intel(R) Processor Trace Tool" OFF)
add_subdirectory(common)
diff --git a/lldb/source/Plugins/TraceExporter/CMakeLists.txt b/lldb/source/Plugins/TraceExporter/CMakeLists.txt
index 7130548d7a9f8..e0252ee36720c 100644
--- a/lldb/source/Plugins/TraceExporter/CMakeLists.txt
+++ b/lldb/source/Plugins/TraceExporter/CMakeLists.txt
@@ -1,4 +1,2 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND TraceExporter)
-
add_subdirectory(common)
add_subdirectory(ctf)
diff --git a/lldb/source/Plugins/TypeSystem/CMakeLists.txt b/lldb/source/Plugins/TypeSystem/CMakeLists.txt
index 47e32ff176d8c..17c40aee44cc2 100644
--- a/lldb/source/Plugins/TypeSystem/CMakeLists.txt
+++ b/lldb/source/Plugins/TypeSystem/CMakeLists.txt
@@ -1,5 +1 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND TypeSystem)
-# This dependency is part of a loop (TypeSystem<->SymbolFile).
-set_property(DIRECTORY PROPERTY LLDB_TOLERATED_PLUGIN_DEPENDENCIES SymbolFile)
-
add_subdirectory(Clang)
diff --git a/lldb/source/Plugins/UnwindAssembly/CMakeLists.txt b/lldb/source/Plugins/UnwindAssembly/CMakeLists.txt
index 1f505599c3fff..1723a06045804 100644
--- a/lldb/source/Plugins/UnwindAssembly/CMakeLists.txt
+++ b/lldb/source/Plugins/UnwindAssembly/CMakeLists.txt
@@ -1,4 +1,2 @@
-set_property(DIRECTORY PROPERTY LLDB_PLUGIN_KIND UnwindAssembly)
-
add_subdirectory(InstEmulation)
add_subdirectory(x86)
More information about the lldb-commits
mailing list