#1097224 libldm: ftbfs with GCC-15

Package:
src:libldm
Source:
src:libldm
Submitter:
Matthias Klose
Date:
2025-09-04 22:08:56 UTC
Severity:
normal
Tags:
#1097224#5
Date:
2025-02-17 17:32:19 UTC
From:
To:
[This bug is NOT 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-15/g++-15, but succeeds to build with gcc-14/g++-14. The
severity of this report will be raised before the forky release.

The full build log can be found at:
http://qa-logs.debian.net/2025/02/16/amd64exp/libldm_0.2.5-1.1_unstable_gccexp.log.gz
The last lines of the build log are at the end of this report.

To build with GCC 15, either set CC=gcc-15 CXX=g++-15 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++

GCC 15 now defaults to the C23/C++23 standards, exposing many FTBFS.
Other 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-15/porting_to.html

[...]
checking for sys/sysmacros.h... yes
checking for off_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for uint8_t... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for gobject-2.0 >= 2.26.0... yes
checking for json-glib-1.0 >= 0.14.0... yes
checking for gio-unix-2.0 >= 2.32.0... yes
checking for zlib >= 1.2... yes
checking for uuid... yes
checking for devmapper >= 1.02... yes
checking for gtk-doc... yes
checking for gtkdoc-check... gtkdoc-check.test
checking for gtkdoc-check... /usr/bin/gtkdoc-check
checking for gtkdoc-rebase... /usr/bin/gtkdoc-rebase
checking for gtkdoc-mkpdf... /usr/bin/gtkdoc-mkpdf
checking whether to build gtk-doc documentation... no
checking for glib-2.0 >= 2.10.0 gobject-2.0  >= 2.10.0... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating test/Makefile
config.status: creating docs/reference/libldm/Makefile
config.status: creating docs/reference/ldmtool/Makefile
config.status: creating ldm-1.0.pc
config.status: creating libldm.spec
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
   dh_auto_build
	make -j8
make[1]: Entering directory '/build/reproducible-path/libldm-0.2.5'
make  all-recursive
make[2]: Entering directory '/build/reproducible-path/libldm-0.2.5'
Making all in src
make[3]: Entering directory '/build/reproducible-path/libldm-0.2.5/src'
gcc -DHAVE_CONFIG_H -I. -I..   -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread  -I/usr/include/json-glib-1.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/libmount -I/usr/include/blkid -pthread  -I/usr/include/gio-unix-2.0 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/libmount -I/usr/include/blkid -pthread  -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o ldmtool-ldmtool.o `test -f 'ldmtool.c' || echo './'`ldmtool.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..   -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread   -I/usr/include/uuid   -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o libldm_1_0_la-mbr.lo `test -f 'mbr.c' || echo './'`mbr.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..   -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread   -I/usr/include/uuid   -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o libldm_1_0_la-gpt.lo `test -f 'gpt.c' || echo './'`gpt.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I..   -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread   -I/usr/include/uuid   -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c -o libldm_1_0_la-ldm.lo `test -f 'ldm.c' || echo './'`ldm.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/usr/include/uuid -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c mbr.c  -fPIC -DPIC -o .libs/libldm_1_0_la-mbr.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/usr/include/uuid -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c gpt.c  -fPIC -DPIC -o .libs/libldm_1_0_la-gpt.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/usr/include/uuid -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c ldm.c  -fPIC -DPIC -o .libs/libldm_1_0_la-ldm.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/usr/include/uuid -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c mbr.c -o libldm_1_0_la-mbr.o >/dev/null 2>&1
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/usr/include/uuid -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c gpt.c -o libldm_1_0_la-gpt.o >/dev/null 2>&1
ldmtool.c: In function ‘main’:
ldmtool.c:818:23: error: too many arguments to function ‘ldm_new’; expected 0, have 1
  818 |     LDM * const ldm = ldm_new(&err);
      |                       ^~~~~~~ ~~~~
In file included from ldmtool.c:37:
ldm.h:257:6: note: declared here
  257 | LDM *ldm_new();
      |      ^~~~~~~
make[3]: *** [Makefile:585: ldmtool-ldmtool.o] Error 1
make[3]: *** Waiting for unfinished jobs....
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Werror -Wshadow -Wextra -Wno-unused-local-typedefs -Wno-unused-parameter -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6 -pthread -I/usr/include/uuid -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libldm-0.2.5=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c ldm.c -o libldm_1_0_la-ldm.o >/dev/null 2>&1
make[3]: Leaving directory '/build/reproducible-path/libldm-0.2.5/src'
make[2]: *** [Makefile:507: all-recursive] Error 1
make[2]: Leaving directory '/build/reproducible-path/libldm-0.2.5'
make[1]: *** [Makefile:414: all] Error 2
make[1]: Leaving directory '/build/reproducible-path/libldm-0.2.5'
dh_auto_build: error: make -j8 returned exit code 2
make: *** [debian/rules:13: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2