1*4882a593SmuzhiyunFrom 1e3162bab59cbc2f7cf8b9ef6cadf55ee273c1d8 Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: James Hilliard <james.hilliard1@gmail.com>
3*4882a593SmuzhiyunDate: Thu, 22 Jul 2021 06:56:51 -0600
4*4882a593SmuzhiyunSubject: [PATCH] Build with nvx by default and don't publish universal wheel.
5*4882a593Smuzhiyun (#1493)
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunSigned-off-by: James Hilliard <james.hilliard1@gmail.com>
8*4882a593Smuzhiyun[james.hilliard1@gmail.com: backport from upstream commit
9*4882a593Smuzhiyuna35f22eeaafca7568f1deb35c4a1b82ae78f77d4]
10*4882a593Smuzhiyun---
11*4882a593Smuzhiyun Makefile                       | 8 ++++----
12*4882a593Smuzhiyun autobahn/nvx/_utf8validator.py | 7 ++++++-
13*4882a593Smuzhiyun setup.py                       | 7 +------
14*4882a593Smuzhiyun 3 files changed, 11 insertions(+), 11 deletions(-)
15*4882a593Smuzhiyun
16*4882a593Smuzhiyundiff --git a/autobahn/nvx/_utf8validator.py b/autobahn/nvx/_utf8validator.py
17*4882a593Smuzhiyunindex e72fc872..34393356 100644
18*4882a593Smuzhiyun--- a/autobahn/nvx/_utf8validator.py
19*4882a593Smuzhiyun+++ b/autobahn/nvx/_utf8validator.py
20*4882a593Smuzhiyun@@ -44,13 +44,18 @@ ffi.cdef("""
21*4882a593Smuzhiyun     int nvx_utf8vld_get_impl(void* utf8vld);
22*4882a593Smuzhiyun """)
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun+optional = True
25*4882a593Smuzhiyun+if 'AUTOBAHN_USE_NVX' in os.environ and os.environ['AUTOBAHN_USE_NVX'] in ['1', 'true']:
26*4882a593Smuzhiyun+    optional = False
27*4882a593Smuzhiyun+
28*4882a593Smuzhiyun with open(os.path.join(os.path.dirname(__file__), '_utf8validator.c')) as fd:
29*4882a593Smuzhiyun     c_source = fd.read()
30*4882a593Smuzhiyun     ffi.set_source(
31*4882a593Smuzhiyun         "_nvx_utf8validator",
32*4882a593Smuzhiyun         c_source,
33*4882a593Smuzhiyun         libraries=[],
34*4882a593Smuzhiyun-        extra_compile_args=['-std=c99', '-Wall', '-Wno-strict-prototypes', '-O3', '-march=native']
35*4882a593Smuzhiyun+        extra_compile_args=['-std=c99', '-Wall', '-Wno-strict-prototypes', '-O3', '-march=native'],
36*4882a593Smuzhiyun+        optional=optional
37*4882a593Smuzhiyun     )
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun
40*4882a593Smuzhiyundiff --git a/setup.py b/setup.py
41*4882a593Smuzhiyunindex f27006da..4889a39e 100644
42*4882a593Smuzhiyun--- a/setup.py
43*4882a593Smuzhiyun+++ b/setup.py
44*4882a593Smuzhiyun@@ -110,12 +110,7 @@ extras_require_nvx = [
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun # cffi based extension modules to build, currently only NVX
47*4882a593Smuzhiyun cffi_modules = []
48*4882a593Smuzhiyun-if 'AUTOBAHN_USE_NVX' in os.environ:
49*4882a593Smuzhiyun-    # FIXME: building this extension will make the wheel
50*4882a593Smuzhiyun-    # produced no longer universal (as in "autobahn-18.4.1-py2.py3-none-any.whl").
51*4882a593Smuzhiyun-    # on the other hand, I don't know how to selectively include this
52*4882a593Smuzhiyun-    # based on the install flavor the user has chosen (eg pip install autobahn[nvx]
53*4882a593Smuzhiyun-    # should make the following be included)
54*4882a593Smuzhiyun+if 'AUTOBAHN_USE_NVX' not in os.environ or os.environ['AUTOBAHN_USE_NVX'] not in ['0', 'false']:
55*4882a593Smuzhiyun     cffi_modules.append('autobahn/nvx/_utf8validator.py:ffi')
56*4882a593Smuzhiyun
57*4882a593Smuzhiyun extras_require_xbr = [
58*4882a593Smuzhiyun--
59*4882a593Smuzhiyun2.25.1
60*4882a593Smuzhiyun
61