Subject: python packages...
To: None <tech-pkg@NetBSD.ORG>
From: MLH <MLH@goathill.org>
List: tech-pkg
Date: 06/11/2003 21:36:20
I'm a bit confused about how to reference a couple of Python packages
in a new pkg I'm trying to build. Is there a refernce document
somewhere I could read about this. I've tried following existing
the examples in pkgsrc and can't get thigns to work.

Specifically, I'm trying to build a pkg for SciPy. I have it building
the package correctly, but I can't get dependencies built correctly:

...
PYDISTUTILSPKG= yes
PYBINMODULE=    yes

BUILD_DEPENDS=          fftw2-2.1.5:../../math/fftw2
BUILD_DEPENDS+=         lapack-*:../../math/lapack
BUILD_DEPENDS=          py-f2py-*:../../lang/py-f2py
BUILD_DEPENDS+=         py-Numeric-*:../../math/py-Numeric
BUILD_DEPENDS+=         py-wxWindows-*:../../x11/py-wxWindows

PYTHON_VERSIONS_ACCEPTED= 22pth 21pth

.include "../../math/fftw2/buildlink2.mk"
.include "../../math/lapack/buildlink2.mk"
.include "../../math/py-Numeric/buildlink2.mk"
.include "../../lang/py-f2py/buildlink2.mk"
.include "../../x11/py-wxWindows/buildlink2.mk"
.include "../../lang/python/extension.mk"
.include "../../mk/bsd.pkg.mk"

buildlink2:
-----------
# $NetBSD$
#
# This Makefile fragment is included by packages that use py-SciPy.
#
# This file was created automatically using createbuildlink 2.6.
#

.if !defined(PY_SCIPY_BUILDLINK2_MK)
PY_SCIPY_BUILDLINK2_MK= # defined

.include "../../lang/python/pyversion.mk"

BUILDLINK_PACKAGES+=                    py-SciPy
BUILDLINK_DEPENDS.py-SciPy?=            py-SciPy>=0.2.0
BUILDLINK_PKGSRCDIR.py-SciPy?=          ../../math/py-scipy

EVAL_PREFIX+=   BUILDLINK_PREFIX.py-SciPy=py-SciPy
BUILDLINK_PREFIX.py-SciPy_DEFAULT=      ${LOCALBASE}

.include "../../math/fftw2/buildlink2.mk"
.include "../../math/lapack/buildlink2.mk"
.include "../../lang/py-f2py/buildlink2.mk"
.include "../../math/py-Numeric/buildlink2.mk"
.include "../../x11/py-wxWindows/buildlink2.mk"

BUILDLINK_TARGETS+=     py-SciPy-buildlink

py-SciPy-buildlink: _BUILDLINK_USE

.endif  # PY_SCIPY_BUILDLINK2_MK
-------------

I see examples where no BUILD_DEPENDS is set, only the buildlink2
for a dependency, but without the BUILD_DEPENDS, I can't get it to
build the dependencies, but with it, I can't get py-Numeric or
py-wxWindows to build properly:

===> Returning to build of py22pth-SciPy-0.2.0
===> Required package py-Numeric-*: NOT found
===> Verifying package for ../../math/py-Numeric
make:
"../../lang/python/../../lang/python/../../lang/python/../../
   lang/python/pyversion.mk"
line 147: Unassociated shell command "error: no valid Python version"
make:
"../../lang/python/../../lang/python/../../lang/python/../../
   lang/python/pyversion.mk"
line 154: Could not find /buildlink2.mk
make: Fatal errors encountered -- cannot continue

make: stopped in /usr/pkgsrc/math/py-Numeric
*** Error code 1

Stop.
make: stopped in /usr/pkgsrc/math/py-scipy
*** Error code 1
---

I can't determine which buildlink2.mk is missing, all packages
referenced have one. What am I missing? What might be the proper
way to do this?