diff --git a/dev-python/simsimd/Manifest b/dev-python/simsimd/Manifest index 95bf88dec7326..97571936a639e 100644 --- a/dev-python/simsimd/Manifest +++ b/dev-python/simsimd/Manifest @@ -1 +1,2 @@ DIST SimSIMD-5.9.11.gh.tar.gz 204255 BLAKE2B 6c67f47bf2beb41b8f6e091874c808a9be0da307d6bc7af5d6cca62435d1a4199cff7444b8b9f0ce04dbdd779641d635b8e7545512cfeb782ca81ef0f6e74e2e SHA512 eae6b0a509198de09a6d47c207554cc330ad1242b3a1d98d74d0fcb0c960052de1765e05d2bbe4bbb295224266dc393890a159b7fa933c6d7725685a5e50d1ec +DIST SimSIMD-6.0.0.gh.tar.gz 206367 BLAKE2B a79d19ffd4fb9fb518ec4b05523aa316e99e1729884decfe560be419ab7dd5d8395835ebcd593dc7ec92aa8524ce2a6f1a3693e363c638d60d1d417b636f1fbe SHA512 0edc66409d6616066205b6f976220a86f180f3e1d32c2a25e9173ae49314ed72362949bcc91b288e791b65569654573e7b3b9a5f1c79609ab58ada12abe8a458 diff --git a/dev-python/simsimd/simsimd-6.0.0.ebuild b/dev-python/simsimd/simsimd-6.0.0.ebuild new file mode 100644 index 0000000000000..3b7152ad7a71f --- /dev/null +++ b/dev-python/simsimd/simsimd-6.0.0.ebuild @@ -0,0 +1,64 @@ +# Copyright 2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{10..13} ) + +inherit distutils-r1 toolchain-funcs + +MY_P=SimSIMD-${PV} +DESCRIPTION="Fastest SIMD-Accelerated Vector Similarity Functions for x86 and Arm" +HOMEPAGE=" + https://github.com/ashvardanian/SimSIMD/ + https://pypi.org/project/simsimd/ +" +# no sdist, as of 4.3.1 +# https://github.com/ashvardanian/SimSIMD/issues/113 +SRC_URI=" + https://github.com/ashvardanian/SimSIMD/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="openmp" + +BDEPEND=" + test? ( + dev-python/pytest-repeat[${PYTHON_USEDEP}] + dev-python/tabulate[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +pkg_pretend() { + if [[ ${MERGE_TYPE} != binary ]] && use openmp; then + tc-check-openmp + fi +} + +pkg_setup() { + if [[ ${MERGE_TYPE} != binary ]] && use openmp; then + tc-check-openmp + fi +} + +src_prepare() { + sed -i -e '/-O3/d' setup.py || die + if ! use openmp; then + sed -i -e '/-fopenmp/d' setup.py || die + fi + + distutils-r1_src_prepare +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p repeat scripts/test.py +}