openssl/crypto/dso
Richard Levitte 45502bfe19 Always build library object files with shared library cflags
This takes us away from the idea that we know exactly how our static
libraries are going to get used.  Instead, we make them available to
build shareable things with, be it other shared libraries or DSOs.

On the other hand, we also have greater control of when the shared
library cflags.  They will never be used with object files meant got
binaries, such as apps/openssl or test/test*.

With unified, we take this a bit further and prepare for having to
deal with extra cflags specifically to be used with DSOs (dynamic
engines), libraries and binaries (applications).

Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-02-20 16:51:31 +01:00
..
build.info unified build scheme: add build.info files 2016-02-01 12:46:58 +01:00
dso_dl.c Let Configure figure out the diverse shared library and DSO extensions 2016-02-19 11:51:23 +01:00
dso_dlfcn.c Let Configure figure out the diverse shared library and DSO extensions 2016-02-19 11:51:23 +01:00
dso_err.c Remove /* foo.c */ comments 2016-01-26 16:40:43 -05:00
dso_lib.c Move to REF_DEBUG, for consistency. 2016-02-11 12:40:32 -05:00
dso_null.c Remove /* foo.c */ comments 2016-01-26 16:40:43 -05:00
dso_openssl.c Remove /* foo.c */ comments 2016-01-26 16:40:43 -05:00
dso_vms.c Remove /* foo.c */ comments 2016-01-26 16:40:43 -05:00
dso_win32.c Remove /* foo.c */ comments 2016-01-26 16:40:43 -05:00
Makefile.in Always build library object files with shared library cflags 2016-02-20 16:51:31 +01:00
README This changes the behaviour of the DSO mechanism for determining an 2000-10-26 17:38:59 +00:00

NOTES
-----

I've checked out HPUX (well, version 11 at least) and shl_t is
a pointer type so it's safe to use in the way it has been in
dso_dl.c. On the other hand, HPUX11 support dlfcn too and
according to their man page, prefer developers to move to that.
I'll leave Richard's changes there as I guess dso_dl is needed
for HPUX10.20.

There is now a callback scheme in place where filename conversion can
(a) be turned off altogether through the use of the
    DSO_FLAG_NO_NAME_TRANSLATION flag,
(b) be handled by default using the default DSO_METHOD's converter
(c) overriden per-DSO by setting the override callback
(d) a mix of (b) and (c) - eg. implement an override callback that;
    (i) checks if we're win32 (if(strstr(dso->meth->name, "win32")....)
        and if so, convert "blah" into "blah32.dll" (the default is
	otherwise to make it "blah.dll").
    (ii) default to the normal behaviour - we're not on win32, eg.
         finish with (return dso->meth->dso_name_converter(dso,NULL)).