Hi, I'll answer to the original report... there's a lot of confusion going on here...
Vid Sun, 06 Dec 2015 kl. 22.48.57, skrev pgnet....@gmail.com: > Building openssl-1.0.2e from src > > wget http://www.openssl.org/source/openssl-1.0.2e.tar.gz > tar zxvf openssl-1.0.2e.tar.gz > cd openssl-1.0.2e > > on > > lsb_release -rd > Description: openSUSE Leap 42.1 (x86_64) > Release: 42.1 > gcc -v > Using built-in specs. > COLLECT_GCC=gcc > COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/5/lto- > wrapper > Target: x86_64-suse-linux > Configured with: ../configure --prefix=/usr > --infodir=/usr/share/info > --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 > --enable-languages=c,c++,objc,fortran,obj-c++,java,ada,go > --enable-checking=release --with-gxx-include-dir=/usr/include/c++/5 > --enable-ssp --disable-libssp --disable-libvtv --enable-libmpx > --disable-plugin --with-bugurl=http://bugs.opensuse.org/ > --with-pkgversion='SUSE Linux' --disable-libgcj --with-slibdir=/lib64 > --with-system-zlib --enable-__cxa_atexit > --enable-libstdcxx-allocator=new --disable-libstdcxx-pch > --with-default-libstdcxx-abi=gcc4-compatible > --enable-version-specific-runtime-libs --enable-linker-build-id > --enable-linux-futex --program-suffix=-5 --without-system-libunwind > --enable-multilib --with-arch-32=x86-64 --with-tune=generic > --build=x86_64-suse-linux --host=x86_64-suse-linux > Thread model: posix > gcc version 5.2.1 20151130 [gcc-5-branch revision 231058] > (SUSE Linux) > gcc -print-search-dirs > install: /usr/lib64/gcc/x86_64-suse-linux/5/ > programs: > =/usr/lib64/gcc/x86_64-suse-linux/5/:/usr/lib64/gcc/x86_64-suse- > linux/5/:/usr/lib64/gcc/x86_64-suse-linux/:/usr/lib64/gcc/x86_64-suse- > linux/5/:/usr/lib64/gcc/x86_64-suse-linux/:/usr/lib64/gcc/x86_64-suse- > linux/5/../../../../x86_64-suse-linux/bin/x86_64-suse- > linux/5/:/usr/lib64/gcc/x86_64-suse-linux/5/../../../../x86_64-suse- > linux/bin/ > libraries: > =/usr/lib64/gcc/x86_64-suse-linux/5/:/usr/lib64/gcc/x86_64-suse- > linux/5/../../../../x86_64-suse-linux/lib/x86_64-suse- > linux/5/:/usr/lib64/gcc/x86_64-suse-linux/5/../../../../x86_64-suse- > linux/lib/../lib64/:/usr/lib64/gcc/x86_64-suse- > linux/5/../../../x86_64-suse-linux/5/:/usr/lib64/gcc/x86_64-suse- > linux/5/../../../../lib64/:/lib/x86_64-suse- > linux/5/:/lib/../lib64/:/usr/lib/x86_64-suse- > linux/5/:/usr/lib/../lib64/:/usr/lib64/gcc/x86_64-suse- > linux/5/../../../../x86_64-suse-linux/lib/:/usr/lib64/gcc/x86_64-suse- > linux/5/../../../:/lib/:/usr/lib/ > > with following config > > ./config ... \ > enable-ec_nistp_64_gcc_128 \ > enable-rfc3779 \ > enable-ecdsa \ > no-idea \ > no-ssl2 \ > no-rc5 \ > no-rc2 \ > no-mdc2 > > invokes need for subsequent `make depend` > > ... > Since you've disabled or enabled at least one algorithm, you need to > do > the following before building: > > make depend This is correct, 'make depend' *is* needed here. It is for all disabled features that have a corresponding directory in crypto/. The reason is that the default dependencies in the various Makefile are made for a default configuration, and header files from each crypto/ subdirectory are symlinked into include/openssl/, only for those directories that haven't been disabled. So, for example, because of 'no-idea', crypto/idea/idea.h wouldn't get symlinked into include/openssl/, and if there's *any* target in *any* Makefile that has include/openssl/idea.h as a dependency, make will fail since it wants to try to rebuild it. That's why there are cases when 'make depend' is mandatory, to correct the faulty dependencies However, there are also options that do not affect what is being built, or symlinked for that matter, and in those cases, configuration might tell you to 'make depend' although it might sometimes not be necessary. I'm sorry, all this was not explained too well before, and considering there's also and entirely different building scheme with upcoming 1.1 where 'make depend' truly isn't necessary, it's no wonder if things are a bit confusing for everyone. > > Configured for linux-x86_64. > > which completes, but reports many instances of 'stddef.h' not found, > > make depend > making depend in crypto... > make[1]: Entering directory > '/usr/local/src/openssl-TEST/openssl-1.0.2e/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 > ... This is makedepend (the program, thus no space) not being quite in tune with the system, so it seems to be missing the presence of stdddef.h in the place you find it in. However, that isn't a problem per se, as this is system headers, and there's no need for them whatsoever in the dependencies of the various OpenSSL Makefiles. makedepend will still keep searching for all header files, and it will find those that belong to the OpenSSL source, which are the only ones important to build OpenSSL. That's why can be safely ignored, even though the thousands of warning lines are annoying indeed. Cheers, Richard -- Richard Levitte levi...@openssl.org -- Ticket here: http://rt.openssl.org/Ticket/Display.html?id=4169 Please log in as guest with password guest if prompted -- openssl-dev mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev