[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#647229: p11-kit: FTBFS(!linux): error: 'PTHREAD_MUTEX_RECURSIVE' undeclared (first use in this function)



On 2011-10-31 Christoph Egger <christoph@debian.org> wrote:
> Package: src:p11-kit
[...]
> Your package failed to build on the !linux buildds:

> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I.. -DP11_KIT_FUTURE_UNSTABLE_API -DP11_SYSTEM_CONFIG_FILE=\"/etc/pkcs11/pkcs11.conf\" -DP11_SYSTEM_CONFIG_MODULES=\"/etc/pkcs11/modules\" "-DP11_USER_CONFIG_FILE=\"~/.pkcs11/pkcs11.conf\"" "-DP11_USER_CONFIG_MODULES=\"~/.pkcs11/modules\"" -DP11_MODULE_PATH=\"/usr/lib/x86_64-kfreebsd-gnu/pkcs11\" -g -O2 -g -Wall -Wstrict-prototypes -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wdeclaration-after-statement -Wformat=2 -Winit-self -Waggregate-return -Wno-missing-format-attribute -Wmissing-include-dirs -Wundef -c compat.c  -fPIC -DPIC -o .libs/compat.o
> compat.c: In function '_p11_mutex_init':
> compat.c:51:2: warning: implicit declaration of function 'pthread_mutexattr_settype' [-Wimplicit-function-declaration]
> compat.c:51:2: warning: nested extern declaration of 'pthread_mutexattr_settype' [-Wnested-externs]
> compat.c:51:36: error: 'PTHREAD_MUTEX_RECURSIVE' undeclared (first use in this function)
> compat.c:51:36: note: each undeclared identifier is reported only once for each function it appears in
> make[3]: *** [compat.lo] Error 1
[...]

> If you have further questions please mail debian-bsd@lists.debian.org

Hello,
Afaict this happens because on Linux the respective parts of pthread.h
are conditional on
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
but only
#if defined __USE_UNIX98
on kFree-BSD.

features.h on both Linux and kFree-BSD #defines __USE_XOPEN2K8 by
default.

Therefore p11-kit builds without special flags on both Linux and BSD
(with BSD kernel) but requires either "-D_XOPEN_SOURCE=500
-D_BSD_SOURCE" or "-D_GNU_SOURCE" on kFree-BSD

cu andreas
-- 
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'


Reply to: