Hi Salvatore,

On 2026-02-21 21:34, Salvatore Bonaccorso wrote:
> Control: tags -1 + confirmed
> 
> Hi Aurelien,
> 
> On Fri, Feb 20, 2026 at 11:33:49PM +0100, Aurelien Jarno wrote:
> > Source: criu
> > Version: 4.2-1
> > Severity: important
> > Tags: ftbfs upstream
> > Justification: fails to build from source
> > User: [email protected]
> > Usertags: glibc-2.43
> > 
> > Dear maintainer(s),
> > 
> > criu fails to build from source with glibc 2.43, currently in
> > experimental. From the build log:
> > 
> > | gcc -c -g -O2 -Werror=implicit-function-declaration 
> > -ffile-prefix-map=/build/reproducible-path/criu-4.2=. 
> > -fstack-protector-strong -fstack-clash-protection -Wformat 
> > -Werror=format-security -mbranch-protection=standard -O2 -g -Wall 
> > -Wformat-security -Wdeclaration-after-statement -Wstrict-prototypes 
> > -Wno-dangling-pointer -Wno-unknown-warning-option -Werror -DCONFIG_AARCH64 
> > -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_GNU_SOURCE 
> > -DCONFIG_HAS_LIBBSD -DCONFIG_GNUTLS -DCONFIG_HAS_NFTABLES_LIB_API_1 -iquote 
> > include/ -DCONFIG_HAS_LIBBSD -DCONFIG_GNUTLS 
> > -DCONFIG_HAS_NFTABLES_LIB_API_1 -I ./compel/include/uapi 
> > -fno-strict-aliasing -iquote criu/include -iquote include -iquote images 
> > -iquote criu/arch/aarch64/include -iquote . -I/usr/include/libnl3 
> > -DSYSCONFDIR='"/etc"' -DGLOBAL_CONFIG_DIR='"/etc/criu/"' 
> > -DDEFAULT_CONFIG_FILENAME='"default.conf"' -DUSER_CONFIG_DIR='".criu/"' 
> > criu/tty.c -o criu/tty.o
> > | criu/tty.c: In function ‘pts_fd_get_index’:
> > | criu/tty.c:262:21: error: initialization discards ‘const’ qualifier from 
> > pointer target type [-Werror=discarded-qualifiers]
> > |   262 |         char *pos = strrchr(link->name, '/');
> > |       |                     ^~~~~~~
> > | At top level:
> > | cc1: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ 
> > may have been intended to silence earlier diagnostics
> > | cc1: all warnings being treated as errors
> > | make[4]: *** 
> > [/build/reproducible-path/criu-4.2/scripts/nmk/scripts/build.mk:119: 
> > criu/tty.o] Error 1
> > | make[3]: *** [criu/Makefile:76: criu/built-in.o] Error 2
> > | make[2]: *** [Makefile:278: criu] Error 2
> > | make[2]: Leaving directory '/build/reproducible-path/criu-4.2'
> > | make[1]: *** [debian/rules:20: override_dh_auto_build] Error 2
> > | make[1]: Leaving directory '/build/reproducible-path/criu-4.2'
> > | make: *** [debian/rules:14: 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.
> 
> Thanks for the report, this should be fixed with
> https://github.com/checkpoint-restore/criu/commit/90300748effc1cf0fe56e35d3d1cc2ddfedab246
> 
> Depends on how fast you want things to be ready for unstable I can
> cherry-pick it in advance before upstream releases a new version.

Thanks for finding this fix. At this stage there are still more than 60 
packages that need fixes, and I haven't even filled all of them yet.  
Therefore, there is no urgency at all, and I do not have plan to upload 
glibc 2.43 until at least a few weeks. I'll send a notice in case the 
upload is getting imminent, but there might be a new upstream release of 
criu in the meantime.

Regards
Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
[email protected]                     http://aurel32.net

Reply via email to