diff --git a/build/soong/Android.bp b/build/soong/Android.bp
index dca42cf..8210c56 100644
--- a/build/soong/Android.bp
+++ b/build/soong/Android.bp
@@ -19,6 +19,28 @@
     ],
     srcs: [
         "generator/generator.go",
+        "generator/variables.go",
     ],
     pluginFor: ["soong_build"],
 }
+
+lineage_generator {
+    name: "generated_kernel_includes",
+
+    // The headers make command
+    cmd: "make $(KERNEL_MAKE_FLAGS) -C $(TARGET_KERNEL_SOURCE) O=$(genDir) ARCH=$(KERNEL_ARCH) $(KERNEL_CROSS_COMPILE) headers_install",
+
+    // Directories that can be imported by a cc_* module generated_headers property
+    export_include_dirs: ["usr/include"],
+
+    // Sources for dependency tracking
+    dep_root: "$(TARGET_KERNEL_SOURCE)",
+    dep_files: [ "Makefile", "include/**/*", "arch/$(KERNEL_ARCH)/include/**/*"],
+}
+
+cc_library_headers {
+    name: "generated_kernel_headers",
+    generated_headers: ["generated_kernel_includes"],
+    export_generated_headers: ["generated_kernel_includes"],
+    vendor_available: true,
+}
diff --git a/build/soong/generator/generator.go b/build/soong/generator/generator.go
index 06c383d..7da1fde 100644
--- a/build/soong/generator/generator.go
+++ b/build/soong/generator/generator.go
@@ -213,10 +213,13 @@
 	depRoot := String(g.properties.Dep_root)
 	if depRoot == "" {
 		depRoot = ctx.ModuleDir()
+	} else {
+		depRoot = lineageExpandVariables(ctx, depRoot)
 	}
 
 	// Glob dep_files property
 	for _, dep_file := range g.properties.Dep_files {
+		dep_file = lineageExpandVariables(ctx, dep_file)
 		globPath := filepath.Join(depRoot, dep_file)
 		paths, err := ctx.GlobWithDeps(globPath, nil)
 		if err != nil {
@@ -228,7 +231,7 @@
 		}
 	}
 
-	cmd := String(g.properties.Cmd)
+	cmd := lineageExpandVariables(ctx, String(g.properties.Cmd))
 
 	rawCommand, err := android.Expand(cmd, func(name string) (string, error) {
 		switch name {
diff --git a/build/soong/generator/variables.go b/build/soong/generator/variables.go
new file mode 100644
index 0000000..8485f94
--- /dev/null
+++ b/build/soong/generator/variables.go
@@ -0,0 +1,28 @@
+package generator
+
+import (
+	"fmt"
+
+	"android/soong/android"
+)
+
+func lineageExpandVariables(ctx android.ModuleContext, in string) string {
+	lineageVars := ctx.Config().VendorConfig("lineageVarsPlugin")
+
+	out, err := android.Expand(in, func(name string) (string, error) {
+		if lineageVars.IsSet(name) {
+			return lineageVars.String(name), nil
+		}
+		// This variable is not for us, restore what the original
+		// variable string will have looked like for an Expand
+		// that comes later.
+		return fmt.Sprintf("$(%s)", name), nil
+	})
+
+	if err != nil {
+		ctx.PropertyErrorf("%s: %s", in, err.Error())
+		return ""
+	}
+
+	return out
+}
diff --git a/config/BoardConfigLineage.mk b/config/BoardConfigLineage.mk
index 99990a4..547792f 100644
--- a/config/BoardConfigLineage.mk
+++ b/config/BoardConfigLineage.mk
@@ -8,3 +8,5 @@
 ifeq ($(BOARD_USES_QCOM_HARDWARE),true)
 include vendor/lineage/config/BoardConfigQcom.mk
 endif
+
+include vendor/lineage/config/BoardConfigSoong.mk
diff --git a/config/BoardConfigSoong.mk b/config/BoardConfigSoong.mk
new file mode 100644
index 0000000..82dedad
--- /dev/null
+++ b/config/BoardConfigSoong.mk
@@ -0,0 +1,22 @@
+# Add variables that we wish to make available to soong here.
+EXPORT_TO_SOONG := \
+    KERNEL_ARCH \
+    KERNEL_CROSS_COMPILE \
+    KERNEL_MAKE_FLAGS \
+    TARGET_KERNEL_CONFIG \
+    TARGET_KERNEL_SOURCE
+
+# Setup SOONG_CONFIG_* vars to export the vars listed above.
+# Documentation here:
+# https://github.com/LineageOS/android_build_soong/commit/8328367c44085b948c003116c0ed74a047237a69
+
+SOONG_CONFIG_NAMESPACES += lineageVarsPlugin
+
+SOONG_CONFIG_lineageVarsPlugin :=
+
+define addVar
+  SOONG_CONFIG_lineageVarsPlugin += $(1)
+  SOONG_CONFIG_lineageVarsPlugin_$(1) := $$(subst ",\",$$($1))
+endef
+
+$(foreach v,$(EXPORT_TO_SOONG),$(eval $(call addVar,$(v))))
