vboot-utils: new package
authorAlex Suykov <alex.suykov@gmail.com>
Fri, 25 Dec 2015 21:40:10 +0000 (23:40 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 27 Dec 2015 11:07:12 +0000 (12:07 +0100)
Chromium OS verified boot utilities.

Needed for signing kernel images and manipulating bootable
partitions on media intended for Chromebooks.

Signed-off-by: Alex Suykov <alex.suykov@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/Config.in.host
package/vboot-utils/Config.in.host [new file with mode: 0644]
package/vboot-utils/vboot-utils.hash [new file with mode: 0644]
package/vboot-utils/vboot-utils.mk [new file with mode: 0644]

index d757316c18b682c456194785c8530e1c5feddf4e..8e6b870130c9a33516cfd399c964bfd340f778cf 100644 (file)
@@ -30,5 +30,6 @@ menu "Host utilities"
        source "package/sunxi-tools/Config.in.host"
        source "package/uboot-tools/Config.in.host"
        source "package/util-linux/Config.in.host"
+       source "package/vboot-utils/Config.in.host"
 
 endmenu
diff --git a/package/vboot-utils/Config.in.host b/package/vboot-utils/Config.in.host
new file mode 100644 (file)
index 0000000..899f6e7
--- /dev/null
@@ -0,0 +1,6 @@
+config BR2_PACKAGE_HOST_VBOOT_UTILS
+       bool "host vboot utils"
+       help
+         Chromium OS verified boot utilities: futility and cgpt.
+
+         https://www.chromium.org/chromium-os/chromiumos-design-docs/verified-boot
diff --git a/package/vboot-utils/vboot-utils.hash b/package/vboot-utils/vboot-utils.hash
new file mode 100644 (file)
index 0000000..e161423
--- /dev/null
@@ -0,0 +1,2 @@
+# Git shapshot
+none   xxx     bbdd62f9b030db7ad8eef789aaf58a7ff9a25656.tar.gz
diff --git a/package/vboot-utils/vboot-utils.mk b/package/vboot-utils/vboot-utils.mk
new file mode 100644 (file)
index 0000000..75978cb
--- /dev/null
@@ -0,0 +1,38 @@
+################################################################################
+#
+# vboot-utils
+#
+################################################################################
+
+VBOOT_UTILS_VERSION = bbdd62f9b030db7ad8eef789aaf58a7ff9a25656
+VBOOT_UTILS_SITE = https://chromium.googlesource.com/chromiumos/platform/vboot_reference
+VBOOT_UTILS_SITE_METHOD = git
+VBOOT_UTILS_LICENSE = BSD-3c
+VBOOT_UTILS_LICENSE_FILES = LICENSE
+
+HOST_VBOOT_UTILS_DEPENDENCIES = host-openssl host-pkgconf
+
+# vboot_reference contains code that goes into bootloaders,
+# utilities intended for the target system, and a bunch of scripts
+# for Chromium OS build system. Most of that does not make sense
+# in a buildroot host-package.
+#
+# We only need futility for signing images, the keys, and cgpt for boot
+# media partitioning.
+#
+# make target for futility is "futil".
+
+define HOST_VBOOT_UTILS_BUILD_CMDS
+       $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \
+               CC="$(HOSTCC)" \
+               CFLAGS="$(HOST_CFLAGS) -D_LARGEFILE64_SOURCE -D_GNU_SOURCE" \
+               LDFLAGS="$(HOST_LDFLAGS)" \
+               futil cgpt
+endef
+
+define HOST_VBOOT_UTILS_INSTALL_CMDS
+       $(HOST_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(HOST_DIR)/usr \
+               futil_install cgpt_install devkeys_install
+endef
+
+$(eval $(host-generic-package))