Date: Mon, 10 Apr 2006 12:21:33 GMT From: "Matthew X. Economou" <xenophon+fbsdports@irtnog.org> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/95584: A port's "USE_ZOPE=yes" overrides PYTHON_VERSION if set by the package builder Message-ID: <200604101221.k3ACLXni002755@www.freebsd.org> Resent-Message-ID: <200604101230.k3ACUGFa003162@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 95584 >Category: ports >Synopsis: A port's "USE_ZOPE=yes" overrides PYTHON_VERSION if set by the package builder >Confidential: no >Severity: serious >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon Apr 10 12:30:16 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Matthew X. Economou >Release: 5.4-RELEASE >Organization: IRTNOG.ORG >Environment: FreeBSD cinep011fbvoip.irtnog.org 5.4-SECURITY FreeBSD 5.4-SECURITY #0: Tue Feb 28 20:13:51 UTC 2006 root@builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC i386 >Description: Ports that define "USE_ZOPE=yes" in their Makefiles ignore the value of PYTHON_VERSION set either in /etc/make.conf or on the make command line. This can cause problems for combinations of Python programs that only work properly with a specific version of the run-time environment. For example, Plone 2.1 and Zope 2.8 require Python 2.3, but the Plone port (which defines USE_ZOPE) depends on and builds against Python 2.4. This can cause compatibility problems, e.g. when Zope (Python 2.3) tries to load Plone's byte-compiled files (Python 2.4). >How-To-Repeat: 1. Install ports/www/zope28. This will install ports/lang/python23 automatically. 2. Add the following lines to /etc/make.conf: PYTHON_VERSION=python2.3 ZOPE_VERSION=2.8 3. Install ports/www/plone. Note that this causes ports/lang/python (Python 2.4) to install. Note also that Plone will build against Python 2.4. >Fix: I don't know if this is the correct fix, but the following changes to ports/Mk/bsd.python.mk work for me. Someone who is more familiar with the ports tree's make scripts should review these changes before committing them. With these changes, if PYTHON_VERSION is already set, bsd.python.mk will not override it. --- ports/Mk/bsd.python.mk.orig Mon Apr 10 08:18:51 2006 +++ ports/Mk/bsd.python.mk Mon Apr 10 08:14:47 2006 @@ -204,9 +204,9 @@ ZOPE_VERSION?= ${_ZOPE_VERSION} .if ${ZOPE_VERSION} == "2.7" -PYTHON_VERSION= python2.3 +PYTHON_VERSION?= python2.3 .else -PYTHON_VERSION= python2.4 +PYTHON_VERSION?= python2.4 .endif .endif # defined(USE_ZOPE) >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604101221.k3ACLXni002755>