One iOS App - 2 OpenSSL libraries.
Viktor Dukhovni
openssl-users at dukhovni.org
Mon Aug 16 16:22:05 UTC 2021
> On 16 Aug 2021, at 11:33 am, Goetzke, Arnold (A.P.) <agoetzke at ford.com> wrote:
>
> Thanks for that Viktor - I'll see if the shlib_variant is an option.
Note that setting "shlib_variant" is something the vendor has to set
when building the bundled OpenSSL libraries. The Configurations/README
file documents this as follows:
shlib_variant => A "variant" identifier inserted between the base
shared library name and the extension. On "unixy"
platforms (BSD, Linux, Solaris, MacOS/X, ...) this
supports installation of custom OpenSSL libraries
that don't conflict with other builds of OpenSSL
installed on the system. The variant identifier
becomes part of the SONAME of the library and also
any symbol versions (symbol versions are not used or
needed with MacOS/X). For example, on a system
where a default build would normally create the SSL
shared library as 'libssl.so -> libssl.so.1.1' with
the value of the symlink as the SONAME, a target
definition that sets 'shlib_variant => "-abc"' will
create 'libssl.so -> libssl-abc.so.1.1', again with
an SONAME equal to the value of the symlink. The
symbol versions associated with the variant library
would then be 'OPENSSL_ABC_<version>' rather than
the default 'OPENSSL_<version>'. The string inserted
into symbol versions is obtained by mapping all
letters in the "variant" identifier to upper case
and all non-alphanumeric characters to '_'.
So the effect of shlib_variant is change both the shared object names (SONAME)
and its symbol versions (where applicable). Applications linked with a
shlib_variant "libssl.so" and "libcrypto.so" will at runtime search for
"libssl-<variant>.so.<version>" and "libcrypto-<variant>.so.<version>".
--
Viktor.
More information about the openssl-users
mailing list