indygreg / python-zstandard

Python bindings to the Zstandard (zstd) compression library
BSD 3-Clause "New" or "Revised" License
512 stars 90 forks source link

0.22.0 vs. zstd 1.5.6 #220

Closed 0-wiz-0 closed 6 months ago

0-wiz-0 commented 8 months ago

When zstd 1.5.6 is installed, building fails with:

gcc -Wsign-compare -DNDEBUG -O2 -g -fstack-clash-protection -I/usr/include -I/usr/pkg/include -O2 -g -fstack-clash-protection -I/usr/include -I/usr/pkg/include -O2 -g -fstack-clash-protection -I/usr/include -I/usr/pkg/include -O2 -g -fstack-clash-protection -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/python3.11 -g -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/python3.11 -fPIC -I/scratch/archivers/py-zstandard/work/zstandard-0.22.0/zstd -I/usr/pkg/include/python3.11 -c build/zstandard/_cffi.c -o build/temp.netbsd-10.99.10-amd64-cpython-311/build/zstandard/_cffi.o
build/zstandard/_cffi.c: In function '_cffi_const_ZSTD_c_experimentalParam6':
build/zstandard/_cffi.c:1512:12: error: 'ZSTD_c_experimentalParam6' undeclared (first use in this function); did you mean 'ZSTD_d_experimentalParam6'?
 1512 |   int n = (ZSTD_c_experimentalParam6) <= 0;
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~
      |            ZSTD_d_experimentalParam6
build/zstandard/_cffi.c:1512:12: note: each undeclared identifier is reported only once for each function it appears in

zstd.h in 1.5.6 has:

     /* was ZSTD_c_experimentalParam6=1003; is now ZSTD_c_targetCBlockSize */

If I replace zstd/zstd.h with the copy from zstd 1.5.6, the build succeeds. I'm not sure what the right fix is here, any ideas?

indygreg commented 6 months ago

The main branch now has support for zstd 1.5.6.