Bug 186559 - [patch] net/gpxe fix gpxe.iso building
Summary: [patch] net/gpxe fix gpxe.iso building
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Olli Hauer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-08 11:20 UTC by Olli Hauer
Modified: 2014-04-21 09:20 UTC (History)
1 user (show)

See Also:


Attachments
gpxe.diff (2.58 KB, patch)
2014-02-08 11:20 UTC, Olli Hauer
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Olli Hauer freebsd_committer 2014-02-08 11:20:00 UTC
Even the path to isolinux.bin is corrected the file has wrong permission (444)
to create the gpxe.iso.  As workaround install isolinux.bin with mode 644 into
$WRKSRC and adjust the path in arch/i386/Makefile

Additional support staging

patch:
http://people.freebsd.org/~ohauer/diffs/gpxe.diff
Comment 1 Edwin Groothuis freebsd_committer 2014-02-08 11:20:08 UTC
State Changed
From-To: open->feedback

Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
Comment 2 Edwin Groothuis freebsd_committer 2014-02-08 11:20:08 UTC
Maintainer of net/gpxe,

Please note that PR ports/186559 has just been submitted.

If it contains a patch for an upgrade, an enhancement or a bug fix
you agree on, reply to this email stating that you approve the patch
and a committer will take care of it.

The full text of the PR can be found at:
    http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/186559

-- 
Edwin Groothuis via the GNATS Auto Assign Tool
edwin@FreeBSD.org
Comment 3 Olli Hauer freebsd_committer 2014-02-08 11:42:30 UTC
Responsible Changed
From-To: freebsd-ports-bugs->ohauer

Take my own PR
Comment 4 dfilter service freebsd_committer 2014-04-21 09:10:02 UTC
Author: ohauer
Date: Mon Apr 21 08:09:57 2014
New Revision: 351669
URL: http://svnweb.freebsd.org/changeset/ports/351669
QAT: https://qat.redports.org/buildarchive/r351669/

Log:
  - fix build on FreeBSD <= 10
  - add stage support
  
  PR:		186559 [1]
  PR:		183444
  Submitted by:	ohauer [1]
  Approved by:	maintainer-timeout

Modified:
  head/net/gpxe/Makefile
  head/net/gpxe/files/patch-arch__i386__Makefile

Modified: head/net/gpxe/Makefile
==============================================================================
--- head/net/gpxe/Makefile	Mon Apr 21 07:52:16 2014	(r351668)
+++ head/net/gpxe/Makefile	Mon Apr 21 08:09:57 2014	(r351669)
@@ -9,15 +9,13 @@ MASTER_SITES=	http://etherboot.org/rel/g
 		http://slackware.cs.utah.edu/pub/kernel.org/pub/software/utils/boot/gpxe/
 
 MAINTAINER=	gk.freebsd@googlemail.com
-COMMENT=	Create an open-source PXE implementation and bootloader
-
-BROKEN=		Fails to build
+COMMENT=	Open Source (GPL) gPXE network bootloader
 
 LICENSE=	GPLv2
 
-BUILD_DEPENDS=	syslinux:${PORTSDIR}/sysutils/syslinux
+BUILD_DEPENDS=	syslinux:${PORTSDIR}/sysutils/syslinux \
+		mkisofs:${PORTSDIR}/sysutils/cdrtools
 
-USE_CDRTOOLS=	yes
 USES=		gmake perl5
 WRKSRC=		${WRKDIR}/${DISTNAME}/src
 
@@ -28,26 +26,32 @@ PLIST_FILES=	%%DATADIR%%/gpxe.dsk \
 
 SUB_FILES=	pkg-message
 
-NO_STAGE=	yes
 .include <bsd.port.options.mk>
 
 ONLY_FOR_ARCHS=		amd64 i386
 ONLY_FOR_ARCHS_REASON=	not yet ported to anything other than amd64/i386
 
+.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1000000
+BROKEN=	does not build on FreeBSD 10.x and later
+.endif
+
 .if ${ARCH} == "amd64"
 MAKE_ARGS+=	ARCH=i386
 .endif
 
+ISOLINUX_BIN?=	${LOCALBASE}/share/syslinux/bios/core/isolinux.bin
+
 post-patch:
-	@${REINPLACE_CMD} "s|%%PREFIX%%|${PREFIX}|g" ${WRKSRC}/arch/i386/Makefile
+	@${REINPLACE_CMD} "s|%%WRKSRC%%|${WRKSRC}|" ${WRKSRC}/arch/i386/Makefile
 
-do-install:
-	@${MKDIR} ${DATADIR}
-	${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/src/bin/gpxe.dsk ${DATADIR}
-	${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/src/bin/gpxe.usb ${DATADIR}
-	${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/src/bin/gpxe.iso ${DATADIR}
+pre-build:
+# ISO creation fails if isolinux.bin is read only
+	${INSTALL} -m 644 ${ISOLINUX_BIN} ${WRKSRC}
 
-post-install:
-	@${CAT} ${PKGMESSAGE}
+do-install:
+	@${MKDIR} ${STAGEDIR}${DATADIR}
+	${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/src/bin/gpxe.dsk ${STAGEDIR}${DATADIR}
+	${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/src/bin/gpxe.usb ${STAGEDIR}${DATADIR}
+	${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/src/bin/gpxe.iso ${STAGEDIR}${DATADIR}
 
 .include <bsd.port.mk>

Modified: head/net/gpxe/files/patch-arch__i386__Makefile
==============================================================================
--- head/net/gpxe/files/patch-arch__i386__Makefile	Mon Apr 21 07:52:16 2014	(r351668)
+++ head/net/gpxe/files/patch-arch__i386__Makefile	Mon Apr 21 08:09:57 2014	(r351669)
@@ -1,12 +1,12 @@
 --- ./arch/i386/Makefile.orig	2010-06-29 21:31:33.000000000 +0200
-+++ ./arch/i386/Makefile	2010-08-07 16:06:23.000000000 +0200
-@@ -72,7 +72,8 @@
++++ ./arch/i386/Makefile	2014-02-08 11:45:50.000000000 +0100
+@@ -71,8 +71,7 @@
+ #
  ISOLINUX_BIN_LIST	:= \
  	$(ISOLINUX_BIN) \
- 	/usr/lib/syslinux/isolinux.bin \
+-	/usr/lib/syslinux/isolinux.bin \
 -	/usr/share/syslinux/isolinux.bin
-+	%%PREFIX%%/share/syslinux/isolinux.bin \
-+	%%PREFIX%%/share/syslinux/isolinux.bin
++	%%WRKSRC%%/isolinux.bin
  ISOLINUX_BIN	= $(firstword $(wildcard $(ISOLINUX_BIN_LIST)))
  
  # i386-specific directories containing source files
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 5 Olli Hauer freebsd_committer 2014-04-21 09:12:37 UTC
State Changed
From-To: feedback->closed

- Fix build on FreeBSD <= 10 in r351669