1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-20 08:27:15 +00:00

net/ipxe: Build undionly and EFI images

Submitted by:	fabian.freyer@physik.tu-berlin.de
Differential Revision:	https://reviews.freebsd.org/D15194
This commit is contained in:
Tobias Kortkamp 2018-04-25 15:13:48 +00:00
parent 5e1333a610
commit 7bd53a164a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=468280
2 changed files with 26 additions and 6 deletions

View File

@ -3,7 +3,7 @@
PORTNAME= ipxe
PORTVERSION= 20180220
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= net
MAINTAINER= tobik@FreeBSD.org
@ -29,7 +29,7 @@ USE_GITHUB= yes
GH_TAGNAME= 47849be3a900c546cf92066849be0806f4e611d9
USE_PERL5= build
ALL_TARGET= bin/ipxe.dsk bin/ipxe.lkrn bin/ipxe.pxe bin/ipxe.usb
ALL_TARGET= bin/ipxe.dsk bin/ipxe.lkrn bin/ipxe.pxe bin/ipxe.usb bin/undionly.kpxe
MAKE_ARGS= HOST_CC=${CC} \
PERL=${PERL} \
CC=${CC} \
@ -64,11 +64,17 @@ _IPXE_BUILDCFG= branding:PRODUCT_NAME="${PKGNAME} (${OPSYS} ${OSREL}/${ARCH})" \
general:PING_CMD \
general:POWEROFF_CMD
OPTIONS_DEFAULT= ISO
OPTIONS_DEFINE= ISO
OPTIONS_DEFAULT= ISO EFI
OPTIONS_DEFINE= ISO EFI
EFI_DESC= Create EFI image
ISO_DESC= Create bootable CD image
EFI_ARCHS= i386 ${ARCH:Mamd64:S/amd64/x86_64/}
.for _arch in ${EFI_ARCHS}
EFI_PLIST_FILES+= ${DATADIR}/ipxe.efi-${_arch}
.endfor
ISO_ALL_TARGET= bin/ipxe.iso
ISO_BUILD_DEPENDS= bash:shells/bash \
${LOCALBASE}/share/syslinux/bios/core/isolinux.bin:sysutils/syslinux \
@ -94,10 +100,20 @@ pre-build-ISO-on:
# ISO creation fails if isolinux.bin is read only
${INSTALL} -m 644 ${LOCALBASE}/share/syslinux/bios/core/isolinux.bin ${WRKSRC}/isolinux.bin
do-build-EFI-on:
.for _arch in ${EFI_ARCHS}
${DO_MAKE_BUILD} ARCH=${_arch} -C ${WRKSRC} bin-${_arch}-efi/ipxe.efi
.endfor
do-install:
@${MKDIR} ${STAGEDIR}${DATADIR}
cd ${WRKSRC} && ${INSTALL_DATA} ${ALL_TARGET} ${STAGEDIR}${DATADIR}
do-install-EFI-on:
.for _arch in ${EFI_ARCHS}
${INSTALL_DATA} ${WRKSRC}/bin-${_arch}-efi/ipxe.efi ${STAGEDIR}${DATADIR}/ipxe.efi-${_arch}
.endfor
.include <bsd.port.post.mk>
RUN_DEPENDS:= ${RUN_DEPENDS:Ngcc*}

View File

@ -1,6 +1,10 @@
The following files have been installed in %%DATADIR%%:
- ipxe.dsk for creating a bootable floppy disk
- ipxe.usb for creating a bootable USB key
- ipxe.efi-i386 for loading from EFI on i386 systems
- ipxe.efi-x86_64 for loading from EFI on x86_64 systems
- ipxe.iso for creating a bootable CD
- ipxe.pxe for chainloading from a PXE ROM
- ipxe.lkrn for any boot manager that can boot Linux kernels
- ipxe.pxe for chainloading from a PXE ROM
- ipxe.usb for creating a bootable USB key
- undionly.kpxe for chainloading from a PXE ROM; contains only
the UNDI drivers