aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSpandan Das <spandandas@google.com>2022-12-09 21:34:25 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2022-12-09 21:34:25 +0000
commit2cf077ec561668a755f1877af70293af38c4a74a (patch)
treeb14769e7fd5e35115f2e1825699a682d33da07a8
parentdccd189954c52d2726cfd287a7a230f4b837f285 (diff)
parent055e5f89a7bc5d12877fc6bc8110c1e1e8b6ee59 (diff)
downloadbuild-android13-dev.tar.gz
Merge "New product config flag to gate blueprint modules" into android13-devandroid13-dev
-rw-r--r--core/product.mk3
-rw-r--r--core/product_config.mk8
-rw-r--r--core/soong_config.mk2
3 files changed, 13 insertions, 0 deletions
diff --git a/core/product.mk b/core/product.mk
index 53fee1c54f..e57ca13b6f 100644
--- a/core/product.mk
+++ b/core/product.mk
@@ -267,6 +267,9 @@ _product_list_vars += PRODUCT_FORCE_PRODUCT_MODULES_TO_SYSTEM_PARTITION
# This flag implies PRODUCT_USE_DYNAMIC_PARTITIONS.
_product_single_value_vars += PRODUCT_RETROFIT_DYNAMIC_PARTITIONS
+# List of tags that will be used to gate blueprint modules from the build graph
+_product_list_vars += PRODUCT_INCLUDE_TAGS
+
# When this is true, various build time as well as runtime debugfs restrictions are enabled.
_product_single_value_vars += PRODUCT_SET_DEBUGFS_RESTRICTIONS
diff --git a/core/product_config.mk b/core/product_config.mk
index 37146d3a97..b93f5be1d9 100644
--- a/core/product_config.mk
+++ b/core/product_config.mk
@@ -278,6 +278,14 @@ all_product_makefiles :=
all_product_configs :=
#############################################################################
+# Check product include tag allowlist
+BLUEPRINT_INCLUDE_TAGS_ALLOWLIST := com.android.mainline_go com.android.mainline
+.KATI_READONLY := BLUEPRINT_INCLUDE_TAGS_ALLOWLIST
+$(foreach include_tag,$(PRODUCT_INCLUDE_TAGS), \
+ $(if $(filter $(include_tag),$(BLUEPRINT_INCLUDE_TAGS_ALLOWLIST)),,\
+ $(call pretty-error, $(include_tag) is not in BLUEPRINT_INCLUDE_TAGS_ALLOWLIST: $(BLUEPRINT_INCLUDE_TAGS_ALLOWLIST))))
+#############################################################################
+
# Quick check and assign default values
TARGET_DEVICE := $(PRODUCT_DEVICE)
diff --git a/core/soong_config.mk b/core/soong_config.mk
index d03b687464..e3b0e70d85 100644
--- a/core/soong_config.mk
+++ b/core/soong_config.mk
@@ -290,6 +290,8 @@ $(call add_json_list, SepolicyFreezeTestExtraPrebuiltDirs, $(SEPOLICY_FREEZE_TES
$(call add_json_bool, GenerateAidlNdkPlatformBackend, $(filter true,$(NEED_AIDL_NDK_PLATFORM_BACKEND)))
+$(call add_json_list, IncludeTags, $(PRODUCT_INCLUDE_TAGS))
+
$(call json_end)
$(file >$(SOONG_VARIABLES).tmp,$(json_contents))