# make PYTHON_VERSION=python3.2 .. # builds successfully # make PYTHON_VERSION=python3.2 install ===> Installing for py32-bsddb3-5.3.0 ===> py32-bsddb3-5.3.0 depends on file: /usr/local/bin/python3.2 - found ===> py32-bsddb3-5.3.0 depends on shared library: db-5.3.0 - found ===> Generating temporary packing list ===> Checking if databases/py-bsddb3 already installed Traceback (most recent call last): File "setup.py", line 7, in <module> import setup3 File "/tmp/ports/usr/ports/databases/py-bsddb3/work/bsddb3-5.3.0/setup3.py", line 258, in <module> libname = [db-5.3] NameError: name 'db' is not defined *** [do-install] Error code 1 Stop in /usr/ports/databases/py-bsddb3. Fix: The problem is in misquoted string at files/patch-setup3.py:22: @@ -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 = [] Here %%DBVERSION%% should appear quoted like in files/patch-setup2.py.
Responsible Changed From-To: freebsd-ports-bugs->wen Over to maintainer (via the GNATS Auto Assign Tool)
Hi Wen, this patch includes Volodymyr's fix to let it build with python3. I also added shims for python >= 3.2.0 (based on nivit's solution for devel/py-virtualenv) that fixes packaging list. Now this port builds fine on both python branches. Would you commit/approve? -- Regards, Ruslan Tinderboxing kills... the drives.
Author: rm Date: Sun Oct 7 08:12:53 2012 New Revision: 305441 URL: http://svn.freebsd.org/changeset/ports/305441 Log: - 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) Added: head/databases/py-bsddb3/files/py3k-fix-pkg-plist.inc (contents, props changed) Modified: head/databases/py-bsddb3/Makefile head/databases/py-bsddb3/files/patch-setup3.py Modified: head/databases/py-bsddb3/Makefile ============================================================================== --- head/databases/py-bsddb3/Makefile Sun Oct 7 08:01:14 2012 (r305440) +++ head/databases/py-bsddb3/Makefile Sun Oct 7 08:12:53 2012 (r305441) @@ -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= 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> Modified: head/databases/py-bsddb3/files/patch-setup3.py ============================================================================== --- head/databases/py-bsddb3/files/patch-setup3.py Sun Oct 7 08:01:14 2012 (r305440) +++ head/databases/py-bsddb3/files/patch-setup3.py Sun Oct 7 08:12:53 2012 (r305441) @@ -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 = [] Added: head/databases/py-bsddb3/files/py3k-fix-pkg-plist.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/databases/py-bsddb3/files/py3k-fix-pkg-plist.inc Sun Oct 7 08:12:53 2012 (r305441) @@ -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} _______________________________________________ svn-ports-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-ports-all To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
State Changed From-To: open->closed Committed, thank you!