Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Jan 2012 06:38:56 GMT
From:      Garrett Cooper <yanegomi@gmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/163942: [patch] fix i386 build of dns/inadyn
Message-ID:  <201201090638.q096cuMk073934@red.freebsd.org>
Resent-Message-ID: <201201090640.q096eDGv061593@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         163942
>Category:       ports
>Synopsis:       [patch] fix i386 build of dns/inadyn
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Jan 09 06:40:13 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Garrett Cooper
>Release:        9.0-RELEASE
>Organization:
iXsystems, Inc.
>Environment:
FreeBSD bayonetta.local 9.0-STABLE FreeBSD 9.0-STABLE #1 r229323M: Mon Jan  2 14:32:54 PST 2012     gcooper@bayonetta.local:/usr/obj/store/freebsd/stable/9/sys/BAYONETTA  amd64
>Description:
Building FreeNAS, we at iXsystems and the users that use FreeNAS have run into situations on more than one occasion where the inadyn binary has been corrupted somehow when building the i386 package (oddly enough the amd64 package isn't affected).

The following patch ignores the contributed Makefile -- which does this undesirable things, like using TARGET_ARCH, for OS names -- and instead uses a simple pmake Makefile to get the job done.

A few examples are as follows:

1. http://support.freenas.org/ticket/1144 , comments 3 and 5.
2. http://forums.freenas.org/showthread.php?2050-Dynamic-DNS-problem
3. http://forums.freenas.org/showthread.php?5078-8-0-3-RELEASE-coming-soon&p=19721&viewfull=1#post19721
>How-To-Repeat:
I don't have clear reproduction steps for the issue.
>Fix:


Patch attached with submission follows:

diff --exclude '*.orig' -Naur dns/inadyn/Makefile dns/inadyn/Makefile
--- dns/inadyn/Makefile	2009-07-10 16:23:38.000000000 -0700
+++ dns/inadyn/Makefile	2012-01-07 20:04:28.202978310 -0800
@@ -7,7 +7,7 @@
 
 PORTNAME=	inadyn
 PORTVERSION=	1.96.2
-PORTREVISION=	2
+PORTREVISION=	3
 CATEGORIES=	dns
 MASTER_SITES=	http://www.inatech.eu/inadyn/ \
 		${MASTER_SITE_LOCAL}
@@ -21,34 +21,29 @@
 USE_RC_SUBR=	inadyn
 USE_ZIP=	yes
 USE_DOS2UNIX=	yes
-USE_GMAKE=	yes
-MAKEFILE=	makefile
-
-MAN8=		inadyn.8
-MAN5=		inadyn.conf.5
-MANCOMPRESSED=	no
 
 PORTDOCS=	readme.html
 PLIST_FILES=	bin/inadyn
 
 NO_INSTALL_MANPAGES=yes
 
+MAKE_JOBS_SAFE=	yes
+MAKEFILE=	${FILESDIR}/BSDmakefile
+
+MAKE_ENV+=	MANDIR=${MANPREFIX}/man
+
 post-extract:
 	${MV} ${WRKDIR}/${PORTNAME} ${WRKDIR}/${PORTNAME}-${PORTVERSION}
 
 post-patch:
-	@${REINPLACE_CMD} -e 's|gcc|$$\(CC\)|g' ${WRKSRC}/makefile
 	${REINPLACE_CMD} -e "s,%%PREFIX%%,${PREFIX},g" \
 		${WRKSRC}/man/inadyn.8 ${WRKSRC}/readme.html \
 		${WRKSRC}/src/dyndns.h
 
-do-install:
+pre-install:
 .if !defined(NOPORTDOCS)
 	${MKDIR} ${DOCSDIR}
 	${INSTALL_MAN} ${WRKSRC}/${PORTDOCS} ${DOCSDIR}
 .endif
-	 ${INSTALL_SCRIPT} ${WRKSRC}/bin/linux/inadyn ${PREFIX}/bin
-	 ${INSTALL_SCRIPT} ${WRKSRC}/man/inadyn.8 ${MANPREFIX}/man/man8
-	 ${INSTALL_SCRIPT} ${WRKSRC}/man/inadyn.conf.5 ${MANPREFIX}/man/man5
 
 .include <bsd.port.mk>
diff --exclude '*.orig' -Naur dns/inadyn/files/BSDmakefile dns/inadyn/files/BSDmakefile
--- dns/inadyn/files/BSDmakefile	1969-12-31 16:00:00.000000000 -0800
+++ dns/inadyn/files/BSDmakefile	2012-01-07 20:02:28.322979665 -0800
@@ -0,0 +1,16 @@
+PROG=	inadyn
+
+MAN5=	inadyn.conf.5
+
+MAN8=	inadyn.8
+
+SRCS=	base64utils.c dyndns.c errorcode.c get_cmd.c http_client.c ip.c main.c os.c \
+	os_psos.c os_unix.c os_windows.c tcp.c inadyn_cmd.c
+
+.PATH:	man src
+
+WARNS=	2
+
+BINDIR=	${PREFIX}/bin
+
+.include <bsd.prog.mk>


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201201090638.q096cuMk073934>