|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 2/5] tools/firmware: #define IPXE_PATH
--with-system-ipxe allows the user to specify ipxe rom. If this option
is given, use system supplied ipxe instead of building and installing
our own version
Plumbing for using iPXE roms, specified with --with-system-ipxe, doesn't
exist and will be added in future commits.
Re-run of autoconf is needed.
Signed-off-by: Anoob Soman <anoob.soman@xxxxxxxxxx>
---
config/Tools.mk.in | 2 ++
tools/configure.ac | 18 ++++++++++++++++++
tools/firmware/Makefile | 4 ++--
tools/firmware/hvmloader/Makefile | 3 +++
4 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/config/Tools.mk.in b/config/Tools.mk.in
index 0f79f4e..dc6eae8 100644
--- a/config/Tools.mk.in
+++ b/config/Tools.mk.in
@@ -24,6 +24,7 @@ AWK := @AWK@
FETCHER := @FETCHER@
SEABIOS_PATH := @seabios_path@
OVMF_PATH := @ovmf_path@
+IPXE_PATH := @ipxe_path@
# Extra folder for libs/includes
PREPEND_INCLUDES := @PREPEND_INCLUDES@
@@ -59,6 +60,7 @@ CONFIG_QEMU_XEN := @qemu_xen@
CONFIG_BLKTAP2 := @blktap2@
CONFIG_QEMUU_EXTRA_ARGS:= @EXTRA_QEMUU_CONFIGURE_ARGS@
CONFIG_LIBNL := @libnl@
+CONFIG_IPXE := @ipxe@
CONFIG_SYSTEMD := @systemd@
SYSTEMD_CFLAGS := @SYSTEMD_CFLAGS@
diff --git a/tools/configure.ac b/tools/configure.ac
index 06eb16d..022a2f9 100644
--- a/tools/configure.ac
+++ b/tools/configure.ac
@@ -84,6 +84,7 @@ AX_ARG_DEFAULT_ENABLE([ocamltools], [Disable Ocaml tools])
AX_ARG_DEFAULT_ENABLE([xsmpolicy], [Disable XSM policy compilation])
AX_ARG_DEFAULT_DISABLE([ovmf], [Enable OVMF])
AX_ARG_DEFAULT_ENABLE([seabios], [Disable SeaBIOS])
+AX_ARG_DEFAULT_ENABLE([ipxe], [Disable iPXE])
AC_ARG_WITH([linux-backend-modules],
AS_HELP_STRING([--with-linux-backend-modules="mod1 mod2"],
@@ -241,6 +242,23 @@ AS_IF([test "x$ovmf" = "xy" -o -n "$ovmf_path" ], [
[OVMF path])
])
+AC_ARG_WITH([system-ipxe],
+ AS_HELP_STRING([--with-system-ipxe@<:@=PATH@:>@],
+ [Use system supplied ipxe PATH instead of building and installing
+ our own version]),[
+ # Disable compilation of iPXE.
+ ipxe=n
+ case $withval in
+ no) ipxe_path= ;;
+ *) ipxe_path=$withval ;;
+ esac
+],[])
+AS_IF([test "x$ipxe" = "xy" -o -n "$ipxe_path" ], [
+ AC_DEFINE_UNQUOTED([IPXE_PATH],
+ ["${ipxe_path:-$XENFIRMWAREDIR/ipxe.bin}"],
+ [IPXE path])
+])
+
AC_ARG_WITH([extra-qemuu-configure-args],
AS_HELP_STRING([--with-extra-qemuu-configure-args@<:@="--ARG1 ..."@:>@],
[List of additional configure options for upstream qemu]),[
diff --git a/tools/firmware/Makefile b/tools/firmware/Makefile
index 20cab38..ca333a9 100644
--- a/tools/firmware/Makefile
+++ b/tools/firmware/Makefile
@@ -15,7 +15,7 @@ SUBDIRS-$(CONFIG_OVMF) += ovmf-dir
SUBDIRS-$(CONFIG_SEABIOS) += seabios-dir
SUBDIRS-$(CONFIG_ROMBIOS) += rombios
SUBDIRS-$(CONFIG_ROMBIOS) += vgabios
-SUBDIRS-$(CONFIG_ROMBIOS) += etherboot
+SUBDIRS-$(CONFIG_IPXE) += etherboot
SUBDIRS-$(CONFIG_PV_SHIM) += xen-dir
SUBDIRS-y += hvmloader
@@ -59,7 +59,7 @@ ifeq ($(CONFIG_PV_SHIM),y)
$(INSTALL_DATA) xen-dir/xen-shim $(INST_DIR)/xen-shim
$(INSTALL_DATA) xen-dir/xen-shim-syms $(DEBG_DIR)/xen-shim-syms
endif
-ifeq ($(CONFIG_ROMBIOS),y)
+ifeq ($(CONFIG_IPXE),y)
$(INSTALL_DATA) etherboot/ipxe/src/bin/ipxe.bin $(INST_DIR)/ipxe.bin
endif
diff --git a/tools/firmware/hvmloader/Makefile
b/tools/firmware/hvmloader/Makefile
index 087b41d..fa1bf30 100644
--- a/tools/firmware/hvmloader/Makefile
+++ b/tools/firmware/hvmloader/Makefile
@@ -51,6 +51,9 @@ CIRRUSVGA_ROM :=
../vgabios/VGABIOS-lgpl-latest.cirrus.debug.bin
else
CIRRUSVGA_ROM := ../vgabios/VGABIOS-lgpl-latest.cirrus.bin
endif
+endif
+
+ifeq ($(CONFIG_IPXE),y)
ETHERBOOT_ROMS := $(addprefix ../etherboot/ipxe/src/bin/, $(addsuffix .rom,
$(ETHERBOOT_NICS)))
ETHERBOOT_ROM := ../etherboot/ipxe/src/bin/ipxe.bin
endif
--
1.8.3.1
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |