lib/Makefile.inc: Fail build if SPD file doesn't exist

Currently, if LIB_SPD_DEPS contains an SPD file which doesn't exist, the
file is silently skipped when creating spd.bin. Instead, fail the build.

BUG=b:191776301
TEST=Build test on brya. Build fails if a non-existent file is included
in LIB_SPD_DEPS.

Change-Id: I1bdadb72e087c2ee7a88fbab2f3607bd400fa2e4
Signed-off-by: Reka Norman <rekanorman@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/57697
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
Reka Norman 2021-09-16 14:11:34 +10:00 committed by Furquan Shaikh
parent 6a68482bd6
commit 16612c4835
1 changed files with 8 additions and 4 deletions

View File

@ -366,10 +366,14 @@ $(LIB_SPD_BIN): $(LIB_SPD_DEPS)
(echo "HAVE_SPD_IN_CBFS is set but SPD_SOURCES is empty" && exit 1) (echo "HAVE_SPD_IN_CBFS is set but SPD_SOURCES is empty" && exit 1)
test -n "$(LIB_SPD_DEPS)" || \ test -n "$(LIB_SPD_DEPS)" || \
(echo "SPD_SOURCES is set but no SPD file was found" && exit 1) (echo "SPD_SOURCES is set but no SPD file was found" && exit 1)
for f in $(LIB_SPD_DEPS); \ for f in $(LIB_SPD_DEPS); do \
do for c in $$(cat $$f | grep --binary-files=text -v ^#); \ if [ ! -f $$f ]; then \
do printf $$(printf '\\%o' 0x$$c); \ echo "File not found: $$f" >&2; \
done; \ exit 1; \
fi; \
for c in $$(cat $$f | grep --binary-files=text -v ^#); \
do printf $$(printf '\\%o' 0x$$c); \
done; \
done > $@ done > $@
cbfs-files-y += spd.bin cbfs-files-y += spd.bin