[Lldb-commits] [lldb] [llvm] [lldb][bazel] Support parse_headers (PR #232936)

Lexi Bromfield via lldb-commits lldb-commits at lists.llvm.org
Tue Oct 20 10:46:32 PDT 2026


https://github.com/lexi-nadia updated https://github.com/llvm/llvm-project/pull/232936

>From 7e45857e417d151b5812cd1ebc6d4a40b7edd088 Mon Sep 17 00:00:00 2001
From: lexinadia <lexinadia at google.com>
Date: Fri, 16 Oct 2026 18:08:06 +0000
Subject: [PATCH 1/2] [lldb][bazel] Support parse_headers

Reorganize the lldb Bazel files so that Bazel header parsing works:

- Combine all headers into a single Headers target.
- Fix a few `select`s to ensure that host-specific files aren't being
  included on the wrong host platforms.
- Fix a few circular dependencies between header files.

Testing:

- I ran `bazel build --config=generic_clang @llvm-project//lldb/...` and
  confirmed there were no errors.
- I build lldb-server and confirmed that the file size was the same (to
  the nearest megabyte) before and after.
- I ran `bazel query 'deps(@llvm-project//lldb:lldb-server)'` before and
  after this change, and confirmed that no new code was being linked
  into lldb-server.
---
 lldb/include/lldb/Symbol/TypeMap.h            |   1 -
 .../Clang/ClangFunctionCaller.cpp             |   5 +
 .../Clang/ClangFunctionCaller.h               |   4 +-
 .../Clang/ClangUtilityFunction.h              |   2 +-
 .../Plugins/SymbolFile/DWARF/DWARFFormValue.h |   1 +
 .../llvm-project-overlay/lldb/BUILD.bazel     | 343 +++++-------------
 .../lldb/source/Plugins/BUILD.bazel           | 288 ++++-----------
 7 files changed, 170 insertions(+), 474 deletions(-)

diff --git a/lldb/include/lldb/Symbol/TypeMap.h b/lldb/include/lldb/Symbol/TypeMap.h
index 4a81bf4d4619c3..0e479963511528 100644
--- a/lldb/include/lldb/Symbol/TypeMap.h
+++ b/lldb/include/lldb/Symbol/TypeMap.h
@@ -9,7 +9,6 @@
 #ifndef LLDB_SYMBOL_TYPEMAP_H
 #define LLDB_SYMBOL_TYPEMAP_H
 
-#include "lldb/Symbol/Type.h"
 #include "lldb/Utility/Iterable.h"
 #include "lldb/lldb-private.h"
 #include <functional>
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
index 76c24454ffbbf7..3992efe3ff6a6d 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
@@ -215,6 +215,11 @@ ClangFunctionCaller::CompileFunction(lldb::ThreadSP thread_to_use_sp,
 
 char ClangFunctionCaller::ClangFunctionCallerHelper::ID;
 
+ClangFunctionCaller::ClangFunctionCallerHelper::ClangFunctionCallerHelper(
+    ClangFunctionCaller &owner) : m_owner(owner) {}
+
+ClangFunctionCaller::ClangFunctionCallerHelper::~ClangFunctionCallerHelper() = default;
+
 clang::ASTConsumer *
 ClangFunctionCaller::ClangFunctionCallerHelper::ASTTransformer(
     clang::ASTConsumer *passthrough) {
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h
index 9329ce76ec3bde..63082193bdf853 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h
@@ -64,7 +64,9 @@ class ClangFunctionCaller : public FunctionCaller {
     // LLVM RTTI support
     static char ID;
 
-    ClangFunctionCallerHelper(ClangFunctionCaller &owner) : m_owner(owner) {}
+    ClangFunctionCallerHelper(ClangFunctionCaller& owner);
+
+    virtual ~ClangFunctionCallerHelper();
 
     /// Return the object that the parser should use when resolving external
     /// values.  May be NULL if everything should be self-contained.
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h b/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h
index 72ff84f3ceaf7e..d9cf57ebc590ed 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.h
@@ -13,8 +13,8 @@
 #include <string>
 #include <vector>
 
+#include "ClangExpressionDeclMap.h"
 #include "ClangExpressionHelper.h"
-
 #include "lldb/Expression/UtilityFunction.h"
 #include "lldb/lldb-forward.h"
 #include "lldb/lldb-private.h"
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
index def06d59c86fe4..e520c7b8367f86 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
@@ -10,6 +10,7 @@
 #define LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_DWARFFORMVALUE_H
 
 #include "DWARFDataExtractor.h"
+#include "lldb/Core/dwarf.h"
 #include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
 #include <optional>
 
diff --git a/utils/bazel/llvm-project-overlay/lldb/BUILD.bazel b/utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
index e51f8a5b65c3e8..00728ff180dd07 100644
--- a/utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
@@ -12,12 +12,14 @@ load("@rules_cc//cc:defs.bzl", "cc_binary", "cc_import", "cc_library", "objc_lib
 load("@rules_python//python:defs.bzl", "py_binary")
 load("//:vars.bzl", "LLVM_VERSION_MAJOR", "LLVM_VERSION_MINOR", "LLVM_VERSION_PATCH", "LLVM_VERSION_SUFFIX", "PACKAGE_VERSION")
 load("//lldb/source/Plugins:plugin_config.bzl", "DEFAULT_PLUGINS", "DEFAULT_SCRIPT_PLUGINS", "FALLBACK_PLUGINS", "OBJCPP_COPTS")
-load("//mlir:build_defs.bzl", "cc_headers_only")
 load("//mlir:tblgen.bzl", "gentbl_cc_library", "td_library")
 
 package(
     default_visibility = ["//visibility:public"],
-    features = ["layering_check"],
+    features = [
+        "parse_headers",
+        "layering_check",
+    ],
 )
 
 licenses(["notice"])
@@ -284,11 +286,8 @@ cc_library(
         ":Host",
         ":Initialization",
         ":Interpreter",
-        ":InterpreterHeaders",
         ":Symbol",
-        ":SymbolHeaders",
         ":Target",
-        ":TargetHeaders",
         ":Utility",
         ":Version",
         "//lldb/source/Plugins:PluginsClang",
@@ -330,12 +329,8 @@ cc_library(
     includes = ["include"],
     deps = [
         ":Core",
-        ":DataFormattersHeaders",
         ":Expression",
         ":Headers",
-        ":InterpreterHeaders",
-        ":SymbolHeaders",
-        ":TargetHeaders",
         ":Utility",
         "//llvm:Support",
     ],
@@ -350,11 +345,7 @@ cc_library(
     includes = ["include"],
     textual_hdrs = glob(["include/lldb/DataFormatters/**/*.def"]),
     deps = [
-        ":CoreHeaders",
         ":Headers",
-        ":InterpreterHeaders",
-        ":SymbolHeaders",
-        ":TargetHeaders",
         ":Utility",
         "//llvm:Support",
         "//llvm:Telemetry",
@@ -370,9 +361,6 @@ cc_library(
         ":Core",
         ":Headers",
         ":Host",
-        ":InterpreterHeaders",
-        ":SymbolHeaders",
-        ":TargetHeaders",
         ":Utility",
         "//llvm:BinaryFormat",
         "//llvm:Core",
@@ -392,7 +380,6 @@ cc_library(
         ":Core",
         ":Headers",
         ":Host",
-        ":TargetHeaders",
         ":Utility",
         ":Version",
         "//lldb/source/Plugins:PluginProcessGDBRemote",
@@ -419,49 +406,6 @@ gentbl_cc_library(
     deps = [":CoreTdFiles"],
 )
 
-cc_library(
-    name = "APIHeaders",
-    hdrs = glob(["include/lldb/API/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-)
-
-cc_library(
-    name = "InterpreterHeaders",
-    hdrs = glob(["include/lldb/Interpreter/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    deps = [
-        ":Headers",
-    ],
-)
-
-cc_library(
-    name = "BreakpointHeaders",
-    hdrs = glob(["include/lldb/Breakpoint/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-)
-
-cc_library(
-    name = "ExpressionHeaders",
-    hdrs = glob(["include/lldb/Expression/**/*.h"]) + [":lldb-sbapi-dwarf-enums"],
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    deps = ["//llvm:ExecutionEngine"],
-)
-
-cc_library(
-    name = "DataFormattersHeaders",
-    hdrs = glob(["include/lldb/DataFormatters/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    textual_hdrs = glob(["include/lldb/DataFormatters/**/*.def"]),
-    deps = [
-        ":Headers",
-    ],
-)
-
 cc_library(
     name = "Interpreter",
     srcs = glob(["source/Interpreter/**/*.cpp"]),
@@ -471,10 +415,7 @@ cc_library(
         ":DataFormatters",
         ":Headers",
         ":Host",
-        ":InterpreterHeaders",
         ":InterpreterProperties",
-        ":SymbolHeaders",
-        ":TargetHeaders",
         ":Utility",
         "//llvm:Support",
         "//llvm:Telemetry",
@@ -508,10 +449,7 @@ cc_library(
         ":Expression",
         ":Headers",
         ":Host",
-        ":InterpreterHeaders",
-        ":SymbolHeaders",
         ":Target",
-        ":TargetHeaders",
         ":Utility",
         ":Version",
         "//clang:codegen",
@@ -522,13 +460,6 @@ cc_library(
     ],
 )
 
-cc_library(
-    name = "SymbolHeaders",
-    hdrs = glob(["include/lldb/Symbol/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-)
-
 cc_library(
     name = "Symbol",
     srcs = glob(["source/Symbol/**/*.cpp"]),
@@ -537,10 +468,7 @@ cc_library(
         ":Expression",
         ":Headers",
         ":Host",
-        ":SymbolHeaders",
-        ":TargetHeaders",
         ":Utility",
-        ":UtilityPrivateHeaders",
         "//llvm:BinaryFormat",
         "//llvm:DebugInfo",
         "//llvm:DebugInfoDWARF",
@@ -549,37 +477,13 @@ cc_library(
     ],
 )
 
-cc_library(
-    name = "HostMacOSXHeaders",
-    hdrs = glob([
-        "include/lldb/Host/*.h",
-        "include/lldb/Host/macosx/*.h",
-        "include/lldb/Host/posix/*.h",
-    ]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    deps = [":UtilityHeaders"],
-)
-
-cc_library(
-    name = "HostMacOSXPrivateHeaders",
-    hdrs = glob([
-        "source/Host/macosx/cfcpp/*.h",
-        "source/Host/macosx/objcxx/*.h",
-    ]),
-    includes = ["source"],
-    tags = ["nobuildkite"],
-    target_compatible_with = select({
-        "@platforms//os:macos": [],
-        "//conditions:default": ["@platforms//:incompatible"],
-    }),
-    deps = [":UtilityHeaders"],
-)
-
 objc_library(
     name = "HostMacOSXObjCXX",
     copts = OBJCPP_COPTS,
-    non_arc_srcs = glob(["source/Host/macosx/objcxx/*.mm"]),
+    non_arc_srcs = glob([
+        "source/Host/macosx/objcxx/*.mm",
+        "source/Host/macosx/objcxx/*.h",
+    ]),
     tags = ["nobuildkite"],
     target_compatible_with = select({
         "@platforms//os:macos": [],
@@ -587,9 +491,6 @@ objc_library(
     }),
     deps = [
         ":Headers",
-        ":HostMacOSXHeaders",
-        ":HostMacOSXPrivateHeaders",
-        ":UtilityHeaders",
         "//llvm:DebugInfoDWARF",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -600,8 +501,8 @@ cc_library(
     name = "Host",
     srcs = glob(
         [
-            "source/Host/common/**/*.cpp",
-            "source/Host/common/**/*.h",
+            "source/Host/common/*.cpp",
+            "source/Host/common/*.h",
         ],
         exclude = [
             "source/Host/common/Editline.cpp",
@@ -610,17 +511,18 @@ cc_library(
     ) + select({
         "@platforms//os:linux": glob(
             [
-                "source/Host/linux/**/*.cpp",
-                "source/Host/posix/**/*.cpp",
+                "source/Host/linux/*.cpp",
+                "source/Host/posix/*.cpp",
             ],
-            exclude = ["source/Host/linux/android/**/*.cpp"],
         ),
         "@platforms//os:macos": glob([
-            "source/Host/macosx/**/*.cpp",
-            "source/Host/posix/**/*.cpp",
+            "source/Host/macosx/*.cpp",
+            "source/Host/macosx/cfcpp/*.cpp",
+            "source/Host/macosx/cfcpp/*.h",
+            "source/Host/posix/*.cpp",
         ]),
         "@platforms//os:windows": glob([
-            "source/Host/windows/**/*.cpp",
+            "source/Host/windows/*.cpp",
         ]),
     }) + select({
         ":libedit_enabled": ["source/Host/common/Editline.cpp"],
@@ -632,9 +534,7 @@ cc_library(
             "include/lldb/Host/common/*.h",
         ],
         exclude = ["include/lldb/Host/Editline.h"],
-    ) + [
-        "include/lldb/Host/windows/ConPTYUtils.h",
-    ] + select({
+    ) + select({
         "@platforms//os:macos": glob([
             "include/lldb/Host/macosx/*.h",
             "include/lldb/Host/posix/*.h",
@@ -645,7 +545,6 @@ cc_library(
         ]),
         "@platforms//os:windows": glob(
             ["include/lldb/Host/windows/*.h"],
-            exclude = ["include/lldb/Host/windows/ConPTYUtils.h"],
         ),
     }) + select({
         ":libedit_enabled": ["include/lldb/Host/Editline.h"],
@@ -680,7 +579,6 @@ cc_library(
     }),
     deps = [
         ":Headers",
-        ":UtilityHeaders",
         "//llvm:DebugInfoDWARF",
         "//llvm:Object",
         "//llvm:Support",
@@ -690,17 +588,11 @@ cc_library(
     ] + select({
         "@platforms//os:macos": [
             ":HostMacOSXObjCXX",
-            ":HostMacOSXPrivateHeaders",
         ],
         "//conditions:default": [],
     }),
 )
 
-cc_headers_only(
-    name = "HostHeaders",
-    src = ":Host",
-)
-
 td_library(
     name = "CoreTdFiles",
     srcs = glob([
@@ -721,33 +613,6 @@ gentbl_cc_library(
     deps = [":CoreTdFiles"],
 )
 
-cc_library(
-    name = "CoreHeaders",
-    hdrs = glob([
-        "include/lldb/Core/**/*.h",
-        "include/lldb/ValueObject/**/*.h",  # This should be its own library.
-    ]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    deps = [
-        ":BreakpointHeaders",
-        ":CoreProperties",
-        ":DataFormattersHeaders",
-        ":ExpressionHeaders",
-        ":Headers",
-        ":Host",
-        ":InterpreterHeaders",
-        ":SymbolHeaders",
-        ":TargetHeaders",
-        ":UtilityHeaders",
-        "//clang:driver",
-        "//llvm:Demangle",
-        "//llvm:Support",
-        "//llvm:TargetParser",
-        "//llvm:Telemetry",
-    ],
-)
-
 # SafeAutoloadPaths.inc is generated by CMake configure_file (default empty
 # LLDB_SAFE_AUTO_LOAD_PATHS); reproduce it here since Debugger.cpp includes it.
 expand_template(
@@ -784,17 +649,10 @@ cc_library(
         ],
     ),
     deps = [
-        ":BreakpointHeaders",
-        ":CoreHeaders",
         ":CoreProperties",
-        ":DataFormattersHeaders",
-        ":ExpressionHeaders",
         ":Headers",
         ":Host",
-        ":InterpreterHeaders",
         ":SafeAutoloadPaths",
-        ":SymbolHeaders",
-        ":TargetHeaders",
         ":Utility",
         ":Version",
         "//clang:driver",
@@ -819,37 +677,14 @@ gentbl_cc_library(
     deps = [":CoreTdFiles"],
 )
 
-cc_library(
-    name = "AppleArm64ExceptionClass",
-    hdrs = ["include/lldb/Target/AppleArm64ExceptionClass.def"],
-    strip_include_prefix = "include/lldb/Target",
-)
-
-cc_library(
-    name = "TargetHeaders",
-    hdrs = glob(["include/lldb/Target/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    deps = [
-        ":AppleArm64ExceptionClass",
-        ":BreakpointHeaders",
-    ],
-)
-
 cc_library(
     name = "Target",
     srcs = glob(["source/Target/**/*.cpp"]),
     deps = [
-        ":BreakpointHeaders",
         ":Core",
-        ":DataFormattersHeaders",
-        ":ExpressionHeaders",
         ":Headers",
         ":Host",
-        ":InterpreterHeaders",
         ":Symbol",
-        ":SymbolHeaders",
-        ":TargetHeaders",
         ":TargetProperties",
         ":Utility",
         "//clang:codegen",
@@ -862,51 +697,72 @@ cc_library(
 
 cc_library(
     name = "Headers",
-    hdrs = glob(["include/lldb/lldb-*.h"]) + [
-        "include/lldb/Symbol/SaveCoreOptions.h",
-    ],
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
+    hdrs = [
+        ":ConfigHeader",
+        ":lldb-sbapi-dwarf-enums",
+    ] + glob(
+        [
+            "include/lldb/*.h",
+            "include/lldb/API/**/*.h",
+            "include/lldb/Breakpoint/**/*.h",
+            "include/lldb/Core/**/*.h",
+            "include/lldb/DataFormatters/**/*.h",
+            "include/lldb/Expression/**/*.h",
+            "include/lldb/Host/*.h",
+            "include/lldb/Host/common/*.h",
+            "include/lldb/Initialization/**/*.h",
+            "include/lldb/Interpreter/**/*.h",
+            "include/lldb/Protocol/**/*.h",
+            "include/lldb/Symbol/**/*.h",
+            "include/lldb/Target/**/*.h",
+            "include/lldb/Utility/**/*.h",
+            "include/lldb/ValueObject/**/*.h",
+            "include/lldb/Version/**/*.h",
+        ],
+        exclude = ["include/lldb/Host/Editline.h"],
+    ) + select({
+        "@platforms//os:macos": glob([
+            "include/lldb/Host/macosx/*.h",
+            "include/lldb/Host/posix/*.h",
+        ]),
+        "@platforms//os:linux": glob([
+            "include/lldb/Host/linux/*.h",
+            "include/lldb/Host/posix/*.h",
+        ]),
+        "@platforms//os:windows": glob(
+            ["include/lldb/Host/windows/*.h"],
+        ),
+    }) + select({
+        ":libedit_enabled": ["include/lldb/Host/Editline.h"],
+        "//conditions:default": [],
+    }),
     includes = ["include"],
+    textual_hdrs = glob(["include/lldb/**/*.def"]),
     deps = [
+        "//clang:driver",
+        "//llvm:BinaryFormat",
+        "//llvm:Core",
+        "//llvm:DebugInfoDWARF",
+        "//llvm:Demangle",
+        "//llvm:ExecutionEngine",
+        "//llvm:MC",
         "//llvm:Support",
-    ],
-)
-
-cc_library(
-    name = "UtilityPrivateHeaders",
-    hdrs = glob(["source/Utility/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["source"],
-    deps = [":Headers"],
-)
-
-cc_library(
-    name = "UtilityHeaders",
-    hdrs = glob(["include/lldb/Utility/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    deps = [
-        ":Headers",
-    ],
-)
-
-cc_library(
-    name = "ProtocolHeaders",
-    hdrs = glob(["include/lldb/Protocol/**/*.h"]),
-    features = ["-parse_headers"],  # Would otherwise have circular dependencies
-    includes = ["include"],
-    deps = [
-        ":Headers",
+        "//llvm:TargetParser",
         "//llvm:Telemetry",
-    ],
+    ] + select({
+        "//third-party:llvm_libxml2_enabled": [
+            "//third-party:libxml2",
+        ],
+        "//conditions:default": [],
+    }),
 )
 
 cc_library(
     name = "ProtocolMCP",
     srcs = glob(["source/Protocol/MCP/*.cpp"]),
     deps = [
+        ":Headers",
         ":Host",
-        ":ProtocolHeaders",
         ":Utility",
         ":Version",
         "//llvm:Support",
@@ -919,11 +775,8 @@ cc_library(
     hdrs = glob(["source/Register/**/*.h"]),
     includes = ["source"],
     deps = [
-        ":CoreHeaders",
         ":Headers",
-        ":TargetHeaders",
         ":Utility",
-        ":UtilityPrivateHeaders",
         "//llvm:Support",
         "//llvm:TargetParser",
     ],
@@ -931,14 +784,19 @@ cc_library(
 
 cc_library(
     name = "Utility",
-    srcs = glob(["source/Utility/**/*.cpp"]),
-    hdrs = glob(["include/lldb/Utility/**/*.h"]),
-    includes = ["include"],
+    srcs = glob([
+        "source/Utility/**/*.cpp",
+    ]),
+    hdrs = glob([
+        "include/lldb/Utility/**/*.h",
+        "source/Utility/**/*.h",
+    ]),
+    includes = [
+        "include",
+        "source",
+    ],
     deps = [
-        ":CoreHeaders",
         ":Headers",
-        ":TargetHeaders",
-        ":UtilityPrivateHeaders",
         "//llvm:BinaryFormat",
         "//llvm:DebugInfoDWARF",
         "//llvm:Support",
@@ -949,7 +807,7 @@ cc_library(
 
 genrule(
     name = "gen_exports_file_linux",
-    srcs = ["//lldb:source/API/liblldb-private.exports"],
+    srcs = [":source/API/liblldb-private.exports"],
     outs = ["exports_linux.txt"],
     cmd = """
 cat > $(OUTS) <<EOF
@@ -964,7 +822,7 @@ EOF
 
 genrule(
     name = "gen_exports_file_macos",
-    srcs = ["//lldb:source/API/liblldb-private.exports"],
+    srcs = [":source/API/liblldb-private.exports"],
     outs = ["exports_macos.txt"],
     cmd = "sed 's/^/_/g' $(SRCS) > $(OUTS)",
     cmd_bat = "(for /f \"usebackq delims=\" %l in (\"$(SRCS)\") do @>>$(OUTS) echo _%l)",
@@ -1033,9 +891,7 @@ cc_binary(
         "tools/driver/*.h",
     ]),
     deps = [
-        ":APIHeaders",
-        ":HostHeaders",
-        ":UtilityHeaders",
+        ":Headers",
         ":liblldb.wrapper",
         ":lldb_options_inc_gen",
         "//llvm:Option",
@@ -1203,15 +1059,15 @@ cc_binary(
         "//conditions:default": ["@platforms//:incompatible"],
     }),
     deps = [
+        ":Headers",
         ":Host",
         ":Initialization",
         ":Interpreter",
+        ":Target",
         ":Utility",
         ":Version",
         ":lldb_platform_opts_gen",
         ":lldb_server_opts_gen",
-        "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb/source/Plugins:PluginInstructionARM",
         "//lldb/source/Plugins:PluginInstructionARM64",
         "//lldb/source/Plugins:PluginInstructionLoongArch",
@@ -1270,12 +1126,11 @@ cc_binary(
         "//conditions:default": [],
     }),
     deps = [
+        ":Headers",
+        ":Host",
+        ":Utility",
+        ":liblldb.wrapper",
         ":lldb_dap_opts_gen",
-        "//lldb:APIHeaders",
-        "//lldb:Headers",
-        "//lldb:Host",
-        "//lldb:Utility",
-        "//lldb:liblldb.wrapper",
         "//llvm:Option",
         "//llvm:Support",
         "//llvm:Telemetry",
@@ -1309,13 +1164,11 @@ cc_binary(
         "//conditions:default": [],
     }),
     deps = [
-        "//lldb:APIHeaders",
-        "//lldb:Headers",
-        "//lldb:Host",
-        "//lldb:ProtocolHeaders",
-        "//lldb:ProtocolMCP",
-        "//lldb:Utility",
-        "//lldb:liblldb.wrapper",
+        ":Headers",
+        ":Host",
+        ":ProtocolMCP",
+        ":Utility",
+        ":liblldb.wrapper",
         "//llvm:Option",
         "//llvm:Support",
         "//llvm:config",
diff --git a/utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel b/utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
index bc16a1c83ac689..1ba0b74cd682e6 100644
--- a/utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
+++ b/utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
@@ -8,7 +8,10 @@ load(":plugin_config.bzl", "DEFAULT_PLUGINS", "DEFAULT_SCRIPT_PLUGINS", "FALLBAC
 
 package(
     default_visibility = ["//visibility:public"],
-    features = ["layering_check"],
+    features = [
+        "parse_headers",
+        "layering_check",
+    ],
 )
 
 licenses(["notice"])
@@ -62,23 +65,14 @@ cc_library(
         "//clang:rewrite",
         "//clang:sema",
         "//clang:serialization",
-        "//lldb:BreakpointHeaders",
         "//lldb:Core",
-        "//lldb:CoreHeaders",
         "//lldb:DataFormatters",
-        "//lldb:DataFormattersHeaders",
-        "//lldb:ExpressionHeaders",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityHeaders",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:BinaryFormat",
         "//llvm:Core",
         "//llvm:DebugInfoCodeView",
@@ -101,7 +95,7 @@ cc_library(
     hdrs = glob(["Highlighter/Default/*.h"]),
     includes = [".."],
     deps = [
-        "//lldb:CoreHeaders",
+        "//lldb:Headers",
         "//lldb:Utility",
     ],
 )
@@ -114,9 +108,8 @@ cc_library(
     deps = [
         "//clang:basic",
         "//clang:lex",
-        "//lldb:CoreHeaders",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -147,11 +140,8 @@ cc_library(
     srcs = glob(["Protocol/MCP/*.cpp"]),
     hdrs = glob(["Protocol/MCP/*.h"]),
     deps = [
-        "//lldb:CoreHeaders",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
-        "//lldb:ProtocolHeaders",
         "//lldb:ProtocolMCP",
         "//lldb:Utility",
         "//llvm:Support",
@@ -197,7 +187,6 @@ objc_library(
     }),
     deps = [
         "//lldb:Host",
-        "//lldb:HostMacOSXPrivateHeaders",
         "//llvm:Support",
     ],
 )
@@ -215,11 +204,16 @@ cc_library(
                "@platforms//os:macos": ["Platform/MacOSX/PlatformAppleSimulator.cpp"],
                "//conditions:default": [],
            }),
-    hdrs = glob([
-        "DynamicLoader/Darwin-Kernel/*.h",
-        "Platform/MacOSX/*.h",
-    ]),
-    features = ["-parse_headers"],  # TODO: Attempt to fix in a way that works cross platform
+    hdrs = glob(
+        [
+            "DynamicLoader/Darwin-Kernel/*.h",
+            "Platform/MacOSX/*.h",
+        ],
+        exclude = ["Platform/MacOSX/PlatformAppleSimulator.h"],
+    ) + select({
+        "@platforms//os:macos": ["Platform/MacOSX/PlatformAppleSimulator.h"],
+        "//conditions:default": [],
+    }),
     includes = [".."],
     tags = ["nobuildkite"],
     deps = [
@@ -230,22 +224,17 @@ cc_library(
         ":PluginPlatformPOSIX",
         "//clang:options",
         "//lldb:Breakpoint",
-        "//lldb:BreakpointHeaders",
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
     ] + select({
         "@platforms//os:macos": [
             ":PluginPlatformMacOSXObjCXX",
-            "//lldb:HostMacOSXPrivateHeaders",
         ],
         "//conditions:default": [],
     }),
@@ -274,16 +263,11 @@ cc_library(
     hdrs = glob(["Process/Utility/*.h"]),
     includes = [".."],
     deps = [
-        "//lldb:BreakpointHeaders",
         "//lldb:Core",
-        "//lldb:ExpressionHeaders",
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Register",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
         "//llvm:TargetParser",
     ],
@@ -296,7 +280,7 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
-        "//lldb:SymbolHeaders",
+        "//lldb:Headers",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:DebugInfoPDB",
@@ -348,17 +332,10 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         ":ProcessGDBRemoteProperties",
-        "//lldb:BreakpointHeaders",
-        "//lldb:CoreHeaders",
-        "//lldb:DataFormattersHeaders",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
         "//llvm:TargetParser",
         "//llvm:config",
@@ -374,11 +351,8 @@ cc_library(
     deps = [
         ":PluginObjectFileWasm",
         ":PluginProcessGDBRemote",
-        "//lldb:CoreHeaders",
         "//lldb:Headers",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
     ],
 )
@@ -390,11 +364,10 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -406,9 +379,9 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Object",
         "//llvm:Support",
@@ -422,9 +395,9 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -437,11 +410,10 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -453,11 +425,10 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Object",
@@ -486,10 +457,9 @@ cc_library(
         ":StructuredDataDarwinLogProperties",
         "//lldb:Breakpoint",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -503,8 +473,8 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
     ],
 )
 
@@ -518,10 +488,9 @@ cc_library(
         ":PluginsClang",
         "//lldb:Core",
         "//lldb:Expression",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -547,11 +516,9 @@ cc_library(
     deps = [
         ":PlatformQemuUserProperties",
         ":PluginProcessGDBRemote",
-        "//lldb:CoreHeaders",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -578,12 +545,9 @@ cc_library(
         ":PluginPlatformGDB",
         ":PluginProcessWasm",
         "//lldb:Core",
-        "//lldb:CoreHeaders",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -599,9 +563,9 @@ cc_library(
         ":PluginProcessUtility",
         "//lldb:Breakpoint",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -618,14 +582,11 @@ cc_library(
         ":PluginsClang",
         "//lldb:Breakpoint",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Register",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
     ],
 )
 
@@ -652,8 +613,8 @@ cc_library(
         ":PluginPlatformLinux",
         ":PluginPlatformPOSIX",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -682,10 +643,9 @@ cc_library(
         ":PluginsClang",
         "//lldb:Breakpoint",
         "//lldb:Core",
-        "//lldb:ExpressionHeaders",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -703,9 +663,7 @@ cc_library(
         "//lldb:Expression",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
     ],
 )
 
@@ -720,7 +678,7 @@ cc_library(
         ":PluginsClang",
         "//lldb:Core",
         "//lldb:DataFormatters",
-        "//lldb:ExpressionHeaders",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
         "//lldb:Target",
@@ -739,8 +697,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -756,8 +712,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -773,8 +727,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -790,8 +742,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -806,7 +756,6 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -824,7 +773,6 @@ cc_library(
         "//lldb:Host",
         "//lldb:Symbol",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -868,11 +816,10 @@ cc_library(
         ":PluginTraceExporterCommon",
         ":TraceExporterCTFOptions",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
     ],
 )
 
@@ -883,9 +830,8 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
-        "//lldb:SymbolHeaders",
+        "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//llvm:Support",
     ],
 )
@@ -903,11 +849,8 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
         "//llvm:TargetParser",
     ],
@@ -922,9 +865,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Core",
         "//llvm:TargetParser",
@@ -940,9 +881,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -958,9 +897,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Core",
         "//llvm:TargetParser",
@@ -976,9 +913,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -995,11 +930,8 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
         "//llvm:TargetParser",
     ],
@@ -1015,9 +947,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Core",
         "//llvm:Support",
@@ -1036,9 +966,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Symbol",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Core",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -1054,9 +982,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -1072,11 +998,8 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
         "//llvm:TargetParser",
     ],
@@ -1096,9 +1019,7 @@ cc_library(
         ":PluginObjectFilePECOFF",
         "//lldb:Core",
         "//lldb:Headers",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -1115,9 +1036,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1131,8 +1050,8 @@ cc_library(
     deps = [
         ":PluginObjectFileWasm",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1144,11 +1063,10 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1164,11 +1082,10 @@ cc_library(
         "//lldb:Breakpoint",
         "//lldb:Core",
         "//lldb:Expression",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -1200,9 +1117,8 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
-        "//lldb:SymbolHeaders",
+        "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
     ],
@@ -1215,9 +1131,8 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
-        "//lldb:SymbolHeaders",
+        "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1231,11 +1146,9 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
-        "//lldb:SymbolHeaders",
+        "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
     ],
 )
@@ -1248,8 +1161,8 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1273,8 +1186,8 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1310,10 +1223,9 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:MC",
         "//llvm:MCDisassembler",
@@ -1329,8 +1241,8 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1346,7 +1258,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:config",
@@ -1362,8 +1273,8 @@ cc_library(
     deps = [
         ":PluginObjectFileJSON",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1377,9 +1288,9 @@ cc_library(
     deps = [
         ":PluginObjectFileBreakpad",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1393,10 +1304,9 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
-        "//lldb:InterpreterHeaders",
+        "//lldb:Headers",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1409,10 +1319,9 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
-        "//lldb:InterpreterHeaders",
+        "//lldb:Headers",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1426,11 +1335,10 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:MC",
         "//llvm:MCDisassembler",
@@ -1446,11 +1354,10 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:MC",
         "//llvm:MCDisassembler",
@@ -1466,14 +1373,11 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:Support",
     ],
 )
@@ -1486,10 +1390,9 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
-        "//lldb:InterpreterHeaders",
+        "//lldb:Headers",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1503,10 +1406,9 @@ cc_library(
     deps = [
         ":PluginProcessUtility",
         "//lldb:Core",
-        "//lldb:InterpreterHeaders",
+        "//lldb:Headers",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1525,9 +1427,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1545,11 +1445,8 @@ cc_library(
         "//lldb:Expression",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1564,10 +1461,9 @@ cc_library(
         "//lldb:Breakpoint",
         "//lldb:Core",
         "//lldb:Expression",
+        "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1584,11 +1480,8 @@ cc_library(
         "//lldb:Core",
         "//lldb:Expression",
         "//lldb:Headers",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1605,11 +1498,8 @@ cc_library(
         "//lldb:Expression",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1626,9 +1516,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Symbol",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityHeaders",
     ],
 )
 
@@ -1654,11 +1542,9 @@ cc_library(
         ":PluginObjectFileMachO",
         "//lldb:Breakpoint",
         "//lldb:Core",
-        "//lldb:InterpreterHeaders",
+        "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1675,8 +1561,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1704,9 +1588,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Debuginfod",
         "//llvm:HTTP",
@@ -1736,9 +1618,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:HTTP",
         "//llvm:Support",
@@ -1751,15 +1631,16 @@ cc_library(
     hdrs = glob(["SymbolLocator/DebugSymbols/*.h"]),
     includes = [".."],
     tags = ["nobuildkite"],
+    target_compatible_with = select({
+        "@platforms//os:macos": [],
+        "//conditions:default": ["@platforms//:incompatible"],
+    }),
     deps = [
         ":PluginObjectFileWasm",
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:HostMacOSXPrivateHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1834,7 +1715,7 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
-        "//lldb:InterpreterHeaders",
+        "//lldb:Headers",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1854,9 +1735,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1869,9 +1748,9 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
         "//lldb:Utility",
         "//llvm:Object",
@@ -1889,8 +1768,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Support",
@@ -1904,11 +1781,10 @@ cc_library(
     includes = [".."],
     deps = [
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -1924,9 +1800,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
     ],
 )
@@ -1942,9 +1816,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Support",
@@ -1963,9 +1835,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Object",
@@ -1995,13 +1865,11 @@ cc_library(
         ":ObjectFilePECOFFProperties",
         ":PluginProcessUtility",
         "//lldb:Core",
+        "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Object",
@@ -2020,7 +1888,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -2037,9 +1904,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Object",
@@ -2058,10 +1923,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
-        "//lldb:UtilityHeaders",
         "//llvm:BinaryFormat",
         "//llvm:Object",
         "//llvm:Support",
@@ -2077,9 +1939,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:MCDisassembler",
         "//llvm:Support",
@@ -2095,9 +1955,7 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -2112,7 +1970,6 @@ cc_library(
         ":PluginProcessUtility",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Support",
@@ -2135,8 +1992,6 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Register",
-        "//lldb:SymbolHeaders",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
         "//llvm:TargetParser",
@@ -2152,14 +2007,10 @@ cc_library(
         ":PluginObjectFilePlaceholder",
         ":PluginProcessUtility",
         "//lldb:Core",
-        "//lldb:CoreHeaders",
         "//lldb:Expression",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -2173,11 +2024,8 @@ cc_library(
     deps = [
         ":PluginScriptedProcess",
         "//lldb:Core",
-        "//lldb:CoreHeaders",
         "//lldb:Headers",
-        "//lldb:InterpreterHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -2201,9 +2049,7 @@ cc_library(
         "//lldb:Headers",
         "//lldb:Host",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -2231,9 +2077,7 @@ cc_library(
         "//lldb:Host",
         "//lldb:Register",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:BinaryFormat",
         "//llvm:Support",
@@ -2272,11 +2116,8 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Host",
-        "//lldb:InterpreterHeaders",
         "//lldb:Symbol",
-        "//lldb:SymbolHeaders",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -2294,12 +2135,9 @@ cc_library(
         ":PluginProcessUtility",
         "//lldb:Core",
         "//lldb:Headers",
-        "//lldb:InterpreterHeaders",
         "//lldb:Register",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
-        "//lldb:UtilityPrivateHeaders",
         "//llvm:BinaryFormat",
         "//llvm:Object",
         "//llvm:Support",
@@ -2321,7 +2159,6 @@ cc_library(
         "//lldb:Host",
         "//lldb:Symbol",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],
@@ -2338,7 +2175,6 @@ cc_library(
         "//lldb:Core",
         "//lldb:Headers",
         "//lldb:Target",
-        "//lldb:TargetHeaders",
         "//lldb:Utility",
         "//llvm:Support",
     ],

>From 472e49f9c112ef9f6008fc562bd25461c19e29b2 Mon Sep 17 00:00:00 2001
From: lexinadia <lexinadia at google.com>
Date: Fri, 16 Oct 2026 21:12:45 +0000
Subject: [PATCH 2/2] Fix formatting errors

---
 .../Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp  | 6 ++++--
 .../Plugins/ExpressionParser/Clang/ClangFunctionCaller.h    | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
index 3992efe3ff6a6d..0772fcf95d1938 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
@@ -216,9 +216,11 @@ ClangFunctionCaller::CompileFunction(lldb::ThreadSP thread_to_use_sp,
 char ClangFunctionCaller::ClangFunctionCallerHelper::ID;
 
 ClangFunctionCaller::ClangFunctionCallerHelper::ClangFunctionCallerHelper(
-    ClangFunctionCaller &owner) : m_owner(owner) {}
+    ClangFunctionCaller &owner)
+    : m_owner(owner) {}
 
-ClangFunctionCaller::ClangFunctionCallerHelper::~ClangFunctionCallerHelper() = default;
+ClangFunctionCaller::ClangFunctionCallerHelper::~ClangFunctionCallerHelper() =
+    default;
 
 clang::ASTConsumer *
 ClangFunctionCaller::ClangFunctionCallerHelper::ASTTransformer(
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h
index 63082193bdf853..f0f5d489e5b93a 100644
--- a/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h
+++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.h
@@ -64,7 +64,7 @@ class ClangFunctionCaller : public FunctionCaller {
     // LLVM RTTI support
     static char ID;
 
-    ClangFunctionCallerHelper(ClangFunctionCaller& owner);
+    ClangFunctionCallerHelper(ClangFunctionCaller &owner);
 
     virtual ~ClangFunctionCallerHelper();
 



More information about the lldb-commits mailing list