Source: glibc
Version: 2.37-15.1
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)
X-Debbugs-Cc: debian-...@lists.debian.org

Starting with gcc-12 version 12.3.0-15, -D_TIME_BITS=64 together with
-D_FILE_OFFSET_BITS=64 are passed by default on 32-bit architectures
except i386.

This has been partially fixed in the 2.37-15.1 NMU by adding
-U_TIME_BITS to CFLAGS, however it causes failures in the testsuite:

| +---------------------------------------------------------------------+
| |     Encountered regressions that don't match expected failures.     |
| +---------------------------------------------------------------------+
| FAIL: conform/ISO/stdio.h/linknamespace
| FAIL: conform/ISO11/stdio.h/linknamespace
| FAIL: conform/ISO99/stdio.h/linknamespace
| FAIL: conform/POSIX/aio.h/linknamespace
| FAIL: conform/POSIX/dirent.h/linknamespace
| FAIL: conform/POSIX/fcntl.h/conform
| FAIL: conform/POSIX/fcntl.h/linknamespace
| FAIL: conform/POSIX/glob.h/conform
| FAIL: conform/POSIX/mqueue.h/conform
| FAIL: conform/POSIX/mqueue.h/linknamespace
| FAIL: conform/POSIX/stdio.h/linknamespace
| FAIL: conform/POSIX/sys/mman.h/linknamespace
| FAIL: conform/POSIX/sys/stat.h/conform
| FAIL: conform/POSIX/unistd.h/conform
| FAIL: conform/POSIX/unistd.h/linknamespace
| FAIL: conform/POSIX/utime.h/conform
| FAIL: conform/POSIX2008/aio.h/linknamespace
| FAIL: conform/POSIX2008/dirent.h/linknamespace
| FAIL: conform/POSIX2008/fcntl.h/conform
| FAIL: conform/POSIX2008/fcntl.h/linknamespace
| FAIL: conform/POSIX2008/glob.h/conform
| FAIL: conform/POSIX2008/mqueue.h/conform
| FAIL: conform/POSIX2008/mqueue.h/linknamespace
| FAIL: conform/POSIX2008/signal.h/conform
| FAIL: conform/POSIX2008/stdio.h/linknamespace
| FAIL: conform/POSIX2008/stdlib.h/linknamespace
| FAIL: conform/POSIX2008/sys/mman.h/linknamespace
| FAIL: conform/POSIX2008/sys/select.h/conform
| FAIL: conform/POSIX2008/sys/stat.h/conform
| FAIL: conform/POSIX2008/sys/statvfs.h/linknamespace
| FAIL: conform/POSIX2008/unistd.h/linknamespace
| FAIL: conform/UNIX98/aio.h/linknamespace
| FAIL: conform/UNIX98/dirent.h/linknamespace
| FAIL: conform/UNIX98/fcntl.h/conform
| FAIL: conform/UNIX98/fcntl.h/linknamespace
| FAIL: conform/UNIX98/glob.h/conform
| FAIL: conform/UNIX98/mqueue.h/conform
| FAIL: conform/UNIX98/mqueue.h/linknamespace
| FAIL: conform/UNIX98/stdio.h/linknamespace
| FAIL: conform/UNIX98/stdlib.h/linknamespace
| FAIL: conform/UNIX98/sys/mman.h/linknamespace
| FAIL: conform/UNIX98/sys/resource.h/linknamespace
| FAIL: conform/UNIX98/sys/statvfs.h/linknamespace
| FAIL: conform/UNIX98/sys/time.h/conform
| FAIL: conform/UNIX98/unistd.h/linknamespace
| FAIL: conform/UNIX98/utmpx.h/conform
| FAIL: conform/XOPEN2K/aio.h/linknamespace
| FAIL: conform/XOPEN2K/dirent.h/linknamespace
| FAIL: conform/XOPEN2K/fcntl.h/conform
| FAIL: conform/XOPEN2K/fcntl.h/linknamespace
| FAIL: conform/XOPEN2K/glob.h/conform
| FAIL: conform/XOPEN2K/mqueue.h/conform
| FAIL: conform/XOPEN2K/mqueue.h/linknamespace
| FAIL: conform/XOPEN2K/stdio.h/linknamespace
| FAIL: conform/XOPEN2K/stdlib.h/linknamespace
| FAIL: conform/XOPEN2K/sys/mman.h/linknamespace
| FAIL: conform/XOPEN2K/sys/resource.h/linknamespace
| FAIL: conform/XOPEN2K/sys/select.h/conform
| FAIL: conform/XOPEN2K/sys/statvfs.h/linknamespace
| FAIL: conform/XOPEN2K/sys/time.h/conform
| FAIL: conform/XOPEN2K/unistd.h/linknamespace
| FAIL: conform/XOPEN2K/utmpx.h/conform
| FAIL: conform/XOPEN2K8/aio.h/linknamespace
| FAIL: conform/XOPEN2K8/dirent.h/linknamespace
| FAIL: conform/XOPEN2K8/fcntl.h/conform
| FAIL: conform/XOPEN2K8/fcntl.h/linknamespace
| FAIL: conform/XOPEN2K8/ftw.h/conform
| FAIL: conform/XOPEN2K8/glob.h/conform
| FAIL: conform/XOPEN2K8/mqueue.h/conform
| FAIL: conform/XOPEN2K8/mqueue.h/linknamespace
| FAIL: conform/XOPEN2K8/signal.h/conform
| FAIL: conform/XOPEN2K8/stdio.h/linknamespace
| FAIL: conform/XOPEN2K8/stdlib.h/linknamespace
| FAIL: conform/XOPEN2K8/sys/mman.h/linknamespace
| FAIL: conform/XOPEN2K8/sys/resource.h/linknamespace
| FAIL: conform/XOPEN2K8/sys/select.h/conform
| FAIL: conform/XOPEN2K8/sys/stat.h/conform
| FAIL: conform/XOPEN2K8/sys/statvfs.h/linknamespace
| FAIL: conform/XOPEN2K8/sys/time.h/conform
| FAIL: conform/XOPEN2K8/unistd.h/linknamespace
| FAIL: conform/XOPEN2K8/utmpx.h/conform
| FAIL: conform/XPG4/dirent.h/linknamespace
| FAIL: conform/XPG4/fcntl.h/conform
| FAIL: conform/XPG4/fcntl.h/linknamespace
| FAIL: conform/XPG4/glob.h/conform
| FAIL: conform/XPG4/stdio.h/linknamespace
| FAIL: conform/XPG4/unistd.h/linknamespace
| FAIL: conform/XPG42/dirent.h/linknamespace
| FAIL: conform/XPG42/fcntl.h/conform
| FAIL: conform/XPG42/fcntl.h/linknamespace
| FAIL: conform/XPG42/glob.h/conform
| FAIL: conform/XPG42/stdio.h/linknamespace
| FAIL: conform/XPG42/stdlib.h/linknamespace
| FAIL: conform/XPG42/sys/mman.h/linknamespace
| FAIL: conform/XPG42/sys/resource.h/linknamespace
| FAIL: conform/XPG42/sys/statvfs.h/linknamespace
| FAIL: conform/XPG42/sys/time.h/conform
| FAIL: conform/XPG42/unistd.h/linknamespace
| FAIL: conform/XPG42/utmpx.h/conform
| touch /build/reproducible-path/glibc-2.37/stamp-dir/check_libc
| CHECK SUMMARY
| check for check_libc failed
| make: *** [debian/rules.d/build.mk:193: build-arch-post-check] Error 1
| dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 
2

A full build log is available there:
https://tests.reproducible-builds.org/debian/rbuild/unstable/armhf/glibc_2.37-15.1.rbuild.log.gz

At least part of the testsuite issues seems to be real, and affecting
some packages. Those are capture in the following upstream bug report:
https://sourceware.org/bugzilla/show_bug.cgi?id=31510

Ubuntu has just ignored those failures for now, but I am just afraid
that if we do the same, nobody will fix them.

In addition it means that upstream glibc does not build anymore by
default on a 32-bit Debian. Not really a Debian issue, but that is not
nice either and should probably be fixed.

Reply via email to