ports/132070: [PATCH] devel/cvswrap: fix after strndup addition/MFC, remove BROKEN tag
Florian Smeets
flo at kasimir.com
Tue Feb 24 15:00:13 UTC 2009
>Number: 132070
>Category: ports
>Synopsis: [PATCH] devel/cvswrap: fix after strndup addition/MFC, remove BROKEN tag
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Tue Feb 24 15:00:12 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator: Florian Smeets
>Release: FreeBSD 7.1-STABLE amd64
>Organization:
>Environment:
System: FreeBSD mail.solomo.de 7.1-STABLE FreeBSD 7.1-STABLE #4: Mon Jan 5 22:33:23 CET
>Description:
this port was broken by the addition/MFC of strndup. With this patch it builds again.
Added file(s):
- files/patch-cvswrap.c
Generated with FreeBSD Port Tools 0.77
>How-To-Repeat:
build on 7-STABLE >= 701101 or 8-CURRENT >= 800058 without this patch
>Fix:
- fix portlint warnings
- use tabs instead of whitespaces after variables
- fix COMMENT
- add patch for cvswrap.c to only use the ports' included strndup on FreeBSD versions where it is not included.
--- cvswrap-0.2.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/devel/cvswrap.orig/Makefile /usr/ports/devel/cvswrap/Makefile
--- /usr/ports/devel/cvswrap.orig/Makefile 2009-02-24 15:46:22.000000000 +0100
+++ /usr/ports/devel/cvswrap/Makefile 2009-02-24 15:50:50.000000000 +0100
@@ -5,25 +5,18 @@
# $FreeBSD: ports/devel/cvswrap/Makefile,v 1.7 2009/02/11 10:18:41 erwin Exp $
#
-PORTNAME= cvswrap
+PORTNAME= cvswrap
PORTVERSION= 0.2
-CATEGORIES= devel
+CATEGORIES= devel
MASTER_SITES+= ${MASTER_SITE_LOCAL}
MASTER_SITE_SUBDIR= alfred
MAINTAINER= ports at FreeBSD.org
-COMMENT= Helper for multiple CVS repositories.
+COMMENT= Helper for multiple CVS repositories
GNU_CONFIGURE= yes
MAN1= cvswrap.1
MAN5= cvswrap.conf.5
-.include <bsd.port.pre.mk>
-
-# Redefines strndup(3)
-.if ${OSVERSION} >= 800058 || (${OSVERSION} >= 701101 && ${OSVERSION} < 800000)
-BROKEN= does not build
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff -ruN --exclude=CVS /usr/ports/devel/cvswrap.orig/files/patch-cvswrap.c /usr/ports/devel/cvswrap/files/patch-cvswrap.c
--- /usr/ports/devel/cvswrap.orig/files/patch-cvswrap.c 1970-01-01 01:00:00.000000000 +0100
+++ /usr/ports/devel/cvswrap/files/patch-cvswrap.c 2009-02-24 15:46:40.000000000 +0100
@@ -0,0 +1,34 @@
+--- cvswrap.c.orig 2009-02-24 15:40:55.000000000 +0100
++++ cvswrap.c 2009-02-24 15:38:24.000000000 +0100
+@@ -94,7 +94,12 @@
+ char **cvsrootp);
+ static void slashfix(char *);
+ static int strings_have_line(char * const *strings, const char *line);
++#if defined(__FreeBSD__)
++#include <osreldate.h>
++#if __FreeBSD_version <= 800057 && __FreeBSD_version > 800000 || __FreeBSD_version <= 701100
+ static char * strndup(const char *str, size_t len);
++#endif
++#endif
+ static int timeval_diff(const struct timeval *tv1,
+ const struct timeval *tv2);
+ static int writebuf(int fd, const char *buf, size_t len);
+@@ -324,6 +329,9 @@
+ return (0);
+ }
+
++#if defined(__FreeBSD__)
++#include <osreldate.h>
++#if __FreeBSD_version <= 800057 && __FreeBSD_version > 800000 || __FreeBSD_version <= 701100
+ /*
+ * return: a copy of "len" bytes from byte string "str" and NULL terminate.
+ */
+@@ -340,6 +348,8 @@
+ *(ret + len) = '\0';
+ return (ret);
+ }
++#endif
++#endif
+
+ /*
+ * Wait for child cvs process to exit.
--- cvswrap-0.2.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list