diff options
-rw-r--r-- | board/cr50/build.mk | 32 | ||||
-rw-r--r-- | common/tpm_registers.c | 6 |
2 files changed, 24 insertions, 14 deletions
diff --git a/board/cr50/build.mk b/board/cr50/build.mk index 5f5d93aa32..e20a432c66 100644 --- a/board/cr50/build.mk +++ b/board/cr50/build.mk @@ -10,20 +10,30 @@ CHIP_FAMILY:=cr50 CHIP_VARIANT ?= cr50_fpga board-y=board.o -LDFLAGS_EXTRA += -L$(out)/tpm2/build -ltpm2 # Need to generate a .hex file all: hex -ifeq ($(BOARD_MK_INCLUDED),) -BOARD_MK_INCLUDED=1 +# This file is included twice by the Makefile, once to determine the CHIP info +# and then again after defining all the CONFIG_ and HAS_TASK variables. We use +# a guard so that recipe definitions and variable extensions only happen the +# second time. +ifeq ($(BOARD_MK_INCLUDED_ONCE),) +BOARD_MK_INCLUDED_ONCE=1 +else -$(out)/RO/ec.RO.elf: $(out)/tpm2/build/libtpm2.a -$(out)/RW/ec.RW.elf: $(out)/tpm2/build/libtpm2.a +# Build and link with an external library +EXTLIB := $(realpath ../../third_party/tpm2) -.PHONY: $(out)/tpm2/build/libtpm2.a -$(out)/tpm2/build/libtpm2.a: - rsync -a ../../third_party/tpm2 $(out) - $(MAKE) ROOTDIR=$(realpath board/$(BOARD)/tpm2) EMBEDDED_MODE=1 \ - -C $(out)/tpm2 -endif +CFLAGS += -I$(EXTLIB) -I$(realpath $(BDIR)/tpm2) +LDFLAGS_EXTRA += -L$(out)/tpm2 -ltpm2 + +$(out)/RO/ec.RO.elf: $(out)/tpm2/libtpm2.a +$(out)/RW/ec.RW.elf: $(out)/tpm2/libtpm2.a + +# Force the external build each time, so it can look for changed sources. +.PHONY: $(out)/tpm2/libtpm2.a +$(out)/tpm2/libtpm2.a: + $(MAKE) obj=$(realpath $(out))/tpm2 EMBEDDED_MODE=1 -C $(EXTLIB) + +endif # BOARD_MK_INCLUDED_ONCE is nonempty diff --git a/common/tpm_registers.c b/common/tpm_registers.c index 543d9c8a29..5aba839764 100644 --- a/common/tpm_registers.c +++ b/common/tpm_registers.c @@ -17,9 +17,9 @@ #include "util.h" /* TPM2 library includes. */ -#include "tpm2/ExecCommand_fp.h" -#include "tpm2/Platform.h" -#include "tpm2/_TPM_Init_fp.h" +#include "ExecCommand_fp.h" +#include "Platform.h" +#include "_TPM_Init_fp.h" #define CPRINTS(format, args...) cprints(CC_TPM, format, ## args) #define CPRINTF(format, args...) cprintf(CC_TPM, format, ## args) |