Merge "Add /odm/apex/ support." into main
This commit is contained in:
@@ -5136,6 +5136,7 @@ apex_dirs := \
|
|||||||
$(TARGET_OUT)/apex/% \
|
$(TARGET_OUT)/apex/% \
|
||||||
$(TARGET_OUT_SYSTEM_EXT)/apex/% \
|
$(TARGET_OUT_SYSTEM_EXT)/apex/% \
|
||||||
$(TARGET_OUT_VENDOR)/apex/% \
|
$(TARGET_OUT_VENDOR)/apex/% \
|
||||||
|
$(TARGET_OUT_ODM)/apex/% \
|
||||||
$(TARGET_OUT_PRODUCT)/apex/% \
|
$(TARGET_OUT_PRODUCT)/apex/% \
|
||||||
|
|
||||||
apex_files := $(sort $(filter $(apex_dirs), $(INTERNAL_ALLIMAGES_FILES)))
|
apex_files := $(sort $(filter $(apex_dirs), $(INTERNAL_ALLIMAGES_FILES)))
|
||||||
@@ -5188,6 +5189,7 @@ apex_dirs := \
|
|||||||
$(TARGET_OUT_PRODUCT)/apex/% \
|
$(TARGET_OUT_PRODUCT)/apex/% \
|
||||||
$(TARGET_OUT_SYSTEM_EXT)/apex/% \
|
$(TARGET_OUT_SYSTEM_EXT)/apex/% \
|
||||||
$(TARGET_OUT_VENDOR)/apex/% \
|
$(TARGET_OUT_VENDOR)/apex/% \
|
||||||
|
$(TARGET_OUT_ODM)/apex/% \
|
||||||
|
|
||||||
apex_files := $(sort $(filter $(apex_dirs), $(INTERNAL_ALLIMAGES_FILES)))
|
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) \
|
--system_ext_path $(TARGET_OUT_SYSTEM_EXT) \
|
||||||
--product_path $(TARGET_OUT_PRODUCT) \
|
--product_path $(TARGET_OUT_PRODUCT) \
|
||||||
--vendor_path $(TARGET_OUT_VENDOR) \
|
--vendor_path $(TARGET_OUT_VENDOR) \
|
||||||
|
--odm_path $(TARGET_OUT_ODM) \
|
||||||
--apex_path $(APEX_OUT)
|
--apex_path $(APEX_OUT)
|
||||||
|
|
||||||
apex_files :=
|
apex_files :=
|
||||||
|
@@ -96,6 +96,7 @@ python_defaults {
|
|||||||
],
|
],
|
||||||
libs: [
|
libs: [
|
||||||
"apex_manifest",
|
"apex_manifest",
|
||||||
|
"releasetools_apex_utils",
|
||||||
"releasetools_common",
|
"releasetools_common",
|
||||||
],
|
],
|
||||||
required: [
|
required: [
|
||||||
|
@@ -36,6 +36,8 @@ APEX_PAYLOAD_IMAGE = 'apex_payload.img'
|
|||||||
|
|
||||||
APEX_PUBKEY = 'apex_pubkey'
|
APEX_PUBKEY = 'apex_pubkey'
|
||||||
|
|
||||||
|
# Partitions supporting APEXes
|
||||||
|
PARTITIONS = ['system', 'system_ext', 'product', 'vendor', 'odm']
|
||||||
|
|
||||||
class ApexInfoError(Exception):
|
class ApexInfoError(Exception):
|
||||||
"""An Exception raised during Apex Information command."""
|
"""An Exception raised during Apex Information command."""
|
||||||
@@ -550,7 +552,7 @@ def GetApexInfoFromTargetFiles(input_file):
|
|||||||
if not isinstance(input_file, str):
|
if not isinstance(input_file, str):
|
||||||
raise RuntimeError("must pass filepath to target-files zip or directory")
|
raise RuntimeError("must pass filepath to target-files zip or directory")
|
||||||
apex_infos = []
|
apex_infos = []
|
||||||
for partition in ['system', 'system_ext', 'product', 'vendor']:
|
for partition in PARTITIONS:
|
||||||
apex_infos.extend(GetApexInfoForPartition(input_file, partition))
|
apex_infos.extend(GetApexInfoForPartition(input_file, partition))
|
||||||
return apex_infos
|
return apex_infos
|
||||||
|
|
||||||
|
@@ -30,6 +30,7 @@ import subprocess
|
|||||||
import sys
|
import sys
|
||||||
import zipfile
|
import zipfile
|
||||||
|
|
||||||
|
import apex_utils
|
||||||
import common
|
import common
|
||||||
from apex_manifest import ParseApexManifest
|
from apex_manifest import ParseApexManifest
|
||||||
|
|
||||||
@@ -229,7 +230,7 @@ def PrepareApexDirectory(inp, dirmap):
|
|||||||
apex_host = os.path.join(OPTIONS.search_path, 'bin', 'apexd_host')
|
apex_host = os.path.join(OPTIONS.search_path, 'bin', 'apexd_host')
|
||||||
cmd = [apex_host, '--tool_path', OPTIONS.search_path]
|
cmd = [apex_host, '--tool_path', OPTIONS.search_path]
|
||||||
cmd += ['--apex_path', dirmap['/apex']]
|
cmd += ['--apex_path', dirmap['/apex']]
|
||||||
for p in ['system', 'system_ext', 'product', 'vendor']:
|
for p in apex_utils.PARTITIONS:
|
||||||
if '/' + p in dirmap:
|
if '/' + p in dirmap:
|
||||||
cmd += ['--' + p + '_path', dirmap['/' + p]]
|
cmd += ['--' + p + '_path', dirmap['/' + p]]
|
||||||
common.RunAndCheckOutput(cmd)
|
common.RunAndCheckOutput(cmd)
|
||||||
|
Reference in New Issue
Block a user