svn commit: r408353 - in head: . devel/py-fsm graphics graphics/py-graphviz graphics/py-pygraphviz graphics/py-pygraphviz/files math/py-networkx science/gramps
Kubilay Kocak
koobs at FreeBSD.org
Sun Feb 7 09:44:26 UTC 2016
Author: koobs
Date: Sun Feb 7 09:44:24 2016
New Revision: 408353
URL: https://svnweb.freebsd.org/changeset/ports/408353
Log:
graphics/py-graphviz: Move to py-pygraphviz, Fix 3.x build
There are numerous graphviz related packages in PyPI, including:
graphviz, graphviz-python and pygraphviz.
This port, py-graphviz, is not and does not provide the same package
as the 'graphviz' package on PyPI (CHEESESHOP).
Further, it blocks the creation of a correctly named py-graphviz port,
is a POLA violation in terms of users expecting to find and recieve
the package they expect based on a standard search, and is likely to
create confusion among other ports if they depend on a python graphviz
package, which could result in incorrect packages/dependencies.
This is why among other reasons, Python packages should be named
exactly what they are called in PyPI, or inside install_requires,
setup_requires or tests_requires as dependencies in other packages.
This change moves py-graphviz to py-pygraphviz to correct the above
incorrect naming.
While I'm here:
- Remove backup (http) MASTER_SITES, CHEESESHOP is highly-available
and provides a Geo-aware CDN by Fastly.
- Remove {BUILD,RUN}_DEPENDS in favour of the actual LIB_DEPENDS
- Use PYDISTUTILS_* framework variables to customise the build instead
of hack patching setup.py
- Enable autoplist, fixing builds on Python 3.x [1]
- Enable concurrent (Python version) installation
- Hack patch setup.py to preclude docs installation, as it adds a
directory to --record and breaks pkg-plist output [2]
- Remove DOCSDIR override (no longer necessary)
- Assign MAINTAINER'ship to python@
- Add TEST_DEPENDS and test target
- pkg-descr: Match WWW URL to setup.py:homepage field
- pkg-descr: Improve package description text (matching upstream)
While I'm sweeping dependencies:
- Fix a typo in science/gramps: s|>-|>=
[2] https://wiki.freebsd.org/Python (Open task for install_data bug)
Reported by: Ben Woods (via IRC) [1]
Added:
head/graphics/py-pygraphviz/
- copied from r408352, head/graphics/py-graphviz/
Deleted:
head/graphics/py-graphviz/
head/graphics/py-pygraphviz/pkg-plist
Modified:
head/MOVED
head/devel/py-fsm/Makefile
head/graphics/Makefile
head/graphics/py-pygraphviz/Makefile
head/graphics/py-pygraphviz/files/patch-setup.py
head/graphics/py-pygraphviz/pkg-descr
head/math/py-networkx/Makefile
head/science/gramps/Makefile
Modified: head/MOVED
==============================================================================
--- head/MOVED Sun Feb 7 09:09:38 2016 (r408352)
+++ head/MOVED Sun Feb 7 09:44:24 2016 (r408353)
@@ -8133,3 +8133,4 @@ databases/py32-sqlite3||2016-02-02|Has e
x11-toolkits/py32-tkinter||2016-02-02|Has expired: Full EOL reached. Please update to Python 3.5
sysutils/puppet|sysutils/puppet38|2016-02-05|Renamed
devel/etcdctl|devel/etcd|2016-02-06|Has expired: etcdctl is now part of etcd, following the change from the upstream
+graphics/py-graphviz|graphics/py-pygraphviz|2016-02-07|Renamed to match upstream (PyPI) name
Modified: head/devel/py-fsm/Makefile
==============================================================================
--- head/devel/py-fsm/Makefile Sun Feb 7 09:09:38 2016 (r408352)
+++ head/devel/py-fsm/Makefile Sun Feb 7 09:44:24 2016 (r408353)
@@ -2,7 +2,7 @@
PORTNAME= fsm
PORTVERSION= 0.01
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= devel python
MASTER_SITES= GOOGLE_CODE
PROJECTHOST= python-${PORTNAME}
@@ -14,7 +14,7 @@ COMMENT= Pure Python Implementation of a
LICENSE= BSD3CLAUSE
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}graphviz>=1.0:${PORTSDIR}/graphics/py-graphviz
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygraphviz>=1.0:${PORTSDIR}/graphics/py-pygraphviz
USES= python
USE_PYTHON= distutils
Modified: head/graphics/Makefile
==============================================================================
--- head/graphics/Makefile Sun Feb 7 09:09:38 2016 (r408352)
+++ head/graphics/Makefile Sun Feb 7 09:44:24 2016 (r408353)
@@ -839,7 +839,6 @@
SUBDIR += py-graph
SUBDIR += py-graph-core
SUBDIR += py-graph-dot
- SUBDIR += py-graphviz
SUBDIR += py-graphy
SUBDIR += py-gvgen
SUBDIR += py-imaging
@@ -864,6 +863,7 @@
SUBDIR += py-pyganim
SUBDIR += py-pyggel
SUBDIR += py-pyglet
+ SUBDIR += py-pygraphviz
SUBDIR += py-pygooglechart
SUBDIR += py-pyproj
SUBDIR += py-qt4-svg
Modified: head/graphics/py-pygraphviz/Makefile
==============================================================================
--- head/graphics/py-graphviz/Makefile Sun Feb 7 09:09:38 2016 (r408352)
+++ head/graphics/py-pygraphviz/Makefile Sun Feb 7 09:44:24 2016 (r408353)
@@ -1,25 +1,25 @@
# Created by: Hye-Shik Chang <perky at fallin.lv>
# $FreeBSD$
-PORTNAME= graphviz
+PORTNAME= pygraphviz
PORTVERSION= 1.3.1
CATEGORIES= graphics python
-MASTER_SITES= CHEESESHOP \
- http://networkx.lanl.gov/download/pygraphviz/
+MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
-DISTNAME= pygraphviz-${PORTVERSION}
-MAINTAINER= ports at FreeBSD.org
+MAINTAINER= python at FreeBSD.org
COMMENT= Python interface to GraphViz agraph
-BUILD_DEPENDS= dot:${PORTSDIR}/graphics/graphviz
-RUN_DEPENDS= dot:${PORTSDIR}/graphics/graphviz
+
+LIB_DEPENDS= libcgraph.so:${PORTSDIR}/graphics/graphviz
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}nose>=0.10.1:${PORTSDIR}/devel/py-nose
USES= pkgconfig python
-USE_PYTHON= distutils
-PYDISTUTILS_PKGNAME= pygraphviz
+USE_PYTHON= autoplist concurrent distutils
-DOCSDIR= ${PREFIX}/share/doc/py-${PORTNAME}
+PYDISTUTILS_BUILD_TARGET= build build_ext
+PYDISTUTILS_BUILDARGS= --include-dirs=${LOCALBASE}/include \
+ --library-dirs=${LOCALBASE}/lib/graphviz
post-patch:
@${REINPLACE_CMD} -e 's+%%LOCALBASE%%+${LOCALBASE}+; \
@@ -28,4 +28,7 @@ post-patch:
post-install:
${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/pygraphviz/_graphviz.so
+do-test:
+ @cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test
+
.include <bsd.port.mk>
Modified: head/graphics/py-pygraphviz/files/patch-setup.py
==============================================================================
--- head/graphics/py-graphviz/files/patch-setup.py Sun Feb 7 09:09:38 2016 (r408352)
+++ head/graphics/py-pygraphviz/files/patch-setup.py Sun Feb 7 09:44:24 2016 (r408353)
@@ -1,13 +1,32 @@
---- setup.py.orig 2015-09-06 13:49:49 UTC
+--- setup.py.orig 2016-02-07 08:48:26 UTC
+++ setup.py
-@@ -54,8 +54,8 @@ if __name__ == "__main__":
- Extension(
- "pygraphviz._graphviz",
- ["pygraphviz/graphviz_wrap.c"],
-- include_dirs=[],
-- library_dirs=[],
-+ include_dirs=["%%LOCALBASE%%/include"],
-+ library_dirs=["%%LOCALBASE%%/lib/graphviz"],
- libraries=["cgraph", "cdt"],
- define_macros=define_macros
- )
+@@ -36,14 +36,6 @@ release.write_versionfile()
+ sys.path.pop(0)
+
+ packages = ["pygraphviz", "pygraphviz.tests"]
+-docdirbase = 'share/doc/pygraphviz-%s' % release.version
+-data = [
+- (docdirbase, glob("*.txt")),
+- (os.path.join(docdirbase, 'examples'), glob("examples/*.py")),
+- (os.path.join(docdirbase, 'examples'), glob("examples/*.dat")),
+- (os.path.join(docdirbase, 'examples'), glob("examples/*.dat.gz")),
+-]
+-package_data = {'': ['*.txt'], }
+
+ if __name__ == "__main__":
+ define_macros = []
+@@ -75,14 +67,11 @@ if __name__ == "__main__":
+ download_url=release.download_url,
+ classifiers=release.classifiers,
+ packages=packages,
+- data_files=data,
+ ext_modules=extension,
+ cmdclass={
+ 'install': AddExtensionInstallCommand,
+ 'develop': AddExtensionDevelopCommand,
+ },
+- package_data=package_data,
+- include_package_data = True,
+ test_suite='nose.collector',
+ tests_require=['nose>=0.10.1', 'doctest-ignore-unicode>=0.1.0',],
+ )
Modified: head/graphics/py-pygraphviz/pkg-descr
==============================================================================
--- head/graphics/py-graphviz/pkg-descr Sun Feb 7 09:09:38 2016 (r408352)
+++ head/graphics/py-pygraphviz/pkg-descr Sun Feb 7 09:44:24 2016 (r408353)
@@ -1,3 +1,6 @@
-A Python interface to the agraph component of graphviz.
+PyGraphviz is a Python interface to the Graphviz graph layout and
+visualization package. With PyGraphviz you can create, edit, read,
+write, and draw graphs using Python to access the Graphviz graph
+data structure and layout algorithms.
-WWW: http://networkx.lanl.gov/pygraphviz/
+WWW: http://pygraphviz.github.io
Modified: head/math/py-networkx/Makefile
==============================================================================
--- head/math/py-networkx/Makefile Sun Feb 7 09:09:38 2016 (r408352)
+++ head/math/py-networkx/Makefile Sun Feb 7 09:44:24 2016 (r408353)
@@ -3,7 +3,7 @@
PORTNAME= networkx
PORTVERSION= 1.10
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= math python
MASTER_SITES= http://networkx.lanl.gov/download/networkx/ \
CHEESESHOP
@@ -42,7 +42,7 @@ MPL_DESC= Flexible graph rendering
MPL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>=1.4.0:${PORTSDIR}/math/py-matplotlib
GRAPHVIZ_DESC= Additional graph layout and rendering algorithms
-GRAPHVIZ_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}graphviz>=1.2:${PORTSDIR}/graphics/py-graphviz
+GRAPHVIZ_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygraphviz>=1.2:${PORTSDIR}/graphics/py-pygraphviz
YAML_DESC= Reading and writing YAML files
YAML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}yaml>=0:${PORTSDIR}/devel/py-yaml
Modified: head/science/gramps/Makefile
==============================================================================
--- head/science/gramps/Makefile Sun Feb 7 09:09:38 2016 (r408352)
+++ head/science/gramps/Makefile Sun Feb 7 09:44:24 2016 (r408353)
@@ -3,7 +3,7 @@
PORTNAME= gramps
PORTVERSION= 3.4.9
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= science gnome python
MASTER_SITES= SF/${PORTNAME}/Stable/${PORTVERSION}
@@ -37,7 +37,7 @@ EXIV_DESC= Managing exiv metadata suppo
ENCHANT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}enchant>=0:${PORTSDIR}/textproc/py-enchant
EXIV_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}exiv2>=0.1.3:${PORTSDIR}/graphics/py-exiv2
GNOME_USE= GNOME=pygnome2,gnomedocutils
-GRAPHVIZ_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}graphviz>-0:${PORTSDIR}/graphics/py-graphviz
+GRAPHVIZ_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygraphviz>=0:${PORTSDIR}/graphics/py-pygraphviz
PYWEBKITGTK_RUN_DEPENDS=${PYTHON_PKGNAMEPREFIX}webkitgtk>=0:${PORTSDIR}/www/py-webkitgtk
pre-extract:
More information about the svn-ports-head
mailing list