Source: exactimage
Version: 1.0.2-4
Severity: important
Hello,
this package uses GifQuantizeBuffer() from giflib. The symbol has been
dropped in giflib 5.2 (libgif-dev/libgif7 5.2.1 is available in
experimental) and therefore the package
a) stops working when the gif library package is upgraded and
b) FTBFS against libgif-dev >= 5.2.
I do not think giflib did the right thing by dropping the symbol without
a soname bump but that is beside the point.[1] Even with the correct way
(giflib soname bump) this package FTBFS. I am quite confident that
GifQuantizeBuffer() will not be reintroduced - It was ripped out to
"reduce libgif size and attack surface".
I am reporting this /now/ with severity important, but please treat it
as rc issue.
cu Andreas
[1] I have suggested to upstream to do a soname bump. If this is not
accepted we will probably end up with newer libgif7 having a Breaks for
GifQuantizeBuffer()-using-software.
------------------------
g++ -g -O2 -fdebug-prefix-map=/dev/shm/GIFLIB/exactimage-1.0.2=.
-fstack-protector-strong -Wformat -Werror=format-security -fopenmp
-ffunction-sections -fdata-sections -fPIC -Wno-switch -Wno-switch-enum
-Wno-sign-compare -std=gnu++98 -Wdate-time -D_FORTIFY_SOURCE=2
-D_FILE_OFFSET_BITS=64 -I . -I/usr/include/agg2 -I/usr/include/freetype2
-I/usr/include/libpng16 -I image -I utility -I/usr/include/OpenEXR -I codecs/
-I bardecode -I utility -I utility -c -MMD -MP -MF 'objdir/codecs/eps.d' -o
'objdir/codecs/eps.o' 'codecs/eps.cc'
g++ -g -O2 -fdebug-prefix-map=/dev/shm/GIFLIB/exactimage-1.0.2=.
-fstack-protector-strong -Wformat -Werror=format-security -fopenmp
-ffunction-sections -fdata-sections -fPIC -Wno-switch -Wno-switch-enum
-Wno-sign-compare -std=gnu++98 -Wdate-time -D_FORTIFY_SOURCE=2
-D_FILE_OFFSET_BITS=64 -I . -I/usr/include/agg2 -I/usr/include/freetype2
-I/usr/include/libpng16 -I image -I utility -I/usr/include/OpenEXR -I codecs/
-I bardecode -I utility -I utility -c -MMD -MP -MF 'objdir/codecs/gif.d' -o
'objdir/codecs/gif.o' 'codecs/gif.cc'
codecs/gif.cc: In member function 'virtual bool
GIFCodec::writeImage(std::ostream*, Image&, int, const string&)':
codecs/gif.cc:257:7: error: 'GifQuantizeBuffer' was not declared in this scope
257 | if (GifQuantizeBuffer(image.w, image.h, &ColorMapSize,
| ^~~~~~~~~~~~~~~~~
make[2]: *** [build/bottom.make:54: objdir/codecs/gif.o] Error 1