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

Commit 4d9cb568 authored by Michael Schwartz's avatar Michael Schwartz
Browse files

Rule to copy device manifest to device

The device manifest defines the collection of HAL interfaces exposed by
the vendor. Create a common rule so each target need not define their own.

Bug: 36810913
Test: Ran marlin build and inspected file was copied
Change-Id: I9f53796fdd85e706f91664d275aff6dbd785213f
parent 8a6d7fab
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -2064,6 +2064,8 @@ $(BUILT_TARGET_FILES_PACKAGE): \
		$(HOST_OUT_EXECUTABLES)/imgdiff \
		$(HOST_OUT_EXECUTABLES)/bsdiff \
		$(BUILD_IMAGE_SRCS) \
		$(INSTALLED_VENDOR_MANIFEST) \
		$(INSTALLED_VENDOR_MATRIX) \
		| $(ACP)
	@echo "Package target files: $@"
	$(call create-system-vendor-symlink)
@@ -2285,6 +2287,15 @@ endif
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
endif
ifdef INSTALLED_VENDOR_MATRIX
	$(hide) cp $(INSTALLED_VENDOR_MATRIX) $(zip_root)/META/vendor_matrix.xml
endif

	$(hide) PATH=$(foreach p,$(INTERNAL_USERIMAGES_BINARY_PATHS),$(p):)$$PATH MKBOOTIMG=$(MKBOOTIMG) \
	    ./build/tools/releasetools/add_img_to_target_files -a -v -p $(HOST_OUT) $(zip_root)
	@# Zip everything up, preserving symlinks and placing META/ files first to
+2 −0
Original line number Diff line number Diff line
@@ -686,6 +686,8 @@ else
  DEFAULT_SYSTEM_DEV_CERTIFICATE := build/target/product/security/testkey
endif

INSTALLED_SYSTEM_MANIFEST := $(PRODUCT_OUT)/system/manifest.xml

# ###############################################################
# Set up final options.
# ###############################################################
+24 −0
Original line number Diff line number Diff line
@@ -2,6 +2,8 @@
# Set up product-global definitions and include product-specific rules.
#

LOCAL_PATH := $(call my-dir)

-include $(TARGET_DEVICE_DIR)/AndroidBoard.mk

# Generate a file that contains various information about the
@@ -25,3 +27,25 @@ ifdef board_info_txt
else
	$(hide) echo "board=$(TARGET_BOOTLOADER_BOARD_NAME)" > $@
endif

# Copy compatibility metadata to the device.

ifdef DEVICE_MANIFEST_FILE
include $(CLEAR_VARS)
LOCAL_MODULE        := manifest.xml
LOCAL_MODULE_CLASS  := ETC
LOCAL_MODULE_PATH   := $(TARGET_OUT_VENDOR)
LOCAL_PREBUILT_MODULE_FILE := $(DEVICE_MANIFEST_FILE)
INSTALLED_VENDOR_MANIFEST := $(LOCAL_MODULE_PATH)/$(LOCAL_MODULE)
include $(BUILD_PREBUILT)
endif

ifdef DEVICE_MATRIX_FILE
include $(CLEAR_VARS)
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)
endif
+3 −2
Original line number Diff line number Diff line
@@ -85,6 +85,8 @@ PRODUCT_PACKAGES += \
    toybox \
    tzdatacheck \
    vndservicemanager \
    matrix.xml \
    manifest.xml \

# SELinux packages
PRODUCT_PACKAGES += \
@@ -119,5 +121,4 @@ PRODUCT_COPY_FILES += \
    system/core/rootdir/etc/hosts:system/etc/hosts

# Framework Manifest
PRODUCT_COPY_FILES += \
    system/libhidl/manifest.xml:system/manifest.xml
PRODUCT_COPY_FILES += system/libhidl/manifest.xml:system/manifest.xml