Ports using USE_PYTHON=distutils are now flavored. They will
automatically get flavors (py27, py34, py35, py36) depending on what
versions they support.
There is also a USE_PYTHON=flavors for ports that do not use distutils
but need FLAVORS to be set. A USE_PYTHON=noflavors can be set if
using distutils but flavors are not wanted.
A new USE_PYTHON=optsuffix that will add PYTHON_PKGNAMESUFFIX has been
added to cope with Python ports that did not have the Python
PKGNAMEPREFIX but are flavored.
USES=python now also exports a PY_FLAVOR variable that contains the
current python flavor. It can be used in dependency lines when the
port itself is not python flavored. For example, deskutils/calibre.
By default, all the flavors are generated. To only generate flavors
for the versions in PYTHON2_DEFAULT and PYTHON3_DEFAULT, define
BUILD_DEFAULT_PYTHON_FLAVORS in your make.conf.
In all the ports with Python dependencies, the *_DEPENDS entries MUST
end with the flavor so that the framework knows which to build/use.
This is done by appending '@${PY_FLAVOR}' after the origin (or
@${FLAVOR} if in a Python module with Python flavors, as the content
will be the same). For example:
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR}
PR: 223071
Reviewed by: portmgr, python
Sponsored by: Absolight
Differential Revision: https://reviews.freebsd.org/D12464
68 lines
2.1 KiB
Makefile
68 lines
2.1 KiB
Makefile
# Created by: dikshie
|
|
# $FreeBSD$
|
|
|
|
PORTNAME= networkx
|
|
PORTVERSION= 1.10
|
|
PORTREVISION= 3
|
|
CATEGORIES= math python
|
|
MASTER_SITES= http://networkx.lanl.gov/download/networkx/ \
|
|
CHEESESHOP
|
|
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
|
|
|
MAINTAINER= dikshie@sfc.wide.ad.jp
|
|
COMMENT= Tools for complex networks
|
|
|
|
LICENSE= BSD3CLAUSE
|
|
|
|
RUN_DEPENDS:= ${PYTHON_PKGNAMEPREFIX}decorator>=3.4.0:devel/py-decorator@${FLAVOR}
|
|
|
|
# ${PYTHON_PKGNAMEPREFIX}sphinx>=1.2.3:textproc/py-sphinx@${FLAVOR} \
|
|
# ${PYTHON_PKGNAMEPREFIX}docutils>=0.12:textproc/py-docutils@${FLAVOR}
|
|
|
|
NO_ARCH= yes
|
|
USES= python:2.7 shebangfix
|
|
USE_PYTHON= autoplist concurrent distutils
|
|
SHEBANG_FILES= examples/graph/atlas.py \
|
|
examples/multigraph/chess_masters.py \
|
|
networkx/generators/tests/test_random_graphs.py
|
|
|
|
PLIST_SUB+= PYTHON_MAJOR_VER=${PYTHON_MAJOR_VER}
|
|
|
|
OPTIONS_DEFINE= EXAMPLES YAML
|
|
OPTIONS_GROUP= MATRIX RENDER
|
|
OPTIONS_GROUP_MATRIX= NUMPY SCIPY
|
|
OPTIONS_GROUP_RENDER= MPL GRAPHVIZ
|
|
OPTIONS_DEFAULT= NUMPY SCIPY MPL GRAPHVIZ YAML
|
|
|
|
NUMPY_DESC= Matrix representation of graphs
|
|
NUMPY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}numpy>=1.9.2,1:math/py-numpy@${FLAVOR}
|
|
|
|
SCIPY_DESC= Sparse matrix representation of graphs
|
|
SCIPY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}scipy>=0.15.1:science/py-scipy@${FLAVOR} \
|
|
${PYTHON_PKGNAMEPREFIX}scikit-sparse>=0.2:science/py-scikit-sparse@${FLAVOR}
|
|
|
|
MPL_DESC= Flexible graph rendering
|
|
MPL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>=1.4.0:math/py-matplotlib@${FLAVOR}
|
|
|
|
GRAPHVIZ_DESC= Additional graph layout and rendering algorithms
|
|
GRAPHVIZ_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygraphviz>=1.2:graphics/py-pygraphviz@${FLAVOR}
|
|
|
|
YAML_DESC= Reading and writing YAML files
|
|
YAML_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}yaml>=0:devel/py-yaml@${FLAVOR}
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if ${PYTHON_REL} >= 3000
|
|
. if ${PORT_OPTIONS:MMPL} || ${PORT_OPTIONS:MGRAPHVIZ}
|
|
BROKEN= Neither math/py-matplotlib nor graphics/py-graphviz support Python 3.x yet. Please disable both the MPL and GRAPHVIZ options
|
|
. endif
|
|
.endif
|
|
|
|
PORTEXAMPLES= *
|
|
|
|
post-install:
|
|
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
|
|
cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR}
|
|
|
|
.include <bsd.port.post.mk>
|