diff options
author | Edward O'Callaghan <quasisec@google.com> | 2021-12-21 11:28:38 +1100 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-12-29 21:34:41 +0000 |
commit | 25b9493525325dfb5bc2c36321c43ec7665060fa (patch) | |
tree | 932fbb887c3b02db883cd7bfcc1097faee853480 | |
parent | fe799942dccb8554873bc70474373001f74289b8 (diff) | |
download | vboot-25b9493525325dfb5bc2c36321c43ec7665060fa.tar.gz |
vboot_ref/futility: Wrap flashrom_drv behind USE_FLASHROM
Some users of futility do not need flashrom support such
as upstream coreboot. Allow for explicitly enabling the
paths.
BUG=b:203715651,b:209702505
BRANCH=none
TEST=builds
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Change-Id: I61095bf91e3d01bd008d3b790478a590758e88cd
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/3350299
Tested-by: Edward O'Callaghan <quasisec@chromium.org>
Auto-Submit: Edward O'Callaghan <quasisec@chromium.org>
Reviewed-by: Yu-Ping Wu <yupingso@chromium.org>
Reviewed-by: Hsuan Ting Chen <roccochen@chromium.org>
Commit-Queue: Hsuan Ting Chen <roccochen@chromium.org>
-rw-r--r-- | Makefile | 19 | ||||
-rw-r--r-- | futility/cmd_update.c | 17 |
2 files changed, 28 insertions, 8 deletions
@@ -284,8 +284,6 @@ ifneq ($(filter-out 0,${HAVE_LIBZIP}),) LIBZIP_LIBS := $(shell ${PKG_CONFIG} --libs libzip) endif -FLASHROM_LIBS := $(shell ${PKG_CONFIG} --libs flashrom) - # Determine QEMU architecture needed, if any ifeq (${ARCH},${HOST_ARCH}) # Same architecture; no need for QEMU @@ -660,13 +658,22 @@ FUTIL_SRCS = \ futility/file_type_rwsig.c \ futility/file_type_usbpd1.c \ futility/misc.c \ - futility/updater.c \ + futility/vb1_helper.c \ + futility/vb2_helper.c + +# Maintain behaviour of default on. +USE_FLASHROM ?= 1 + +ifneq ($(filter-out 0,${USE_FLASHROM}),) +$(info building with libflashrom support) +FLASHROM_LIBS := $(shell ${PKG_CONFIG} --libs flashrom) +FUTIL_SRCS += futility/flashrom_drv.c \ futility/updater_archive.c \ futility/updater_quirks.c \ futility/updater_utils.c \ - futility/vb1_helper.c \ - futility/vb2_helper.c \ - futility/flashrom_drv.c + futility/updater.c +CFLAGS += -DUSE_FLASHROM +endif # List of commands built in futility. FUTIL_CMD_LIST = ${BUILD}/gen/futility_cmds.c diff --git a/futility/cmd_update.c b/futility/cmd_update.c index 57fa0835..e4b37655 100644 --- a/futility/cmd_update.c +++ b/futility/cmd_update.c @@ -13,6 +13,8 @@ #include "futility.h" #include "updater.h" +#ifdef USE_FLASHROM + enum { OPT_DUMMY = 0x100, @@ -358,6 +360,17 @@ static int do_update(int argc, char *argv[]) updater_delete_config(cfg); return !!errorcnt; } +#define CMD_HELP_STR "Update system firmware" + +#else /* USE_FLASHROM */ + +static int do_update(int argc, char *argv[]) +{ + FATAL(MYNAME " was built without flashrom support, `update` command unavailable!\n"); + return -1; +} +#define CMD_HELP_STR "Update system firmware (unavailable in this build)" + +#endif /* !USE_FLASHROM */ -DECLARE_FUTIL_COMMAND(update, do_update, VBOOT_VERSION_ALL, - "Update system firmware"); +DECLARE_FUTIL_COMMAND(update, do_update, VBOOT_VERSION_ALL, CMD_HELP_STR); |