Package: trinity Version: 1.8-2 Severity: important User: [email protected] Usertags: 2.27
trinity 1.8-2 fails to build with glibc 2.27 (2.27-0experimental0 from experimental): | cc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -I. -Iinclude/ -include config.h -Wimplicit -D_GNU_SOURCE -D__linux__ -std=gnu11 -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -fsigned-char -Wlogical-op -Wstrict-aliasing=3 -Wno-maybe-uninitialized -o fds/inotify.o -c fds/inotify.c | cc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -I. -Iinclude/ -include config.h -Wimplicit -D_GNU_SOURCE -D__linux__ -std=gnu11 -Wdeclaration-after-statement -Wformat=2 -Winit-self -Wnested-externs -Wpacked -Wshadow -Wswitch-enum -Wundef -Wwrite-strings -Wno-format-nonliteral -Wstrict-prototypes -Wmissing-prototypes -fsigned-char -Wlogical-op -Wstrict-aliasing=3 -Wno-maybe-uninitialized -o fds/memfd.o -c fds/memfd.c | fds/memfd.c:19:12: error: static declaration of 'memfd_create' follows non-static declaration | static int memfd_create(__unused__ const char *uname, __unused__ unsigned int flag) | ^~~~~~~~~~~~ | In file included from /usr/include/x86_64-linux-gnu/bits/mman-linux.h:115:0, | from /usr/include/x86_64-linux-gnu/bits/mman.h:45, | from /usr/include/x86_64-linux-gnu/sys/mman.h:41, | from include/utils.h:4, | from include/syscall.h:7, | from include/child.h:7, | from include/fd.h:3, | from fds/memfd.c:9: | /usr/include/x86_64-linux-gnu/bits/mman-shared.h:46:5: note: previous declaration of 'memfd_create' was here | int memfd_create (const char *__name, unsigned int __flags) __THROW; | ^~~~~~~~~~~~ | Makefile:130: recipe for target 'fds/memfd.o' failed | make[2]: *** [fds/memfd.o] Error 1 | make[2]: Leaving directory '/<<PKGBUILDDIR>>' | debian/rules:29: recipe for target 'override_dh_auto_build' failed | make[1]: *** [override_dh_auto_build] Error 2 | make[1]: Leaving directory '/<<PKGBUILDDIR>>' | debian/rules:32: recipe for target 'build-arch' failed | make: *** [build-arch] Error 2 | dpkg-buildpackage: error: debian/rules build-arch subprocess returned exit status A full build log is available there: http://aws-logs.debian.net/2018/02/07/glibc-exp/trinity_1.8-2_unstable_glibc-exp.log glibc 2.27 added support for memfd_create. Unfortunately trinity also have such a function to wrap the corresponding syscall, and they end up conflicting.

