On Tue, Mar 26 2019, Kurt Mosiejczuk wrote:
> On Tue, Mar 26, 2019 at 04:35:33PM +0100, Jeremie Courreges-Anglas wrote:
>
>> py-slixmpp failed to build in the last sparc64 bulk:
>
>> http://build-failures.rhaalovely.net//sparc64/2019-03-04/net/py-slixmpp.log
>
>> This can be reproduced on clang archs if both libidn and py3-cython are
>> installed.
>
>> The diff below adds the optional deps and the paths to /usr/local to
>> solve the build error. Upstream says:
>
>> Building
>
>> Slixmpp can make use of cython to improve performance on critical
>> modules. To do that, cython3 is necessary along with libidn headers.
>> Otherwise, no compilation is needed.
>
>> make test doesn't show a performance improvement but maybe that's not
>> the point of a testsuite.
>
>> I should add that I have no idea whether python's "stringprep" and
>> libidn(1) are functionally equivalent. If you prefer to disable cython
>> support instead then setup.py needs a patch.
>
>> Thoughts?
>
> I don't have a strong preference, but I figure if we don't *need* cython,
> I'd go with less code rather than more. Here's an alternate patch that
> gets rid of cython and does a minimal patch to setup.py.
Thanks, I committed your diff with a slight tweak,
> --Kurt
>
> Index: Makefile
> ===
> RCS file: /cvs/ports/net/py-slixmpp/Makefile,v
> retrieving revision 1.11
> diff -u -p -r1.11 Makefile
> --- Makefile 7 Feb 2019 21:31:32 - 1.11
> +++ Makefile 26 Mar 2019 18:00:11 -
> @@ -6,6 +6,7 @@ MODPY_EGG_VERSION = 1.4.2
> DISTNAME = slixmpp-${MODPY_EGG_VERSION}
> PKGNAME =py3-${DISTNAME}
> CATEGORIES = net
> +REVISION = 0
>
> MAINTAINER = Kurt Mosiejczuk
>
> Index: patches/patch-setup_py
> ===
> RCS file: patches/patch-setup_py
> diff -N patches/patch-setup_py
> --- /dev/null 1 Jan 1970 00:00:00 -
> +++ patches/patch-setup_py26 Mar 2019 18:00:11 -
> @@ -0,0 +1,16 @@
> +$OpenBSD$
> +
> +Unnecessary usage of cython blows up things on sparc64
as I said it's not specific to sparc64, you can reproduce it on amd64.
> +
> +Index: setup.py
> +--- setup.py.orig
> setup.py
> +@@ -62,7 +62,7 @@ HAS_PYTHON_HEADERS = check_include('python3', 'Python.
> + HAS_STRINGPREP_HEADERS = check_include('libidn', 'stringprep.h')
> +
> + ext_modules = None
> +-if HAS_PYTHON_HEADERS and HAS_STRINGPREP_HEADERS:
> ++if 1 == 0:
> + try:
> + from Cython.Build import cythonize
> + except ImportError:
>
--
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE