aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Norman <danielnorman@google.com>2021-12-14 00:02:56 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-12-14 00:02:56 +0000
commit7d0040de748ea49a8755e5782b2e00cf8f74f51c (patch)
tree2c99755ca37fbcb4304c36322ca50c7c3da7b321
parent16cbecdcff2c0d7318bbb041c88a2dad2e7256f0 (diff)
parent08514c337dc38956b6a34e8b4f4b4d0c79f69f6c (diff)
downloadtreble-7d0040de748ea49a8755e5782b2e00cf8f74f51c.tar.gz
Updates repack_gki.py for ABI XML rename and lack of 5.15 boot.img. am: 08514c337d
Original change: https://android-review.googlesource.com/c/platform/tools/treble/+/1909611 Change-Id: Iee4f03c44231e9e333c2e4dda95e0d7819626205
-rw-r--r--gki/repack_gki.py21
-rw-r--r--gki/repack_gki_lib.py8
2 files changed, 18 insertions, 11 deletions
diff --git a/gki/repack_gki.py b/gki/repack_gki.py
index 3c12c56..90b632e 100644
--- a/gki/repack_gki.py
+++ b/gki/repack_gki.py
@@ -82,7 +82,6 @@ def main():
os.path.join(in_dir, filename), os.path.join(kernel_out_dir, outname))
copy_kernel_file(kernel_dir, 'System.map')
- copy_kernel_file(kernel_dir, 'abi.xml')
copy_kernel_file(kernel_dir, 'abi_symbollist')
copy_kernel_file(kernel_dir, 'vmlinux')
copy_kernel_file(kernel_dir, 'Image',
@@ -92,6 +91,8 @@ def main():
copy_kernel_file(kernel_dir, 'Image.gz',
'kernel-{}-gz'.format(args.kernel_version))
copy_kernel_file(kernel_debug_dir, 'System.map', 'System.map-allsyms')
+ copy_kernel_file(kernel_debug_dir, 'abi-generated.xml')
+ copy_kernel_file(kernel_debug_dir, 'abi-full-generated.xml')
copy_kernel_file(kernel_debug_dir, 'Image',
'kernel-{}-allsyms'.format(args.kernel_version))
copy_kernel_file(kernel_debug_dir, 'Image.lz4',
@@ -113,14 +114,16 @@ def main():
shutil.copy(img_zip_path, args.out_dir)
# Replace kernels within the target_files.zip and save to the out dir.
- target_files_zip_name = [
- f for f in os.listdir(tmp_bootimg_dir) if '-target_files-' in f
- ][0]
- target_files_zip_path = os.path.join(tmp_bootimg_dir, target_files_zip_name)
- repack_gki_lib.replace_target_files_zip_kernels(target_files_zip_path,
- kernel_out_dir,
- args.kernel_version)
- shutil.copy(target_files_zip_path, args.out_dir)
+ # TODO(b/209035444): GSI target_files does not yet include a 5.15 boot.img.
+ if args.kernel_version != '5.15':
+ target_files_zip_name = [
+ f for f in os.listdir(tmp_bootimg_dir) if '-target_files-' in f
+ ][0]
+ target_files_zip_path = os.path.join(tmp_bootimg_dir, target_files_zip_name)
+ repack_gki_lib.replace_target_files_zip_kernels(target_files_zip_path,
+ kernel_out_dir,
+ args.kernel_version)
+ shutil.copy(target_files_zip_path, args.out_dir)
# Copy otatools.zip from the ramdisk build, used for GKI signing.
shutil.copy(os.path.join(tmp_bootimg_dir, 'otatools.zip'), args.out_dir)
diff --git a/gki/repack_gki_lib.py b/gki/repack_gki_lib.py
index 289a82c..9051a65 100644
--- a/gki/repack_gki_lib.py
+++ b/gki/repack_gki_lib.py
@@ -29,13 +29,13 @@ def fetch_kernel(client, out_dir, build_id, kernel_target, kernel_debug_target):
client=client,
build_id=build_id,
target=kernel_target,
- pattern=r'(Image|Image.lz4|System\.map|abi.xml|abi_symbollist|vmlinux)',
+ pattern=r'(Image|Image.lz4|System\.map|abi_symbollist|vmlinux)',
out_dir=kernel_dir)
fetcher_lib.fetch_artifacts(
client=client,
build_id=build_id,
target=kernel_debug_target,
- pattern=r'(Image|Image.lz4|System\.map)',
+ pattern=r'(Image|Image.lz4|System\.map|abi-generated.xml|abi-full-generated.xml)',
out_dir=kernel_debug_dir)
print('Compressing kernels')
@@ -107,6 +107,10 @@ def repack_bootimgs(bootimg_dir, kernel_dir, kernel_debug_dir):
def repack_img_zip(img_zip_path, kernel_dir, kernel_debug_dir, kernel_version):
"""Repacks boot images within an img.zip archive."""
with tempfile.TemporaryDirectory() as unzip_dir:
+ # TODO(b/209035444): 5.15 GSI boot.img is not yet available, so reuse 5.10 boot.img
+ # which should have an identical ramdisk.
+ if kernel_version == '5.15':
+ kernel_version = '5.10'
pattern = 'boot-{}*'.format(kernel_version)
print('Unzipping %s to repack bootimgs' % img_zip_path)
cmd = [