FreeBSD 8.1 is getting old and it shows up in the form of this error:
gcc -c -o bcrypt_main.o bcrypt_main.c -I. -I../../include -I/usr/local/include -D__WINESRC__ -D_REENTRANT \ -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wstrict-prototypes \ -Wwrite-strings -Wpointer-arith -gdwarf-2 -fno-omit-frame-pointer -I/usr/local/include -g -O2 ../../tools/wrc/wrc -o version.res --nostdinc -I. -I../../include -I/usr/local/include -D__WINESRC__ \ version.rc bcrypt_main.c:55: error: 'gnutls_hash' undeclared here (not in a function) bcrypt_main.c:55: warning: type defaults to 'int' in declaration of 'pgnutls_hash' bcrypt_main.c:56: error: 'gnutls_hash_deinit' undeclared here (not in a function) bcrypt_main.c:56: warning: type defaults to 'int' in declaration of 'pgnutls_hash_deinit' bcrypt_main.c:57: error: 'gnutls_hash_init' undeclared here (not in a function) bcrypt_main.c:57: warning: type defaults to 'int' in declaration of 'pgnutls_hash_init' bcrypt_main.c:346: error: expected specifier-qualifier-list before 'gnutls_hash_hd_t' bcrypt_main.c: In function 'hash_init': bcrypt_main.c:378: error: 'struct hash' has no member named 'handle' bcrypt_main.c:378: error: called object 'pgnutls_hash_init' is not a function bcrypt_main.c: In function 'hash_update': bcrypt_main.c:384: error: 'struct hash' has no member named 'handle' bcrypt_main.c:384: error: called object 'pgnutls_hash' is not a function bcrypt_main.c: In function 'hash_finish': bcrypt_main.c:390: error: 'struct hash' has no member named 'handle' bcrypt_main.c:390: error: called object 'pgnutls_hash_deinit' is not a function
In other words its gnutls 2.8.6 library is missing the gnutls_hash_xxx() functions. So this should probably be checked in the autoconf script. This should probably be a separate check as secur32 still compiles fine with gnutls support.