summaryrefslogtreecommitdiff
path: root/dev-python/pysimdjson
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-04-28 05:11:40 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-04-28 05:11:40 +0100
commit2099ff9b640e648be67527e29760263a7c6274e5 (patch)
tree238358af0ba45fd8fcc6cd4679736d6c4f07f851 /dev-python/pysimdjson
parentd198e0ebeee70707545d19ee3beb1de70802cc7c (diff)
gentoo auto-resync : 28:04:2023 - 05:11:40
Diffstat (limited to 'dev-python/pysimdjson')
-rw-r--r--dev-python/pysimdjson/Manifest4
-rw-r--r--dev-python/pysimdjson/files/pysimdjson-5.0.2-system-lib.patch72
-rw-r--r--dev-python/pysimdjson/files/pysimdjson-5.0.2-tests.patch13
-rw-r--r--dev-python/pysimdjson/pysimdjson-5.0.2-r1.ebuild (renamed from dev-python/pysimdjson/pysimdjson-5.0.2.ebuild)10
4 files changed, 96 insertions, 3 deletions
diff --git a/dev-python/pysimdjson/Manifest b/dev-python/pysimdjson/Manifest
index 611fbbc8f0e3..a90abd8a7f82 100644
--- a/dev-python/pysimdjson/Manifest
+++ b/dev-python/pysimdjson/Manifest
@@ -1,3 +1,5 @@
+AUX pysimdjson-5.0.2-system-lib.patch 2037 BLAKE2B 318344e7f95cb29612e53a075abc835ee7d3741fb47f4555bf4fc9bfdc9548f8be9b4cb726290e9296d27db45fcfe86440af93a22f9527e72dc2656c19ba28fa SHA512 01a70c4b1ee1979ba6b2e3f83eeb0da31ee8bc4fb3c727c79e35a4eebf34201aff14f2b7e5a90d0bf349d1f46d90e43d7b01159cb0637a868d99c5158d719b22
+AUX pysimdjson-5.0.2-tests.patch 599 BLAKE2B e9fad71abd78fe5c55525dc7bc579c0aaa5b59af07168ff600763768d2765928ee8692be480bef044b026abd4346293785b10c8afcaacc3351a2d3140b318b17 SHA512 4920f6e5186249e1f68829fc6619224e3ecdc872c4d47eb2069f9e76b39a45d704aae455038ff8fde741890b0c0cf8fa153a31a728b82b8e471bb29e79efaae3
DIST pysimdjson-5.0.2.gh.tar.gz 3828487 BLAKE2B 6197fa9adaa353df82def9f56f821e8b7f9ec955769e9ac28d990542fc0661f3afbe9cd8f7abfc55cdce8eac94c0e5fc78dba9102c7dcfc4e3c4307d0a6fc5bf SHA512 bd7ba4d6f95967f3cd086077406a2c65b895016c9baf16fa9be6dbf77d31487ad5c40e9e3dd2496070605ef37c6a1dc75f3c1b4c96ddc8465132fbcdbde77fd3
-EBUILD pysimdjson-5.0.2.ebuild 1023 BLAKE2B 32d0b1b8ebdbde34d2090f30932d519d0a1a0b23033f01d569e2046e58b4677bda1cea26d0b188c62ddc4bc2b35994a4887f84ca8eb94b64934f984f2fbdb715 SHA512 c82b4eef7938be733ab1094ebf0626811d2f785df4865ecdfd8d16816004d016e87226aef3b1a6c36f0db08bce84a0b52d55ca087f203b85acba69764320c545
+EBUILD pysimdjson-5.0.2-r1.ebuild 1211 BLAKE2B 06d0612ff39f88a0139f88b2065aec2684595159d5d415e9f019ae10d465ae84ddd0dad1ff78b0d72eb297f05486831675a9e2b58a47c59b71cd45067feca1f6 SHA512 38c02508143eae89b351234b8396200d6b482e39a4d6df87b572ea432336cbaaf615327cc2adb40e16d27a8d84c57a1464e08ce087f0d4c085b9ea09c347ff05
MISC metadata.xml 481 BLAKE2B 003dcb11f0a4855cd8dd86dad350442af6d410e7e1a9eb73ed986f970f12296c9fb48534c15b838a782eef814c2525e26cebf1de3e8cc31fc985d0d7d266d985 SHA512 4bfb851c32fbe0691f89e9fe18e03a96d54bb165e6853b75cef1c03645d562c8ebd33bf220966fe3e645d807cc68944a7d9732f363eb9e8fc686e9056c33c4d7
diff --git a/dev-python/pysimdjson/files/pysimdjson-5.0.2-system-lib.patch b/dev-python/pysimdjson/files/pysimdjson-5.0.2-system-lib.patch
new file mode 100644
index 000000000000..0a419e5dbc40
--- /dev/null
+++ b/dev-python/pysimdjson/files/pysimdjson-5.0.2-system-lib.patch
@@ -0,0 +1,72 @@
+diff --git a/setup.py b/setup.py
+index 865544d..24fdc36 100644
+--- a/setup.py
++++ b/setup.py
+@@ -1,5 +1,6 @@
+ import os.path
+ import platform
++import itertools
+
+ from setuptools import setup, find_packages, Extension
+
+@@ -17,11 +18,18 @@ with open(os.path.join(root, 'README.md'), 'rb') as readme:
+
+ system = platform.system()
+
++libraries = []
++extra_sources = []
+ extra_compile_args = []
+
+ if system == 'Darwin':
+ extra_compile_args.append('-std=c++11')
+
++if os.getenv('BUILD_WITH_SYSTEM_LIB'):
++ libraries.append('simdjson')
++else:
++ extra_sources.append('simdjson/simdjson.cpp')
++
+ if os.getenv('BUILD_WITH_CYTHON') and not CYTHON_AVAILABLE:
+ print(
+ 'BUILD_WITH_CYTHON environment variable is set, but cython'
+@@ -49,12 +57,15 @@ if os.getenv('BUILD_WITH_CYTHON') and CYTHON_AVAILABLE:
+ extensions = cythonize([
+ Extension(
+ 'csimdjson',
+- [
+- 'simdjson/simdjson.cpp',
+- 'simdjson/util.cpp',
+- 'simdjson/csimdjson.pyx'
+- ],
++ list(itertools.chain(
++ [
++ 'simdjson/util.cpp',
++ 'simdjson/csimdjson.pyx'
++ ],
++ extra_sources
++ )),
+ define_macros=macros,
++ libraries=libraries,
+ extra_compile_args=extra_compile_args
+ )
+ ], compiler_directives=compiler_directives, force=force)
+@@ -62,12 +73,15 @@ else:
+ extensions = [
+ Extension(
+ 'csimdjson',
+- [
+- 'simdjson/simdjson.cpp',
+- 'simdjson/util.cpp',
+- 'simdjson/csimdjson.cpp'
+- ],
++ list(itertools.chain(
++ [
++ 'simdjson/util.cpp',
++ 'simdjson/csimdjson.cpp'
++ ],
++ extra_sources
++ )),
+ extra_compile_args=extra_compile_args,
++ libraries=libraries,
+ language='c++'
+ )
+ ]
diff --git a/dev-python/pysimdjson/files/pysimdjson-5.0.2-tests.patch b/dev-python/pysimdjson/files/pysimdjson-5.0.2-tests.patch
new file mode 100644
index 000000000000..a70143b134f6
--- /dev/null
+++ b/dev-python/pysimdjson/files/pysimdjson-5.0.2-tests.patch
@@ -0,0 +1,13 @@
+diff --git a/simdjson/csimdjson.pyx b/simdjson/csimdjson.pyx
+index 57c5f35..91182fc 100644
+--- a/simdjson/csimdjson.pyx
++++ b/simdjson/csimdjson.pyx
+@@ -480,7 +480,7 @@ cdef class Parser:
+ # a stride in the next step will cause a (potentially
+ # confusing) IndexError. This isn't a very good error message,
+ # but it's identical to the one simdjson would have raised.
+- raise ValueError('Empty: no JSON found')
++ raise ValueError('EMPTY: no JSON found')
+
+ return element_to_primitive(
+ self,
diff --git a/dev-python/pysimdjson/pysimdjson-5.0.2.ebuild b/dev-python/pysimdjson/pysimdjson-5.0.2-r1.ebuild
index ab087fb2f157..2444355952a1 100644
--- a/dev-python/pysimdjson/pysimdjson-5.0.2.ebuild
+++ b/dev-python/pysimdjson/pysimdjson-5.0.2-r1.ebuild
@@ -5,7 +5,7 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..11} )
-
+DISTUTILS_EXT=1
inherit distutils-r1
DESCRIPTION="Python bindings for simdjson"
@@ -24,6 +24,7 @@ KEYWORDS="~amd64 ~x86"
DEPEND="
>=dev-libs/simdjson-2.0.1:=
+ test? ( dev-libs/simdjson[all-impls(-)] )
"
RDEPEND="
${DEPEND}
@@ -32,6 +33,11 @@ BDEPEND="
dev-python/cython[${PYTHON_USEDEP}]
"
+PATCHES=(
+ "${FILESDIR}/pysimdjson-5.0.2-system-lib.patch"
+ "${FILESDIR}/pysimdjson-5.0.2-tests.patch"
+)
+
distutils_enable_tests pytest
src_prepare() {
@@ -45,7 +51,7 @@ src_prepare() {
distutils-r1_src_prepare
- export BUILD_WITH_CYTHON=1
+ export BUILD_WITH_CYTHON=1 BUILD_WITH_SYSTEM_LIB=1
}
python_compile() {