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

Reply via email to