blob: da199e4bd3f4af57ac1c00cd4c7b5f0e099e7eeb [file] [log] [blame]
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -07001################################################################################
2##
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -07003##
4## Copyright (C) 2009-2010 coresystems GmbH
5## Copyright (C) 2015 Google Inc.
Philipp Deppenwiese0f0e4e62018-06-19 20:22:32 +02006## Copyright (C) 2017 Facebook Inc.
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -07007##
Patrick Georgi8480c0b2020-05-08 22:50:46 +02008## SPDX-License-Identifier: GPL-2.0-only
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -07009
Martin Roth7b928cd2015-06-19 20:50:59 -060010# set up payload config and version files for later inclusion
11ifeq ($(CONFIG_PAYLOAD_SEABIOS),y)
12PAYLOAD_CONFIG=payloads/external/SeaBIOS/seabios/.config
Martin Roth886f4782015-11-28 13:23:48 -070013PAYLOAD_VERSION=payloads/external/SeaBIOS/seabios/out/autoversion.h
Martin Roth7b928cd2015-06-19 20:50:59 -060014endif
15ifeq ($(CONFIG_PAYLOAD_FILO),y)
16PAYLOAD_CONFIG=payloads/external/FILO/filo/.config
17PAYLOAD_VERSION=payloads/external/FILO/filo/build/version.h
18endif
Stefan Reinauer91250732015-07-15 10:24:18 -070019ifeq ($(CONFIG_PAYLOAD_DEPTHCHARGE),y)
20PAYLOAD_CONFIG=payloads/external/depthcharge/depthcharge/.config
Nico Huber45ccab32017-10-23 14:53:52 +020021$(PAYLOAD_CONFIG): payloads/external/depthcharge/depthcharge/build/depthcharge.elf
Selma BENSAIDa3a8ff92019-11-15 13:01:32 -080022ifeq ($(call strip_quotes,$(CONFIG_MAINBOARD_DEPTHCHARGE)),)
Selma BENSAIDb458a4f2019-09-20 17:38:59 -070023 BOARD=$(call ws_to_under,$(call strip_quotes,$(call tolower,$(CONFIG_MAINBOARD_PART_NUMBER))))
Selma BENSAID6aa81fa2019-10-25 11:36:17 -070024else
25 BOARD=$(CONFIG_MAINBOARD_DEPTHCHARGE)
Selma BENSAIDb458a4f2019-09-20 17:38:59 -070026endif
Stefan Reinauer91250732015-07-15 10:24:18 -070027#TODO: Figure out version
28endif
Martin Roth7b928cd2015-06-19 20:50:59 -060029
Marcello Sylvester Bauera4266692018-11-06 12:32:14 +010030ifeq ($(CONFIG_PAYLOAD_LINUX)$(CONFIG_PAYLOAD_LINUXBOOT),y)
Stefan Reinauer785a31d2016-04-13 13:13:02 -070031ifneq ($(strip $(call strip_quotes,$(CONFIG_LINUX_COMMAND_LINE))),)
32 ADDITIONAL_PAYLOAD_CONFIG+=-C $(CONFIG_LINUX_COMMAND_LINE)
33endif
34ifneq ($(strip $(call strip_quotes,$(CONFIG_LINUX_INITRD))),)
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +010035ifneq ($(CONFIG_LINUXBOOT_ARM64),y)
Marcello Sylvester Bauere102c5d2018-11-21 17:45:43 +010036 ADDITIONAL_PAYLOAD_CONFIG+=-I $(CONFIG_LINUX_INITRD)$(CONFIG_LINUXBOOT_INITRAMFS_SUFFIX)
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +010037 prebuilt-files += $(strip $(call strip_quotes,$(CONFIG_LINUX_INITRD)))
38endif
Stefan Reinauer785a31d2016-04-13 13:13:02 -070039endif
40endif
41ifneq ($(strip $(call strip_quotes,$(CONFIG_PAYLOAD_OPTIONS))),)
42 ADDITIONAL_PAYLOAD_CONFIG+=$(strip $(call strip_quotes,$(CONFIG_PAYLOAD_OPTIONS)))
43endif
44
Werner Zehbc2d1512016-05-03 09:52:12 +020045cbfs-files-y += $(CONFIG_CBFS_PREFIX)/payload
46$(CONFIG_CBFS_PREFIX)/payload-file := $(CONFIG_PAYLOAD_FILE)
47ifeq ($(CONFIG_PAYLOAD_IS_FLAT_BINARY),y)
48$(CONFIG_CBFS_PREFIX)/payload-type := flat-binary
49else
Ronald G. Minnichc6d13492018-05-15 18:05:07 -070050$(CONFIG_CBFS_PREFIX)/payload-type := payload
Werner Zehbc2d1512016-05-03 09:52:12 +020051endif
52$(CONFIG_CBFS_PREFIX)/payload-compression := $(CBFS_PAYLOAD_COMPRESS_FLAG)
53$(CONFIG_CBFS_PREFIX)/payload-options := $(ADDITIONAL_PAYLOAD_CONFIG)
54
Martin Rothd4c24842015-12-16 16:09:11 -070055cbfs-files-$(CONFIG_INCLUDE_CONFIG_FILE) += payload_config
56payload_config-file := $(PAYLOAD_CONFIG)
57payload_config-type := raw
58
59cbfs-files-$(CONFIG_INCLUDE_CONFIG_FILE) += payload_revision
60payload_revision-file := $(PAYLOAD_VERSION)
61payload_revision-type := raw
62
Denis 'GNUtoo' Carikli8fb72c92017-01-08 06:43:01 +010063cbfs-files-$(CONFIG_GRUB2_INCLUDE_RUNTIME_CONFIG_FILE) += etc/grub.cfg
64etc/grub.cfg-file := $(CONFIG_GRUB2_RUNTIME_CONFIG_FILE)
65etc/grub.cfg-type := raw
66etc/grub.cfg-required := the GRUB runtime configuration file ($(CONFIG_GRUB2_RUNTIME_CONFIG_FILE))
67
Martin Roth9369e102016-10-17 10:11:10 -060068# SeaBIOS
69
Patrick Georgic9836712015-08-08 21:35:38 +020070SEABIOS_CC_OFFSET=$(if $(filter %ccache,$(HOSTCC)),2,1)
Angel Ponsc052ba02020-03-01 19:51:13 +010071payloads/external/SeaBIOS/seabios/out/bios.bin.elf: $(DOTCONFIG)
Martin Rothc8ed3402016-03-16 10:39:30 -060072 $(MAKE) -C payloads/external/SeaBIOS \
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -070073 HOSTCC="$(HOSTCC)" \
Martin Roth342cf7f2016-03-07 22:04:01 -070074 CC=$(word $(SEABIOS_CC_OFFSET),$(CC_x86_32)) \
75 CFLAGS="$(patsubst $(word $(SEABIOS_CC_OFFSET),$(CC_x86_32))%,,$(wordlist $(SEABIOS_CC_OFFSET),9999,$(CC_x86_32)))" \
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -070076 LD=$(word 1,$(LD_x86_32)) LDFLAGS="$(patsubst $(word 1,$(LD_x86_32))%,,$(LD_x86_32))" \
77 OBJDUMP="$(OBJDUMP_x86_32)" \
78 OBJCOPY="$(OBJCOPY_x86_32)" STRIP="$(STRIP_x86_32)" \
79 AS="$(AS_x86_32)" IASL="$(IASL)" \
80 CONFIG_SEABIOS_MASTER=$(CONFIG_SEABIOS_MASTER) \
81 CONFIG_SEABIOS_STABLE=$(CONFIG_SEABIOS_STABLE) \
Antonello Dettori3aa91dc2016-03-07 23:56:57 +000082 CONFIG_SEABIOS_REVISION=$(CONFIG_SEABIOS_REVISION) \
83 CONFIG_SEABIOS_REVISION_ID=$(CONFIG_SEABIOS_REVISION_ID) \
Martin Roth99d05c72015-11-28 15:44:34 -070084 CONFIG_PAYLOAD_CONFIGFILE=$(CONFIG_PAYLOAD_CONFIGFILE) \
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -070085 CONFIG_SEABIOS_THREAD_OPTIONROMS=$(CONFIG_SEABIOS_THREAD_OPTIONROMS) \
86 CONFIG_SEABIOS_VGA_COREBOOT=$(CONFIG_SEABIOS_VGA_COREBOOT) \
Martin Rothf80331f2016-02-06 12:47:05 -070087 CONFIG_DRIVERS_UART_8250IO=$(CONFIG_DRIVERS_UART_8250IO) \
Ricardo Ribalda Delgado77ced402017-01-03 11:56:22 +010088 CONFIG_DRIVERS_UART_8250MEM=$(CONFIG_DRIVERS_UART_8250MEM) \
89 CONFIG_HUDSON_UART=$(CONFIG_HUDSON_UART) \
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -070090 CONFIG_CONSOLE_SERIAL=$(CONFIG_CONSOLE_SERIAL) \
Stefan Taunerc48d7912017-01-15 11:49:25 +010091 CONFIG_TTYS0_BASE=$(CONFIG_TTYS0_BASE) \
Philipp Deppenwiesed8b41392017-11-29 16:58:05 +010092 CONFIG_SEABIOS_DEBUG_LEVEL=$(CONFIG_SEABIOS_DEBUG_LEVEL) \
93 CONFIG_DRIVERS_UART_8250MEM_32=$(CONFIG_DRIVERS_UART_8250MEM_32) \
94 CONFIG_ENABLE_HSUART=$(CONFIG_ENABLE_HSUART) \
Michał Żygowski6d592c62020-05-07 15:14:24 +020095 CONFIG_CONSOLE_UART_BASE_ADDRESS=$(CONFIG_CONSOLE_UART_BASE_ADDRESS) \
96 CONFIG_SEABIOS_HARDWARE_IRQ=$(CONFIG_SEABIOS_HARDWARE_IRQ)
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -070097
Angel Ponsc052ba02020-03-01 19:51:13 +010098payloads/external/SeaBIOS/seabios/out/vgabios.bin: payloads/external/SeaBIOS/seabios/out/bios.bin.elf
Martin Roth342cf7f2016-03-07 22:04:01 -070099payloads/external/SeaBIOS/seabios/.config: payloads/external/SeaBIOS/seabios/out/bios.bin.elf
100payloads/external/SeaBIOS/seabios/out/autoversion.h: payloads/external/SeaBIOS/seabios/out/bios.bin.elf
Patrick Georgi40134692015-11-30 20:00:33 +0100101
Martin Rothbc46ac52016-06-05 10:30:34 -0600102# add a SeaBIOS bootorder file
103ifneq ($(strip $(CONFIG_SEABIOS_BOOTORDER_FILE)),)
104cbfs-files-y += bootorder
105bootorder-file := $(strip $(CONFIG_SEABIOS_BOOTORDER_FILE))
106bootorder-type := raw
107endif
108
Martin Roth9369e102016-10-17 10:11:10 -0600109# Depthcharge
110
Paul Kocialkowskifde32752016-07-24 12:25:07 +0200111payloads/external/depthcharge/depthcharge/build/depthcharge.elf depthcharge: $(DOTCONFIG) $(CBFSTOOL)
Martin Rothc8ed3402016-03-16 10:39:30 -0600112 $(MAKE) -C payloads/external/depthcharge \
Selma BENSAIDb458a4f2019-09-20 17:38:59 -0700113 BOARD=$(BOARD) \
Marshall Dawsonf9973b52016-12-22 18:16:48 -0500114 MFLAGS= MAKEFLAGS= \
115 DEPTHCHARGE_MASTER=$(CONFIG_DEPTHCHARGE_MASTER) \
116 DEPTHCHARGE_STABLE=$(CONFIG_DEPTHCHARGE_STABLE) \
117 DEPTHCHARGE_REVISION=$(CONFIG_DEPTHCHARGE_REVISION) \
Marshall Dawsonfc185072016-12-22 20:25:29 -0500118 DEPTHCHARGE_REVISION_ID=$(CONFIG_DEPTHCHARGE_REVISION_ID) \
119 OVERRIDE_DEFCONFIG=$(CONFIG_LP_DEFCONFIG_OVERRIDE)
Stefan Reinauer91250732015-07-15 10:24:18 -0700120
Martin Roth4769cc32016-06-02 16:42:29 -0600121# Tianocore
122
123payloads/external/tianocore/tianocore/Build/UEFIPAYLOAD.fd tianocore: $(DOTCONFIG)
124 $(MAKE) -C payloads/external/tianocore all \
125 HOSTCC="$(HOSTCC)" \
126 CC="$(HOSTCC)" \
Martin Roth4769cc32016-06-02 16:42:29 -0600127 CONFIG_TIANOCORE_REVISION_ID=$(CONFIG_TIANOCORE_REVISION_ID) \
128 CONFIG_TIANOCORE_DEBUG=$(CONFIG_TIANOCORE_DEBUG) \
129 CONFIG_TIANOCORE_TARGET_IA32=$(CONFIG_TIANOCORE_TARGET_IA32) \
Lijian Zhaocf9ea552018-09-07 17:58:08 -0700130 CONFIG_TIANOCORE_USE_8254_TIMER=$(CONFIG_TIANOCORE_USE_8254_TIMER) \
Matt DeVillierff793412019-02-21 22:41:59 -0600131 CONFIG_TIANOCORE_BOOTSPLASH_FILE=$(CONFIG_TIANOCORE_BOOTSPLASH_FILE) \
Lijian Zhao16562cb2019-07-20 13:06:03 +0800132 CONFIG_TIANOCORE_UEFIPAYLOAD=$(CONFIG_TIANOCORE_UEFIPAYLOAD) \
133 CONFIG_TIANOCORE_COREBOOTPAYLOAD=$(CONFIG_TIANOCORE_COREBOOTPAYLOAD) \
134 CONFIG_MMCONF_BASE_ADDRESS=$(CONFIG_MMCONF_BASE_ADDRESS) \
Martin Roth4769cc32016-06-02 16:42:29 -0600135 GCC_CC_x86_32=$(GCC_CC_x86_32) \
136 GCC_CC_x86_64=$(GCC_CC_x86_64) \
137 GCC_CC_arm=$(GCC_CC_arm) \
138 GCC_CC_arm64=$(GCC_CC_arm64) \
139 OBJCOPY_x86_32=$(OBJCOPY_x86_32) \
140 OBJCOPY_x86_64=$(OBJCOPY_x86_64) \
141 OBJCOPY_arm=$(OBJCOPY_arm) \
142 OBJCOPY_arm64=$(OBJCOPY_arm64) \
143 MFLAGS= MAKEFLAGS=
144
Martin Roth9369e102016-10-17 10:11:10 -0600145# FILO
146
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -0700147filo:
Martin Rothc8ed3402016-03-16 10:39:30 -0600148 $(MAKE) -C payloads/external/FILO \
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -0700149 HOSTCC="$(HOSTCC)" \
150 CC="$(CC_x86_32)" LD="$(LD_x86_32)" OBJDUMP="$(OBJDUMP_x86_32)" \
151 OBJCOPY="$(OBJCOPY_x86_32)" STRIP="$(STRIP_x86_32)" \
152 CONFIG_FILO_MASTER=$(CONFIG_FILO_MASTER) \
153 CONFIG_FILO_STABLE=$(CONFIG_FILO_STABLE)
154
Patrick Georgi864b48d2015-12-04 16:52:18 +0100155payloads/external/FILO/filo/build/filo.elf: filo
Patrick Georgi67e11d12016-01-14 20:41:58 +0100156payloads/external/FILO/filo/.config: filo
157payloads/external/FILO/filo/build/version.h: filo
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -0700158
Martin Roth9369e102016-10-17 10:11:10 -0600159# Grub
160
Nico Huber4ff44922017-08-14 01:58:28 +0200161grub2: $(obj)/config.h
Martin Rothc8ed3402016-03-16 10:39:30 -0600162 $(MAKE) -C payloads/external/GRUB2 \
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -0700163 HOSTCC="$(HOSTCC)" \
Nico Hubera2ab1fd2017-08-14 01:38:24 +0200164 CC="$(CC_x86_32)" LD="$(LD_x86_32)" \
Stefan Reinauer0fa5d8f2015-06-30 17:09:17 -0700165 OBJCOPY="$(OBJCOPY_x86_32)" STRIP="$(STRIP_x86_32)" \
Nico Huber4ff44922017-08-14 01:58:28 +0200166 CONFIG_DEP="$(abspath $(obj)/config.h)" \
Jonathan Neuschäfer2eb95f32017-11-20 01:56:41 +0100167 CONFIG_GRUB2_STABLE=$(CONFIG_GRUB2_STABLE) \
Benjamin Barenblat99932862016-06-15 12:08:06 -0700168 CONFIG_GRUB2_MASTER=$(CONFIG_GRUB2_MASTER) \
Denis 'GNUtoo' Carikli08cf1952016-09-14 14:41:36 +0200169 CONFIG_GRUB2_REVISION=$(CONFIG_GRUB2_REVISION) \
170 CONFIG_GRUB2_REVISION_ID=$(CONFIG_GRUB2_REVISION_ID) \
Benjamin Barenblat99932862016-06-15 12:08:06 -0700171 CONFIG_GRUB2_EXTRA_MODULES=$(CONFIG_GRUB2_EXTRA_MODULES)
Patrick Georgi864b48d2015-12-04 16:52:18 +0100172
173payloads/external/GRUB2/grub2/build/default_payload.elf: grub2
Martin Rothdbae4d02015-12-11 12:24:33 -0700174
Martin Roth9369e102016-10-17 10:11:10 -0600175# U-Boot
176
Paul Kocialkowskifde32752016-07-24 12:25:07 +0200177payloads/external/U-Boot/u-boot/u-boot-dtb.bin u-boot: $(DOTCONFIG)
Martin Rothc8ed3402016-03-16 10:39:30 -0600178 $(MAKE) -C payloads/external/U-Boot \
Martin Rothdbae4d02015-12-11 12:24:33 -0700179 CONFIG_UBOOT_MASTER=$(CONFIG_UBOOT_MASTER) \
180 CONFIG_UBOOT_STABLE=$(CONFIG_UBOOT_STABLE)
Martin Rothbe63a242016-02-28 15:56:27 -0800181
Martin Roth9369e102016-10-17 10:11:10 -0600182# TINT
183
Antonello Dettori4f7d3292016-05-27 23:44:47 +0200184payloads/external/tint/tint/tint.elf tint:
185 $(MAKE) -C payloads/external/tint
186
Martin Roth9369e102016-10-17 10:11:10 -0600187cbfs-files-$(CONFIG_TINT_SECONDARY_PAYLOAD) += img/tint
188img/tint-file := payloads/external/tint/tint/tint.elf
Ronald G. Minnichc6d13492018-05-15 18:05:07 -0700189img/tint-type := payload
Arthur Heymans47dd96d2018-02-07 13:01:43 +0100190img/tint-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG)
Martin Roth9369e102016-10-17 10:11:10 -0600191
192# Memtest86+
193
Martin Rothbe63a242016-02-28 15:56:27 -0800194cbfs-files-$(CONFIG_MEMTEST_SECONDARY_PAYLOAD) += img/memtest
195img/memtest-file := payloads/external/Memtest86Plus/memtest86plus/memtest
Ronald G. Minnichc6d13492018-05-15 18:05:07 -0700196img/memtest-type := payload
Arthur Heymans47dd96d2018-02-07 13:01:43 +0100197img/memtest-compression := $(CBFS_SECONDARY_PAYLOAD_COMPRESS_FLAG)
Martin Rothbe63a242016-02-28 15:56:27 -0800198
199ifeq ($(CONFIG_CONSOLE_SERIAL)$(CONFIG_DRIVERS_UART_8250IO),yy)
200 MEMTEST_SERIAL_OPTIONS=SERIAL_CONSOLE_DEFAULT=1 \
201 SERIAL_TTY=$(CONFIG_UART_FOR_CONSOLE) \
202 SERIAL_BAUD_RATE=$(CONFIG_TTYS0_BAUD)
203endif
204
Paul Kocialkowskifde32752016-07-24 12:25:07 +0200205payloads/external/Memtest86Plus/memtest86plus/memtest: $(DOTCONFIG)
Martin Rothc8ed3402016-03-16 10:39:30 -0600206 $(MAKE) -C payloads/external/Memtest86Plus all \
Martin Rothbe63a242016-02-28 15:56:27 -0800207 CC="$(CC_x86_32)" \
208 LD="$(LD_x86_32)" \
209 OBJCOPY="$(OBJCOPY_x86_32)" \
210 AS="$(AS_x86_32)" \
Stefan Taunera07366c2018-08-19 17:48:53 +0200211 CONFIG_MEMTEST_REVISION=$(CONFIG_MEMTEST_REVISION) \
212 CONFIG_MEMTEST_REVISION_ID=$(CONFIG_MEMTEST_REVISION_ID) \
Martin Roth4005d9b2016-04-26 09:51:41 -0600213 CONFIG_MEMTEST_MASTER=$(CONFIG_MEMTEST_MASTER) \
214 CONFIG_MEMTEST_STABLE=$(CONFIG_MEMTEST_STABLE) \
Martin Rothbe63a242016-02-28 15:56:27 -0800215 $(MEMTEST_SERIAL_OPTIONS) \
216 MFLAGS= MAKEFLAGS=
Martin Roth888a98b2016-03-13 13:00:43 -0600217
Martin Roth9369e102016-10-17 10:11:10 -0600218# iPXE
219
Martin Roth888a98b2016-03-13 13:00:43 -0600220PXE_ROM_PCI_ID:=$(subst $(comma),,$(CONFIG_PXE_ROM_ID))
221
222ifeq ($(CONFIG_PXE_ROM),y)
223PXE_ROM_FILE:=$(CONFIG_PXE_ROM_FILE)
224endif
225ifeq ($(CONFIG_BUILD_IPXE),y)
226PXE_ROM_FILE:=payloads/external/iPXE/ipxe/ipxe.rom
227endif
Patrick Rudolph23cb12b2017-07-25 19:36:25 +0200228ifeq ($(CONFIG_PXE_ADD_SCRIPT),y)
229PXE_CONFIG_SCRIPT:=$(abspath $(patsubst "%",%,$(CONFIG_PXE_SCRIPT)))
230endif
Martin Roth888a98b2016-03-13 13:00:43 -0600231ifeq ($(CONFIG_CONSOLE_SERIAL)$(CONFIG_DRIVERS_UART_8250IO),yy)
232IPXE_UART=COM$(call int-add,$(CONFIG_UART_FOR_CONSOLE) 1)
233endif
234
Michał Żygowski9839eff2018-06-26 13:12:49 +0200235ifeq ($(CONFIG_PXE_SERIAL_CONSOLE),y)
236IPXE_SERIAL_CONSOLE = $(CONFIG_CONSOLE_SERIAL)$(CONFIG_DRIVERS_UART_8250IO)
237else
238IPXE_SERIAL_CONSOLE = n
239endif
240
Martin Roth888a98b2016-03-13 13:00:43 -0600241cbfs-files-$(CONFIG_PXE_ROM)$(CONFIG_BUILD_IPXE) += pci$(CONFIG_PXE_ROM_ID).rom
242pci$(CONFIG_PXE_ROM_ID).rom-file := $(PXE_ROM_FILE)
243pci$(CONFIG_PXE_ROM_ID).rom-type := raw
244
Patrick Rudolph23cb12b2017-07-25 19:36:25 +0200245payloads/external/iPXE/ipxe/ipxe.rom ipxe: $(DOTCONFIG) $(PXE_CONFIG_SCRIPT)
Martin Roth888a98b2016-03-13 13:00:43 -0600246 $(MAKE) -C payloads/external/iPXE all \
247 CROSS_COMPILE="$(CROSS_COMPILE_$(ARCH-ramstage-y))" \
248 PXE_ROM_PCI_ID=$(PXE_ROM_PCI_ID) \
249 CONFIG_IPXE_MASTER=$(CONFIG_IPXE_MASTER) \
250 CONFIG_IPXE_STABLE=$(CONFIG_IPXE_STABLE) \
Michał Żygowski9839eff2018-06-26 13:12:49 +0200251 CONSOLE_SERIAL=$(IPXE_SERIAL_CONSOLE) \
Martin Roth888a98b2016-03-13 13:00:43 -0600252 IPXE_UART=$(IPXE_UART) \
253 CONFIG_TTYS0_BAUD=$(CONFIG_TTYS0_BAUD) \
Patrick Rudolph23cb12b2017-07-25 19:36:25 +0200254 CONFIG_SCRIPT=$(PXE_CONFIG_SCRIPT) \
255 CONFIG_HAS_SCRIPT=$(CONFIG_PXE_ADD_SCRIPT) \
Angel Ponsfa276862020-05-28 23:40:24 +0200256 CONFIG_PXE_NO_PROMPT=$(CONFIG_PXE_NO_PROMPT) \
Felix Singerc7f47362019-01-25 03:44:20 +0100257 CONFIG_PXE_HAS_HTTPS=$(CONFIG_PXE_HAS_HTTPS) \
Martin Roth888a98b2016-03-13 13:00:43 -0600258 MFLAGS= MAKEFLAGS=
Philipp Deppenwiese0f0e4e62018-06-19 20:22:32 +0200259
260# LinuxBoot
261
262linuxboot:
263 $(MAKE) -C payloads/external/LinuxBoot \
Philipp Deppenwiese0f0e4e62018-06-19 20:22:32 +0200264 CPUS=$(CPUS) \
Marcello Sylvester Bauer79f92912018-12-05 08:45:26 +0100265 CONFIG_LINUXBOOT_X86_64=$(CONFIG_LINUXBOOT_X86_64) \
266 CONFIG_LINUXBOOT_X86=$(CONFIG_LINUXBOOT_X86) \
267 CONFIG_LINUXBOOT_ARM64=$(CONFIG_LINUXBOOT_ARM64) \
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +0100268 CONFIG_LINUXBOOT_KERNEL=$(CONFIG_PAYLOAD_FILE) \
269 CONFIG_LINUXBOOT_INITRAMFS=$(CONFIG_LINUX_INITRD) \
Marcello Sylvester Bauere102c5d2018-11-21 17:45:43 +0100270 CONFIG_LINUXBOOT_INITRAMFS_SUFFIX=$(CONFIG_LINUXBOOT_INITRAMFS_SUFFIX) \
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +0100271 CONFIG_LINUXBOOT_COMPILE_KERNEL=$(CONFIG_LINUXBOOT_COMPILE_KERNEL) \
272 CONFIG_LINUXBOOT_BUILD_INITRAMFS=$(CONFIG_LINUXBOOT_BUILD_INITRAMFS) \
Marcello Sylvester Bauer79f92912018-12-05 08:45:26 +0100273 CONFIG_LINUXBOOT_KERNEL_MAINLINE=$(CONFIG_LINUXBOOT_KERNEL_MAINLINE) \
274 CONFIG_LINUXBOOT_KERNEL_STABLE=$(CONFIG_LINUXBOOT_KERNEL_STABLE) \
275 CONFIG_LINUXBOOT_KERNEL_LONGTERM=$(CONFIG_LINUXBOOT_KERNEL_LONGTERM) \
276 CONFIG_LINUXBOOT_KERNEL_CUSTOM=$(CONFIG_LINUXBOOT_KERNEL_CUSTOM) \
277 CONFIG_LINUXBOOT_KERNEL_CUSTOM_VERSION=$(CONFIG_LINUXBOOT_KERNEL_CUSTOM_VERSION) \
278 CONFIG_LINUXBOOT_KERNEL_CUSTOM_CONFIG=$(CONFIG_LINUXBOOT_KERNEL_CUSTOM_CONFIG) \
279 CONFIG_LINUXBOOT_KERNEL_BZIMAGE=$(CONFIG_LINUXBOOT_KERNEL_BZIMAGE) \
280 CONFIG_LINUXBOOT_KERNEL_UIMAGE=$(CONFIG_LINUXBOOT_KERNEL_UIMAGE) \
Philipp Deppenwiese0f0e4e62018-06-19 20:22:32 +0200281 CONFIG_LINUXBOOT_KERNEL_CONFIGFILE=$(CONFIG_LINUXBOOT_KERNEL_CONFIGFILE) \
Marcello Sylvester Bauere102c5d2018-11-21 17:45:43 +0100282 CONFIG_LINUXBOOT_INITRAMFS_COMPRESSION_XZ=$(CONFIG_LINUXBOOT_INITRAMFS_COMPRESSION_XZ) \
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +0100283 CONFIG_LINUXBOOT_UROOT=$(CONFIG_LINUXBOOT_UROOT) \
Philipp Deppenwiese0f0e4e62018-06-19 20:22:32 +0200284 CONFIG_LINUXBOOT_UROOT_VERSION=$(CONFIG_LINUXBOOT_UROOT_VERSION) \
Marcello Sylvester Bauere102c5d2018-11-21 17:45:43 +0100285 CONFIG_LINUXBOOT_UROOT_FORMAT=$(CONFIG_LINUXBOOT_UROOT_FORMAT) \
286 CONFIG_LINUXBOOT_UROOT_INITCMD=$(CONFIG_LINUXBOOT_UROOT_INITCMD) \
287 CONFIG_LINUXBOOT_UROOT_SHELL=$(CONFIG_LINUXBOOT_UROOT_SHELL) \
David Hendricksfb03dd62018-08-08 19:16:55 -0700288 CONFIG_LINUXBOOT_UROOT_COMMANDS=$(CONFIG_LINUXBOOT_UROOT_COMMANDS) \
Patrick Rudolph02c08142018-03-13 11:22:26 +0100289 CONFIG_LINUXBOOT_UROOT_FILES=$(CONFIG_LINUXBOOT_UROOT_FILES) \
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +0100290 CONFIG_LINUXBOOT_DTB_FILE=$(CONFIG_LINUXBOOT_DTB_FILE)
Patrick Rudolph02c08142018-03-13 11:22:26 +0100291
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +0100292payloads/external/LinuxBoot/linuxboot/bzImage: linuxboot
293payloads/external/LinuxBoot/linuxboot/uImage: linuxboot
Marcello Sylvester Bauere102c5d2018-11-21 17:45:43 +0100294payloads/external/LinuxBoot/linuxboot/initramfs_u-root.cpio: linuxboot
Philipp Deppenwiese0f0e4e62018-06-19 20:22:32 +0200295
Marcello Sylvester Bauer78d02562018-11-11 18:03:26 +0100296# Yabits
Martin Rothf2c3d802018-09-13 04:06:39 -0600297
298payloads/external/Yabits/uefi/build/uefi.elf yabits:
299 $(MAKE) -C payloads/external/Yabits all \
Nico Hubercf96c2a2019-07-24 20:17:14 +0200300 XGCCPATH="$(XGCCPATH)" \
Martin Rothf2c3d802018-09-13 04:06:39 -0600301 CONFIG_YABITS_REVISION=$(CONFIG_YABITS_REVISION) \
302 CONFIG_YABITS_REVISION_ID=$(CONFIG_YABITS_REVISION_ID) \
303 CONFIG_YABITS_MASTER=$(CONFIG_YABITS_MASTER) \
304 CONFIG_YABITS_STABLE=$(CONFIG_YABITS_STABLE) \
305 MFLAGS= MAKEFLAGS=
Zoltan Baldasztibe589232020-09-17 19:45:21 +0200306
307# BOOTBOOT
308
309payloads/external/BOOTBOOT/bootboot/dist/bootbootcb.elf:
310 $(MAKE) -C payloads/external/BOOTBOOT all