>From OpenSSL 1.0.1e (https://www.openssl.org/source/openssl-1.0.1e.tar.gz).

Makefile.org and Makefile's 'install' rule is:

    install: all install_docs install_sw

The 'all' rule is default and is:

    all: Makefile build_all openssl.pc libssl.pc libcrypto.pc

This should not be a problem from a standard cycle:

    ./config fips shared <...>
    make depend
    make
    make install

However, there are a few problems. First, Stallman states (in his GNU
Make book) that the 'install' rule should copy the executable and
axillary files, and not build objects [1]. This would be a harmless
transgression except it breaks install during cross-compilation.

Second, 'all' appears to have a dependency that is always out of date
(perhaps due to a directory time somewhere). So even if you `make
depend` and then `make` (with 'all' being default), targets will still
be built during 'install'.

Third, the cycle often includes `sudo make install`:

    ./config fips shared <...>
    make depend
    make
    sudo make install

`sudo` drops a user's path so cross-compilation path changes are lost.
When GCC is re-invoked, the required $(CC) (for example,
arm-linuxeabi-gcc) cannot be found.

JW

[1] GNU Make, p. 91.

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to