Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 251205d8 authored by Spandan Das's avatar Spandan Das Committed by Zhi Dou
Browse files

New product config flag to gate blueprint modules

Bug: 270654958

Example usage:
PRODUCT_INCLUDE_TAGS += use_myspecial_sdk

This also populates the allowlist with go/nogo mainline tags. Usage of
`PRODUCT_INCLUDE_TAGS` outside this allowlist will raise an error
in product config

Test: TH

Change-Id: Ica82a8f65cbfda600d72fc54fb873c1eaa1666a7
Merged-In: Ica82a8f65cbfda600d72fc54fb873c1eaa1666a7
(cherry picked from commit 055e5f89a7bc5d12877fc6bc8110c1e1e8b6ee59)
parent ff3bc8be
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -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

+8 −0
Original line number Diff line number Diff line
@@ -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)
+2 −0
Original line number Diff line number Diff line
@@ -292,6 +292,8 @@ $(call add_json_bool, GenerateAidlNdkPlatformBackend, $(filter true,$(NEED_AIDL_

$(call add_json_bool, ForceMultilibFirstOnDevice, $(filter true,$(FORCE_MULTILIB_FIRST_ON_DEVICE)))

$(call add_json_list, IncludeTags,                $(PRODUCT_INCLUDE_TAGS))

$(call json_end)

$(file >$(SOONG_VARIABLES).tmp,$(json_contents))