Source: zlib
Version: 1:1.3.dfsg+really1.3.2-1
Severity: serious
Tags: ftbfs patch

https://buildd.debian.org/status/fetch.php?pkg=zlib&arch=s390x&ver=1%3A1.3.dfsg%2Breally1.3.2-2&stamp=1775022150&raw=0

...
s390x-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration 
-ffile-prefix-map=/build/reproducible-path/zlib-1.3.dfsg+really1.3.2=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wdate-time 
-D_FORTIFY_SOURCE=2 -Wall -D_REENTRANT -O3 -fPIC -D_LARGEFILE64_SOURCE=1 
-DHAVE_HIDDEN -DHAVE_S390X_VX  -c -o crc32.o crc32.c
crc32.c:36:12: fatal error: contrib/crc32vx/crc32_vx_hooks.h: No such file or 
directory
   36 | #  include "contrib/crc32vx/crc32_vx_hooks.h"
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:162: crc32.o] Error 1
...


The initial problem is that contrib/crc32vx is excluded in the Debian tarball,
but adding it doesn't help due to the baseline:

contrib/crc32vx/crc32_vx.c: In function 'crc32_le_vgfm_16':
contrib/crc32vx/crc32_vx.c:79:17: error: '__builtin_s390_vec_insert' requires 
'-mvx'
   79 |     v0 = (uv2di)vec_insert(crc, (uv4si)v0, 3);
      |                 ^~~~~~~~~~

The patch below (which is a nop on other architectures) fixes the FTBFS.


BTW: Please drop the +really versioning when updating to the next upstream 
version.


--- zlib-1.3.dfsg+really1.3.2/debian/rules      2026-03-28 18:55:24.000000000 
+0200
+++ zlib-1.3.dfsg+really1.3.2/debian/rules      2026-03-28 18:55:24.000000000 
+0200
@@ -77,7 +77,7 @@
 
        if [ ! -f Makefile.stash ]; then cp Makefile Makefile.stash ; fi
 
-       AR=$(AR) CC="$(DEB_HOST_GNU_TYPE)-gcc" CFLAGS="$(CFLAGS)" 
LDFLAGS="$(LDFLAGS)" uname=GNU ./configure --shared --prefix=/usr 
--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
+       AR=$(AR) CC="$(DEB_HOST_GNU_TYPE)-gcc" CFLAGS="$(CFLAGS)" 
LDFLAGS="$(LDFLAGS)" uname=GNU ./configure --shared --prefix=/usr 
--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) --disable-crcvx
 
        cd contrib/minizip && autoreconf -fis && CFLAGS="$(CFLAGS)" 
LDFLAGS="$(LDFLAGS)" uname=GNU ./configure --prefix=/usr 
--libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH)
 

Reply via email to