Investigating... It seems to be an issue with the makedepend tool itself. I hacked util/domd to show the makedepend command line, and got this command for apps/:
makedepend -D OPENSSL_DOING_MAKEDEPEND -- -O -I.. -I../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_STORE -- openssl.c verify.c asn1pars.c req.c dgst.c dh.c enc.c passwd.c gendh.c errstr.c ca.c pkcs7.c crl2p7.c crl.c rsa.c rsautl.c dsa.c dsaparam.c ec.c ecparam.c x509.c genrsa.c gendsa.c genpkey.c s_server.c s_client.c speed.c s_time.c apps.c s_cb.c s_socket.c app_rand.c version.c sess_id.c ciphers.c nseq.c pkcs12.c pkcs8.c pkey.c pkeyparam.c pkeyutl.c spkac.c smime.c cms.c rand.c engine.c ocsp.c prime.c ts.c srp.c Running that through util/clean-depend.pl produces the existing makedepend output. But just running this: makedepend -D OPENSSL_DOING_MAKEDEPEND -- -O -I.. -I../include -DOPENSSL_NO_DEPRECATED -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_SSL_TRACE -DOPENSSL_NO_STORE -- dsa.c Produces the same output except *without* ../include/openssl/dh.h. (I presume you meant dh.h, not dh.o earlier.) Of course, with your GitConfigure/GitMake scripts, you're using the compiler to regenerate dsa.d in isolation from other files. I'll see if I can dig up a little more info here...but it does seem that your normal flags are doing the right thing. Mike On Tue, Jul 1, 2014 at 5:38 AM, Ben Laurie <b...@links.org> wrote: > I've been trying to figure out why my "make depend" differs from other > developers, and why it appears to be wrong. > > For example, apps/dsa.o depends, according to makedepend, on dh.o, but > with the standard developer flags ($gcc_devteam_warn) it should not. > > AFAICS, makedepend gets passed the right flags, and normally processes > #ifndef lines correctly. > > Anyone got any clues what's going on? (I'm on FreeBSD 9.1) > ______________________________________________________________________ > OpenSSL Project http://www.openssl.org > Development Mailing List openssl-dev@openssl.org > Automated List Manager majord...@openssl.org ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org