Adding better AVB error message
Also removing the requirement of BOARD_BOOTIMAGE_PARTITION_SIZE when
BOARD_AVB_ENABLE is set. Some targets (e.g., emulator) doesn't build
boot.img when AVB is enabled.
Bug: 112293933
Test: build a failure case and checks the error output is expected
Change-Id: I290c707719193ddaedcd9fd0b31de566ad17078c
diff --git a/core/Makefile b/core/Makefile
index e11dd02..0a112f8 100644
--- a/core/Makefile
+++ b/core/Makefile
@@ -2636,10 +2636,6 @@
BOARD_AVB_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
endif
-ifndef BOARD_BOOTIMAGE_PARTITION_SIZE
-$(error BOARD_BOOTIMAGE_PARTITION_SIZE must be set for BOARD_AVB_ENABLE)
-endif
-
BOOT_FOOTER_ARGS := BOARD_AVB_BOOT_ADD_HASH_FOOTER_ARGS
DTBO_FOOTER_ARGS := BOARD_AVB_DTBO_ADD_HASH_FOOTER_ARGS
SYSTEM_FOOTER_ARGS := BOARD_AVB_SYSTEM_ADD_HASHTREE_FOOTER_ARGS
diff --git a/tools/releasetools/build_image.py b/tools/releasetools/build_image.py
index 3e159a6..10d9561 100755
--- a/tools/releasetools/build_image.py
+++ b/tools/releasetools/build_image.py
@@ -197,8 +197,11 @@
cmd.extend(shlex.split(additional_args))
- (_, exit_code) = RunCommand(cmd)
- return exit_code == 0
+ output, exit_code = RunCommand(cmd)
+ if exit_code != 0:
+ print("Failed to add AVB footer! Error: %s" % output)
+ return False
+ return True
def AdjustPartitionSizeForVerity(partition_size, fec_supported):
@@ -587,7 +590,8 @@
additional_args = prop_dict["avb_add_" + avb_footer_type + "_footer_args"]
max_image_size = AVBCalcMaxImageSize(avbtool, avb_footer_type,
partition_size, additional_args)
- if max_image_size == 0:
+ if max_image_size <= 0:
+ print("AVBCalcMaxImageSize is <= 0: %d" % max_image_size)
return False
prop_dict["partition_size"] = str(max_image_size)
prop_dict["original_partition_size"] = partition_size