openssl/crypto/modes
Richard Levitte dec95d7589 Rework how our providers are built
We put almost everything in these internal static libraries:

libcommon               Block building code that can be used by all
                        our implementations, legacy and non-legacy
                        alike.
libimplementations      All non-legacy algorithm implementations and
                        only them.  All the code that ends up here is
                        agnostic to the definitions of FIPS_MODE.
liblegacy               All legacy implementations.

libnonfips              Support code for the algorithm implementations.
                        Built with FIPS_MODE undefined.  Any code that
                        checks that FIPS_MODE isn't defined must end
                        up in this library.
libfips                 Support code for the algorithm implementations.
                        Built with FIPS_MODE defined.  Any code that
                        checks that FIPS_MODE is defined must end up
                        in this library.

The FIPS provider module is built from providers/fips/*.c and linked
with libimplementations, libcommon and libfips.

The Legacy provider module is built from providers/legacy/*.c and
linked with liblegacy, libcommon and libcrypto.
If module building is disabled, the object files from liblegacy and
libcommon are added to libcrypto and the Legacy provider becomes a
built-in provider.

The Default provider module is built-in, so it ends up being linked
with libimplementations, libcommon and libnonfips.  For libcrypto in
form of static library, the object files from those other libraries
are simply being added to libcrypto.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10088)
2019-10-10 14:12:15 +02:00
..
asm Unify all assembler file generators 2019-09-16 16:29:57 +02:00
build.info Rework how our providers are built 2019-10-10 14:12:15 +02:00
cbc128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
ccm128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
cfb128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
ctr128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
cts128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
gcm128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
ocb128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
ofb128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
siv128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00
wrap128.c Following the license change, modify the boilerplates in crypto/modes/ 2018-12-06 15:06:37 +01:00
xts128.c Reorganize private crypto header files 2019-09-28 20:26:34 +02:00