Merge "Add /odm/apex/ support." into main am: 113f1f5c7e

Original change: https://android-review.googlesource.com/c/platform/build/+/3217178

Change-Id: I4bfb322b0bb7ae1a605f1a98dc3d32048aefb5a6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Jooyung Han
2024-08-16 04:00:29 +00:00
committed by Automerger Merge Worker
4 changed files with 9 additions and 2 deletions

View File

@@ -5136,6 +5136,7 @@ apex_dirs := \
$(TARGET_OUT)/apex/% \
$(TARGET_OUT_SYSTEM_EXT)/apex/% \
$(TARGET_OUT_VENDOR)/apex/% \
$(TARGET_OUT_ODM)/apex/% \
$(TARGET_OUT_PRODUCT)/apex/% \
apex_files := $(sort $(filter $(apex_dirs), $(INTERNAL_ALLIMAGES_FILES)))
@@ -5188,6 +5189,7 @@ apex_dirs := \
$(TARGET_OUT_PRODUCT)/apex/% \
$(TARGET_OUT_SYSTEM_EXT)/apex/% \
$(TARGET_OUT_VENDOR)/apex/% \
$(TARGET_OUT_ODM)/apex/% \
apex_files := $(sort $(filter $(apex_dirs), $(INTERNAL_ALLIMAGES_FILES)))
@@ -5206,6 +5208,7 @@ $(APEX_INFO_FILE): $(HOST_OUT_EXECUTABLES)/apexd_host $(apex_files)
--system_ext_path $(TARGET_OUT_SYSTEM_EXT) \
--product_path $(TARGET_OUT_PRODUCT) \
--vendor_path $(TARGET_OUT_VENDOR) \
--odm_path $(TARGET_OUT_ODM) \
--apex_path $(APEX_OUT)
apex_files :=

View File

@@ -96,6 +96,7 @@ python_defaults {
],
libs: [
"apex_manifest",
"releasetools_apex_utils",
"releasetools_common",
],
required: [

View File

@@ -36,6 +36,8 @@ APEX_PAYLOAD_IMAGE = 'apex_payload.img'
APEX_PUBKEY = 'apex_pubkey'
# Partitions supporting APEXes
PARTITIONS = ['system', 'system_ext', 'product', 'vendor', 'odm']
class ApexInfoError(Exception):
"""An Exception raised during Apex Information command."""
@@ -550,7 +552,7 @@ def GetApexInfoFromTargetFiles(input_file):
if not isinstance(input_file, str):
raise RuntimeError("must pass filepath to target-files zip or directory")
apex_infos = []
for partition in ['system', 'system_ext', 'product', 'vendor']:
for partition in PARTITIONS:
apex_infos.extend(GetApexInfoForPartition(input_file, partition))
return apex_infos

View File

@@ -30,6 +30,7 @@ import subprocess
import sys
import zipfile
import apex_utils
import common
from apex_manifest import ParseApexManifest
@@ -229,7 +230,7 @@ def PrepareApexDirectory(inp, dirmap):
apex_host = os.path.join(OPTIONS.search_path, 'bin', 'apexd_host')
cmd = [apex_host, '--tool_path', OPTIONS.search_path]
cmd += ['--apex_path', dirmap['/apex']]
for p in ['system', 'system_ext', 'product', 'vendor']:
for p in apex_utils.PARTITIONS:
if '/' + p in dirmap:
cmd += ['--' + p + '_path', dirmap['/' + p]]
common.RunAndCheckOutput(cmd)