https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117812
Bug ID: 117812
Summary: zstd dependency 1.5.1
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libbacktrace
Assignee: unassigned at gcc dot gnu.org
Reporter: jeffrey.cliff at gmail dot com
CC: ian at gcc dot gnu.org
Target Milestone: ---
gcc being compiled: master e876acab6cd
gcc doing the compiling: gcc (GCC) 15.0.0 20240509 (experimental)
[ sadly terminal crashed and configure options were lost ]
zstd installed: 64-bits v1.3.4, by Yann Collet
I realize this latter bit is kind of the main issue - that this is a fairly
outdated version
however
ZSTD_CLEVEL_DEFAULT appears to have been introduced to zstd in 1.5.5
libbacktrace 's tests in zstdtest.c make use of it (
gcc -DHAVE_CONFIG_H -I. -I../../libbacktrace -I
../../libbacktrace/../include -I ../../libbacktrace/../libgcc -I ../libgcc
-D_GNU_SOURCE -funwind-tables -frandom-seed=zstdtest_alloc-zstdtest.o -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-Wmissing-format-attribute -Wcast-qual -Wno-attributes -Wpointer-arith -g
-DSRCDIR=\"../../libbacktrace\" -D_GNU_SOURCE -std=gnu23 -Oz -march=native
-c -o zstdtest_alloc-zstdtest.o `test -f 'zstdtest.c' || echo
'../../libbacktrace/'`zstdtest.c
../../libbacktrace/zstdtest.c: In function ‘test_large’:
../../libbacktrace/zstdtest.c:383:22: error:
‘ZSTD_CLEVEL_DEFAULT’ undeclared (first use in this function)
383 | ZSTD_CLEVEL_DEFAULT);
| ^~~~~~~~~~~~~~~~~~~
during configure zstd was detected:
# grep -i 'zstd' config.log
Supported LTO compression algorithms: zlib zstd
Supported LTO compression algorithms: zlib zstd
which makes sense since it is installed, just a version that does not have
ZSTD_CLEVEL_DEFAULT
this suggests that all gcc is checking for is whether there is a zstd installed
and not its particular version. if however gcc is going to depend on newer and
newer versions of zstd, it should probably verify that zstd is up to date
enough to actually support what it's using at the very least (ie 1.5.5).
configure seems to bear this out