preparation on moving to py-distribute
Volodymyr Kostyrko
c.kworr at gmail.com
Wed Jun 13 15:04:22 UTC 2012
Hi all.
I recently found Pyrseas, a piece of software that I really like to have
in ports collection. It's about SQL database definitions and storing
them in VCS. Anyone intrested can check
http://pyrseas.readthedocs.org/en/latest/overview.html for more details.
I created a port for this one
(https://redports.org/browser/kworr/databases/py-Pyrseas) just to found
that after installation completes port is unusable. After roaming
through internet I identified py-setuptools as source of the
problem/incompatibility.
I also found that py-setuptools is long ago abandoned and active fork
already exists named py-distribute.
Trying to move to py-distribute I found that:
1. Simple 'portmaster -o devel/py-distribute devel/py-setuptools'
doesn't work. If you want to move to py-distribute you need to deinstall
py-setuptools with all dependencies.
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/168980 filed.
2. Even if py-distribute is installed any port would depend on
py-setuptools bringing it in. py-setuptools has no conflicts for
py-distribute.
3. There are ports that directly depend on py-setuptools.
If noone else can start this move now I can at least plan it and provide
some starting solutions.
First. We need a clear way to force inner dependency on py-distribute
for python 2.7. I think there would be nice adding one more temporary
variable to setuptools support section:
# setuptools support
.if defined(USE_PYDISTUTILS) && ${USE_PYDISTUTILS} == "easy_install"
-.if ${PYTHON_SUFFIX} < 30
+.if ${PYTHON_SUFFIX} < 30 && !defined (TEST_USE_PYDISTRIBUTE)
BUILD_DEPENDS+= ${PYEASYINSTALL_CMD}:${PORTSDIR}/devel/py-setuptools
RUN_DEPENDS+= ${PYEASYINSTALL_CMD}:${PORTSDIR}/devel/py-setuptools
.else
This doesn't correlates with general variable naming in Mk, yet this is
a oneliner, it correctly states that WIP and everything can blow up
instantly and now anyone can add TEST_USE_PYDISTRIBUTE to /etc/make.conf
to switch from py-setuptools.
I also can provide a simple patch that fixes www/trac-graphviz when
building with py-distribute:
@@ -20,11 +20,9 @@
RUN_DEPENDS+=
${LOCALBASE}/lib/X11/fonts/URW/fonts.dir:${PORTSDIR}/x11-fonts/urwfonts \
dot:${PORTSDIR}/graphics/graphviz \
tracd:${PORTSDIR}/www/trac
-BUILD_DEPENDS+= easy_install:${PORTSDIR}/devel/py-setuptools
USE_PYTHON= 2.5+
-NO_BUILD= yes
-USE_PYDISTUTILS=yes
+USE_PYDISTUTILS=easy_install
PYDISTUTILS_PKGNAME= graphviz
WRKSRC= ${WRKDIR}/${PORTNAME}plugin
PYDISTUTILS_NOEGGINFO= yes
@@ -39,7 +37,4 @@
-e 's|%%OSMAJOR%%|${OSREL:C/\..*$//}|' \
${WRKSRC}/graphviz/graphviz.py
-do-build:
- @${DO_NADA}
-
.include <bsd.port.mk>
c'mon guys, lets not make this a year-or-two patch like the issue with
not installing egg files. I no I can be wrong so punch me someone. I
just want to make an easy first step that doesn't break anything but
make all further steps a bit easier. :)
--
Sphinx of black quartz judge my vow.
More information about the freebsd-python
mailing list