diff --git a/core/Makefile b/core/Makefile index f9c1882be..ba5be928d 100644 --- a/core/Makefile +++ b/core/Makefile @@ -2288,12 +2288,12 @@ ifdef INSTALLED_SYSTEMOTHERIMAGE_TARGET $(hide) $(call fs_config,$(zip_root)/SYSTEM_OTHER,system/) > $(zip_root)/META/system_other_filesystem_config.txt endif @# Metadata for compatibility verification. - $(hide) cp $(INSTALLED_SYSTEM_MANIFEST) $(zip_root)/META/system_manifest.xml -ifdef INSTALLED_VENDOR_MANIFEST - $(hide) cp $(INSTALLED_VENDOR_MANIFEST) $(zip_root)/META/vendor_manifest.xml + $(hide) cp $(BUILT_SYSTEM_MANIFEST) $(zip_root)/META/system_manifest.xml +ifdef BUILT_VENDOR_MANIFEST + $(hide) cp $(BUILT_VENDOR_MANIFEST) $(zip_root)/META/vendor_manifest.xml endif -ifdef INSTALLED_VENDOR_MATRIX - $(hide) cp $(INSTALLED_VENDOR_MATRIX) $(zip_root)/META/vendor_matrix.xml +ifdef BUILT_VENDOR_MATRIX + $(hide) cp $(BUILT_VENDOR_MATRIX) $(zip_root)/META/vendor_matrix.xml endif $(hide) PATH=$(foreach p,$(INTERNAL_USERIMAGES_BINARY_PATHS),$(p):)$$PATH MKBOOTIMG=$(MKBOOTIMG) \ diff --git a/core/config.mk b/core/config.mk index 3bceffbad..6d5feb36b 100644 --- a/core/config.mk +++ b/core/config.mk @@ -686,7 +686,7 @@ else DEFAULT_SYSTEM_DEV_CERTIFICATE := build/target/product/security/testkey endif -INSTALLED_SYSTEM_MANIFEST := $(PRODUCT_OUT)/system/manifest.xml +FRAMEWORK_MANIFEST_FILE := system/libhidl/manifest.xml # ############################################################### # Set up final options. diff --git a/target/board/Android.mk b/target/board/Android.mk index efc3bf32f..a24abbe56 100644 --- a/target/board/Android.mk +++ b/target/board/Android.mk @@ -41,8 +41,8 @@ $(GEN): $(DEVICE_MANIFEST_FILE) $(HOST_OUT_EXECUTABLES)/assemble_vintf BOARD_SEPOLICY_VERS=$(BOARD_SEPOLICY_VERS) $(HOST_OUT_EXECUTABLES)/assemble_vintf -i $< -o $@ LOCAL_PREBUILT_MODULE_FILE := $(GEN) -INSTALLED_VENDOR_MANIFEST := $(LOCAL_MODULE_PATH)/$(LOCAL_MODULE) include $(BUILD_PREBUILT) +BUILT_VENDOR_MANIFEST := $(LOCAL_BUILT_MODULE) endif ifdef DEVICE_MATRIX_FILE @@ -51,6 +51,20 @@ LOCAL_MODULE := matrix.xml LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR) LOCAL_PREBUILT_MODULE_FILE := $(DEVICE_MATRIX_FILE) -INSTALLED_VENDOR_MATRIX := $(LOCAL_MODULE_PATH)/$(LOCAL_MODULE) include $(BUILD_PREBUILT) +BUILT_VENDOR_MATRIX := $(LOCAL_BUILT_MODULE) endif + +include $(CLEAR_VARS) +LOCAL_MODULE := system_manifest.xml +LOCAL_MODULE_STEM := manifest.xml +LOCAL_MODULE_CLASS := ETC +LOCAL_MODULE_PATH := $(TARGET_OUT) + +GEN := $(local-generated-sources-dir)/manifest.xml +$(GEN): $(FRAMEWORK_MANIFEST_FILE) $(HOST_OUT_EXECUTABLES)/assemble_vintf + BOARD_SEPOLICY_VERS=$(BOARD_SEPOLICY_VERS) $(HOST_OUT_EXECUTABLES)/assemble_vintf -i $< -o $@ + +LOCAL_PREBUILT_MODULE_FILE := $(GEN) +include $(BUILD_PREBUILT) +BUILT_SYSTEM_MANIFEST := $(LOCAL_BUILT_MODULE) diff --git a/target/product/embedded.mk b/target/product/embedded.mk index 2b7156bba..b88a14392 100644 --- a/target/product/embedded.mk +++ b/target/product/embedded.mk @@ -88,6 +88,7 @@ PRODUCT_PACKAGES += \ vndservicemanager \ matrix.xml \ manifest.xml \ + system_manifest.xml \ # SELinux packages PRODUCT_PACKAGES += \ @@ -122,6 +123,3 @@ PRODUCT_COPY_FILES += \ system/core/rootdir/init.usb.configfs.rc:root/init.usb.configfs.rc \ system/core/rootdir/ueventd.rc:root/ueventd.rc \ system/core/rootdir/etc/hosts:system/etc/hosts - -# Framework Manifest -PRODUCT_COPY_FILES += system/libhidl/manifest.xml:system/manifest.xml