b726e09157
The sub-process calls break make's dependency tracking, hence we have to always perform the calls if we want to allow automatic, incremental builds. We let each rule depend on a new, phony target `force-payload`. It has roughly the same effect as tagging all the targets as phony, but doing so would feel wrong as some of them are actual files. Change-Id: I1bc2406db371e8dddbfdf71f68a6665a5b558f5e Signed-off-by: Nico Huber <nico.h@gmx.de> Reviewed-on: https://review.coreboot.org/c/coreboot/+/47638 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
52 lines
1.6 KiB
Makefile
52 lines
1.6 KiB
Makefile
##
|
|
##
|
|
## Copyright (C) 2016 Google Inc.
|
|
##
|
|
## SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
cbfs-files-$(CONFIG_COREINFO_SECONDARY_PAYLOAD) += img/coreinfo
|
|
img/coreinfo-file := payloads/coreinfo/build/coreinfo.elf
|
|
img/coreinfo-type := payload
|
|
img/coreinfo-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG)
|
|
|
|
cbfs-files-$(CONFIG_NVRAMCUI_SECONDARY_PAYLOAD) += img/nvramcui
|
|
img/nvramcui-file := payloads/nvramcui/build/nvramcui.elf
|
|
img/nvramcui-type := payload
|
|
img/nvramcui-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG)
|
|
|
|
PAYLOADS_LIST=\
|
|
payloads/coreinfo \
|
|
payloads/nvramcui \
|
|
payloads/libpayload \
|
|
payloads/external/depthcharge \
|
|
payloads/external/SeaBIOS \
|
|
payloads/external/U-Boot \
|
|
payloads/external/Memtest86Plus \
|
|
payloads/external/iPXE \
|
|
payloads/external/tint \
|
|
payloads/external/tianocore \
|
|
payloads/external/GRUB2 \
|
|
payloads/external/LinuxBoot \
|
|
payloads/external/Yabits \
|
|
|
|
force-payload:
|
|
|
|
payloads/coreinfo/build/coreinfo.elf coreinfo: export CCACHE := $(CCACHE)
|
|
payloads/coreinfo/build/coreinfo.elf coreinfo: force-payload
|
|
$(MAKE) -C payloads/coreinfo defaultbuild
|
|
|
|
payloads/nvramcui/build/nvramcui.elf nvramcui: export CCACHE := $(CCACHE)
|
|
payloads/nvramcui/build/nvramcui.elf nvramcui: force-payload
|
|
$(MAKE) -C payloads/nvramcui
|
|
|
|
clean-payloads:
|
|
$(foreach payload, $(PAYLOADS_LIST), $(MAKE) -C $(payload) clean; )
|
|
|
|
distclean-payloads:
|
|
$(foreach payload, $(PAYLOADS_LIST), $(MAKE) -C $(payload) distclean; )
|
|
|
|
print-repo-info-payloads:
|
|
-$(foreach payload, $(PAYLOADS_LIST), $(MAKE) -C $(payload) print-repo-info 2>/dev/null; )
|
|
|
|
.PHONY: force-payload coreinfo nvramcui
|
|
.PHONY: clean-payloads distclean-payloads print-repo-info-payloads
|