Files
xen/tools/firmware/etherboot/Makefile
T
Olaf Hering 18a36b4a9b tools: ipxe: update for fixing build with GCC12
Use a snapshot which includes commit
b0ded89e917b48b73097d3b8b88dfa3afb264ed0 ("[build] Disable dangling
pointer checking for GCC"), which fixes build with gcc12.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
2023-04-25 23:47:45 +01:00

59 lines
1.2 KiB
Makefile

override XEN_TARGET_ARCH = x86_32
XEN_ROOT = $(CURDIR)/../../..
include $(XEN_ROOT)/tools/Rules.mk
include Config
IPXE_GIT_URL ?= https://github.com/ipxe/ipxe.git
# put an updated tar.gz on xenbits after changes to this variable
IPXE_GIT_TAG := 1d1cf74a5e58811822bee4b3da3cff7282fcdfca
IPXE_TARBALL_URL ?= $(XEN_EXTFILES_URL)/ipxe-git-$(IPXE_GIT_TAG).tar.gz
D=ipxe
T=ipxe.tar.gz
ROMS = $(addprefix $D/src/bin/, $(addsuffix .rom, $(ETHERBOOT_NICS)))
ROM = $D/src/bin/ipxe.bin
.NOTPARALLEL:
.PHONY: all
all: $(ROM)
$(ROM): $(ROMS)
cat $^ > $@.tmp
mv -f $@.tmp $@
%.rom: $D/src/arch/i386/Makefile
$(MAKE) -C $D/src bin/$(*F).rom
$T:
set -e; if ! $(FETCHER) _$T $(IPXE_TARBALL_URL); then \
$(GIT) clone $(IPXE_GIT_URL) $D.git; \
(cd $D.git && $(GIT) archive --format=tar --prefix=$D/ \
$(IPXE_GIT_TAG) | gzip -n >../_$T); \
rm -rf $D.git; \
fi
mv _$T $T
$D/src/arch/i386/Makefile: $T Config
rm -rf $D
gzip -dc $T | tar xf -
for i in $$(cat patches/series) ; do \
patch -d $D -p1 --quiet <patches/$$i || exit 1 ; \
done
cat Config >>$@
$D/src/bin/NIC: $D/src/arch/i386/Makefile
$(MAKE) -C $D/src bin/NIC
.PHONY: clean
clean:
rm -rf $D $D.git *~ _$T $T
.PHONY: distclean
distclean: clean
rm -rf $T