Date: Mon, 11 Oct 2010 14:40:53 -0700 From: Charlie Kester <corky1951@comcast.net> To: freebsd-python@FreeBSD.org Subject: When to use PYTHONPREFIX_SITELIBDIR? Message-ID: <20101011214052.GC1130@comcast.net>
next in thread | raw e-mail | index | archive | help
A port I maintain, multimedia/gpodder, needs to install a set of Python modules from another distfile called mygpoclient. Here are the pertinent excerpts from the port Makefile, as I inherited it from the previous maintainer: DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:DEFAULT \ ${MGC_DISTNAME}${EXTRACT_SUFX}:mygpoclient ... MGC_DISTNAME= mygpoclient-1.4 MGC_WRKSRC= ${WRKDIR}/${MGC_DISTNAME}/mygpoclient ... pre-build: @${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py ${MGC_WRKSRC} @${PYTHON_CMD} -O ${PYTHON_LIBDIR}/compileall.py ${MGC_WRKSRC} pre-install: @${MKDIR} ${PYTHON_SITELIBDIR}/mygpoclient @(cd ${MGC_WRKSRC} && ${COPYTREE_SHARE} . ${PYTHON_SITELIBDIR}/mygpoclient) The pkg-plist then contains multiple lines of the following form, to delete the files installed in the pre-install step: ... %%PYTHON_SITELIBDIR%%/mygpoclient/api.py %%PYTHON_SITELIBDIR%%/mygpoclient/api.pyc ... I've submitted a PR to update gpodder to 2.8 (and now 2.9), but the committers are reporting plist errors related to these mygpoclient files. The files are not being removed when gpodder is pkg-deleted. While researching this, I ran some simple tests using ports-mgmt/genplist and noticed that the mygpoclient files were being installed under /usr/local/lib and NOT under the tmp prefix as expected. ("genplist create /tmp/portname" sets PREFIX to /tmp/portname and installs the port there. I like to use it as a quick-and-dirty test of the install.) So I tried using PYTHONPREFIX_SITELIBDIR in the pre-install commands, and this seemed to work here on my own machine, testing with both genplist and tinderbox. (The pkg-plist lines were unchanged.) Today, however, I got another report of a plist failure. I'm not sure if the version tested was using PYTHONPREFIX_SITELIBDIR and will ask the committer about that. But I would like to get some advice from this list: is my approach correct? Is there a better way to accomplish the goal?
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20101011214052.GC1130>