From 81923d1289f648948c8fd15bb3b0173d87c09f5e Mon Sep 17 00:00:00 2001 From: Kiyoung Kim Date: Mon, 18 Sep 2023 16:46:23 +0900 Subject: [PATCH] Define llndk modules instead of vndk_package vndk_package installs more than VNDK APEX, which includes LLNDK for system and some core modules with vendor variant. This change adds a new target llndk_in_system to instal LLNDK modules in the system image and use this package if VNDK is deprecated Bug: 299197187 Test: Cuttlefish and Cheetah boot succeeded without error Change-Id: I9fe1114fdcb65c6143b5f734425c878a29138d0b --- core/main.mk | 3 ++- target/product/gsi/Android.mk | 18 ++++++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/core/main.mk b/core/main.mk index d42c8ade4f..e697d043b0 100644 --- a/core/main.mk +++ b/core/main.mk @@ -1235,7 +1235,8 @@ endef # Returns modules included automatically as a result of certain BoardConfig # variables being set. define auto-included-modules - $(if $(BOARD_VNDK_VERSION),vndk_package) \ + $(if $(and $(BOARD_VNDK_VERSION),$(filter true,$(KEEP_VNDK))),vndk_package) \ + $(if $(filter true,$(KEEP_VNDK)),,llndk_in_system) \ $(if $(DEVICE_MANIFEST_FILE),vendor_manifest.xml) \ $(if $(DEVICE_MANIFEST_SKUS),$(foreach sku, $(DEVICE_MANIFEST_SKUS),vendor_manifest_$(sku).xml)) \ $(if $(ODM_MANIFEST_FILES),odm_manifest.xml) \ diff --git a/target/product/gsi/Android.mk b/target/product/gsi/Android.mk index 15752aacf2..563712a669 100644 --- a/target/product/gsi/Android.mk +++ b/target/product/gsi/Android.mk @@ -188,8 +188,7 @@ LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 LOCAL_LICENSE_CONDITIONS := notice LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE # Filter LLNDK libs moved to APEX to avoid pulling them into /system/LIB -LOCAL_REQUIRED_MODULES := \ - $(filter-out $(LLNDK_MOVED_TO_APEX_LIBRARIES),$(LLNDK_LIBRARIES)) +LOCAL_REQUIRED_MODULES := llndk_in_system ifneq ($(TARGET_SKIP_CURRENT_VNDK),true) LOCAL_REQUIRED_MODULES += \ @@ -225,6 +224,21 @@ include $(BUILD_PHONY_PACKAGE) _vndk_versions := +##################################################################### +# Define Phony module to install LLNDK modules which are installed in +# the system image +include $(CLEAR_VARS) +LOCAL_MODULE := llndk_in_system +LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0 +LOCAL_LICENSE_CONDITIONS := notice +LOCAL_NOTICE_FILE := build/soong/licenses/LICENSE + +# Filter LLNDK libs moved to APEX to avoid pulling them into /system/LIB +LOCAL_REQUIRED_MODULES := \ + $(filter-out $(LLNDK_MOVED_TO_APEX_LIBRARIES),$(LLNDK_LIBRARIES)) + +include $(BUILD_PHONY_PACKAGE) + ##################################################################### # skip_mount.cfg, read by init to skip mounting some partitions when GSI is used.