Source: libgadu
Version: 1:1.12.2-7
Severity: important
Tags: ftbfs upstream
Justification: fails to build from source
User: [email protected]
Usertags: glibc-2.43
Dear maintainer(s),
libgadu fails to build from source with glibc 2.43, currently in
experimental. From the build log:
| libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -Wdate-time
-D_FORTIFY_SOURCE=2 -I.. -I../include -DGG_IGNORE_DEPRECATED -g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror -c dcc7.c -fPIC
-DPIC -o .libs/libgadu_la-dcc7.o
| libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -Wdate-time
-D_FORTIFY_SOURCE=2 -I.. -I../include -DGG_IGNORE_DEPRECATED -g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror -c events.c -fPIC
-DPIC -o .libs/libgadu_la-events.o
...
| dcc7.c: In function 'gg_dcc7_handle_info':
| dcc7.c:765:27: error: assignment discards 'const' qualifier from pointer
target type [-Werror=discarded-qualifiers]
| 765 | if (!(tmp = strchr(p->info, ' ')) ||
!(dcc->remote_port = atoi(tmp + 1))) {
| | ^
| dcc7.c:785:27: error: assignment discards 'const' qualifier from pointer
target type [-Werror=discarded-qualifiers]
| 785 | if (!(tmp = strstr(p->info, "GG"))) {
| | ^
| libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -Wdate-time
-D_FORTIFY_SOURCE=2 -I.. -I../include -DGG_IGNORE_DEPRECATED -g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror -c endian.c -o
libgadu_la-endian.o >/dev/null 2>&1
| events.c: In function 'gg_handle_reading_hub_proxy':
| events.c:1098:21: error: assignment discards 'const' qualifier from pointer
target type [-Werror=discarded-qualifiers]
| 1098 | tmp = strchr(body, '\n');
| | ^
...
| cc1: all warnings being treated as errors
| cc1: all warnings being treated as errors
| make[5]: *** [Makefile:598: libgadu_la-events.lo] Error 1
| make[5]: *** Waiting for unfinished jobs....
| make[5]: *** [Makefile:563: libgadu_la-dcc7.lo] Error 1
| libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -Wdate-time
-D_FORTIFY_SOURCE=2 -I.. -I../include -DGG_IGNORE_DEPRECATED -g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror -c message.c -o
libgadu_la-message.o >/dev/null 2>&1
| libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -Wdate-time
-D_FORTIFY_SOURCE=2 -I.. -I../include -DGG_IGNORE_DEPRECATED -g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror -c dcc.c -o
libgadu_la-dcc.o >/dev/null 2>&1
| libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -Wdate-time
-D_FORTIFY_SOURCE=2 -I.. -I../include -DGG_IGNORE_DEPRECATED -g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror -c libgadu.c -o
libgadu_la-libgadu.o >/dev/null 2>&1
| libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I../include -Wdate-time
-D_FORTIFY_SOURCE=2 -I.. -I../include -DGG_IGNORE_DEPRECATED -g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror -c handlers.c -o
libgadu_la-handlers.o >/dev/null 2>&1
| make[5]: Leaving directory '/build/reproducible-path/libgadu-1.12.2/src'
| make[4]: *** [Makefile:417: all] Error 2
| make[4]: Leaving directory '/build/reproducible-path/libgadu-1.12.2/src'
| make[3]: *** [Makefile:440: all-recursive] Error 1
| make[3]: Leaving directory '/build/reproducible-path/libgadu-1.12.2'
| make[2]: *** [Makefile:372: all] Error 2
| make[2]: Leaving directory '/build/reproducible-path/libgadu-1.12.2'
| dh_auto_build: error: make -j128 CFLAGS="-g -O2
-Werror=implicit-function-declaration
-ffile-prefix-map=/build/reproducible-path/libgadu-1.12.2=.
-fstack-protector-strong -fstack-clash-protection -Wformat
-Werror=format-security -mbranch-protection=standard -Werror" returned exit
code 2
| make[1]: *** [debian/rules:28: override_dh_auto_build] Error 25
| make[1]: Leaving directory '/build/reproducible-path/libgadu-1.12.2'
| make: *** [debian/rules:10: binary] Error 2
| dpkg-buildpackage: error: debian/rules binary subprocess failed with exit
status 2
The full build log is available here [1].
The issue is due to ISO C23 declaration of bsearch, memchr, strchr,
strpbrk, strrchr, strstr, wcschr, wcspbrk, wcsrchr, wcsstr and wmemchr,
which now returns a pointer to a const-qualified type when the input
argument is a pointer to a const-qualified type [2].
I would like to thanks Emanuele Rocca for doing the archive rebuild on
a fast arm64 server.
Regards
Aurelien
[1]
https://people.debian.org/~ema/glibc-2.43-rebuilds/output-1/libgadu_arm64.build
[2]
https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=e271fb2e4d76903c77a302aaec1ca22ce31027d0;hb=f762ccf84f122d1354f103a151cba8bde797d521#l19
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
[email protected] http://aurel32.net