diff options
Diffstat (limited to 'media-libs/freeverb3')
14 files changed, 679 insertions, 0 deletions
diff --git a/media-libs/freeverb3/Manifest b/media-libs/freeverb3/Manifest new file mode 100644 index 000000000000..ea5dba1858b3 --- /dev/null +++ b/media-libs/freeverb3/Manifest @@ -0,0 +1,3 @@ +DIST freeverb3-2.5.13.tar.gz 6143981 SHA256 9c29adc15a94e6140e52f0b1a5a60923a8e9a3beb21ada4182363c60b25126dd +DIST freeverb3-2.6.6.tar.gz 6208119 SHA256 55c0585c8d53df1bcc5dcb6ffd26fc123583a239c3f064229af71e5f8dca6816 SHA512 755c95ef184487af7e01ea32765b77eba6ffc9738aece3d64f9da019f720075fb7907341689a8adbe81d6fd265a82436da578df2d98ff2e82803a064df4c5dc1 WHIRLPOOL 77795333dc30f3aca514a3a16d8760373bf1ac34fdcc1f3feef3d3bd3071fedf1dcb73ca85b3bf27666c0fba176d86607d68d4c0d5d37a2cfa42a5417d282bb4 +DIST freeverb3-3.1.1.tar.xz 6067288 SHA256 6327b6809f4c15dfc74331f0b88af8d92f593d1bf8eabee15ec2a98217aa8d93 SHA512 83feb43a6c178b82958089a3527788f1426bc76e5a86d353df5818a0ebeb1656742e225d4e3eb3187b768169af1a6f2716215408fdb30869452d10d64a967516 WHIRLPOOL e2ac3bec3f2ba90bfc8f25d9c09290dcdc5e43e4528182cbf112614f9d86e97f27beb13a4869cfe5ac10a29af47e4ed9ab64a064189d57ac1d4282a38442b935 diff --git a/media-libs/freeverb3/files/freeverb3-2.3.0-fix-implicit.patch b/media-libs/freeverb3/files/freeverb3-2.3.0-fix-implicit.patch new file mode 100644 index 000000000000..1db4dc8a1733 --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-2.3.0-fix-implicit.patch @@ -0,0 +1,90 @@ +diff -cr freeverb3-2.3.0/libsamplerate2/samplerate.c freeverb3/libsamplerate2/samplerate.c +*** freeverb3-2.3.0/libsamplerate2/samplerate.c 2008-09-18 22:52:39.000000000 +0900 +--- freeverb3/libsamplerate2/samplerate.c 2009-03-03 20:23:52.000000000 +0900 +*************** +*** 20,30 **** + #include <stdlib.h> + #include <string.h> + +! #include "config.h" +! + #include "samplerate2.h" + #include "common.h" +- #include "float_cast.h" + + static long SR2_(psrc_set_converter) (SR2_(SRC_PRIVATE) *psrc, long converter_type); + +--- 20,28 ---- + #include <stdlib.h> + #include <string.h> + +! #include "float_cast.h" + #include "samplerate2.h" + #include "common.h" + + static long SR2_(psrc_set_converter) (SR2_(SRC_PRIVATE) *psrc, long converter_type); + +diff -cr freeverb3-2.3.0/libsamplerate2/samplerate_common.c freeverb3/libsamplerate2/samplerate_common.c +*** freeverb3-2.3.0/libsamplerate2/samplerate_common.c 2008-09-18 22:50:26.000000000 +0900 +--- freeverb3/libsamplerate2/samplerate_common.c 2009-03-03 20:23:39.000000000 +0900 +*************** +*** 19,28 **** + #include <stdio.h> + #include <stdlib.h> + #include <string.h> +! #include "config.h" + #include "common_c.h" + #include "samplerate2_common.h" +- #include "float_cast.h" + + const char * src_get_name (long converter_type) + { +--- 19,27 ---- + #include <stdio.h> + #include <stdlib.h> + #include <string.h> +! #include "float_cast.h" + #include "common_c.h" + #include "samplerate2_common.h" + + const char * src_get_name (long converter_type) + { +diff -cr freeverb3-2.3.0/libsamplerate2/src_linear.c freeverb3/libsamplerate2/src_linear.c +*** freeverb3-2.3.0/libsamplerate2/src_linear.c 2008-09-18 21:11:55.000000000 +0900 +--- freeverb3/libsamplerate2/src_linear.c 2009-03-03 20:24:07.000000000 +0900 +*************** +*** 20,26 **** + #include <stdlib.h> + #include <string.h> + +- #include "config.h" + #include "float_cast.h" + #include "samplerate2.h" + #include "common.h" +--- 20,25 ---- +diff -cr freeverb3-2.3.0/libsamplerate2/src_sinc.c freeverb3/libsamplerate2/src_sinc.c +*** freeverb3-2.3.0/libsamplerate2/src_sinc.c 2008-09-18 23:31:00.000000000 +0900 +--- freeverb3/libsamplerate2/src_sinc.c 2009-03-03 20:24:11.000000000 +0900 +*************** +*** 20,26 **** + #include <stdlib.h> + #include <string.h> + +- #include "config.h" + #include "float_cast.h" + #include "samplerate2.h" + #include "common.h" +--- 20,25 ---- +diff -cr freeverb3-2.3.0/libsamplerate2/src_zoh.c freeverb3/libsamplerate2/src_zoh.c +*** freeverb3-2.3.0/libsamplerate2/src_zoh.c 2008-09-18 23:21:46.000000000 +0900 +--- freeverb3/libsamplerate2/src_zoh.c 2009-03-03 20:24:15.000000000 +0900 +*************** +*** 20,26 **** + #include <stdlib.h> + #include <string.h> + +- #include "config.h" + #include "float_cast.h" + #include "samplerate2.h" + #include "common.h" +--- 20,25 ---- diff --git a/media-libs/freeverb3/files/freeverb3-2.3.1-plugin-api-v8-v10.patch b/media-libs/freeverb3/files/freeverb3-2.3.1-plugin-api-v8-v10.patch new file mode 100644 index 000000000000..5bc6c8f328b9 --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-2.3.1-plugin-api-v8-v10.patch @@ -0,0 +1,125 @@ +From a5dbe75a4b2c26ff969ef0b8eb2acc0b39f477a7 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping <sebastian@pipping.org> +Date: Sat, 3 Oct 2009 04:57:55 +0200 +Subject: [PATCH] Support Plugin API v8, v10 and later + +--- + work/freeverb3-2.3.1/xmms/compressor.cpp | 12 ++++++++++++ + work/freeverb3-2.3.1/xmms/filter.cpp | 3 +++ + work/freeverb3-2.3.1/xmms/freeverb3.cpp | 3 +++ + work/freeverb3-2.3.1/xmms/impulser.cpp | 3 +++ + work/freeverb3-2.3.1/xmms/impulser2.cpp | 3 +++ + work/freeverb3-2.3.1/xmms/revmodel.cpp | 3 +++ + work/freeverb3-2.3.1/xmms/stenh.cpp | 3 +++ + 7 files changed, 30 insertions(+), 0 deletions(-) + +diff --git a/work/freeverb3-2.3.1/xmms/compressor.cpp b/work/freeverb3-2.3.1/xmms/compressor.cpp +index a02570f..a18eca3 100644 +--- a/work/freeverb3-2.3.1/xmms/compressor.cpp ++++ b/work/freeverb3-2.3.1/xmms/compressor.cpp +@@ -1095,6 +1095,18 @@ static EffectPlugin epe = { + cleanup, + about, + configure, ++/* ++ * Compile fix for Audacious 2.2_alpha1 ++ * ++ * Increase PAPI version. ++ * http://hg.atheme.org/audacious/annotate/74969c017b3e/src/audacious/plugin.h#64 ++ * ++ * Shuffle some functors and fields around in plugin structures; Start of cleanup. ++ * http://hg.atheme.org/audacious/annotate/8554b25b0087/src/audacious/plugin.h#1025 ++ */ ++#if __AUDACIOUS_PLUGIN_API__ >= 10 ++ NULL, ++#endif + FALSE, + mod_samples, + NULL, +diff --git a/work/freeverb3-2.3.1/xmms/filter.cpp b/work/freeverb3-2.3.1/xmms/filter.cpp +index 3b01e4d..b403124 100644 +--- a/work/freeverb3-2.3.1/xmms/filter.cpp ++++ b/work/freeverb3-2.3.1/xmms/filter.cpp +@@ -462,6 +462,9 @@ static EffectPlugin epe = { + cleanup, + about, + configure, ++#if __AUDACIOUS_PLUGIN_API__ >= 10 ++ NULL, ++#endif + FALSE, + mod_samples, + NULL, +diff --git a/work/freeverb3-2.3.1/xmms/freeverb3.cpp b/work/freeverb3-2.3.1/xmms/freeverb3.cpp +index f00bc8e..8bda2be 100644 +--- a/work/freeverb3-2.3.1/xmms/freeverb3.cpp ++++ b/work/freeverb3-2.3.1/xmms/freeverb3.cpp +@@ -700,6 +700,9 @@ static EffectPlugin epe = { + cleanup, + about, + configure, ++#if __AUDACIOUS_PLUGIN_API__ >= 10 ++ NULL, ++#endif + FALSE, + mod_samples, + NULL, +diff --git a/work/freeverb3-2.3.1/xmms/impulser.cpp b/work/freeverb3-2.3.1/xmms/impulser.cpp +index c1b6856..6341219 100644 +--- a/work/freeverb3-2.3.1/xmms/impulser.cpp ++++ b/work/freeverb3-2.3.1/xmms/impulser.cpp +@@ -617,6 +617,9 @@ static EffectPlugin epe = { + cleanup, + about, + configure, ++#if __AUDACIOUS_PLUGIN_API__ >= 10 ++ NULL, ++#endif + FALSE, + mod_samples, + NULL, +diff --git a/work/freeverb3-2.3.1/xmms/impulser2.cpp b/work/freeverb3-2.3.1/xmms/impulser2.cpp +index cf8e453..1385484 100644 +--- a/work/freeverb3-2.3.1/xmms/impulser2.cpp ++++ b/work/freeverb3-2.3.1/xmms/impulser2.cpp +@@ -1538,6 +1538,9 @@ static EffectPlugin epe = { + cleanup, + about, + configure, ++#if __AUDACIOUS_PLUGIN_API__ >= 10 ++ NULL, ++#endif + FALSE, + mod_samples, + NULL, +diff --git a/work/freeverb3-2.3.1/xmms/revmodel.cpp b/work/freeverb3-2.3.1/xmms/revmodel.cpp +index d596df4..bc808ae 100644 +--- a/work/freeverb3-2.3.1/xmms/revmodel.cpp ++++ b/work/freeverb3-2.3.1/xmms/revmodel.cpp +@@ -592,6 +592,9 @@ static EffectPlugin epe = { + cleanup, + about, + configure, ++#if __AUDACIOUS_PLUGIN_API__ >= 10 ++ NULL, ++#endif + FALSE, + mod_samples, + NULL, +diff --git a/work/freeverb3-2.3.1/xmms/stenh.cpp b/work/freeverb3-2.3.1/xmms/stenh.cpp +index 3eca478..d376896 100644 +--- a/work/freeverb3-2.3.1/xmms/stenh.cpp ++++ b/work/freeverb3-2.3.1/xmms/stenh.cpp +@@ -905,6 +905,9 @@ static EffectPlugin epe = { + cleanup, + about, + configure, ++#if __AUDACIOUS_PLUGIN_API__ >= 10 ++ NULL, ++#endif + FALSE, + mod_samples, + NULL, +-- +1.6.4.4 + diff --git a/media-libs/freeverb3/files/freeverb3-2.5.0-pow-ambiguity.patch b/media-libs/freeverb3/files/freeverb3-2.5.0-pow-ambiguity.patch new file mode 100644 index 000000000000..2c79e793e27c --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-2.5.0-pow-ambiguity.patch @@ -0,0 +1,12 @@ +--- xmms/impulser2.cpp ++++ xmms/impulser2.cpp +@@ -1221,7 +1221,8 @@ + presetLatencyValue2[latencyIndex]); + } + CFILELOADER fileLoader; +- double l_stretch = std::pow(std::sqrt(2), (*slotVector)[i].stretch); ++ // NOTE: Casting to double to help compile select from pow(double,double) and pow(float,float) ++ double l_stretch = std::pow(static_cast<double>(std::sqrt(2)), static_cast<double>((*slotVector)[i].stretch)); + int ret = fileLoader.load((*slotVector)[i].filename.c_str(), srate, + l_stretch, (*slotVector)[i].limit, SRC_SINC_BEST_QUALITY); + diff --git a/media-libs/freeverb3/files/freeverb3-2.5.13-fix-sse1v2-assembly.patch b/media-libs/freeverb3/files/freeverb3-2.5.13-fix-sse1v2-assembly.patch new file mode 100644 index 000000000000..e18f504fbe29 --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-2.5.13-fix-sse1v2-assembly.patch @@ -0,0 +1,13 @@ +--- freeverb/frag.cpp 2010-12-10 18:44:37.006729672 +0100 ++++ freeverb/frag.cpp 2010-12-10 18:45:10.220476080 +0100 +@@ -434,8 +434,8 @@ + "mulps (%2), %%xmm1 \n\t" + "addps (%0), %%xmm1 \n\t" // saved in xmm1 + "xor %0, %0 \n\t" +- "movl $0x80000000, %0 \n\t" // 32bit float -1 mask +- "movl %0, (%4) \n\t" ++ "mov $0x80000000, %0 \n\t" // 32bit float -1 mask ++ "mov %0, (%4) \n\t" + "xorps %%xmm2, %%xmm2 \n\t" // pxor xmm,xmm (mmx,sse2) + "movss (%4), %%xmm2 \n\t" // movd eax,xmm (sse2) + "movlhps %%xmm2, %%xmm2 \n\t" // bitmask = xmm2 ([0]=-1,[1]=0,[2]=-1,[3]=0) diff --git a/media-libs/freeverb3/files/freeverb3-2.5.13-respect-disable-sse.patch b/media-libs/freeverb3/files/freeverb3-2.5.13-respect-disable-sse.patch new file mode 100644 index 000000000000..3e8b9f05db0e --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-2.5.13-respect-disable-sse.patch @@ -0,0 +1,24 @@ +--- configure.in_BACKUP 2010-12-10 09:49:30.204907020 +0100 ++++ configure.in 2010-12-10 09:50:59.063128511 +0100 +@@ -137,9 +137,18 @@ + [cv_avx="$enable_avx"], [cv_avx="no"]) + + case "${target_cpu}" in +- x86_64*) cv_sse=yes cv_sse2=yes;; +- amd64*) cv_sse=yes cv_sse2=yes;; +- *) ;; ++ amd64*|x86_64*) ++ if test "x$cv_sse" = "x"; then ++ AC_MSG_NOTICE([Auto-enabling SSE codes]) ++ cv_sse=yes ++ fi ++ if test "x$cv_sse2" = "x"; then ++ AC_MSG_NOTICE([Auto-enabling SSE2 codes]) ++ cv_sse2=yes ++ fi ++ ;; ++ *) ++ ;; + esac + + dnl option checks diff --git a/media-libs/freeverb3/files/freeverb3-3.0.0-audacious-3.3.x.patch b/media-libs/freeverb3/files/freeverb3-3.0.0-audacious-3.3.x.patch new file mode 100644 index 000000000000..9e343c0b0838 --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-3.0.0-audacious-3.3.x.patch @@ -0,0 +1,40 @@ +From 43416e5d5ce5d13f81e1cd0f69da7ff0351f6d65 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping <sebastian@pipping.org> +Date: Sat, 8 Jun 2013 14:00:33 +0200 +Subject: [PATCH] Make Audacious plugin work with Audacious 3.3.x, too + +--- + audacious/so.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/audacious/so.c b/audacious/so.c +index 8c679df..37aa056 100644 +--- a/audacious/so.c ++++ b/audacious/so.c +@@ -44,8 +44,12 @@ static void dsp_start(gint * channels, gint * rate){ if(ptable != NULL) ptable-> + static void dsp_process(gfloat ** data, gint * samples){ if(ptable != NULL) ptable->process(data,samples); } + static void dsp_flush(){ if(ptable != NULL) ptable->flush(); } + static void dsp_finish(gfloat ** data, gint * samples){ if(ptable != NULL) ptable->finish(data,samples); } ++#if defined(_AUD_PLUGIN_VERSION_MIN) && (_AUD_PLUGIN_VERSION_MIN < 40) + static gint decoder_to_output_time(gint time){ return time; } + static gint output_to_decoder_time(gint time){ return time; } ++#else ++static int adjust_delay(int delay){ return delay; } ++#endif + + AUD_EFFECT_PLUGIN + ( +@@ -57,6 +61,10 @@ AUD_EFFECT_PLUGIN + .start = dsp_start, + .process = dsp_process, + .finish = dsp_finish, ++#if defined(_AUD_PLUGIN_VERSION_MIN) && (_AUD_PLUGIN_VERSION_MIN < 40) + .decoder_to_output_time = decoder_to_output_time, + .output_to_decoder_time = output_to_decoder_time, ++#else ++ .adjust_delay = adjust_delay, ++#endif + ) +-- +1.8.2.1 + diff --git a/media-libs/freeverb3/files/freeverb3-3.1.1-jack-compilation.patch b/media-libs/freeverb3/files/freeverb3-3.1.1-jack-compilation.patch new file mode 100644 index 000000000000..768782021768 --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-3.1.1-jack-compilation.patch @@ -0,0 +1,67 @@ +From c2ab38ee2cd768ea4875450b146b12edbc28d656 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping <sebastian@pipping.org> +Date: Tue, 9 Jun 2015 01:41:45 +0200 +Subject: [PATCH] Fix function name mis-match for JACK compilation +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes compile error: + +../audacious/impulser2.cpp: In function ‘void slot_save(SlotConfiguration*, int)’: +../audacious/impulser2.cpp:278:86: error: ‘aud_set_str’ was not declared in this scope + t_str (configSectionString, key_i("file",i), (gchar*)slot->filename.c_str()); + ^ +../audacious/impulser2.cpp: In function ‘void slot_load(SlotConfiguration*, int)’: +../audacious/impulser2.cpp:293:62: error: ‘aud_get_str’ was not declared in this scope + filename = aud_get_str(configSectionString, key_i("file",i)); +--- + jack/configdb.h | 4 ++-- + jack/configdb_rcfile.c | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/jack/configdb.h b/jack/configdb.h +index c3e6c19..0f793fa 100644 +--- a/jack/configdb.h ++++ b/jack/configdb.h +@@ -23,13 +23,13 @@ void bmp_cfg_db_set_float (ConfigDb *db, const gchar *section, const gchar *key, + void bmp_cfg_db_set_double(ConfigDb *db, const gchar *section, const gchar *key, gdouble value); + void bmp_cfg_db_unset_key (ConfigDb *db, const gchar *section, const gchar *key); + +-gchar * aud_get_string(const gchar *section, const gchar *key); ++gchar * aud_get_str (const gchar *section, const gchar *key); + gint aud_get_int (const gchar *section, const gchar *key); + gboolean aud_get_bool (const gchar *section, const gchar *key); + gfloat aud_get_float (const gchar *section, const gchar *key); + gdouble aud_get_double(const gchar *section, const gchar *key); + +-void aud_set_string(const gchar *section, const gchar *key, gchar *value); ++void aud_set_str (const gchar *section, const gchar *key, gchar *value); + void aud_set_int (const gchar *section, const gchar *key, gint value); + void aud_set_bool (const gchar *section, const gchar *key, gboolean value); + void aud_set_float (const gchar *section, const gchar *key, gfloat value); +diff --git a/jack/configdb_rcfile.c b/jack/configdb_rcfile.c +index c0125c8..69bb085 100644 +--- a/jack/configdb_rcfile.c ++++ b/jack/configdb_rcfile.c +@@ -109,7 +109,7 @@ void bmp_cfg_db_unset_key(ConfigDb * db, const gchar * section, const gchar * ke + } + + gchar * cfg_string; +-gchar * aud_get_string(const gchar *section, const gchar *key) ++gchar * aud_get_str(const gchar *section, const gchar *key) + { + ConfigDb * cfg = bmp_cfg_db_open(); + bmp_cfg_db_get_string(cfg,section,key,&cfg_string); +@@ -153,7 +153,7 @@ gdouble aud_get_double(const gchar *section, const gchar *key) + return cfg_double; + } + +-void aud_set_string(const gchar *section, const gchar *key, gchar *value) ++void aud_set_str(const gchar *section, const gchar *key, gchar *value) + { + ConfigDb * cfg = bmp_cfg_db_open(); + bmp_cfg_db_set_string(cfg,section,key,value); +-- +2.4.0 + diff --git a/media-libs/freeverb3/files/freeverb3-3.1.1-jack-linking.patch b/media-libs/freeverb3/files/freeverb3-3.1.1-jack-linking.patch new file mode 100644 index 000000000000..d52d6d424fba --- /dev/null +++ b/media-libs/freeverb3/files/freeverb3-3.1.1-jack-linking.patch @@ -0,0 +1,27 @@ +From e10a2a4eb6985731881ad145eac5e8e8ec45a1fd Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping <sebastian@pipping.org> +Date: Tue, 9 Jun 2015 00:06:51 +0200 +Subject: [PATCH] Fix linking of JACK effect module + +/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.4/../../../../x86_64-pc-linux-gnu/bin/ld: ./.libs/libjack_common.a(libjack_common_la-jack_main.o): undefined +reference to symbol 'gdk_threads_init' +/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.4/../../../../lib64/libgdk-3.so: error adding symbols: DSO missing from command line +--- + jack/Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/jack/Makefile.am b/jack/Makefile.am +index 651a034..a18fe15 100644 +--- a/jack/Makefile.am ++++ b/jack/Makefile.am +@@ -36,6 +36,7 @@ libbmp_int_la_CPPFLAGS = -DJACK $(AM_CPPFLAGS) + libbmp_int_la_SOURCES = configdb.h configdb_rcfile.c rcfile.c rcfile.h util.c util.h + libjack_common_la_CPPFLAGS = -DJACK $(AM_CPPFLAGS) + libjack_common_la_SOURCES = plugin.h jack_main.cpp ../samples/CArg.cpp ../samples/CArg.hpp ../audacious/so.c ++libjack_common_la_LIBADD = $(jack_LIBS) $(gtk3_LIBS) + + I_LIBS += libbmp_int.la libjack_common.la + +-- +2.4.0 + diff --git a/media-libs/freeverb3/freeverb3-2.5.13-r2.ebuild b/media-libs/freeverb3/freeverb3-2.5.13-r2.ebuild new file mode 100644 index 000000000000..44cf4eeb06d6 --- /dev/null +++ b/media-libs/freeverb3/freeverb3-2.5.13-r2.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=2 +inherit eutils autotools versionator + +MY_PV=$(replace_version_separator 3 '') + +DESCRIPTION="High Quality Reverb and Impulse Response Convolution library including XMMS/Audacious Effect plugins" +HOMEPAGE="http://freeverb3.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${PN}-${MY_PV}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="audacious jack plugdouble cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1 cpu_flags_x86_3dnow forcefpu" + +RDEPEND=">=sci-libs/fftw-3.0.1 + audacious? ( <media-sound/audacious-2.5 + media-libs/libsndfile ) + jack? ( media-sound/jack-audio-connection-kit + media-libs/libsndfile )" +DEPEND=${RDEPEND} + +S="${WORKDIR}/${PN}-$(get_version_component_range 1-3)" + +src_prepare() { + epatch "${FILESDIR}"/${P}-respect-disable-sse.patch + eautoreconf + + epatch "${FILESDIR}"/${P}-fix-sse1v2-assembly.patch +} + +src_configure() { + econf \ + --enable-release \ + --disable-bmp \ + --disable-pluginit \ + $(use_enable audacious) \ + $(use_enable jack) \ + $(use_enable plugdouble) \ + $(use_enable cpu_flags_x86_3dnow 3dnow) \ + $(use_enable cpu_flags_x86_sse sse) \ + $(use_enable cpu_flags_x86_sse2 sse2) \ + $(use_enable cpu_flags_x86_sse3 sse3) \ + $(use_enable cpu_flags_x86_sse4_1 sse4) \ + $(use_enable forcefpu) \ + || die "econf failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc ChangeLog README || die 'dodoc failed' + + insinto /usr/share/${PN}/samples/IR + doins samples/IR/*.wav || die +} diff --git a/media-libs/freeverb3/freeverb3-2.6.6.ebuild b/media-libs/freeverb3/freeverb3-2.6.6.ebuild new file mode 100644 index 000000000000..1b2f2c45a452 --- /dev/null +++ b/media-libs/freeverb3/freeverb3-2.6.6.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=2 +inherit multilib versionator + +DESCRIPTION="High Quality Reverb and Impulse Response Convolution library including XMMS/Audacious Effect plugins" +HOMEPAGE="http://freeverb3.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="audacious cpu_flags_x86_avx jack plugdouble cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1 cpu_flags_x86_3dnow forcefpu" + +RDEPEND=">=sci-libs/fftw-3.0.1 + audacious? ( <media-sound/audacious-3 + media-libs/libsndfile ) + jack? ( media-sound/jack-audio-connection-kit + media-libs/libsndfile )" +DEPEND=${RDEPEND} + +S="${WORKDIR}/${PN}-$(get_version_component_range 1-3)" + +src_configure() { + # TODO: Expose --enable-pthread (of >=2.6.0) to the outside + econf \ + --enable-release \ + --disable-bmp \ + --disable-pluginit \ + $(use_enable audacious) \ + $(use_enable jack) \ + $(use_enable plugdouble) \ + --disable-autocflags \ + $(use_enable cpu_flags_x86_3dnow 3dnow) \ + $(use_enable cpu_flags_x86_sse sse) \ + $(use_enable cpu_flags_x86_sse2 sse2) \ + $(use_enable cpu_flags_x86_sse3 sse3) \ + $(use_enable cpu_flags_x86_sse4_1 sse4) \ + $(use_enable cpu_flags_x86_avx avx) \ + --disable-fma \ + --disable-fma4 \ + $(use_enable forcefpu) \ + || die "econf failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc ChangeLog README || die 'dodoc failed' + + if use audacious ; then + find "${D}/usr/$(get_libdir)/audacious/" -name '*.la' -print -delete || die + fi + + insinto /usr/share/${PN}/samples/IR + doins samples/IR/*.wav || die +} diff --git a/media-libs/freeverb3/freeverb3-3.1.1-r1.ebuild b/media-libs/freeverb3/freeverb3-3.1.1-r1.ebuild new file mode 100644 index 000000000000..0081048c9a3a --- /dev/null +++ b/media-libs/freeverb3/freeverb3-3.1.1-r1.ebuild @@ -0,0 +1,76 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils multilib versionator + +DESCRIPTION="High Quality Reverb and Impulse Response Convolution library including XMMS/Audacious Effect plugins" +HOMEPAGE="https://savannah.nongnu.org/projects/freeverb3" +SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +_IUSE_INSTRUCTION_SETS="cpu_flags_x86_3dnow cpu_flags_x86_avx cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1" +IUSE="${_IUSE_INSTRUCTION_SETS} audacious forcefpu jack openmp plugdouble threads" + +_GTK_DEPEND=">=dev-libs/glib-2.4.7:2 + >=x11-libs/gtk+-3.0.0:3 + x11-libs/pango + x11-libs/cairo" + +RDEPEND=">=sci-libs/fftw-3.0.1 + audacious? ( >=media-sound/audacious-3.5 + ${_GTK_DEPEND} + media-libs/libsndfile ) + jack? ( media-sound/jack-audio-connection-kit + ${_GTK_DEPEND} + media-libs/libsndfile )" +DEPEND=${RDEPEND} + +S="${WORKDIR}/${PN}-$(get_version_component_range 1-3)" + +src_prepare() { + epatch "${FILESDIR}"/${P}-jack-compilation.patch + epatch "${FILESDIR}"/${P}-jack-linking.patch +} + +src_configure() { + econf \ + --disable-profile \ + --enable-release \ + --disable-autocflags \ + --enable-undenormal \ + $(use_enable threads pthread) \ + $(use_enable forcefpu) \ + --disable-force3dnow \ + $(use_enable cpu_flags_x86_3dnow 3dnow) \ + $(use_enable cpu_flags_x86_sse sse) \ + $(use_enable cpu_flags_x86_sse2 sse2) \ + $(use_enable cpu_flags_x86_sse3 sse3) \ + $(use_enable cpu_flags_x86_sse4_1 sse4) \ + $(use_enable cpu_flags_x86_avx avx) \ + --disable-fma \ + --disable-fma4 \ + $(use_enable openmp omp) \ + --disable-sample \ + $(use_enable jack) \ + $(use_enable audacious) \ + --disable-srcnewcoeffs \ + $(use_enable plugdouble) \ + --disable-pluginit \ + || die "econf failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc ChangeLog README || die 'dodoc failed' + + if use audacious ; then + find "${D}/usr/$(get_libdir)/audacious/" -name '*.la' -print -delete || die + fi + + insinto /usr/share/${PN}/samples/IR + doins samples/IR/*.wav || die +} diff --git a/media-libs/freeverb3/freeverb3-3.1.1.ebuild b/media-libs/freeverb3/freeverb3-3.1.1.ebuild new file mode 100644 index 000000000000..c0e35d5a1623 --- /dev/null +++ b/media-libs/freeverb3/freeverb3-3.1.1.ebuild @@ -0,0 +1,71 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit multilib versionator + +DESCRIPTION="High Quality Reverb and Impulse Response Convolution library including XMMS/Audacious Effect plugins" +HOMEPAGE="https://savannah.nongnu.org/projects/freeverb3" +SRC_URI="mirror://nongnu/${PN}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +_IUSE_INSTRUCTION_SETS="cpu_flags_x86_3dnow cpu_flags_x86_avx cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_sse4_1" +IUSE="${_IUSE_INSTRUCTION_SETS} audacious forcefpu jack openmp plugdouble threads" + +_GTK_DEPEND=">=dev-libs/glib-2.4.7:2 + >=x11-libs/gtk+-3.0.0:3 + x11-libs/pango + x11-libs/cairo" + +RDEPEND=">=sci-libs/fftw-3.0.1 + audacious? ( >=media-sound/audacious-3.5 + ${_GTK_DEPEND} + media-libs/libsndfile ) + jack? ( media-sound/jack-audio-connection-kit + ${_GTK_DEPEND} + media-libs/libsndfile )" +DEPEND=${RDEPEND} + +S="${WORKDIR}/${PN}-$(get_version_component_range 1-3)" + +src_configure() { + econf \ + --disable-profile \ + --enable-release \ + --disable-autocflags \ + --enable-undenormal \ + $(use_enable threads pthread) \ + $(use_enable forcefpu) \ + --disable-force3dnow \ + $(use_enable cpu_flags_x86_3dnow 3dnow) \ + $(use_enable cpu_flags_x86_sse sse) \ + $(use_enable cpu_flags_x86_sse2 sse2) \ + $(use_enable cpu_flags_x86_sse3 sse3) \ + $(use_enable cpu_flags_x86_sse4_1 sse4) \ + $(use_enable cpu_flags_x86_avx avx) \ + --disable-fma \ + --disable-fma4 \ + $(use_enable openmp omp) \ + --disable-sample \ + $(use_enable jack) \ + $(use_enable audacious) \ + --disable-srcnewcoeffs \ + $(use_enable plugdouble) \ + --disable-pluginit \ + || die "econf failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + dodoc ChangeLog README || die 'dodoc failed' + + if use audacious ; then + find "${D}/usr/$(get_libdir)/audacious/" -name '*.la' -print -delete || die + fi + + insinto /usr/share/${PN}/samples/IR + doins samples/IR/*.wav || die +} diff --git a/media-libs/freeverb3/metadata.xml b/media-libs/freeverb3/metadata.xml new file mode 100644 index 000000000000..5251146e238d --- /dev/null +++ b/media-libs/freeverb3/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sound</herd> + <maintainer> + <email>sping@gentoo.org</email> + <name>Sebastian Pipping</name> + </maintainer> + <use> + <flag name='audacious'>Build Audacious plugin</flag> + <flag name='forcefpu'>Disable assembly code</flag> + <flag name='plugdouble'>Build plugins in double precision mode + (default is float)</flag> + </use> +</pkgmetadata> |