summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorDoug Zongker <dougz@google.com>2012-08-02 14:46:42 -0700
committerDoug Zongker <dougz@google.com>2012-08-02 15:03:41 -0700
commitd513160b76a189899ba01f87a3987b4c6f428cae (patch)
tree7e81ac476192e4b63b22e1fa35441c3bb0810649 /tools
parentcdbf0292e435b46c764c19cba956b5f2e0d70751 (diff)
downloadbuild-d513160b76a189899ba01f87a3987b4c6f428cae.zip
build-d513160b76a189899ba01f87a3987b4c6f428cae.tar.gz
build-d513160b76a189899ba01f87a3987b4c6f428cae.tar.bz2
add extra args to mkbootimg
Arrange to take $(BOARD_MKBOOTIMG_ARGS) and pass it to all invocations of mkbootimg from within make, and to store it in the target_files so it can be used by future invocations of img_from_target_files and ota_from_target_files. Bug: 6918260 Change-Id: I7130ac52e96bd51d4d8b80ca036635e1626f01f1
Diffstat (limited to 'tools')
-rw-r--r--tools/releasetools/common.py15
-rwxr-xr-xtools/releasetools/ota_from_target_files6
2 files changed, 16 insertions, 5 deletions
diff --git a/tools/releasetools/common.py b/tools/releasetools/common.py
index 5e4055a..5037ac5 100644
--- a/tools/releasetools/common.py
+++ b/tools/releasetools/common.py
@@ -196,7 +196,7 @@ def DumpInfoDict(d):
for k, v in sorted(d.items()):
print "%-25s = (%s) %s" % (k, type(v).__name__, v)
-def BuildBootableImage(sourcedir, fs_config_file):
+def BuildBootableImage(sourcedir, fs_config_file, info_dict=None):
"""Take a kernel, cmdline, and ramdisk directory from the input (in
'sourcedir'), and turn them into a boot image. Return the image
data, or None if sourcedir does not appear to contains files for
@@ -206,6 +206,9 @@ def BuildBootableImage(sourcedir, fs_config_file):
not os.access(os.path.join(sourcedir, "kernel"), os.F_OK)):
return None
+ if info_dict is None:
+ info_dict = OPTIONS.info_dict
+
ramdisk_img = tempfile.NamedTemporaryFile()
img = tempfile.NamedTemporaryFile()
@@ -239,6 +242,10 @@ def BuildBootableImage(sourcedir, fs_config_file):
cmd.append("--pagesize")
cmd.append(open(fn).read().rstrip("\n"))
+ args = info_dict.get("mkbootimg_args", None)
+ if args and args.strip():
+ cmd.extend(args.split())
+
cmd.extend(["--ramdisk", ramdisk_img.name,
"--output", img.name])
@@ -256,7 +263,8 @@ def BuildBootableImage(sourcedir, fs_config_file):
return data
-def GetBootableImage(name, prebuilt_name, unpack_dir, tree_subdir):
+def GetBootableImage(name, prebuilt_name, unpack_dir, tree_subdir,
+ info_dict=None):
"""Return a File object (with name 'name') with the desired bootable
image. Look for it in 'unpack_dir'/BOOTABLE_IMAGES under the name
'prebuilt_name', otherwise construct it from the source files in
@@ -270,7 +278,8 @@ def GetBootableImage(name, prebuilt_name, unpack_dir, tree_subdir):
print "building image from target_files %s..." % (tree_subdir,)
fs_config = "META/" + tree_subdir.lower() + "_filesystem_config.txt"
return File(name, BuildBootableImage(os.path.join(unpack_dir, tree_subdir),
- os.path.join(unpack_dir, fs_config)))
+ os.path.join(unpack_dir, fs_config),
+ info_dict))
def UnzipTemp(filename, pattern=None):
diff --git a/tools/releasetools/ota_from_target_files b/tools/releasetools/ota_from_target_files
index 3dcfbee..b8fe68c 100755
--- a/tools/releasetools/ota_from_target_files
+++ b/tools/releasetools/ota_from_target_files
@@ -531,13 +531,15 @@ def WriteIncrementalOTAPackage(target_zip, source_zip, output_zip):
script.AssertSomeFingerprint(source_fp, target_fp)
source_boot = common.GetBootableImage(
- "/tmp/boot.img", "boot.img", OPTIONS.source_tmp, "BOOT")
+ "/tmp/boot.img", "boot.img", OPTIONS.source_tmp, "BOOT",
+ OPTIONS.source_info_dict)
target_boot = common.GetBootableImage(
"/tmp/boot.img", "boot.img", OPTIONS.target_tmp, "BOOT")
updating_boot = (source_boot.data != target_boot.data)
source_recovery = common.GetBootableImage(
- "/tmp/recovery.img", "recovery.img", OPTIONS.source_tmp, "RECOVERY")
+ "/tmp/recovery.img", "recovery.img", OPTIONS.source_tmp, "RECOVERY",
+ OPTIONS.source_info_dict)
target_recovery = common.GetBootableImage(
"/tmp/recovery.img", "recovery.img", OPTIONS.target_tmp, "RECOVERY")
updating_recovery = (source_recovery.data != target_recovery.data)