Dear Steve, thank you for your support. The build fail is appearing in Debian now, as the compiler update consequence.
Best regards, FH On Fri, 26 Apr 2024 15:01:22 -0700 Steve Langasek <steve.langa...@ubuntu.com> wrote: > Package: dcraw > Version: 9.28-5 > Severity: normal > Tags: patch > User: ubuntu-de...@lists.ubuntu.com > Usertags: origin-ubuntu noble ubuntu-patch > > Hi Filip, > > In Ubuntu, dcraw was failing to build because of a local implementation of > memmem() whose prototype conflicts with the glibc prototype: > > [...] > gcc -DPACKAGE_NAME=\"dcraw\" -DPACKAGE_TARNAME=\"dcraw\" - DPACKAGE_VERSION=\"9.28\" -DPACKAGE_STRING=\"dcraw\ 9.28\" - DPACKAGE_BUGREPORT=\"hr...@physics.muni.cz\" -DPACKAGE_URL=\"\" - DPACKAGE=\"dcraw\" -DVERSION=\"9.28\" -DHAVE_LIBM=1 -DHAVE_STDIO_H=1 - DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 - DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 - DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 - DHAVE_JPEGLIB_H=1 -DHAVE_LIBJPEG=1 -DHAVE_LCMS2_H=1 -DHAVE_LIBLCMS2=1 - I. -Wdate-time -D_FORTIFY_SOURCE=3 -g -O2 -fno-omit-frame-pointer - mno-omit-leaf-frame-pointer -ffile-prefix-map=/<<PKGBUILDDIR>>=. - flto=auto -ffat-lto-objects -fstack-protector-strong -fstack-clash- protection -Wformat -Werror=format-security -fcf-protection -fdebug- prefix-map=/<<PKGBUILDDIR>>=/usr/src/dcraw-9.28-5build1 -O4 -c -o parse.o parse.c > [...] > parse.c:1216:7: error: conflicting types for ‘memmem’; have ‘char *(char *, size_t, char *, size_t)’ {aka ‘char *(char *, long unsigned int, char *, long unsigned int)’} > 1216 | char *memmem (char *haystack, size_t haystacklen, > | ^~~~~~ > In file included from parse.c:13: > /usr/include/string.h:389:14: note: previous declaration of ‘memmem’ with type ‘void *(const void *, size_t, const void *, size_t)’ {aka ‘void *(const void *, long unsigned int, const void *, long unsigned int)’} > 389 | extern void *memmem (const void *__haystack, size_t __haystacklen, > | ^~~~~~ > [...] > > (https://launchpad.net/ubuntu/+source/dcraw/9.28-5build1/+build/28000832 ) > > This is not currently a build failure in Debian, but that is strictly a > question of compiler behavior, and this may start to FTBFS in Debian at some > later point. > > And anyway, there's no reason to reimplement memmem() here, it's probably > less performant than the version provided by glibc. > > We have applied the attached patch in Ubuntu to fix the build failure. I > think it would be a good idea to apply it in Debian as well. > > Thanks for considering, > -- > Steve Langasek Give me a lever long enough and a Free OS > Debian Developer to set it on, and I can move the world. > Ubuntu Developer https://www.debian.org/ > slanga...@ubuntu.com vor...@debian.org -- F. Hroch <hr...@physics.muni.cz>, Masaryk University Brno, Dept. of theor. physics and astrophysics, Kotlarska 2, CZ-611 37.