summaryrefslogtreecommitdiff
path: root/www/py-autobahn
diff options
context:
space:
mode:
authorMathieu Arnold <mat@FreeBSD.org>2017-11-30 15:50:30 +0000
committerMathieu Arnold <mat@FreeBSD.org>2017-11-30 15:50:30 +0000
commit551be3c7231225ed9c26479af2b8914fb2ef0ea8 (patch)
treed296c82a71504382f4faefa0bf8d7be384ea1105 /www/py-autobahn
parent02f9c9be1699251467efc027f210049dfe14f9c5 (diff)
downloadfreebsd-ports-551be3c7231225ed9c26479af2b8914fb2ef0ea8.zip
Convert Python ports to FLAVORS.
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
Diffstat (limited to 'www/py-autobahn')
-rw-r--r--www/py-autobahn/Makefile40
1 files changed, 14 insertions, 26 deletions
diff --git a/www/py-autobahn/Makefile b/www/py-autobahn/Makefile
index 845a1c74f442..d6898e3af81a 100644
--- a/www/py-autobahn/Makefile
+++ b/www/py-autobahn/Makefile
@@ -13,11 +13,11 @@ COMMENT= WebSocket client & server library, WAMP real-time framework
LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>=1.6.1:devel/py-six \
- ${PYTHON_PKGNAMEPREFIX}txaio>=2.2.0:devel/py-txaio
-TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=2.7.2:devel/py-pytest \
- ${PYTHON_PKGNAMEPREFIX}mock>=1.3.0:devel/py-mock \
- ${PYTHON_PKGNAMEPREFIX}trollius>0:devel/py-trollius # Not really a depends, but the test doesnt skip
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>=1.6.1:devel/py-six@${FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}txaio>=2.2.0:devel/py-txaio@${FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=2.7.2:devel/py-pytest@${FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}mock>=1.3.0:devel/py-mock@${FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}trollius>0:devel/py-trollius@${FLAVOR} # Not really a depends, but the test doesnt skip
USES= python
USE_GITHUB= yes
@@ -29,37 +29,25 @@ GH_ACCOUNT= crossbario
GH_PROJECT= autobahn-python
OPTIONS_DEFINE= ACCELERATE SERIALIZATION
-OPTIONS_MULTI= BACKENDS
-OPTIONS_MULTI_BACKENDS= ASYNCIO TWISTED
-OPTIONS_DEFAULT= ACCELERATE SERIALIZATION TWISTED
+OPTIONS_DEFAULT= ACCELERATE SERIALIZATION
BACKENDS_DESC= Networking Backends
ACCELERATE_DESC= WebSocket and JSON Acceleration
-ASYNCIO_DESC= asyncio (PEP-3156) Backend (Python 3.x ONLY)
SERIALIZATION_DESC= WAMPv2 Binary Serialization
-TWISTED_DESC= Twisted Backend (Python 2.x ONLY)
-ACCELERATE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}wsaccel>=0.6.2:www/py-wsaccel \
- ${PYTHON_PKGNAMEPREFIX}ujson>=1.33:devel/py-ujson
+ACCELERATE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}wsaccel>=0.6.2:www/py-wsaccel@${FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ujson>=1.33:devel/py-ujson@${FLAVOR}
-SERIALIZATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}msgpack-python>=0.4.0:devel/py-msgpack-python
-
-TWISTED_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}zope.interface>=3.6:devel/py-zope.interface \
- ${PYTHON_PKGNAMEPREFIX}twisted>=12.1:devel/py-twisted
+SERIALIZATION_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}msgpack-python>=0.4.0:devel/py-msgpack-python@${FLAVOR}
.include <bsd.port.pre.mk>
-.if ${PORT_OPTIONS:MTWISTED} && ${PYTHON_REL} >= 3000
-BROKEN= Twisted currently only supports Python 2.x. Disable the TWISTED option and use ASYNCIO instead
-.endif
-
-.if ${PORT_OPTIONS:MASYNCIO}
-.if ${PYTHON_REL} <= 3000
-BROKEN= ASYNCIO requires Python 3.x. Disable the ASYNCIO option and use TWISTED instead
-.elif ${PYTHON_REL} <= 3300
-RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}asyncio>=3.4.3:devel/py-asyncio
-.endif
+.if ${FLAVOR} == python2
+RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}zope.interface>=3.6:devel/py-zope.interface@${FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}twisted>=12.1:devel/py-twisted@${FLAVOR}
+.elif ${FLAVOR} == python3 && ${PYTHON_REL} <= 3300
+RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}asyncio>=3.4.3:devel/py-asyncio@${FLAVOR}
.endif
do-test: