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

Reply via email to