summaryrefslogtreecommitdiff
path: root/sci-libs/kissfft
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-10-21 04:04:33 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-10-21 04:04:33 +0100
commit3dc4de6331223493015f198dc61854af604da86c (patch)
tree626add8c88d96adf9429cdb19226d9de60e6dafd /sci-libs/kissfft
parentd895362f98ae63a6ed12cd16d3b3df95d6967f25 (diff)
gentoo auto-resync : 21:10:2024 - 04:04:33
Diffstat (limited to 'sci-libs/kissfft')
-rw-r--r--sci-libs/kissfft/Manifest5
-rw-r--r--sci-libs/kissfft/kissfft-131.1.0-r2.ebuild83
-rw-r--r--sci-libs/kissfft/kissfft-9999.ebuild28
-rw-r--r--sci-libs/kissfft/metadata.xml3
4 files changed, 113 insertions, 6 deletions
diff --git a/sci-libs/kissfft/Manifest b/sci-libs/kissfft/Manifest
index 5fc4a6725f0b..9358bc24e2c3 100644
--- a/sci-libs/kissfft/Manifest
+++ b/sci-libs/kissfft/Manifest
@@ -2,5 +2,6 @@ AUX kissfft-131.1.0-cmake.patch 1359 BLAKE2B 138a9077a450198e21e6ad2c1052d1e63ce
AUX kissfft-131.1.0-cross.patch 877 BLAKE2B 507173b39368d597d65edbd53da7abbbb4f35e5f7a5587b04a1fd4af9d36a779e1e9c3ffcf3dcede3fd9fb4a4251a6670ceb660e0a7484fc202b1bd5c9b59c2e SHA512 afc92391929c2cabd122a2b121c43d0f496ee0c4dbb31c1bc9895b98ae52c781a88db8129a7fcbcbd33828f0d4b27852a7026b16264baae2b2171620eca08807
DIST kissfft-131.1.0.tar.gz 52383 BLAKE2B 74e6d2e7d132a311b31c28a468e13d9772a53f0ea0abed0e0f49d8db9c183fb0646f58fd38df3e797b8577285899daf6b80446b149ce2582bb828410656d96df SHA512 bd715868ce0e93a291a0592fb1f8b960e832fc64efe863755e52b67d5addff9bcb444a1bf2570d1914c52b41dad1023d0d86400f5ea30c9fb84cd6b4f7210708
EBUILD kissfft-131.1.0-r1.ebuild 1428 BLAKE2B 66f9053253190b3c7e2ba200f495c0a8d8c55af75f130e63d7cae3666afae5325046b432aabb3a6d63c49e6a7308cd97568be90aa46e216173f461754db372dd SHA512 63a79d272d57181a13ea3621bd479a716144ef79747e0e5434a9b9574d62cfc310a0abfdd84d9d725fdb16867c11e53d2ce26851a9c9ee4e7e9938b13b3aa2d4
-EBUILD kissfft-9999.ebuild 1431 BLAKE2B 80a6408298f038269a6993ac49ae9327b94c7cb3aba87b2a5d51a5621410fd52cad6c5fc13724bc01c4dde63592a08175fd3affbd696cbdf8fb2acfeefd75539 SHA512 2e5f39dc7e8d77b3da5bda497e27f406b537732acc47e83bfca9f058ef22ff3397c049125726689bf264d6f0e144a1e17f8ecd4c4473bf48f04388a4872dce9d
-MISC metadata.xml 492 BLAKE2B 8700b39bac1d47d9827952146812e311af69163ec354a3004f0048c585bb86c23d9c4fe7026cfc5e139fcf44c29b1a459707eea87f9a2b7e1ba47b716c3d5d43 SHA512 dd33497c7542c0ebfc25a3e232ed2b29779f85e96ea81d5ae86867ff72d662dddef68f510aa494cedd005ef8aab86bf36b69cc884c49fe582a80cbc338c2bdf6
+EBUILD kissfft-131.1.0-r2.ebuild 1780 BLAKE2B ed59d9c0b17005bb46e61bf1363469b387dec2dcf043e181a42ea733e8e425d493da41cd496e0fbc7819a9f6d1cecbaa0acd5b9e90368c5c16cd583c42ca7bc5 SHA512 191d80a7b75fec2d0a4ffcb5ab76a58eb021701aaeb4c81943c24155deeea34179d5100a2a44142a2562efceff7d73fcfbb5961d887ab2fd2a42bb0aee01dc90
+EBUILD kissfft-9999.ebuild 1780 BLAKE2B ed59d9c0b17005bb46e61bf1363469b387dec2dcf043e181a42ea733e8e425d493da41cd496e0fbc7819a9f6d1cecbaa0acd5b9e90368c5c16cd583c42ca7bc5 SHA512 191d80a7b75fec2d0a4ffcb5ab76a58eb021701aaeb4c81943c24155deeea34179d5100a2a44142a2562efceff7d73fcfbb5961d887ab2fd2a42bb0aee01dc90
+MISC metadata.xml 717 BLAKE2B d22d912059c414d4c093c054eea4f6a5b0375c836219bf4a2d9349e702be285ad787400be3c881dcbda5035e3701a98aba2543bc5311d986a6b787e8798fe532 SHA512 23cd8fd1cdcb5b51e7b2f548957d6777ff61995d74492161da5b9f9ee2c6be4520a937ddc6f423f9789938d3174b1241c4fa96600f0a20f7ca2088bf3202c983
diff --git a/sci-libs/kissfft/kissfft-131.1.0-r2.ebuild b/sci-libs/kissfft/kissfft-131.1.0-r2.ebuild
new file mode 100644
index 000000000000..8d8b1bb59f38
--- /dev/null
+++ b/sci-libs/kissfft/kissfft-131.1.0-r2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..12} )
+
+inherit cmake multibuild python-any-r1 toolchain-funcs
+
+DESCRIPTION="A Fast Fourier Transform (FFT) library that tries to Keep it Simple, Stupid"
+HOMEPAGE="https://github.com/mborgerding/kissfft"
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/mborgerding/kissfft"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/mborgerding/kissfft/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="alloca cpu_flags_x86_sse double int16 int32 openmp test tools"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ test? (
+ sci-libs/fftw:3.0
+ $(python_gen_any_dep '
+ dev-python/numpy[${PYTHON_USEDEP}]
+ ')
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-131.1.0-cross.patch
+ "${FILESDIR}"/${PN}-131.1.0-cmake.patch
+)
+
+python_check_deps() {
+ python_has_version -d "dev-python/numpy[${PYTHON_USEDEP}]"
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+pkg_setup() {
+ MULTIBUILD_VARIANTS=(
+ float
+ $(usev double)
+ $(usev int16 int16_t)
+ $(usev int32 int32_t)
+ $(usev cpu_flags_x86_sse simd)
+ )
+
+ use test && python-any-r1_pkg_setup
+ [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+kissfft_configure() {
+ local mycmakeargs=(
+ -DKISSFFT_OPENMP=$(usex openmp 1 0)
+ -DKISSFFT_TEST=$(usex test)
+ -DKISSFFT_TOOLS=$(usex tools)
+ -DKISSFFT_USE_ALLOCA=$(usex alloca)
+ -DKISSFFT_DATATYPE=${MULTIBUILD_VARIANT}
+ )
+
+ cmake_src_configure
+}
+
+src_configure() {
+ multibuild_foreach_variant kissfft_configure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake_src_compile
+}
+
+src_install() {
+ multibuild_foreach_variant cmake_src_install
+}
diff --git a/sci-libs/kissfft/kissfft-9999.ebuild b/sci-libs/kissfft/kissfft-9999.ebuild
index 14e039c7eec1..8d8b1bb59f38 100644
--- a/sci-libs/kissfft/kissfft-9999.ebuild
+++ b/sci-libs/kissfft/kissfft-9999.ebuild
@@ -5,7 +5,7 @@ EAPI=8
PYTHON_COMPAT=( python3_{9..12} )
-inherit cmake python-any-r1 toolchain-funcs
+inherit cmake multibuild python-any-r1 toolchain-funcs
DESCRIPTION="A Fast Fourier Transform (FFT) library that tries to Keep it Simple, Stupid"
HOMEPAGE="https://github.com/mborgerding/kissfft"
@@ -20,7 +20,7 @@ fi
LICENSE="BSD"
SLOT="0"
-IUSE="alloca cpu_flags_x86_sse openmp test tools"
+IUSE="alloca cpu_flags_x86_sse double int16 int32 openmp test tools"
RESTRICT="!test? ( test )"
DEPEND="
@@ -46,18 +46,38 @@ pkg_pretend() {
}
pkg_setup() {
+ MULTIBUILD_VARIANTS=(
+ float
+ $(usev double)
+ $(usev int16 int16_t)
+ $(usev int32 int32_t)
+ $(usev cpu_flags_x86_sse simd)
+ )
+
use test && python-any-r1_pkg_setup
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
-src_configure() {
+kissfft_configure() {
local mycmakeargs=(
-DKISSFFT_OPENMP=$(usex openmp 1 0)
-DKISSFFT_TEST=$(usex test)
-DKISSFFT_TOOLS=$(usex tools)
-DKISSFFT_USE_ALLOCA=$(usex alloca)
- -DKISSFFT_DATATYPE=$(usex cpu_flags_x86_sse simd float)
+ -DKISSFFT_DATATYPE=${MULTIBUILD_VARIANT}
)
cmake_src_configure
}
+
+src_configure() {
+ multibuild_foreach_variant kissfft_configure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake_src_compile
+}
+
+src_install() {
+ multibuild_foreach_variant cmake_src_install
+}
diff --git a/sci-libs/kissfft/metadata.xml b/sci-libs/kissfft/metadata.xml
index 9cc777a3ea9c..5ffd94eab047 100644
--- a/sci-libs/kissfft/metadata.xml
+++ b/sci-libs/kissfft/metadata.xml
@@ -7,6 +7,9 @@
</maintainer>
<use>
<flag name="alloca">Use alloca(3) instead of malloc(3) for memory management</flag>
+ <flag name="double">Build library for primary data type of double</flag>
+ <flag name="int16">Build library for primary data type of int16_t</flag>
+ <flag name="int32">Build library for primary data type of int32_t</flag>
<flag name="tools">Build command line tools</flag>
</use>
<upstream>