summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--converters/py-rencode/Makefile11
-rw-r--r--converters/py-rencode/files/patch-setup.py35
2 files changed, 45 insertions, 1 deletions
diff --git a/converters/py-rencode/Makefile b/converters/py-rencode/Makefile
index 2c9a058c7627..c06747201d83 100644
--- a/converters/py-rencode/Makefile
+++ b/converters/py-rencode/Makefile
@@ -2,12 +2,13 @@
PORTNAME= rencode
PORTVERSION= 1.0.6
+PORTREVISION= 1
CATEGORIES= converters devel python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= python@FreeBSD.org
-COMMENT= R-encoding and r-decoding implementation
+COMMENT= Web safe object pickling/unpickling
LICENSE= GPLv3
LICENSE_FILE= ${WRKSRC}/COPYING
@@ -17,7 +18,15 @@ BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
USES= python
USE_PYTHON= autoplist distutils
+# Make setup.py test target work with setup.py:test_suite
+# See: files/patch-setup.py
+post-patch:
+ ${TOUCH} ${WRKSRC}/tests/__init__.py
+
post-install:
${STRIP_CMD} ${STAGEDIR}${PYTHON_SITELIBDIR}/rencode/_rencode.so
+do-test:
+ cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test
+
.include <bsd.port.mk>
diff --git a/converters/py-rencode/files/patch-setup.py b/converters/py-rencode/files/patch-setup.py
new file mode 100644
index 000000000000..8c34a7b2e316
--- /dev/null
+++ b/converters/py-rencode/files/patch-setup.py
@@ -0,0 +1,35 @@
+# 1) converters/py-rencode: Fails to configure if cython is installed
+# 2) make setup.py test command work via test_suite directive
+# 3) Honour/respect user CFLAGS
+# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233561
+
+--- setup.py.orig 2018-10-21 17:41:35 UTC
++++ setup.py
+@@ -29,19 +29,14 @@ from distutils.errors import CCompilerError, Distutils
+ from setuptools import setup
+ from setuptools.extension import Extension
+
+-try:
+- from Cython.Build import build_ext
+- from Cython.Build import cythonize
+-except ImportError as ex:
+- from setuptools.command.build_ext import build_ext
+- cythonize = False
++from setuptools.command.build_ext import build_ext
++cythonize = False
+
+ source_ext = ".pyx" if cythonize else ".c"
+
+ ext_modules = [
+ Extension(
+ "rencode._rencode",
+- extra_compile_args=["-O3"],
+ sources=["rencode/rencode" + source_ext],
+ ),
+ ]
+@@ -93,4 +88,5 @@ setup(
+ cmdclass={'build_ext': optional_build_ext},
+ ext_modules=ext_modules,
+ setup_requires=['setuptools', 'wheel'],
++ test_suite='tests',
+ )