pkgsrc-Bugs archive

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

Re: pkg/26094



I apparently did not send this to gnats-bugs@ the first time.... In the mean time, jlam's changes for handling OpenSSL DES have fixed the problem.


On 12/10/04 19:18, jlam%netbsd.org@localhost wrote:

Synopsis: pkgsrc/mail/libesmtp not finding installed 
pkgsrc/security/openssl-0.9.6m header on MacOS X 10.3.4

State-Changed-From-To: open->feedback
State-Changed-By: jlam%netbsd.org@localhost
State-Changed-When: Sat, 11 Dec 2004 00:18:58 +0000
State-Changed-Why:
When satisfying dependencies, pkgsrc will by default always prefer
the built-in versions of software over package versions if the built-in
software is capable of meeting the dependency requirements.  This is
the purpose of the various builtin.mk files in pkgsrc.  In this case
where Darwin's OpenSSL is preferred, but you would like to force pkgsrc
to use security/openssl, please set PREFER_PKGSRC=openssl in your
/etc/mk.conf.

Please let me know if mail/libesmtp still fails to build correctly with
the above setting in your /etc/mk.conf.


Unfortunately, it still fails in ntlm, but the error is different than what
I saw when I submitted the PR... I can also see that with the newer
Makefile, it is not necessary to set PREFER_PKGSRC=openssl. Rather,
patch-ad (which has also changed since I submitted the PR) is not required
(at least for Darwin 7.6.0).

Thanks to patch-ad, we're now picking up /usr/include/openssl/des_old.h,
which generates an error, and is #include'd from /usr/include/openssl/des.h:

#ifdef OPENSSL_ENABLE_OLD_DES_SUPPORT
# include <openssl/des_old.h>
#endif

I did not see this before. It just complained (starting with the same
"function declaration isn't a prototype" shown below) and failed, but
ntlmdes.c was #include'ing <des.h>, which is a symlink to <kerberosIV/des.h>.

I'm not sure how one goes about bypassing a patch, other than a clumsy
combination of #ifdef DARWIN in ntlmdes.c (i.e., a new version of patch-ad)
and Darwin-specific CPPFLAGS in Makefile.


=================== additional info ===================

Using this Makefile:

# $NetBSD: Makefile,v 1.18 2004/12/11 00:13:54 jlam Exp $

and

-> uname -a
Darwin crow.fringe.mep 7.6.0 Darwin Kernel Version 7.6.0: Sun Oct 10
12:05:27 PDT 2004; root:xnu/xnu-517.9.4.obj~1/RELEASE_PPC  Power Macintosh
powerpc

with XCode 1.5 and the Nov/2004 gcc update.

=================== error messages ===================

Making all in ntlm
cd .. && /bin/sh ./config.status ntlm/Makefile depfiles
config.status: creating ntlm/Makefile
config.status: executing depfiles commands
source='client-ntlm.c' object='client-ntlm.lo' libtool=yes \
depfile='.deps/client-ntlm.Plo' tmpdepfile='.deps/client-ntlm.TPlo' \
depmode=gcc3 /bin/sh ../depcomp \
/bin/sh ../libtool --mode=compile gcc -pipe -DHAVE_CONFIG_H -I. -I. -I..
-I.  -no-cpp-precomp -I/Volumes/NetBSD/pkg/include -I/usr/include
-D_REENTRANT -O2 -I/Volumes/NetBSD/pkg/include -I/usr/include
-Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
 -Wstrict-prototypes -Wnested-externs -Wpointer-arith
-Wbad-function-cast -Wcast-align -c -o client-ntlm.lo `test -f
'client-ntlm.c' || echo './'`client-ntlm.c
mkdir .libs
 gcc -pipe -DHAVE_CONFIG_H -I. -I.. -no-cpp-precomp
-I/Volumes/NetBSD/pkgsrc/mail/libesmtp/work/.buildlink/include -D_REENTRANT
-O2 -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wstrict-prototypes -Wnested-externs -Wpointer-arith -Wbad-function-cast
-Wcast-align -c client-ntlm.c -MT client-ntlm.lo -MD -MP -MF
.deps/client-ntlm.TPlo  -fno-common -DPIC -o .libs/client-ntlm.o
 gcc -pipe -DHAVE_CONFIG_H -I. -I.. -no-cpp-precomp
-I/Volumes/NetBSD/pkgsrc/mail/libesmtp/work/.buildlink/include -D_REENTRANT
-O2 -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wstrict-prototypes -Wnested-externs -Wpointer-arith -Wbad-function-cast
-Wcast-align -c client-ntlm.c -MT client-ntlm.lo -MD -MP -MF
.deps/client-ntlm.TPlo -o client-ntlm.o >/dev/null 2>&1
source='ntlmdes.c' object='ntlmdes.lo' libtool=yes \
depfile='.deps/ntlmdes.Plo' tmpdepfile='.deps/ntlmdes.TPlo' \
depmode=gcc3 /bin/sh ../depcomp \
/bin/sh ../libtool --mode=compile gcc -pipe -DHAVE_CONFIG_H -I. -I. -I..
-I.  -no-cpp-precomp -I/Volumes/NetBSD/pkg/include -I/usr/include
-D_REENTRANT -O2 -I/Volumes/NetBSD/pkg/include -I/usr/include
-Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
 -Wstrict-prototypes -Wnested-externs -Wpointer-arith
-Wbad-function-cast -Wcast-align -c -o ntlmdes.lo `test -f 'ntlmdes.c' ||
echo './'`ntlmdes.c
 gcc -pipe -DHAVE_CONFIG_H -I. -I.. -no-cpp-precomp
-I/Volumes/NetBSD/pkgsrc/mail/libesmtp/work/.buildlink/include -D_REENTRANT
-O2 -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes
-Wstrict-prototypes -Wnested-externs -Wpointer-arith -Wbad-function-cast
-Wcast-align -c ntlmdes.c -MT ntlmdes.lo -MD -MP -MF .deps/ntlmdes.TPlo
-fno-common -DPIC -o .libs/ntlmdes.o
In file included from ntlmdes.c:27:
/usr/include/openssl/des_old.h:99:2: #error You must include des.h, not
des_old.h directly.
In file included from ntlmdes.c:27:
/usr/include/openssl/des_old.h:398: error: parse error before '*' token
ntlmdes.c:33: error: parse error before "const_DES_cblock"
ntlmdes.c:34: warning: function declaration isn't a prototype
ntlmdes.c: In function `lm_deshash':
ntlmdes.c:35: error: `DES_cblock' undeclared (first use in this function)
ntlmdes.c:35: error: (Each undeclared identifier is reported only once
ntlmdes.c:35: error: for each function it appears in.)
ntlmdes.c:35: error: parse error before "key"
ntlmdes.c:36: error: `DES_key_schedule' undeclared (first use in this function)
ntlmdes.c:41: error: `secret' undeclared (first use in this function)
ntlmdes.c:49: error: `key' undeclared (first use in this function)
ntlmdes.c:58: warning: implicit declaration of function `DES_set_odd_parity'
ntlmdes.c:59: warning: implicit declaration of function `DES_set_key'
ntlmdes.c:59: error: `ks' undeclared (first use in this function)
ntlmdes.c:60: warning: implicit declaration of function `DES_ecb_encrypt'
ntlmdes.c:60: error: `iv' undeclared (first use in this function)
ntlmdes.c:60: error: `result' undeclared (first use in this function)
ntlmdes.c:60: error: `DES_ENCRYPT' undeclared (first use in this function)
ntlmdes.c: In function `lm_hash_password':
ntlmdes.c:88: error: syntax error before "iv"
ntlmdes.c: At top level:
ntlmdes.c:92: error: parse error before "sizeof"
ntlmdes.c:92: warning: type defaults to `int' in declaration of `lm_uccpy'
ntlmdes.c:92: warning: function declaration isn't a prototype
ntlmdes.c:92: error: conflicting types for `lm_uccpy'
ntlmdes.c:71: error: previous declaration of `lm_uccpy'
ntlmdes.c:92: warning: data definition has no type or storage class
ntlmdes.c:93: error: parse error before '&' token
ntlmdes.c:93: warning: type defaults to `int' in declaration of `lm_deshash'
ntlmdes.c:93: warning: function declaration isn't a prototype
ntlmdes.c:93: error: conflicting types for `lm_deshash'
ntlmdes.c:34: error: previous declaration of `lm_deshash'
ntlmdes.c:93: warning: data definition has no type or storage class
ntlmdes.c:94: error: parse error before '+' token
ntlmdes.c:94: warning: type defaults to `int' in declaration of `lm_deshash'
ntlmdes.c:94: warning: function declaration isn't a prototype
ntlmdes.c:94: warning: data definition has no type or storage class
ntlmdes.c:95: error: parse error before numeric constant
ntlmdes.c:95: warning: type defaults to `int' in declaration of `memset'
ntlmdes.c:95: warning: function declaration isn't a prototype
ntlmdes.c:95: warning: data definition has no type or storage class
ntlmdes.c: In function `ntlm_responses':
ntlmdes.c:140: error: `DES_cblock' undeclared (first use in this function)
ntlmdes.c:140: error: parse error before "nonce"
ntlmdes.c:142: error: `nonce' undeclared (first use in this function)
gnumake[2]: *** [ntlmdes.lo] Error 1
gnumake[1]: *** [all-recursive] Error 1
gnumake: *** [all] Error 2
*** Error code 2

Stop.
bmake: stopped in /usr/pkgsrc/mail/libesmtp
*** Error code 1

Stop.
bmake: stopped in /usr/pkgsrc/mail/libesmtp







Home | Main Index | Thread Index | Old Index