summaryrefslogtreecommitdiffstats
path: root/payloads/libpayload/Makefile.inc
diff options
context:
space:
mode:
authorJakub Czapiga <jacz@semihalf.com>2021-12-06 09:01:50 +0000
committerFelix Held <felix-coreboot@felixheld.de>2022-01-10 14:29:50 +0000
commit1fa3da4d9b30ad7e63b79b6966794ee179dc6501 (patch)
tree5da240eacc7660e4444feef859ecb68762533bdb /payloads/libpayload/Makefile.inc
parentb7d1b35175db3bc895c511125626cb87442d33c6 (diff)
downloadcoreboot-1fa3da4d9b30ad7e63b79b6966794ee179dc6501.tar.gz
coreboot-1fa3da4d9b30ad7e63b79b6966794ee179dc6501.tar.bz2
coreboot-1fa3da4d9b30ad7e63b79b6966794ee179dc6501.zip
libpayload: Enable vboot integration
This patch introduces building and linking of 3rdparty/vboot with libpayload. VBoot can be enabled by setting CONFIG_LP_VBOOT_LIB. Moreover it can be configured to use either TPM or TPM 2.0 mode, and whether to use SHA256 processor extension instructions on x86. Change-Id: I2d9d766a461edaa0081041c020ecf580fd2ca64e Signed-off-by: Jakub Czapiga <jacz@semihalf.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/60080 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Julius Werner <jwerner@chromium.org>
Diffstat (limited to 'payloads/libpayload/Makefile.inc')
-rw-r--r--payloads/libpayload/Makefile.inc9
1 files changed, 7 insertions, 2 deletions
diff --git a/payloads/libpayload/Makefile.inc b/payloads/libpayload/Makefile.inc
index 0e903643fc4a..77eab60c6b1d 100644
--- a/payloads/libpayload/Makefile.inc
+++ b/payloads/libpayload/Makefile.inc
@@ -46,6 +46,8 @@ classes-$(CONFIG_LP_CBFS) += libcbfs
classes-$(CONFIG_LP_LZMA) += liblzma
classes-$(CONFIG_LP_LZ4) += liblz4
classes-$(CONFIG_LP_REMOTEGDB) += libgdb
+classes-$(CONFIG_LP_VBOOT_LIB) += vboot_fw
+classes-$(CONFIG_LP_VBOOT_LIB) += tlcl
libraries := $(classes-y)
classes-y += head.o
@@ -55,6 +57,7 @@ subdirs-$(CONFIG_LP_CURSES) += curses
subdirs-$(CONFIG_LP_CBFS) += libcbfs
subdirs-$(CONFIG_LP_LZMA) += liblzma
subdirs-$(CONFIG_LP_LZ4) += liblz4
+subdirs-$(CONFIG_LP_VBOOT_LIB) += vboot
INCLUDES := -Iinclude -Iinclude/$(ARCHDIR-y) -I$(obj)
INCLUDES += -include include/kconfig.h -include include/compiler.h
@@ -91,11 +94,13 @@ includes-handler= \
$(obj)/libpayload.a: $(foreach class,$(libraries),$$($(class)-objs))
printf " AR $(subst $(CURDIR)/,,$(@))\n"
- $(AR) rc $@ $^
+ $(AR) rc $@ $(filter-out %.a,$^)
+ printf "open $@\n$(foreach lib,$(filter %.a,$^),addlib $(lib)\n)save\nend\n" | $(AR) -M
$(obj)/%.a: $$(%-objs)
printf " AR $(subst $(CURDIR)/,,$(@))\n"
- $(AR) rc $@ $^
+ $(AR) rc $@ $(filter-out %.a,$^)
+ printf "open $@\n$(foreach lib,$(filter %.a,$^),addlib $(lib)\n)save\nend\n" | $(AR) -M
$(obj)/head.o: $(obj)/arch/$(ARCHDIR-y)/head.head.o.o
printf " CP $(subst $(CURDIR)/,,$(@))\n"