Package: libsoundtouch0 Version: 1.7.1-1 Severity: serious Tags: sid jessie patch Control: affects -1 + src:audacity
In version 1.7.1 of soundtouch | #if (defined(__SOFTFP__)) | // For Android compilation: Force use of Integer samples in case that | // compilation uses soft-floating point emulation - soft-fp is way too slow | #undef SOUNDTOUCH_FLOAT_SAMPLES | #define SOUNDTOUCH_INTEGER_SAMPLES 1 | #endif was added to include/STTypes.h [1]. Since __SOFTFP__ is defined on armel, SAMPLETYPE changed from float to short and the signatures of some functions changed. For example, take the following simple program: | #include <soundtouch/FIFOSampleBuffer.h> | int main() | { | soundtouch::FIFOSampleBuffer f; | soundtouch::SAMPLETYPE s = 0; | f.putSamples(&s, 1); | } When compiled and linked against a version prior to 1.7.1 and then upgrading to 1.7.1, the program fails to run: % ./a.out ./a.out: symbol lookup error: ./a.out: undefined symbol: _ZN10soundtouch16FIFOSampleBuffer10putSamplesEPKfj The attached patch reverts this change and restores ABI compatibility. Regards -- Sebastian Ramacher
diff --git a/include/STTypes.h b/include/STTypes.h index ed4231b..8820a53 100644 --- a/include/STTypes.h +++ b/include/STTypes.h @@ -78,13 +78,6 @@ namespace soundtouch //#undef SOUNDTOUCH_INTEGER_SAMPLES //#undef SOUNDTOUCH_FLOAT_SAMPLES - #if (defined(__SOFTFP__)) - // For Android compilation: Force use of Integer samples in case that - // compilation uses soft-floating point emulation - soft-fp is way too slow - #undef SOUNDTOUCH_FLOAT_SAMPLES - #define SOUNDTOUCH_INTEGER_SAMPLES 1 - #endif - #if !(SOUNDTOUCH_INTEGER_SAMPLES || SOUNDTOUCH_FLOAT_SAMPLES) /// Choose either 32bit floating point or 16bit integer sampletype
signature.asc
Description: Digital signature