aboutsummaryrefslogtreecommitdiff
path: root/databases/py-bsddb3
diff options
context:
space:
mode:
authorRuslan Makhmatkhanov <rm@FreeBSD.org>2012-10-07 08:12:53 +0000
committerRuslan Makhmatkhanov <rm@FreeBSD.org>2012-10-07 08:12:53 +0000
commit39d7429835d4511582039dd5e282befef07a1a3f (patch)
treec8766753d1578f7a69a997f44aabc8761129b0ba /databases/py-bsddb3
parent44a7392540e5c1c484c58c0d77fc5e563da5585b (diff)
downloadports-39d7429835d4511582039dd5e282befef07a1a3f.tar.gz
ports-39d7429835d4511582039dd5e282befef07a1a3f.zip
- fix build with python3 [1]
- fix packaging list for python >= 3.2.0 (using nivit's solution for devel/py-virtualenv) PR: 170443 Submitted by: Volodymyr Kostyrko <c.kworr at gmail dot com> [1] Approved by: wen (maintainer)
Notes
Notes: svn path=/head/; revision=305441
Diffstat (limited to 'databases/py-bsddb3')
-rw-r--r--databases/py-bsddb3/Makefile14
-rw-r--r--databases/py-bsddb3/files/patch-setup3.py2
-rw-r--r--databases/py-bsddb3/files/py3k-fix-pkg-plist.inc14
3 files changed, 23 insertions, 7 deletions
diff --git a/databases/py-bsddb3/Makefile b/databases/py-bsddb3/Makefile
index ed444f72b26d..f437e99216c9 100644
--- a/databases/py-bsddb3/Makefile
+++ b/databases/py-bsddb3/Makefile
@@ -1,9 +1,5 @@
-# New ports collection makefile for: py-bsddb3
-# Date created: 22 March 2001
-# Whom: Hye-Shik Chang <perky@python.or.kr>
-#
+# Created by: Hye-Shik Chang <perky@python.or.kr>
# $FreeBSD$
-#
PORTNAME= bsddb3
PORTVERSION= 5.3.0
@@ -24,6 +20,8 @@ PYDISTUTILS_INSTALLARGS=-c -O1 --prefix=${PREFIX} --berkeley-db=${LOCALBASE}
PORTDOCS= *
DOCSDIR= ${PREFIX}/share/doc/py-${PORTNAME}
+.include <bsd.port.pre.mk>
+
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
@@ -34,4 +32,8 @@ post-install:
(cd ${WRKSRC}/docs && ${COPYTREE_SHARE} \* ${DOCSDIR})
.endif
-.include <bsd.port.mk>
+.if ${PYTHON_REL} >= 320
+.include "${FILESDIR}/py3k-fix-pkg-plist.inc"
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/databases/py-bsddb3/files/patch-setup3.py b/databases/py-bsddb3/files/patch-setup3.py
index 0ca781085917..f93ce03ad7be 100644
--- a/databases/py-bsddb3/files/patch-setup3.py
+++ b/databases/py-bsddb3/files/patch-setup3.py
@@ -19,7 +19,7 @@
- if not '-ldb' in LIBS:
- libname = [dblib]
+ if not '-l%%DBVERSION%%' in LIBS:
-+ libname = [%%DBVERSION%%]
++ libname = ['%%DBVERSION%%']
else:
if debug: print("LIBS already contains '-ldb' not adding our own", "'-l"+dblib+"'")
libname = []
diff --git a/databases/py-bsddb3/files/py3k-fix-pkg-plist.inc b/databases/py-bsddb3/files/py3k-fix-pkg-plist.inc
new file mode 100644
index 000000000000..93acb972e248
--- /dev/null
+++ b/databases/py-bsddb3/files/py3k-fix-pkg-plist.inc
@@ -0,0 +1,14 @@
+# When Python version is 3.2+ we rewrite all the filenames
+# of TMPPLIST that end with .py[co], so that they conform
+# to PEP 3147 (see http://www.python.org/dev/peps/pep-3147/)
+PYMAGICTAG= ${PYTHON_CMD} -c 'import imp; print(imp.get_tag())'
+add-plist-post:
+ @${AWK} '\
+ /\.py[co]$$/ && !($$0 ~ "/" pc "/") {id = match($$0, /\/[^\/]+\.py[co]$$/); if (id != 0) {d = substr($$0, 1, RSTART - 1); dirs[d] = 1}; sub(/\.py[co]$$/, "." mt "&"); sub(/[^\/]+\.py[co]$$/, pc "/&"); print; next} \
+ /^@dirrm / {d = substr($$0, 8); if (d in dirs) {print $$0 "/" pc}; print $$0; next} \
+ {print} \
+ END {if (sp in dirs) {print "@dirrm " sp "/" pc}} \
+ ' \
+ pc="__pycache__" mt="$$(${PYMAGICTAG})" sp="${PYTHON_SITELIBDIR:S,${PYTHONBASE}/,,g}" \
+ ${TMPPLIST} > ${TMPPLIST}.pyc_tmp
+ @${MV} ${TMPPLIST}.pyc_tmp ${TMPPLIST}