Package: kstart Version: 4.1-3 Severity: minor Usertags: goto-cc During a rebuild of all packages in a clean sid chroot (and cowbuilder+pbuilder) the build failed with the following error. Please note that we use our research compiler tool-chain (using tools from the cbmc package), which permits extended reporting on type inconsistencies at link time.
[...] gcc -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fPIE -pie -Wl,-z,relro -Wl,-z,now -o tests/kafs/haspag-t tests/kafs/tests_kafs_haspag_t-haspag-t.o kafs/libkafs.a tests/tap/libtap.a portable/libportable.a error: conflicting function declarations "fstat" old definition in module kafs file /usr/include/x86_64-linux-gnu/sys/stat.h line 467 signed int (signed int __fd, struct stat *__statbuf) new definition in module basic file /usr/include/x86_64-linux-gnu/sys/stat.h line 467 signed int (signed int __fd, struct stat *__statbuf) reason for conflict at __statbuf in types listed below (struct/struct): composite type component counts differ (15/18) struct stat { unsigned long int st_dev; unsigned long int st_ino; unsigned long int st_nlink; unsigned int st_mode; unsigned int st_uid; unsigned int st_gid; signed int __pad0; unsigned long int st_rdev; signed long int st_size; signed long int st_blksize; signed long int st_blocks; struct timespec st_atim; struct timespec st_mtim; struct timespec st_ctim; signed long int [3l] __unused; } struct stat { unsigned long int st_dev; unsigned long int st_ino; unsigned long int st_nlink; unsigned int st_mode; unsigned int st_uid; unsigned int st_gid; signed int __pad0; unsigned long int st_rdev; signed long int st_size; signed long int st_blksize; signed long int st_blocks; signed long int st_atime; unsigned long int st_atimensec; signed long int st_mtime; unsigned long int st_mtimensec; signed long int st_ctime; unsigned long int st_ctimensec; signed long int [3l] __unused; } Makefile:891: recipe for target 'tests/kafs/haspag-t' failed make[2]: *** [tests/kafs/haspag-t] Error 64 make[2]: Leaving directory '/srv/jenkins-slave/workspace/sid-goto-cc-kstart/kstart-4.1' Makefile:1529: recipe for target 'check-am' failed make[1]: *** [check-am] Error 2 This type conflict is caused by the use of _XOPEN_SOURCE rather than using #include <config.h>, which would define _GNU_SOURCE, in tests/tap/basic.c: http://sources.debian.net/src/kstart/4.1-3/tests/tap/basic.c?hl=39#L39 Compare to tests/kafs/basic.c: http://sources.debian.net/src/kstart/4.1-3/tests/kafs/basic.c Using #include <config.h> consistently as first include will ensure this kind of inconsistency. Best, Michael
pgpenOUwE3vud.pgp
Description: PGP signature