xref: /aosp_15_r20/external/coreboot/payloads/Makefile.mk (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1##
2##
3## Copyright (C) 2016 Google Inc.
4##
5## SPDX-License-Identifier: GPL-2.0-only
6
7cbfs-files-$(CONFIG_COREINFO_SECONDARY_PAYLOAD) += img/coreinfo
8img/coreinfo-file := payloads/coreinfo/build/coreinfo.elf
9img/coreinfo-type := payload
10img/coreinfo-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG)
11
12cbfs-files-$(CONFIG_NVRAMCUI_SECONDARY_PAYLOAD) += img/nvramcui
13img/nvramcui-file := payloads/nvramcui/build/nvramcui.elf
14img/nvramcui-type := payload
15img/nvramcui-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG)
16
17PAYLOADS_LIST=\
18payloads/coreinfo \
19payloads/nvramcui \
20payloads/libpayload \
21payloads/external/depthcharge \
22payloads/external/SeaBIOS \
23payloads/external/U-Boot \
24payloads/external/Memtest86Plus \
25payloads/external/iPXE \
26payloads/external/tint \
27payloads/external/edk2 \
28payloads/external/GRUB2 \
29payloads/external/LinuxBoot \
30payloads/external/skiboot \
31payloads/external/leanefi \
32payloads/external/coreDOOM \
33
34force-payload:
35
36payloads/coreinfo/build/coreinfo.elf coreinfo: export CCACHE := $(CCACHE)
37payloads/coreinfo/build/coreinfo.elf coreinfo: force-payload
38	$(MAKE) -C payloads/coreinfo defaultbuild
39
40payloads/nvramcui/build/nvramcui.elf nvramcui: export CCACHE := $(CCACHE)
41payloads/nvramcui/build/nvramcui.elf nvramcui: force-payload
42	$(MAKE) -C payloads/nvramcui
43
44clean-payloads:
45	$(foreach payload, $(PAYLOADS_LIST), $(MAKE) -C $(payload) clean; )
46
47distclean-payloads:
48	$(foreach payload, $(PAYLOADS_LIST), $(MAKE) -C $(payload) distclean; )
49
50print-repo-info-payloads:
51	-$(foreach payload, $(PAYLOADS_LIST), $(MAKE) -C $(payload) print-repo-info 2>/dev/null; )
52
53ifeq ($(CONFIG_PAYLOAD_NONE),y)
54show_notices:: warn_no_payload
55endif
56
57warn_no_payload:
58	printf "\n\t** WARNING **\n"
59	printf "coreboot has been built without a payload. Writing\n"
60	printf "a coreboot image without a payload to your board's\n"
61	printf "flash chip will result in a non-booting system. You\n"
62	printf "can use cbfstool to add a payload to the image.\n\n"
63
64.PHONY: force-payload coreinfo nvramcui
65.PHONY: clean-payloads distclean-payloads print-repo-info-payloads warn_no_payload
66