diff options
author | Richard Levitte <levitte@openssl.org> | 2019-10-04 01:38:17 +0200 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2019-10-10 14:12:15 +0200 |
commit | dec95d75897125133380c7ce3c6ce58c93c06f10 (patch) | |
tree | c95ecfb434a58251f6f422d413eda49f1ac53857 /providers/default/ciphers | |
parent | e805c2d6d36d6be3db8141abc98f3ce5c6fa9776 (diff) |
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)
Diffstat (limited to 'providers/default/ciphers')
-rw-r--r-- | providers/default/ciphers/build.info | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/providers/default/ciphers/build.info b/providers/default/ciphers/build.info index 5142357c7e..0440789573 100644 --- a/providers/default/ciphers/build.info +++ b/providers/default/ciphers/build.info @@ -1,7 +1,7 @@ -LIBS=../../../libcrypto +$GOAL=../../libimplementations.a IF[{- !$disabled{des} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_tdes_default.c cipher_tdes_default_hw.c \ cipher_tdes_wrap.c cipher_tdes_wrap_hw.c \ cipher_desx.c cipher_desx_hw.c \ @@ -9,59 +9,59 @@ IF[{- !$disabled{des} -}] ENDIF IF[{- !$disabled{aria} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_aria.c cipher_aria_hw.c \ cipher_aria_gcm.c cipher_aria_gcm_hw.c \ cipher_aria_ccm.c cipher_aria_ccm_hw.c ENDIF IF[{- !$disabled{camellia} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_camellia.c cipher_camellia_hw.c ENDIF IF[{- !$disabled{bf} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_blowfish.c cipher_blowfish_hw.c ENDIF IF[{- !$disabled{idea} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_idea.c cipher_idea_hw.c ENDIF IF[{- !$disabled{cast} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_cast5.c cipher_cast5_hw.c ENDIF IF[{- !$disabled{seed} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_seed.c cipher_seed_hw.c ENDIF IF[{- !$disabled{sm4} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_sm4.c cipher_sm4_hw.c ENDIF IF[{- !$disabled{ocb} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_aes_ocb.c cipher_aes_ocb_hw.c ENDIF IF[{- !$disabled{rc4} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_rc4.c cipher_rc4_hw.c ENDIF IF[{- !$disabled{rc5} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_rc5.c cipher_rc5_hw.c ENDIF IF[{- !$disabled{rc2} -}] - SOURCE[../../../libcrypto]=\ + SOURCE[$GOAL]=\ cipher_rc2.c cipher_rc2_hw.c ENDIF |