Bug#890633: caps: FTBFS with glibc 2.27: error: 'pow10f' was not declared in this scope
Aurelien Jarno
aurel32 at debian.org
Fri Feb 16 23:31:29 GMT 2018
Package: caps
Version: 0.9.24-4
Severity: important
Tags: patch
User: debian-glibc at lists.debian.org
Usertags: 2.27
caps 0.9.24-4 fails to build with glibc 2.27 (2.27-0experimental0 from
experimental):
| In file included from Cabinet.h:39:0,
| from Click.cc:156:
| dsp/v4f.h:74:7: note: candidate: template<float (* fn)(float)> v4f_t v4f_map(v4f_t)
| v4f_t v4f_map (v4f_t x)
| ^~~~~~~
| dsp/v4f.h:74:7: note: template argument deduction/substitution failed:
| In file included from Cabinet.h:41:0,
| from Click.cc:156:
| dsp/v4f_IIR2.h:145:27: error: template argument 1 is invalid
| A = v4f_map<pow10f> (A);
| ^
| dsp/v4f_IIR2.h: In member function 'void DSP::IIR2v4Bank<N>::set_eq(v4f_t*, v4f_t*, v4f_t*)':
| dsp/v4f_IIR2.h:432:18: error: 'pow10f' was not declared in this scope
| A = v4f_map<pow10f> (A);
| ^~~~~~
| dsp/v4f_IIR2.h:432:18: note: suggested alternative: 'powf'
| A = v4f_map<pow10f> (A);
| ^~~~~~
| powf
| Makefile:59: recipe for target 'Eq.o' failed
| make[1]: *** [Eq.o] Error 1
| Makefile:59: recipe for target 'CabIV.o' failed
| make[1]: *** [CabIV.o] Error 1
| Makefile:59: recipe for target 'Click.o' failed
| make[1]: *** [Click.o] Error 1
| make[1]: Leaving directory '/<<PKGBUILDDIR>>'
| dh_auto_build: make -j16 returned exit code 2
| debian/rules:8: recipe for target 'build-arch' failed
| make: *** [build-arch] Error 2
| dpkg-buildpackage: error: debian/rules build-arch subprocess returned exit status 2
A full build logs is available there:
http://aws-logs.debian.net/2018/02/07/glibc-exp/caps_0.9.24-4_unstable_glibc-exp.log
Starting with glibc 2.27, the libm function pow10f is no longer
supported. The standard exp10f function (from TS 18661-4:2015) should be
used instead. The attached patch fixes that.
-------------- next part --------------
diff -Nru caps-0.9.24/debian/patches/0002-pow10f.patch caps-0.9.24/debian/patches/0002-pow10f.patch
--- caps-0.9.24/debian/patches/0002-pow10f.patch
+++ caps-0.9.24/debian/patches/0002-pow10f.patch
@@ -0,0 +1,29 @@
+--- caps-0.9.24.orig/dsp/v4f_IIR2.h
++++ caps-0.9.24/dsp/v4f_IIR2.h
+@@ -33,7 +33,7 @@
+ namespace DSP {
+
+ #ifdef __APPLE__
+-inline float pow10f(float f) {return pow(10,f);}
++inline float exp10f(float f) {return pow(10,f);}
+ #endif
+
+ class RBJv4
+@@ -142,7 +142,7 @@ class IIR2v4
+ /* A = pow (10, gain / 40) */
+ v4f_t A = (v4f_t) {.025,.025,.025,.025};
+ A *= gain;
+- A = v4f_map<pow10f> (A);
++ A = v4f_map<exp10f> (A);
+
+ RBJv4 p (f, Q);
+
+@@ -429,7 +429,7 @@ class IIR2v4Bank
+ /* A = pow (10, gain / 40) */
+ v4f_t A = (v4f_t) {.025,.025,.025,.025};
+ A *= gain[i];
+- A = v4f_map<pow10f> (A);
++ A = v4f_map<exp10f> (A);
+
+ RBJv4 p (f[i], Q[i]);
+
diff -Nru caps-0.9.24/debian/patches/series
--- caps-0.9.24/debian/patches/series
+++ caps-0.9.24/debian/patches/series
@@ -1 +1,2 @@
0001-Avoid-ambiguity-in-div-invocation.patch
+0002-pow10f.patch
-------------- next part --------------
diff -Nru caps-0.9.24/debian/patches/0002-pow10f.patch caps-0.9.24/debian/patches/0002-pow10f.patch
--- caps-0.9.24/debian/patches/0002-pow10f.patch
+++ caps-0.9.24/debian/patches/0002-pow10f.patch
@@ -0,0 +1,29 @@
+--- caps-0.9.24.orig/dsp/v4f_IIR2.h
++++ caps-0.9.24/dsp/v4f_IIR2.h
+@@ -33,7 +33,7 @@
+ namespace DSP {
+
+ #ifdef __APPLE__
+-inline float pow10f(float f) {return pow(10,f);}
++inline float exp10f(float f) {return pow(10,f);}
+ #endif
+
+ class RBJv4
+@@ -142,7 +142,7 @@ class IIR2v4
+ /* A = pow (10, gain / 40) */
+ v4f_t A = (v4f_t) {.025,.025,.025,.025};
+ A *= gain;
+- A = v4f_map<pow10f> (A);
++ A = v4f_map<exp10f> (A);
+
+ RBJv4 p (f, Q);
+
+@@ -429,7 +429,7 @@ class IIR2v4Bank
+ /* A = pow (10, gain / 40) */
+ v4f_t A = (v4f_t) {.025,.025,.025,.025};
+ A *= gain[i];
+- A = v4f_map<pow10f> (A);
++ A = v4f_map<exp10f> (A);
+
+ RBJv4 p (f[i], Q[i]);
+
diff -Nru caps-0.9.24/debian/patches/series
--- caps-0.9.24/debian/patches/series
+++ caps-0.9.24/debian/patches/series
@@ -1 +1,2 @@
0001-Avoid-ambiguity-in-div-invocation.patch
+0002-pow10f.patch
More information about the pkg-multimedia-maintainers
mailing list