Skip site navigation (1)Skip section navigation (2)
Date:      Mon,  8 Sep 2003 02:20:02 +0200 (CEST)
From:      Martin Matuska <martin@tradex.sk>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:    ports/56580: Request for maintainership, patch: sysutils/fastresolve
Message-ID:  <20030908002002.AB2D9259FB@mail.tradex.sk>
Resent-Message-ID: <200309080020.h880K9JS092749@freefall.freebsd.org>

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

>Number:         56580
>Category:       ports
>Synopsis:       Request for maintainership, patch: sysutils/fastresolve
>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:   Sun Sep 07 17:20:09 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Martin Matuska
>Release:        FreeBSD 4.8-RELEASE-p3 i386
>Organization:
>Environment:
FreeBSD 4.8-RELEASE-p3 i386
>Description:
1. I would like to take maintainership of sysutils/fastresolve
	(I already maintain some ports and I am in contact with the software author David MacKenzie)
2. The port should be moved (or at least added) to the recently created "dns" category
3. The included patch against fastresolve-2.10 does the following changes:
	a) support for BerkeleyDB 3.x, 4.0.x, 4.1.x on FreeBSD, obeys WITH_BDB_VER
	b) p5-BerkeleyDB in RUN_DEPENDS, Perl parts of fastresolve require it to run
>How-To-Repeat:
>Fix:
diff -Nbur fastresolve.orig/Makefile fastresolve/Makefile
--- fastresolve.orig/Makefile	Mon Sep  8 02:13:23 2003
+++ fastresolve/Makefile	Mon Sep  8 02:08:05 2003
@@ -7,24 +7,40 @@
 
 PORTNAME=	fastresolve
 PORTVERSION=	2.10
+PORTREVISION=	1
 CATEGORIES=	sysutils
 MASTER_SITES=	http://www.djmnet.org/sw/dist/
 
-MAINTAINER=	ports@FreeBSD.org
+MAINTAINER=	martin@tradex.sk
 COMMENT=	Programs that process web logs to get DNS and domain ownership info
 
-LIB_DEPENDS=	db41.1:${PORTSDIR}/databases/db41 \
-		adns.1:${PORTSDIR}/dns/adns
+LIB_DEPENDS=	adns.1:${PORTSDIR}/dns/adns
+RUN_DEPENDS=	${SITE_PERL}/${PERL_ARCH}/BerkeleyDB.pm:${PORTSDIR}/databases/p5-BerkeleyDB
 
 USE_BZIP2=	yes
 USE_PERL5=	yes
 GNU_CONFIGURE=	yes
 CONFIGURE_ENV=	LDFLAGS="-L${LOCALBASE}/lib" \
-		CXXFLAGS="-I${LOCALBASE}/include/db41 -I${LOCALBASE}/include" \
+		CXXFLAGS="-I${LOCALBASE}/include" \
 		PERL=${PERL}
-CONFIGURE_ARGS=	"--with-bdb-lib=-ldb41_cxx"
 USE_AUTOCONF=	yes
 
+# Default to db3
+WITH_BDB_VER?=	3
+
+.if ${WITH_BDB_VER} == 3
+LIB_DEPENDS+=	db3.3:${PORTSDIR}/databases/db3
+CONFIGURE_ARGS= --with-bdb-lib=-ldb3_cxx --with-bdb-incdir=${LOCALBASE}/include/db3
+.elif ${WITH_BDB_VER} == 4
+LIB_DEPENDS+=	db4.0:${PORTSDIR}/databases/db4
+CONFIGURE_ARGS= --with-bdb-lib=-ldb4_cxx --with-bdb-incdir=${LOCALBASE}/include/db4
+.elif ${WITH_BDB_VER} == 41
+LIB_DEPENDS+=	db41.1:${PORTSDIR}/databases/db41
+CONFIGURE_ARGS= --with-bdb-lib=-ldb41_cxx --with-bdb-incdir=${LOCALBASE}/include/db41
+.else
+.error WITH_BDB_VER must be one between 3, 4 and 41
+.endif
+
 MAN1=	dns-terror.1 btree-dump.1 convert-dom-db.1 convert-ip-db.1 \
 	expire-ip-db.1 getdominfo.1 rebuild-dom-db.1 rebuild-ip-db.1 \
 	reresolve.1 make-report.1
@@ -38,10 +54,5 @@
 	@${INSTALL_DATA} ${WRKSRC}/doc/TODO ${DOCSDIR}
 	@${INSTALL_DATA} ${WRKSRC}/doc/timings ${DOCSDIR}
 .endif
-
-	@${ECHO_MSG} ""
-	@${ECHO_MSG} "If you want to use the convert-ip-db script you must"
-	@${ECHO_MSG} "install the databases/p5-BerkeleyDB port"
-	@${ECHO_MSG} ""
 
 .include <bsd.port.mk>
diff -Nbur fastresolve.orig/files/patch-configure.in fastresolve/files/patch-configure.in
--- fastresolve.orig/files/patch-configure.in	Thu Jan  1 01:00:00 1970
+++ fastresolve/files/patch-configure.in	Mon Sep  8 01:15:29 2003
@@ -0,0 +1,138 @@
+--- configure.in.orig	Sat May 17 20:15:26 2003
++++ configure.in	Mon Sep  8 00:44:07 2003
+@@ -1,6 +1,5 @@
+ AC_INIT
+ AM_INIT_AUTOMAKE([fastresolve], [2.10])
+-AC_ARG_PROGRAM
+ AC_PATH_PROGS(PERL, [perl5 perl], [/usr/bin/perl])
+ AC_PROG_CC
+ AC_PROG_CXX
+@@ -26,6 +25,41 @@
+ AC_DEFUN(DJM_LIB_DB_CXX,
+ [dnl Check for a C++ interface, either version.
+ 
++AC_ARG_WITH(bdb-lib,
++    [  --with-bdb-lib=PATH	Path to Berkeley DB C++ library],
++    with_bdb_lib=$withval,
++    [ test "${with_bdb_lib+set}" = set || with_bdb_lib=none])
++AC_ARG_WITH(bdb-incdir,
++    [  --with-bdb-incdir=DIR	Berkeley DB C++ includes are in DIR],
++    with_bdb_incdir=$withval,
++    [ test "${with_bdb_incdir+set}" = set || with_bdb_incdir=none])
++
++if test $with_bdb_incdir != none; then
++CXXFLAGS="$CXXFLAGS -I$with_bdb_incdir"
++fi
++
++if test $with_bdb_lib != none; then
++
++dnl Berkeley DB from supplied path
++AC_MSG_CHECKING([for Db::open in ${with_bdb_lib}])
++AC_LANG_SAVE
++AC_LANG_CPLUSPLUS
++djm_save_LIBS="$LIBS"
++LIBS="$LIBS $with_bdb_lib"
++AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);],
++	djm_cv_lib_bdb_cxx_Db=yes, djm_cv_lib_bdb_cxx_Db=no)
++LIBS="$djm_save_LIBS"
++AC_LANG_RESTORE
++AC_MSG_RESULT($djm_cv_lib_bdb_cxx_Db)
++
++if test $djm_cv_lib_bdb_cxx_Db = yes; then
++	LIBS="$LIBS $with_bdb_lib"
++else
++	AC_MSG_ERROR([Berkeley DB library 2.x-4.x configured with --enable-cxx is required])
++fi
++
++else
++
+ dnl Berkeley DB 2.x.
+ AC_CACHE_CHECK([for Db::open in -ldb], djm_cv_lib_db_Dbopen,
+ [AC_LANG_SAVE
+@@ -41,54 +75,69 @@
+ 	LIBS="$LIBS -ldb"
+ else
+ 
+-dnl Berkeley DB 3.x installed as libdb.
+-AC_CACHE_CHECK([for Db::open in -ldb_cxx], djm_cv_lib_db_cxx_Dbopen,
++
++dnl Berkeley DB 3.x or 4.x installed as libdb.
++AC_CACHE_CHECK([for Db in -ldb_cxx], djm_cv_lib_db_cxx_Db,
+ [AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ djm_save_LIBS="$LIBS"
+ LIBS="$LIBS -ldb -ldb_cxx"
+-AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);
+-d->open(NULL, NULL, DB_BTREE, DB_CREATE, 0);],
+-	djm_cv_lib_db_cxx_Dbopen=yes, djm_cv_lib_db_cxx_Dbopen=no)
++AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);],
++	djm_cv_lib_db_cxx_Db=yes, djm_cv_lib_db_cxx_Db=no)
+ LIBS="$djm_save_LIBS"
+ AC_LANG_RESTORE])
+ 
+-if test $djm_cv_lib_db_cxx_Dbopen = yes; then
++if test $djm_cv_lib_db_cxx_Db = yes; then
+ 	LIBS="$LIBS -ldb -ldb_cxx"
+ else
+ 
+ dnl Berkeley DB 3.x installed as libdb3 (as on FreeBSD).
+-AC_CACHE_CHECK([for Db::open in -ldb3_cxx], djm_cv_lib_db3_cxx_Dbopen,
++AC_CACHE_CHECK([for Db in -ldb3_cxx], djm_cv_lib_db3_cxx_Db,
+ [AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ djm_save_LIBS="$LIBS"
+ LIBS="$LIBS -ldb3 -ldb3_cxx"
+-AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);
+-d->open(NULL, NULL, DB_BTREE, DB_CREATE, 0);],
+-	djm_cv_lib_db3_cxx_Dbopen=yes, djm_cv_lib_db3_cxx_Dbopen=no)
++AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);],
++	djm_cv_lib_db3_cxx_Db=yes, djm_cv_lib_db3_cxx_Db=no)
+ LIBS="$djm_save_LIBS"
+ AC_LANG_RESTORE])
+ 
+-if test $djm_cv_lib_db3_cxx_Dbopen = yes; then
++if test $djm_cv_lib_db3_cxx_Db = yes; then
+ 	LIBS="$LIBS -ldb3 -ldb3_cxx"
+ else
+ 
+-dnl Berkeley DB 4.x installed as libdb4 (as on FreeBSD).
+-AC_CACHE_CHECK([for Db::open in -ldb4_cxx], djm_cv_lib_db4_cxx_Dbopen,
++dnl Berkeley DB 4.0.x installed as libdb4 (as on FreeBSD).
++AC_CACHE_CHECK([for Db in -ldb4_cxx], djm_cv_lib_db4_cxx_Db,
+ [AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ djm_save_LIBS="$LIBS"
+ LIBS="$LIBS -ldb4 -ldb4_cxx"
+-AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);
+-d->open(NULL, NULL, DB_BTREE, DB_CREATE, 0);],
+-	djm_cv_lib_db4_cxx_Dbopen=yes, djm_cv_lib_db4_cxx_Dbopen=no)
++AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);],
++	djm_cv_lib_db4_cxx_Db=yes, djm_cv_lib_db4_cxx_Db=no)
+ LIBS="$djm_save_LIBS"
+ AC_LANG_RESTORE])
+ 
+-if test $djm_cv_lib_db4_cxx_Dbopen = yes; then
++if test $djm_cv_lib_db4_cxx_Db = yes; then
+ 	LIBS="$LIBS -ldb4 -ldb4_cxx"
+ else
++
++dnl Berkeley DB 4.1.x installed as libdb41 (as on FreeBSD).
++AC_CACHE_CHECK([for Db in -ldb41_cxx], djm_cv_lib_db41_cxx_Db,
++[AC_LANG_SAVE
++AC_LANG_CPLUSPLUS
++djm_save_LIBS="$LIBS"
++LIBS="$LIBS -ldb41 -ldb41_cxx"
++AC_TRY_LINK([#include <db_cxx.h>], [Db *d = new Db(NULL, 0);],
++	djm_cv_lib_db41_cxx_Db=yes, djm_cv_lib_db41_cxx_Db=no)
++LIBS="$djm_save_LIBS"
++AC_LANG_RESTORE])
++
++if test $djm_cv_lib_db41_cxx_Db = yes; then
++	LIBS="$LIBS -ldb41 -ldb41_cxx"
++else
+ 	AC_MSG_ERROR([Berkeley DB library 2.x-4.x configured with --enable-cxx is required])
++fi
++fi
+ fi
+ fi
+ fi
diff -Nbur fastresolve.orig/files/patch-dns-terror::DatedStringDb.cc fastresolve/files/patch-dns-terror::DatedStringDb.cc
--- fastresolve.orig/files/patch-dns-terror::DatedStringDb.cc	Thu Jan  1 01:00:00 1970
+++ fastresolve/files/patch-dns-terror::DatedStringDb.cc	Mon Sep  8 00:35:49 2003
@@ -0,0 +1,14 @@
+--- dns-terror/DatedStringDb.cc.orig	Sat Sep  6 18:38:24 2003
++++ dns-terror/DatedStringDb.cc	Sat Sep  6 18:38:31 2003
+@@ -69,7 +69,11 @@
+   env->set_cachesize(0, MPOOL_SIZE, 0);
+   env->open(dbhome, DB_CREATE|DB_INIT_MPOOL|DB_PRIVATE, 0644);
+   db = new Db(env, 0);
++#if DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1 || DB_VERSION_MAJOR > 4
++  db->open(NULL, storename, NULL, DB_BTREE, DB_CREATE, 0644);
++#else
+   db->open(storename, NULL, DB_BTREE, DB_CREATE, 0644);
++#endif
+ #elif DB_VERSION_MAJOR == 2
+   env = new DbEnv;
+   env->set_error_stream(&cerr);
>Release-Note:
>Audit-Trail:
>Unformatted:



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