< Previous by Date Date Index Next by Date >
< Previous in Thread Thread Index  

Re: [reSIProcate] SSL Build Rules


Adam Roach wrote:
> Max Bowsher wrote:
>> Absolutely - I'm familiar with the pains that getting system paths in -I
>> and -L even for non-cross builds can cause.
>>
>> However, for the SSL_LOCATION variable, this issue isn't a pressing
>> concern, since it's defined to be the location of an OpenSSL *source*
>> tree rather than an install location
> 
> Actually, that's not quite how it works. Check Makefile.pkg:
> 
>  ifneq ($(SSL_LOCATION),)
>    OPENSSL_LIBNAME :=
>    OPENSSL_LDFLAGS := -ldl
>    OPENSSL_INCLUDEDIRS := $(SSL_LOCATION)/include
>    OPENSSL_LDLIBS_LAST := $(SSL_LOCATION)/libssl.a
>    OPENSSL_LDLIBS_LAST += $(SSL_LOCATION)/libcrypto.a
>  endif
> 
> At the very least, that OPENSSL_INCLUDEDIRS variable will result in the
> addition of a -I flag to some of the compile phases.

Sorry, I understood the above but didn't explain myself very well - what
I intending to communicate was that because the lines quoted above
assume a source-tree layout, which differs from an installed layout,
there's no value you can put into SSL_LOCATION that would produce
correct -I and -L to the system include *and* lib directories.

>> If the user tries to point to an installation of OpenSSL using it, lots
>> of things are going to break in an obvious fashion.
> 
> If you're building reflow, this is true (however, this is an error --
> the current integration of OpenSSL support into the build system for
> reflow support needs some retooling). For all other uses, it works fine
> pointing to a built-in-place source tree, or to an installed version of
> OpenSSL. That's the way it has historically worked, and the way I
> believe it should continue to work.

Yes, though SSL_LOCATION doesn't really ever "point" to an installed
version of OpenSSL - the configure script says its supposed to be blank
in this case.

Come to think of it, looking at the Makefile fragment quoted above, that
means -ldl will only be included on the link line when building against
a source-tree OpenSSL but not with an installed OpenSSL, nor will any of
the resiprocate libraries actually be linked against libssl and
libcrypto when using an installed OpenSSL.

Max.

Attachment: signature.asc
Description: OpenPGP digital signature