Thanks for following up the patch, Helge. This sounds more like
Bug#1086769, which is closed but not yet archived.
Simon Josefsson is the main maintainer for uid-wrapper, so he's in a
better position to judge if sskip-arm-32bit-syscall.patch should be
updated. I'm forwarding your message to Bug#1086769 and him to review
further before #1086769 get archived.
On your side Helge, can you check if Simon's recent changes in 1.3.1-2
address the issue you've raised here?
Cheers,
Drew
On 2024-11-05 18:15, Helge Deller wrote:
Hi Drew,
I noticed this bug report is "archived", so I don't know if
my info will get attached to the report.
Since you came up with the sskip-arm-32bit-syscall.patch,
wich I believe is wrong, could you please check my patch below?
Helge
-------- Forwarded Message --------
Subject: Re: Bug#1069425: uid-wrapper: FTBFS on armhf: 15: [ LINE ] ---
./tests/test_syscall.c:53: error: Failure!
Date: Tue, 5 Nov 2024 18:10:53 +0100
From: Helge Deller <del...@gmx.de>
To: 1069...@bugs.debian.org
The reason test15 (test_uwrap_syscall) fails on some 32-bit
platforms is due to the time64 transition:
15: [ RUN ] test_uwrap_syscall
15: [ ERROR ] --- 0x66234648 != 0x42c0c66234648
15: [ LINE ] --- ./tests/test_syscall.c:53: error: Failure!
15: [ FAILED ] test_uwrap_syscall
Because of the transition, "-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
gets added and as such the "struct timeval tv2" gets extended to 64bit
which does not fit the struct layout (and size) which the syscall
expects.
See usr/share/perl5/Dpkg/Vendor/Debian.pm, line ~303:
# In Debian gcc enables time64 (and lfs) for the following
architectures
# by injecting pre-processor flags, though the libc ABI has not
changed.
if (any { $arch eq $_ } qw(armel armhf hppa m68k mips mipsel
powerpc sh4)) {
$flags->set_option_value('cc-abi-time64', 1);
The uid-wrapper is a very low-level package and as such it should not
be built with time64 enabled (same as glibc is built without it).
The obvious fix for this package is the following trivial patch.
I tried hppa, but it should solve the issue for the other architectures
as well: armel armhf hppa m68k mips mipsel powerpc sh4
diff -up ./debian/rules.bak ./debian/rules
--- ./debian/rules.bak 2024-11-05 16:53:45.182697375 +0000
+++ ./debian/rules 2024-11-05 16:04:57.142488073 +0000
@@ -1,6 +1,6 @@
#!/usr/bin/make -f
-export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all abi=-time64