changeset 2128:f474b3931217 rubberband-static

Bring in Rubber Band as an ext/ dependency via Repoint and link it statically
author Chris Cannam
date Wed, 28 Nov 2018 09:48:57 +0000
parents ac587ccb08bd
children 02f15fb8ec68
files base.pri bq-files.pri configure configure.ac noconfig.pri repoint-lock.json repoint-project.json
diffstat 7 files changed, 23 insertions(+), 168 deletions(-) [+]
line wrap: on
line diff
--- a/base.pri	Sun Nov 25 18:23:23 2018 +0000
+++ b/base.pri	Wed Nov 28 09:48:57 2018 +0000
@@ -17,7 +17,9 @@
 	svcore/plugin/api/alsa \
 	svgui \
 	svapp \
-	vamp-plugin-sdk
+	vamp-plugin-sdk \
+        rubberband \
+        rubberband/src
 
 DEPENDPATH += $$SV_INCLUDEPATH
 INCLUDEPATH += $$SV_INCLUDEPATH
@@ -31,5 +33,9 @@
 # Defines for Dataquay
 DEFINES += USE_SORD
 
+# Defines for Rubber Band
+linux*:   DEFINES += USE_PTHREADS
+macx*:    DEFINES += USE_PTHREADS
+
 CONFIG += qt thread warn_on stl rtti exceptions
 
--- a/bq-files.pri	Sun Nov 25 18:23:23 2018 +0000
+++ b/bq-files.pri	Wed Nov 28 09:48:57 2018 +0000
@@ -23,7 +23,8 @@
 	bqaudioio/src/JACKAudioIO.h \
 	bqaudioio/src/Log.h \
 	bqaudioio/src/PortAudioIO.h \
-	bqaudioio/src/PulseAudioIO.h
+	bqaudioio/src/PulseAudioIO.h \
+	rubberband/rubberband/RubberBandStretcher.h
 
 BQ_SOURCES += \
 	bqvec/src/Allocators.cpp \
@@ -38,5 +39,6 @@
 	bqaudioio/src/PulseAudioIO.cpp \
 	bqaudioio/src/ResamplerWrapper.cpp \
 	bqaudioio/src/SystemPlaybackTarget.cpp \
-	bqaudioio/src/SystemRecordSource.cpp
-
+	bqaudioio/src/SystemRecordSource.cpp \
+        rubberband/src/rubberband-everything.cpp
+        
--- a/configure	Sun Nov 25 18:23:23 2018 +0000
+++ b/configure	Wed Nov 28 09:48:57 2018 +0000
@@ -656,8 +656,6 @@
 serd_CFLAGS
 sord_LIBS
 sord_CFLAGS
-rubberband_LIBS
-rubberband_CFLAGS
 libsamplerate_LIBS
 libsamplerate_CFLAGS
 sndfile_LIBS
@@ -758,8 +756,6 @@
 sndfile_LIBS
 libsamplerate_CFLAGS
 libsamplerate_LIBS
-rubberband_CFLAGS
-rubberband_LIBS
 sord_CFLAGS
 sord_LIBS
 serd_CFLAGS
@@ -1427,10 +1423,6 @@
               C compiler flags for libsamplerate, overriding pkg-config
   libsamplerate_LIBS
               linker flags for libsamplerate, overriding pkg-config
-  rubberband_CFLAGS
-              C compiler flags for rubberband, overriding pkg-config
-  rubberband_LIBS
-              linker flags for rubberband, overriding pkg-config
   sord_CFLAGS C compiler flags for sord, overriding pkg-config
   sord_LIBS   linker flags for sord, overriding pkg-config
   serd_CFLAGS C compiler flags for serd, overriding pkg-config
@@ -5278,157 +5270,6 @@
 fi
 
 
-SV_MODULE_MODULE=rubberband
-SV_MODULE_VERSION_TEST="rubberband"
-SV_MODULE_HEADER=rubberband/RubberBandStretcher.h
-SV_MODULE_LIB=rubberband
-SV_MODULE_FUNC=rubberband_new
-SV_MODULE_HAVE=HAVE_$(echo rubberband | tr 'a-z' 'A-Z')
-SV_MODULE_FAILED=1
-if test -n "$rubberband_LIBS" ; then
-   { $as_echo "$as_me:${as_lineno-$LINENO}: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&5
-$as_echo "$as_me: User set ${SV_MODULE_MODULE}_LIBS explicitly, skipping test for $SV_MODULE_MODULE" >&6;}
-   CXXFLAGS="$CXXFLAGS $rubberband_CFLAGS"
-   LIBS="$LIBS $rubberband_LIBS"
-   SV_MODULE_FAILED=""
-fi
-if test -z "$SV_MODULE_VERSION_TEST" ; then
-   SV_MODULE_VERSION_TEST=$SV_MODULE_MODULE
-fi
-if test -n "$SV_MODULE_FAILED" && test -n "$PKG_CONFIG"; then
-
-pkg_failed=no
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for rubberband" >&5
-$as_echo_n "checking for rubberband... " >&6; }
-
-if test -n "$rubberband_CFLAGS"; then
-    pkg_cv_rubberband_CFLAGS="$rubberband_CFLAGS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "$SV_MODULE_VERSION_TEST") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_rubberband_CFLAGS=`$PKG_CONFIG --cflags "$SV_MODULE_VERSION_TEST" 2>/dev/null`
-		      test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-if test -n "$rubberband_LIBS"; then
-    pkg_cv_rubberband_LIBS="$rubberband_LIBS"
- elif test -n "$PKG_CONFIG"; then
-    if test -n "$PKG_CONFIG" && \
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$SV_MODULE_VERSION_TEST\""; } >&5
-  ($PKG_CONFIG --exists --print-errors "$SV_MODULE_VERSION_TEST") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then
-  pkg_cv_rubberband_LIBS=`$PKG_CONFIG --libs "$SV_MODULE_VERSION_TEST" 2>/dev/null`
-		      test "x$?" != "x0" && pkg_failed=yes
-else
-  pkg_failed=yes
-fi
- else
-    pkg_failed=untried
-fi
-
-
-
-if test $pkg_failed = yes; then
-   	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
-        _pkg_short_errors_supported=yes
-else
-        _pkg_short_errors_supported=no
-fi
-        if test $_pkg_short_errors_supported = yes; then
-	        rubberband_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
-        else
-	        rubberband_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$SV_MODULE_VERSION_TEST" 2>&1`
-        fi
-	# Put the nasty error message in config.log where it belongs
-	echo "$rubberband_PKG_ERRORS" >&5
-
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
-$as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
-elif test $pkg_failed = untried; then
-     	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&5
-$as_echo "$as_me: Failed to find required module $SV_MODULE_MODULE using pkg-config, trying again by old-fashioned means" >&6;}
-else
-	rubberband_CFLAGS=$pkg_cv_rubberband_CFLAGS
-	rubberband_LIBS=$pkg_cv_rubberband_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-	HAVES="$HAVES $SV_MODULE_HAVE";CXXFLAGS="$CXXFLAGS $rubberband_CFLAGS";LIBS="$LIBS $rubberband_LIBS";SV_MODULE_FAILED=""
-fi
-fi
-if test -n "$SV_MODULE_FAILED"; then
-   as_ac_Header=`$as_echo "ac_cv_header_$SV_MODULE_HEADER" | $as_tr_sh`
-ac_fn_cxx_check_header_mongrel "$LINENO" "$SV_MODULE_HEADER" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  HAVES="$HAVES $SV_MODULE_HAVE"
-else
-  as_fn_error $? "Failed to find header $SV_MODULE_HEADER for required module $SV_MODULE_MODULE" "$LINENO" 5
-fi
-
-
-   if test -n "$SV_MODULE_LIB"; then
-     as_ac_Lib=`$as_echo "ac_cv_lib_$SV_MODULE_LIB''_$SV_MODULE_FUNC" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $SV_MODULE_FUNC in -l$SV_MODULE_LIB" >&5
-$as_echo_n "checking for $SV_MODULE_FUNC in -l$SV_MODULE_LIB... " >&6; }
-if eval \${$as_ac_Lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-l$SV_MODULE_LIB  $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $SV_MODULE_FUNC ();
-int
-main ()
-{
-return $SV_MODULE_FUNC ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_cxx_try_link "$LINENO"; then :
-  eval "$as_ac_Lib=yes"
-else
-  eval "$as_ac_Lib=no"
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-eval ac_res=\$$as_ac_Lib
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
-  LIBS="$LIBS -l$SV_MODULE_LIB"
-else
-  as_fn_error $? "Failed to find library $SV_MODULE_LIB for required module $SV_MODULE_MODULE" "$LINENO" 5
-fi
-
-   fi
-fi
-
-
 SV_MODULE_MODULE=sord
 SV_MODULE_VERSION_TEST="sord-0 >= 0.5"
 SV_MODULE_HEADER=sord/sord.h
--- a/configure.ac	Sun Nov 25 18:23:23 2018 +0000
+++ b/configure.ac	Wed Nov 28 09:48:57 2018 +0000
@@ -95,7 +95,6 @@
 SV_MODULE_REQUIRED([fftw3f],[fftw3f >= 3.0.0],[fftw3.h],[fftw3f],[fftwf_execute])
 SV_MODULE_REQUIRED([sndfile],[sndfile >= 1.0.16],[sndfile.h],[sndfile],[sf_open])
 SV_MODULE_REQUIRED([libsamplerate],[samplerate >= 0.1.2],[samplerate.h],[samplerate],[src_new])
-SV_MODULE_REQUIRED([rubberband],[rubberband],[rubberband/RubberBandStretcher.h],[rubberband],[rubberband_new])
 SV_MODULE_REQUIRED([sord],[sord-0 >= 0.5],[sord/sord.h],[sord-0],[sord_world_new])
 SV_MODULE_REQUIRED([serd],[serd-0 >= 0.5],[serd/serd.h],[serd-0],[serd_reader_read_file])
 
--- a/noconfig.pri	Sun Nov 25 18:23:23 2018 +0000
+++ b/noconfig.pri	Wed Nov 28 09:48:57 2018 +0000
@@ -32,7 +32,6 @@
 LIBS += \
         -lbase \
         -lbz2 \
-	-lrubberband \
 	-lfftw3 \
 	-lfftw3f \
 	-lsndfile \
--- a/repoint-lock.json	Sun Nov 25 18:23:23 2018 +0000
+++ b/repoint-lock.json	Wed Nov 28 09:48:57 2018 +0000
@@ -13,13 +13,13 @@
       "pin": "29bef008588e"
     },
     "checker": {
-      "pin": "17fb9ff8e072"
+      "pin": "0d2d3c89fdf6"
     },
     "piper": {
       "pin": "f5a04ffe4d5a0ae01e77018a86a59b48a425e674"
     },
     "piper-vamp-cpp": {
-      "pin": "269b6c25dae4864515651790553dd8167e5831e4"
+      "pin": "1034a6c73c106d72fa7e85ae6cc00576515c6155"
     },
     "dataquay": {
       "pin": "807b55408d9e"
@@ -34,7 +34,10 @@
       "pin": "f5dee7d40378"
     },
     "bqaudioio": {
-      "pin": "b5e34fdc1716"
+      "pin": "8c4162878ae6"
+    },
+    "rubberband": {
+      "pin": "2c525b771328"
     },
     "sv-dependency-builds": {
       "pin": "f1a9b270e043"
--- a/repoint-project.json	Sun Nov 25 18:23:23 2018 +0000
+++ b/repoint-project.json	Wed Nov 28 09:48:57 2018 +0000
@@ -66,6 +66,11 @@
             "service": "bitbucket",
             "owner": "breakfastquay"
         },
+        "rubberband": {
+            "vcs": "hg",
+            "service": "bitbucket",
+            "owner": "breakfastquay"
+        },
         "sv-dependency-builds": {
             "vcs": "hg",
             "service": "soundsoftware"