[yocto] [PATCH 1/1] ipxe: add iPXE from git

Paul Eggleton paul.eggleton at linux.intel.com
Wed Apr 20 09:39:59 PDT 2011


From: Paul Eggleton <paul.eggleton at linux.intel.com>

iPXE is a network bootloader primarily for Intel-based systems (the
successor to gPXE).

Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
---
 common/recipes-bsp/ipxe/files/chainload.ipxe |    5 +++
 common/recipes-bsp/ipxe/ipxe_git.bb          |   38 ++++++++++++++++++++++++++
 2 files changed, 43 insertions(+), 0 deletions(-)
 create mode 100644 common/recipes-bsp/ipxe/files/chainload.ipxe
 create mode 100644 common/recipes-bsp/ipxe/ipxe_git.bb

diff --git a/common/recipes-bsp/ipxe/files/chainload.ipxe b/common/recipes-bsp/ipxe/files/chainload.ipxe
new file mode 100644
index 0000000..e5f0a9e
--- /dev/null
+++ b/common/recipes-bsp/ipxe/files/chainload.ipxe
@@ -0,0 +1,5 @@
+#!ipxe
+dhcp net0
+kernel tftp://TFTP_HOST/boot.ipxe
+boot
+
diff --git a/common/recipes-bsp/ipxe/ipxe_git.bb b/common/recipes-bsp/ipxe/ipxe_git.bb
new file mode 100644
index 0000000..662bbc4
--- /dev/null
+++ b/common/recipes-bsp/ipxe/ipxe_git.bb
@@ -0,0 +1,38 @@
+DESCRIPTION = "Open source network boot firmware"
+HOMEPAGE = "http://ipxe.org"
+LICENSE = "GPLv2"
+DEPENDS = "binutils-native perl-native syslinux mtools-native"
+LIC_FILES_CHKSUM = "file://../COPYING;md5=8ca43cbc842c2336e835926c2166c28b"
+
+SRCREV = "bd9ff16c21efef27b6c18c15dc1d4b153ec12a4a"
+PV = "1.0.0+gitr${SRCPV}"
+PR = "r0"
+
+inherit deploy
+
+SRC_URI = "git://git.ipxe.org/ipxe.git;protocol=git \
+	   file://chainload.ipxe"
+
+EXTRA_OEMAKE = "NO_WERROR=1 EMBEDDED_IMAGE=../../chainload.ipxe"
+
+S = "${WORKDIR}/git/src"
+
+do_configure () {
+	if [ -z "${IPXE_TFTP_HOST}" ] ; then
+		echo "IPXE_TFTP_HOST not set, please set it in your local.conf."
+		exit 1
+	fi
+
+	sed -i s#^ISOLINUX_BIN[\ \\t]*=.*#ISOLINUX_BIN\ =\ ${STAGING_DIR_TARGET}/usr/lib/syslinux/isolinux.bin# arch/i386/Makefile
+	sed -i s/TFTP_HOST/${IPXE_TFTP_HOST}/g ../../chainload.ipxe
+}
+
+do_compile () {
+        oe_runmake
+}
+
+do_deploy () {
+        install ${S}/bin/ipxe.usb ${DEPLOYDIR}/
+}
+addtask deploy before do_build after do_compile
+
-- 
1.7.4.4




More information about the yocto mailing list