Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Nov 2014 16:08:56 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   [Bug 195152] New: The ports infrastructure will build dependencies against the default version of Python rather than what the desired port requires
Message-ID:  <bug-195152-13@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=195152

            Bug ID: 195152
           Summary: The ports infrastructure will build dependencies
                    against the default version of Python rather than what
                    the desired port requires
           Product: Ports Tree
           Version: Latest
          Hardware: Any
                OS: Any
            Status: Needs Triage
          Severity: Affects Some People
          Priority: ---
         Component: Infrastructure
          Assignee: freebsd-ports-bugs@FreeBSD.org
          Reporter: aberg010@my.hennepintech.edu
                CC: freebsd-python@FreeBSD.org, mva@FreeBSD.org

There are two affected ports that I know of so far: sysutils/py-salt and
sysutils/qzeitgeist. I will use Salt as the example of the "master" port and
pyzmq as the example of the dependency here.

First some background information on this example:
Unless overridden by the user, Python 2.7 is the default version of Python.
This issue is triggered only when 3.x is specified as the default (in my case,
3.4).
Salt can only use Python 2.
In its Makefile, it has net/py-pyzmq and many other Python-based dependencies.
The Makefile uses ${PYTHON_PKGNAMEPREFIX} to ensure that it will use only
packages of these dependencies that are built against the same version of
Python that Salt itself will use (I do not know if this is strictly necessary
for every single one, but it makes sense, and I will assume that it is).
net/py-pyzmq is compatible with both Python 2 and Python 3. A package can be
successfully built with any supported version of Python.
When Salt needs to be built, net/py-pyzmq is (correctly) identified as a
dependency.

The problem:
When net/py-pyzmq is built to satisfy the dependency for Salt, it is built for
the default version of Python, and the actual requirement for Salt is not met.
If the user simply wants only pyzmq, perhaps for their own development project,
then building for the default version of Python is desired behavior.

Poudriere results for this condition:
https://candace.robotsondrugs.com/poudriere/build.html?mastername=101x64-porttest&build=2014.11.18_09:51:10

Note: This is my test ports jail because I needed to modify net/openpgm (see
bug 194917).

-- 
You are receiving this mail because:
You are the assignee for the bug.



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