Bug#1075142: libapache2-mod-qos: ftbfs with GCC-14
Package: src:libapache2-mod-qos
Version: 11.74-1
Severity: important
Tags: sid trixie
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-14
[This bug is targeted to the upcoming trixie release]
Please keep this issue open in the bug tracker for the package it
was filed for. If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.
The package fails to build in a test rebuild on at least amd64 with
gcc-14/g++-14, but succeeds to build with gcc-13/g++-13. The
severity of this report will be raised before the trixie release.
The full build log can be found at:
http://qa-logs.debian.net/2024/07/01/libapache2-mod-qos_11.74-1_unstable_gccexp.log
The last lines of the build log are at the end of this report.
To build with GCC 14, either set CC=gcc-14 CXX=g++-14 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.
apt-get -t=experimental install g++
Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-14/porting_to.html
[...]
| ^~~~~~~~~~~~~
/usr/share/apr-1.0/build/libtool --no-silent --mode=link --tag=disable-static x86_64-linux-gnu-gcc -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -lpcre2-8 -L/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0 -o apache2/mod_qos.la -lcrypto -rpath /usr/lib/apache2/modules -module -avoid-version apache2/mod_qos.lo
libtool: link: x86_64-linux-gnu-gcc -shared -fPIC -DPIC apache2/.libs/mod_qos.o -lpcre2-8 -L/usr/lib/x86_64-linux-gnu/libpcre2-8.so.0 -lcrypto -Wl,--as-needed -Wl,-z -Wl,relro -Wl,-z -Wl,now -Wl,-soname -Wl,mod_qos.so -o apache2/.libs/mod_qos.so
libtool: link: ( cd "apache2/.libs" && rm -f "mod_qos.la" && ln -s "../mod_qos.la" "mod_qos.la" )
dh_auto_build --sourcedirectory=tools
dh_auto_build: warning: Compatibility levels before 10 are deprecated (level 9 in use)
cd tools && make -j1
make[2]: Entering directory '/<<PKGBUILDDIR>>/tools'
make all-recursive
make[3]: Entering directory '/<<PKGBUILDDIR>>/tools'
Making all in src
make[4]: Entering directory '/<<PKGBUILDDIR>>/tools/src'
gcc -DHAVE_CONFIG_H -I. -I.. -DLINUX -D_REENTRANT -D_GNU_SOURCE -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include/libpng16 -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include -I/usr/lib/include -c -o qsfilter2.o qsfilter2.c
qsfilter2.c: In function ‘main’:
qsfilter2.c:1803:38: error: passing argument 1 of ‘OPENSSL_sk_new’ from incompatible pointer type [-Wincompatible-pointer-types]
1803 | STACK_OF(qs_rule_t) *st = sk_new(STACK_qs_cmp);
| ^~~~~~~~~~~~
| |
| int (*)(const char * const*, const char * const*)
In file included from /usr/include/openssl/safestack.h:24,
from qsfilter2.c:59:
/usr/include/openssl/stack.h:34:51: note: expected ‘OPENSSL_sk_compfunc’ {aka ‘int (*)(const void *, const void *)’} but argument is of type ‘int (*)(const char * const*, const char * const*)’
34 | OPENSSL_STACK *OPENSSL_sk_new(OPENSSL_sk_compfunc cmp);
| ~~~~~~~~~~~~~~~~~~~~^~~
qsfilter2.c:1803:31: error: initialization of ‘struct stack_st_qs_rule_t *’ from incompatible pointer type ‘OPENSSL_STACK *’ {aka ‘struct stack_st *’} [-Wincompatible-pointer-types]
1803 | STACK_OF(qs_rule_t) *st = sk_new(STACK_qs_cmp);
| ^~~~~~
qsfilter2.c:1811:15: error: passing argument 1 of ‘OPENSSL_sk_push’ from incompatible pointer type [-Wincompatible-pointer-types]
1811 | sk_push(st, (char *)r);
| ^~
| |
| struct stack_st_qs_rule_t *
/usr/include/openssl/stack.h:49:36: note: expected ‘OPENSSL_STACK *’ {aka ‘struct stack_st *’} but argument is of type ‘struct stack_st_qs_rule_t *’
49 | int OPENSSL_sk_push(OPENSSL_STACK *st, const void *data);
| ~~~~~~~~~~~~~~~^~
qsfilter2.c:1813:13: error: passing argument 1 of ‘OPENSSL_sk_sort’ from incompatible pointer type [-Wincompatible-pointer-types]
1813 | sk_sort(st);
| ^~
| |
| struct stack_st_qs_rule_t *
/usr/include/openssl/stack.h:57:37: note: expected ‘OPENSSL_STACK *’ {aka ‘struct stack_st *’} but argument is of type ‘struct stack_st_qs_rule_t *’
57 | void OPENSSL_sk_sort(OPENSSL_STACK *st);
| ~~~~~~~~~~~~~~~^~
qsfilter2.c:1814:16: error: passing argument 1 of ‘OPENSSL_sk_num’ from incompatible pointer type [-Wincompatible-pointer-types]
1814 | i = sk_num(st);
| ^~
| |
| struct stack_st_qs_rule_t *
/usr/include/openssl/stack.h:29:20: note: expected ‘const OPENSSL_STACK *’ {aka ‘const struct stack_st *’} but argument is of type ‘struct stack_st_qs_rule_t *’
29 | int OPENSSL_sk_num(const OPENSSL_STACK *);
| ^~~~~~~~~~~~~~~~~~~~~
qsfilter2.c:1816:33: error: passing argument 1 of ‘OPENSSL_sk_value’ from incompatible pointer type [-Wincompatible-pointer-types]
1816 | r = (qs_rule_t *)sk_value(st, i-1);
| ^~
| |
| struct stack_st_qs_rule_t *
/usr/include/openssl/stack.h:30:24: note: expected ‘const OPENSSL_STACK *’ {aka ‘const struct stack_st *’} but argument is of type ‘struct stack_st_qs_rule_t *’
30 | void *OPENSSL_sk_value(const OPENSSL_STACK *, int);
| ^~~~~~~~~~~~~~~~~~~~~
make[4]: *** [Makefile:542: qsfilter2.o] Error 1
make[4]: Leaving directory '/<<PKGBUILDDIR>>/tools/src'
make[3]: *** [Makefile:364: all-recursive] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/tools'
make[2]: *** [Makefile:305: all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/tools'
dh_auto_build: error: cd tools && make -j1 returned exit code 2
make[1]: *** [debian/rules:18: override_dh_auto_build] Error 255
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:6: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2
Reply to: