Date: Tuesday, November 30, 2021 @ 21:45:14 Author: felixonmars Revision: 1058993
archrelease: copy trunk to community-staging-x86_64 Added: python-autobahn/repos/community-staging-x86_64/ python-autobahn/repos/community-staging-x86_64/PKGBUILD (from rev 1058992, python-autobahn/trunk/PKGBUILD) python-autobahn/repos/community-staging-x86_64/judge-sse-header.patch (from rev 1058992, python-autobahn/trunk/judge-sse-header.patch) ------------------------+ PKGBUILD | 66 +++++++++++++++++++++++++++++++++++++++++++++++ judge-sse-header.patch | 14 +++++++++ 2 files changed, 80 insertions(+) Copied: python-autobahn/repos/community-staging-x86_64/PKGBUILD (from rev 1058992, python-autobahn/trunk/PKGBUILD) =================================================================== --- community-staging-x86_64/PKGBUILD (rev 0) +++ community-staging-x86_64/PKGBUILD 2021-11-30 21:45:14 UTC (rev 1058993) @@ -0,0 +1,66 @@ +# Maintainer: Morten Linderud <foxbo...@archlinux.org> +# Maintainer: Chih-Hsuan Yen <yan12...@archlinux.org> +# Maintainer: Anatol Pomozov + +pkgname=python-autobahn +pkgver=21.11.1 +pkgrel=2 +pkgdesc='Real-time framework for Web, Mobile & Internet of Things' +arch=(x86_64) +url='https://crossbar.io/autobahn/' +license=(MIT) +depends=(python-cffi python-twisted python-txaio python-wsaccel + python-cryptography) +makedepends=(python-argon2_cffi python-cbor python-flatbuffers + python-msgpack python-passlib python-pynacl python-pytrie + python-setuptools python-ubjson) +checkdepends=(python-pytest python-pytest-asyncio) +optdepends=( + 'python-cbor: CBOR serializer support' + 'python-flatbuffers: FlatBuffers serializer support' + 'python-msgpack: MsgPack serializer support' + 'python-u-msgpack: pure-python alternative to python-msgpack for MsgPack serializer support' + 'python-ubjson: UBJSON serializer support' + 'python-ujson: accelerated JSON serializer support' + 'python-argon2_cffi: WAMP-SCRAM authentication support' + 'python-passlib: WAMP-SCRAM authentication support' + 'python-pynacl: WAMP-cryptosign and WAMP-cryptobox support' + 'python-pytrie: WAMP-cryptobox support' + 'python-pyopenssl: SSL/TLS support' + 'python-snappy: snappy compression suppport for WebSocket messages' +) + +source=(https://files.pythonhosted.org/packages/source/a/autobahn/autobahn-$pkgver.tar.gz + judge-sse-header.patch) +sha256sums=('bd6f46315419ca0a5be4109f737410208ad5f19718f67ca6a4a674cc66ca9b18' + 'a6505b22363d7b1bbd6c9b4d503118e16129abf91e65885b7ee7f47f74ed9d00') + +prepare() { + cd "$srcdir/autobahn-$pkgver" + # For reproducibility + # If Arch decides to increase CPU requirements [1], -march=x86-64 can be + # replaced with -march=nehalem so that the SSE 4.1 implementation is built + # [1] https://lists.archlinux.org/pipermail/arch-dev-public/2020-March/029914.html + sed -i "s#, '-march=native'##" autobahn/nvx/_utf8validator.py + patch -Np1 -i "${srcdir}/judge-sse-header.patch" +} + +build() { + cd "$srcdir/autobahn-$pkgver" + AUTOBAHN_USE_NVX=1 python setup.py build +} + +check() { + cd "$srcdir/autobahn-$pkgver" + pyver=$(python -c "import sys; print('{}.{}'.format(*sys.version_info[:2]))") + # "autobahn on asyncio is tested using pytest, while for twisted we are using twisted trial" + # https://github.com/crossbario/autobahn-python/issues/1235#issuecomment-522440810 + USE_TWISTED=1 PYTHONPATH=.:build/lib.linux-$CARCH-$pyver trial autobahn + USE_ASYNCIO=1 PYTHONPATH=.:build/lib.linux-$CARCH-$pyver pytest autobahn +} + +package() { + cd "$srcdir/autobahn-$pkgver" + AUTOBAHN_USE_NVX=1 python setup.py install --root="$pkgdir" --optimize=1 --skip-build + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} Copied: python-autobahn/repos/community-staging-x86_64/judge-sse-header.patch (from rev 1058992, python-autobahn/trunk/judge-sse-header.patch) =================================================================== --- community-staging-x86_64/judge-sse-header.patch (rev 0) +++ community-staging-x86_64/judge-sse-header.patch 2021-11-30 21:45:14 UTC (rev 1058993) @@ -0,0 +1,14 @@ +diff --git a/autobahn/nvx/_utf8validator.c b/autobahn/nvx/_utf8validator.c +index 5e632ac..cb0440d 100644 +--- a/autobahn/nvx/_utf8validator.c ++++ b/autobahn/nvx/_utf8validator.c +@@ -28,7 +28,9 @@ + #include <stdint.h> + + // http://stackoverflow.com/questions/11228855/header-files-for-simd-intrinsics ++#if defined(__SSE2__) || defined(__SSE4_1__) + #include <x86intrin.h> ++#endif + + + #define UTF8_ACCEPT 0