handle BOARD_KERNEL_BASE in releasetools
Some devices define a BOARD_KERNEL_BASE argument which must be given
as an argument to mkbootimg when building a bootable image. Store the
value of this var (if any) in the target-files zip and use it when
building images.
diff --git a/tools/releasetools/common.py b/tools/releasetools/common.py
index 3463745..a426ebd 100644
--- a/tools/releasetools/common.py
+++ b/tools/releasetools/common.py
@@ -90,17 +90,22 @@
assert p1.returncode == 0, "mkbootfs of %s ramdisk failed" % (targetname,)
assert p2.returncode == 0, "minigzip of %s ramdisk failed" % (targetname,)
+ cmd = ["mkbootimg", "--kernel", os.path.join(sourcedir, "kernel")]
+
fn = os.path.join(sourcedir, "cmdline")
if os.access(fn, os.F_OK):
- cmdline = ["--cmdline", open(fn).read().rstrip("\n")]
- else:
- cmdline = []
- p = Run(["mkbootimg",
- "--kernel", os.path.join(sourcedir, "kernel")] +
- cmdline +
- ["--ramdisk", ramdisk_img.name,
- "--output", img.name],
- stdout=subprocess.PIPE)
+ cmd.append("--cmdline")
+ cmd.append(open(fn).read().rstrip("\n"))
+
+ fn = os.path.join(sourcedir, "base")
+ if os.access(fn, os.F_OK):
+ cmd.append("--base")
+ cmd.append(open(fn).read().rstrip("\n"))
+
+ cmd.extend(["--ramdisk", ramdisk_img.name,
+ "--output", img.name])
+
+ p = Run(cmd, stdout=subprocess.PIPE)
p.communicate()
assert p.returncode == 0, "mkbootimg of %s image failed" % (targetname,)