[Midnightbsd-cvs] mports [16174] trunk/databases: add python 3 friendly BDB support

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Sat Apr 12 14:12:18 EDT 2014


Revision: 16174
          http://svnweb.midnightbsd.org/mports/?rev=16174
Author:   laffer1
Date:     2014-04-12 14:12:18 -0400 (Sat, 12 Apr 2014)
Log Message:
-----------
add python 3 friendly BDB support

Modified Paths:
--------------
    trunk/databases/Makefile

Added Paths:
-----------
    trunk/databases/py-bsddb3/
    trunk/databases/py-bsddb3/Makefile
    trunk/databases/py-bsddb3/distinfo
    trunk/databases/py-bsddb3/files/
    trunk/databases/py-bsddb3/files/patch-setup2.py
    trunk/databases/py-bsddb3/files/patch-setup3.py
    trunk/databases/py-bsddb3/pkg-descr

Modified: trunk/databases/Makefile
===================================================================
--- trunk/databases/Makefile	2014-04-12 18:09:57 UTC (rev 16173)
+++ trunk/databases/Makefile	2014-04-12 18:12:18 UTC (rev 16174)
@@ -93,6 +93,7 @@
 SUBDIR += postgresql92-server
 SUBDIR += py-MySQLdb
 SUBDIR += py-bsddb
+SUBDIR += py-bsddb3
 SUBDIR += py-gdbm
 SUBDIR += py-mysql2pgsql
 SUBDIR += py-sqlite3

Added: trunk/databases/py-bsddb3/Makefile
===================================================================
--- trunk/databases/py-bsddb3/Makefile	                        (rev 0)
+++ trunk/databases/py-bsddb3/Makefile	2014-04-12 18:12:18 UTC (rev 16174)
@@ -0,0 +1,34 @@
+# $MidnightBSD$
+
+PORTNAME=	bsddb3
+PORTVERSION=	5.3.0
+CATEGORIES=	databases python
+MASTER_SITES=	CHEESESHOP
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	ports at MidnightBSD.org
+COMMENT=	Python extension module for BerkeleyDB 3 and 4
+
+LICENSE=	python
+
+USE_BDB=	43+
+USE_PYTHON=		yes
+USE_PYDISTUTILS=	yes
+PYDISTUTILS_AUTOPLIST=	yes
+
+PYDISTUTILS_CONFIGUREARGS=--libs="-l${BDB_LIB_NAME}" --berkeley-db=${LOCALBASE}
+PYDISTUTILS_BUILDARGS=	--libs="-l${BDB_LIB_NAME}" --berkeley-db=${LOCALBASE}
+PYDISTUTILS_INSTALLARGS=-c -O1 --prefix=${PREFIX} --berkeley-db=${LOCALBASE}
+
+PORTDOCS=	*
+DOCSDIR=	${PREFIX}/share/doc/py-${PORTNAME}
+
+post-patch:
+	${REINPLACE_CMD} 's,%%DBVERSION%%,${BDB_LIB_NAME},g' ${WRKSRC}/setup2.py ${WRKSRC}/setup3.py
+	${REINPLACE_CMD} 's,<db\.h>,<${BDB_INCLUDE_DIR}/db.h>,' ${WRKSRC}/Modules/bsddb.h
+
+post-install:
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	(cd ${WRKSRC}/docs && ${COPYTREE_SHARE} \* ${STAGEDIR}${DOCSDIR})
+
+.include <bsd.port.mk>

Added: trunk/databases/py-bsddb3/distinfo
===================================================================
--- trunk/databases/py-bsddb3/distinfo	                        (rev 0)
+++ trunk/databases/py-bsddb3/distinfo	2014-04-12 18:12:18 UTC (rev 16174)
@@ -0,0 +1,2 @@
+SHA256 (bsddb3-5.3.0.tar.gz) = 4619f6189e5f94e337c62ae398ccb9c25568f3c3cab39970a4ea7625d38f8b3e
+SIZE (bsddb3-5.3.0.tar.gz) = 385113

Added: trunk/databases/py-bsddb3/files/patch-setup2.py
===================================================================
--- trunk/databases/py-bsddb3/files/patch-setup2.py	                        (rev 0)
+++ trunk/databases/py-bsddb3/files/patch-setup2.py	2014-04-12 18:12:18 UTC (rev 16174)
@@ -0,0 +1,25 @@
+--- setup2.py.orig	2011-03-08 22:16:14.000000000 +0800
++++ setup2.py	2011-03-15 16:00:42.000000000 +0800
+@@ -53,10 +53,7 @@
+             category=DeprecationWarning)
+ 
+ 
+-try :
+-  from setuptools import setup, Extension
+-except :
+-  from distutils.core import setup, Extension
++from distutils.core import setup, Extension
+ 
+ from distutils.dep_util import newer
+ import distutils.ccompiler
+@@ -247,8 +244,8 @@
+         incdir = os.path.join(BERKELEYDB_DIR, 'include')
+     if not libdir:
+         libdir = os.path.join(BERKELEYDB_DIR, 'lib')
+-    if not '-ldb' in LIBS:
+-        libname = [dblib]
++    if not '-l%%DBVERSION%%' in LIBS:
++        libname = ['%%DBVERSION%%']
+     else:
+         if debug: print "LIBS already contains '-ldb' not adding our own", "'-l"+dblib+"'"
+         libname = []

Added: trunk/databases/py-bsddb3/files/patch-setup3.py
===================================================================
--- trunk/databases/py-bsddb3/files/patch-setup3.py	                        (rev 0)
+++ trunk/databases/py-bsddb3/files/patch-setup3.py	2014-04-12 18:12:18 UTC (rev 16174)
@@ -0,0 +1,25 @@
+--- setup3.py.orig	2011-03-15 16:10:41.000000000 +0800
++++ setup3.py	2011-03-15 16:12:40.000000000 +0800
+@@ -53,10 +53,7 @@
+             category=DeprecationWarning)
+ 
+ 
+-try :
+-  from setuptools import setup, Extension
+-except :
+-  from distutils.core import setup, Extension
++from distutils.core import setup, Extension
+ 
+ from distutils.dep_util import newer
+ import distutils.ccompiler
+@@ -247,8 +244,8 @@
+         incdir = os.path.join(BERKELEYDB_DIR, 'include')
+     if not libdir:
+         libdir = os.path.join(BERKELEYDB_DIR, 'lib')
+-    if not '-ldb' in LIBS:
+-        libname = [dblib]
++    if not '-l%%DBVERSION%%' in LIBS:
++        libname = ['%%DBVERSION%%']
+     else:
+         if debug: print("LIBS already contains '-ldb' not adding our own", "'-l"+dblib+"'")
+         libname = []

Added: trunk/databases/py-bsddb3/pkg-descr
===================================================================
--- trunk/databases/py-bsddb3/pkg-descr	                        (rev 0)
+++ trunk/databases/py-bsddb3/pkg-descr	2014-04-12 18:12:18 UTC (rev 16174)
@@ -0,0 +1,10 @@
+This module provides a nearly complete wrapping of the Sleepycat C API
+for the Database Environment, Database, Cursor, and Transaction
+objects, and each of these is exposed as a Python Type in the
+bsddb3.db module.  The database objects can use different access
+methods, btree, hash, recno, and queue.  For the first time all of
+these are fully supported in the Python wrappers.  Please see the
+document in developers' web site for more details on the types and
+methods provided.
+
+WWW: http://www.jcea.es/programacion/pybsddb.htm



More information about the Midnightbsd-cvs mailing list