summaryrefslogtreecommitdiff
path: root/media-libs/rubberband
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-07-09 15:43:36 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-07-09 15:43:36 +0100
commit2719f73b6813d11d13a9650cdd2ab8ec6e69385d (patch)
tree8c816148bcbd22757d892089c989ae614eae4f5a /media-libs/rubberband
parent0f558761aa2dee1017b4751e4017205e015a9560 (diff)
gentoo resync : 09.07.2022
Diffstat (limited to 'media-libs/rubberband')
-rw-r--r--media-libs/rubberband/Manifest3
-rw-r--r--media-libs/rubberband/files/rubberband-3.0.0-build.patch165
-rw-r--r--media-libs/rubberband/rubberband-3.0.0.ebuild61
3 files changed, 229 insertions, 0 deletions
diff --git a/media-libs/rubberband/Manifest b/media-libs/rubberband/Manifest
index fdbfcd408505..3f5ca8b1f4f3 100644
--- a/media-libs/rubberband/Manifest
+++ b/media-libs/rubberband/Manifest
@@ -1,4 +1,7 @@
AUX rubberband-2.0.1-build.patch 6021 BLAKE2B f9e745c1eda3dc8d4f603df144a41143f3f7ee3691a09f97f069f469378d9541a057aefd1e23c7c00dbc276e13eb510dce63579f2334d2384433ce60b41231f6 SHA512 4e20aa9722f2995ad2959cfabd3eca24b6d72eb1d1e59bf2f4b283e4cbc60025ae0ee754bacfac3042214f96900f4bac100c3c1918da1a256ea7f42f0befe912
+AUX rubberband-3.0.0-build.patch 6150 BLAKE2B 2548de747697e04988e55483f08afd1c8e748080ff81f2db997cdd34ac64ad7031fa6ce5852bfeac0c5f96a04ba906f10d61ce395383ba509da7ed46823fcfc1 SHA512 b1be06cd1ec660db0f023268796850833e0813480acb9c0ba15a62ffca5174b2c5e4897eedc94606033bc51b865da607a549c1bca1bc56a3cd9268cae0566488
DIST rubberband-2.0.2.tar.bz2 178974 BLAKE2B 602d7eb76791d431a65bd5ef0d53ea0c2672e67aaa566594b3b2bb026cdf1b8879380818c3626a2c6d51cd6366bd47a52c69c110da566aa234fb7b37b19f027b SHA512 87dc5d59995bf949c35b885bb2eced067d84775bab76692da1202ae7554cb1b8404ca7371c264363e6d55c8978762ed32b446535746061f09e90cfc599adc0a0
+DIST rubberband-3.0.0.tar.bz2 213089 BLAKE2B 74afdf1f7c3360b711b365d73e12fe84afa5abc8ddb6a10a3d31392a621e9fca67e8b4c0292238b0e5726c56242438e1b2ef1d7d6ea6979a360cc7ecab45de75 SHA512 d8ce300a2cca7e35c548f9cd9f2f77f9b730b0e9427214d4a825b32ea9c90769e229f91db5846b90ff11a1513e8f68447fb598aa2684f67f10b4b9414b9ad748
EBUILD rubberband-2.0.2.ebuild 1580 BLAKE2B 63d0645884bbbf9b033c42c257477c57b794f95a6dad529e707db3c4319b6ff9be4b62a42f17f2fd8528ffcf3998653bae2b3eaa72a2448d1fcbbda30b3b2438 SHA512 708a74df246ca65f6ea0f384ada9870b88c4db42d92d03758daf232d7f2bb6d35de6c50b3291ac4a5bbfb1aac82ecce38d33c0785d6a5df5e107479cd39093a6
+EBUILD rubberband-3.0.0.ebuild 1579 BLAKE2B 44fe0a735c5bc45bbc037b2d924154092badb0612d627f4ef13591b864dd619f88a4bc816724075968832b2dfc42675a9529c90d2836163b15f3667a6171fa23 SHA512 b409d6db0bec4f6df57accd20c75f9cb74aea9db576db3b40bd7103cf6ddb0c1d32976cec82e10cf30ce2311aa564140302fc7a236183bdb02ad436a19ae53eb
MISC metadata.xml 491 BLAKE2B bda0db771d95de138274eb35f4c135f3bd9fb3a1b75ce60a8c57ad71e0c0a894924bb52060c8ca87e689f2a0f581213639de2ca5615a134dfecfa4f008698b2a SHA512 c549bcf465808927153a79f145b222379270d2813e150606382dcb1c15980a37a89d7f0178d3fee2fd3eb7216dd6ad989efe0a24e398f67af95872f6c92d570a
diff --git a/media-libs/rubberband/files/rubberband-3.0.0-build.patch b/media-libs/rubberband/files/rubberband-3.0.0-build.patch
new file mode 100644
index 000000000000..3892f5231716
--- /dev/null
+++ b/media-libs/rubberband/files/rubberband-3.0.0-build.patch
@@ -0,0 +1,165 @@
+diff --git a/meson.build b/meson.build
+index 42f7f7f..b2a342a 100644
+--- a/meson.build
++++ b/meson.build
+@@ -113,19 +113,27 @@ endforeach
+
+ fftw3_dep = dependency('fftw3', version: '>= 3.0.0', required: false)
+ samplerate_dep = dependency('samplerate', version: '>= 0.1.8', required: false)
+-sndfile_dep = dependency('sndfile', version: '>= 1.0.16', required: false)
+-vamp_dep = dependency('vamp-sdk', version: '>= 2.9', required: false)
++if get_option('programs')
++ sndfile_dep = dependency('sndfile', version: '>= 1.0.16', required: false)
++endif
++if get_option('vamp')
++ vamp_dep = dependency('vamp-sdk', version: '>= 2.9', required: false)
++endif
+ boost_unit_test_dep = dependency('boost', modules: ['unit_test_framework'], version: '>= 1.73', required: false)
+ thread_dep = dependency('threads')
+-have_ladspa = cpp.has_header('ladspa.h', args: extra_include_args)
++if get_option('ladspa')
++ have_ladspa = cpp.has_header('ladspa.h', args: extra_include_args)
++endif
+ have_lv2 = cpp.has_header('lv2.h', args: extra_include_args)
+ have_sincos = cpp.has_function('sincos',
+ prefix: '#define _GNU_SOURCE\n#include <math.h>',
+ args: '-lm')
+-have_jni = cpp.has_header('jni.h', args: extra_include_args)
++if get_option('jni')
++ have_jni = cpp.has_header('jni.h', args: extra_include_args)
+
+-javac = find_program('javac', required: false)
+-jar = find_program('jar', required: false)
++ javac = find_program('javac', required: false)
++ jar = find_program('jar', required: false)
++endif
+
+
+ # Check FFT and resampler options and set up dependencies and paths
+@@ -296,37 +304,41 @@ if ipp_needed
+ endif
+ endif # ipp_needed
+
+-if not vamp_dep.found()
+- vamp_dep = cpp.find_library('VampPluginSDK',
+- dirs: get_option('extra_lib_dirs'),
+- has_headers: ['vamp-sdk.h'],
+- header_args: extra_include_args,
+- required: false)
++if get_option('vamp')
+ if not vamp_dep.found()
+- vamp_dep = cpp.find_library('vamp-sdk',
++ vamp_dep = cpp.find_library('VampPluginSDK',
+ dirs: get_option('extra_lib_dirs'),
+ has_headers: ['vamp-sdk.h'],
+ header_args: extra_include_args,
+ required: false)
++ if not vamp_dep.found()
++ vamp_dep = cpp.find_library('vamp-sdk',
++ dirs: get_option('extra_lib_dirs'),
++ has_headers: ['vamp-sdk.h'],
++ header_args: extra_include_args,
++ required: false)
++ endif
+ endif
++ have_vamp = true
+ endif
+-have_vamp = vamp_dep.found()
+-
+-if not sndfile_dep.found()
+- sndfile_dep = cpp.find_library('sndfile',
+- dirs: get_option('extra_lib_dirs'),
+- has_headers: ['sndfile.h'],
+- header_args: extra_include_args,
+- required: false)
++
++if get_option('programs')
+ if not sndfile_dep.found()
+- sndfile_dep = cpp.find_library('sndfile-1',
++ sndfile_dep = cpp.find_library('sndfile',
+ dirs: get_option('extra_lib_dirs'),
+ has_headers: ['sndfile.h'],
+ header_args: extra_include_args,
+ required: false)
++ if not sndfile_dep.found()
++ sndfile_dep = cpp.find_library('sndfile-1',
++ dirs: get_option('extra_lib_dirs'),
++ has_headers: ['sndfile.h'],
++ header_args: extra_include_args,
++ required: false)
++ endif
+ endif
++ have_sndfile = true
+ endif
+-have_sndfile = sndfile_dep.found()
+
+ have_boost_unit_test = boost_unit_test_dep.found()
+
+@@ -535,7 +547,7 @@ if get_option('default_library') != 'shared' and rubberband_additional_static_li
+ )
+ endif
+
+-if have_jni and javac.found() and jar.found()
++if get_option('jni')
+ target_summary += { 'JNI library': [ true, 'Name: ' + rubberband_jni_name ] }
+ message('Will build Java Native Interface')
+ rubberband_jni = shared_library(
+@@ -570,7 +582,7 @@ if have_jni and javac.found() and jar.found()
+ )
+ else
+ target_summary += { 'JNI library': false }
+- if not have_jni
++ if not get_option('jni')
+ message('Not building Java Native Interface: jni.h header not found')
+ else
+ message('Not building Java Native Interface: Java compiler not found')
+@@ -584,7 +596,7 @@ install_headers(
+ subdir: 'rubberband'
+ )
+
+-if have_ladspa
++if get_option('ladspa')
+ target_summary += { 'LADSPA plugin': [ true, 'Name: ' + rubberband_ladspa_name ] }
+ message('Will build LADSPA plugin')
+ rubberband_ladspa = shared_library(
+@@ -651,7 +663,7 @@ else
+ message('Not building LV2 plugin: lv2.h header not found')
+ endif
+
+-if have_vamp
++if get_option('vamp')
+ target_summary += { 'Vamp plugin': [ true, 'Name: ' + rubberband_vamp_name ] }
+ message('Will build Vamp plugin')
+ rubberband_vamp = shared_library(
+@@ -683,7 +695,7 @@ else
+ message('Not building Vamp plugin: Vamp dependency not found')
+ endif
+
+-if have_sndfile
++if get_option('programs')
+ message('Will build command-line utilities')
+ target_summary += { 'Command-line utility (R2)': [ true, 'Name: ' + rubberband_program_name ] }
+ rubberband_program = executable(
+diff --git a/meson_options.txt b/meson_options.txt
+index c820c20..81710de 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -26,3 +26,18 @@ option('extra_lib_dirs',
+ value: [],
+ description: 'Additional local library directories to search for dependencies.')
+
++option('jni',
++ type: 'boolean',
++ value: 'false')
++
++option('ladspa',
++ type: 'boolean',
++ value: 'false')
++
++option('programs',
++ type: 'boolean',
++ value: 'false')
++
++option('vamp',
++ type: 'boolean',
++ value: 'false')
diff --git a/media-libs/rubberband/rubberband-3.0.0.ebuild b/media-libs/rubberband/rubberband-3.0.0.ebuild
new file mode 100644
index 000000000000..d19aa930e757
--- /dev/null
+++ b/media-libs/rubberband/rubberband-3.0.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson-multilib flag-o-matic
+
+DESCRIPTION="An audio time-stretching and pitch-shifting library and utility program"
+HOMEPAGE="https://www.breakfastquay.com/rubberband/"
+SRC_URI="https://breakfastquay.com/files/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="ladspa jni static-libs +programs vamp"
+
+BDEPEND="
+ virtual/pkgconfig
+"
+CDEPEND="
+ media-libs/libsamplerate[${MULTILIB_USEDEP}]
+ sci-libs/fftw:3.0[${MULTILIB_USEDEP}]
+ jni? ( >=virtual/jdk-1.8:* )
+ ladspa? ( media-libs/ladspa-sdk )
+ programs? ( media-libs/libsndfile )
+ vamp? ( media-libs/vamp-plugin-sdk[${MULTILIB_USEDEP}] )
+"
+RDEPEND="${CDEPEND}"
+DEPEND="${CDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-build.patch"
+)
+
+multilib_src_configure() {
+ if use ppc ; then
+ # bug #827203
+ # meson doesn't respect/use LIBS but mangles LDFLAGS with libs
+ # correctly. Use this until we get a Meson test for libatomic.
+ append-ldflags -latomic
+ fi
+
+ local emesonargs=(
+ --buildtype=release
+ -Dfft=fftw
+ -Dresampler=libsamplerate
+ -Ddefault_library=$(use static-libs && echo "both" || echo "shared")
+ $(meson_use ladspa)
+ $(meson_use jni)
+ $(meson_use programs)
+ $(meson_use vamp)
+ )
+ use jni && emesonargs+=(
+ -Dextra_include_dirs="$(java-config -g JAVA_HOME)/include,$(java-config -g JAVA_HOME)/include/linux"
+ )
+ meson_src_configure
+}
+
+multilib_src_install_all() {
+ ! use jni && find "${ED}" -name "*.a" -delete
+}