I'm building openssl 1.0.2g on linux64.

After

        ./configure ...

I'm prompted

        Since you've disabled or enabled at least one algorithm, you need to do
        the following before building:

                make depend

Exec'ing the 'make depend' stage returns lots of warnings,

        make depend
                making depend in crypto...
                make[1]: Entering directory 
'/usr/local/src/openssl/openssl-1.0.2g/crypto'
makedepend: warning: cryptlib.c (reading /usr/include/stdlib.h, line 32): cannot find include file "stddef.h"
                        not in ./stddef.h
                        not in ../stddef.h
                        not in ../include/stddef.h
                        not in /usr/include/stddef.h
makedepend: warning: /usr/include/time.h includes /usr/include/bits/types.h more than once!
                Already have
                        /usr/include/bits/types.h
makedepend: warning: /usr/include/time.h includes /usr/include/bits/types.h more than once!
                Already have
                        /usr/include/bits/types.h
makedepend: warning: /usr/include/time.h includes /usr/include/bits/types.h more than once!
                Already have
                        /usr/include/bits/types.h
makedepend: warning: cryptlib.c (reading /usr/include/sys/types.h, line 146): cannot find include file "stddef.h"
                        not in ./stddef.h
                        not in ../stddef.h
                        not in ../include/stddef.h
                        not in /usr/include/stddef.h
makedepend: warning: cryptlib.c (reading /usr/include/alloca.h, line 24): cannot find include file "stddef.h"
                        not in ./stddef.h
                        not in ../stddef.h
                        not in ../include/stddef.h
                        not in /usr/include/stddef.h
                ...

On the distro, stddef.h is available at

        /usr/include/linux/stddef.h
        /usr/lib64/gcc/x86_64-suse-linux/4.8/include/stddef.h
        /usr/lib64/gcc/x86_64-suse-linux/5/include/stddef.h


Reading wiki & reports at openssl, there's confusing, if not conflicting, advice.

Must use it,

        (1) https://wiki.openssl.org/index.php/Compilation_and_Installation
                Dependencies

If you are prompted to run make depend, then you must do so. Its not just for developers who are updating sources. Its required to update the standard distribution once configuration options change.

Don't need it

        (2) https://wiki.openssl.org/index.php/Compilation_and_Installation
                Compilation
After configuring the library, you should run make. If prompted, there's usually no need to make depend since you are building from a clean download.

(3) https://rt.openssl.org/Ticket/Display.html?id=3566&user=guest&pass=guest "Obviously this needs fixing but as a workaround: if you're building from scratch (or after "make clean") it should compile fine with without doing "make depend".

                        Steve.
                        --
                        Dr Stephen N. Henson. OpenSSL project core developer."


Re: 'makedepend',

        https://en.wikipedia.org/wiki/Makedepend
makedepend was developed as part of MIT's Project Athena. It was used extensively in building X11 and ancillary packages, but has since become superseded by the dependency generation facilities of various compilers, and is now used primarily as a worst-case fallback, e.g. by depcomp and GNU Automake.

Further, a quick check (https://www.google.com/search?q=makedepend+stddef
) shows that there's a long history (unresolved?) re: not finding the sys's stddef.h

Digging around some more, I find that virtually the same issue was raised on openssl-dev in Apr 2015,

        https://mta.openssl.org/pipermail/openssl-dev/2015-April/001263.html
[openssl-dev] `make depend`, advised by ./config, fails to find stddef.h in system/compiler path. old bug (#3566) says don't bother with `make depend`? true, or another bug?

with no reply at all.

What, then, IS the current need for 'makedepend' in openssl, and what, exactly, is the correct/recommended usage for its use in an openssl build?
--
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users

Reply via email to