mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-26 20:10:35 -09:00
fs/common.mk: add optional hook to build a verity hash tree
Using dm-verity may be useful for any read-only filesystem read from a block device, the new hook will build the required hash tree if enabled by a per-filesystem config option. To use this hook, the filesystem config must define a boolean option BR2_TARGET_ROOTFS_<FS>_VERITY, and a string option BR2_TARGET_ROOTFS_<FS>_VERITY_EXTRA_ARGS. The latter option allows users to override veritysetup defaults, e.g. to set a fixed hash algorithm. In the filesystem .mk file ROOTFS_<FS>_VERITY_EXTRA_ARGS must be defined as the value of BR2_TARGET_ROOTFS_<FS>_VERITY_EXTRA_ARGS without surrounding quotes, because utils/check-symbols warns about the _EXTRA_ARGS symbol being unused if fs/common.mk uses $(qstrip $(BR2_TARGET_ROOTFS_$(2)_VERITY_EXTRA_ARGS)) directly. Signed-off-by: Fiona Klute (othermo GmbH) <fiona.klute@gmx.de> Signed-off-by: Julien Olivain <ju.o@free.fr>
This commit is contained in:
committed by
Julien Olivain
parent
8f472d08d8
commit
7198cea534
@@ -215,6 +215,15 @@ TARGETS_ROOTFS += rootfs-$(1)
|
||||
PACKAGES += $$(filter-out rootfs-%,$$(ROOTFS_$(2)_FINAL_RECURSIVE_DEPENDENCIES))
|
||||
endif
|
||||
|
||||
ifeq ($$(BR2_TARGET_ROOTFS_$(2)_VERITY),y)
|
||||
ROOTFS_$(2)_DEPENDENCIES += host-cryptsetup
|
||||
define ROOTFS_$(2)_VERITY_FORMAT
|
||||
@$$(call MESSAGE,"Generating verity hash tree $$(@F).verity")
|
||||
$(HOST_DIR)/sbin/veritysetup format --root-hash-file $$@.verity.root-hash $$(ROOTFS_$(2)_VERITY_EXTRA_ARGS) $$@ $$@.verity
|
||||
endef
|
||||
ROOTFS_$(2)_POST_GEN_HOOKS += ROOTFS_$(2)_VERITY_FORMAT
|
||||
endif
|
||||
|
||||
# Check for legacy POST_TARGETS rules
|
||||
ifneq ($$(ROOTFS_$(2)_POST_TARGETS),)
|
||||
$$(error Filesystem $(1) uses post-target rules, which are no longer supported.\
|
||||
|
||||
Reference in New Issue
Block a user