]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
Fix provider library build wrt. AES
authorJuergen Christ <jchrist@linux.ibm.com>
Wed, 12 May 2021 11:54:20 +0000 (13:54 +0200)
committerJuergen Christ <jchrist@linux.ibm.com>
Fri, 14 May 2021 07:37:35 +0000 (09:37 +0200)
Commit c7978e506b2d1300accd9e696656f9cc94196e6d ("Fix missing $CPUIDDEF in
libdefault.a") revealed another problem in the build system on s390.  The
build of the provider libraries includes the AES system without the proper
defines.  This causes a build error on s390 now since the CPUIDDEF is present
but the prototypes for various AES functions implemented in assembler are
missing due to missing preprocessor defines.  Fix this by adding the missing
defines to all provider libraries.

Signed-off-by: Juergen Christ <jchrist@linux.ibm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/15244)

crypto/aes/build.info

index b17f7e5c1f7dd154bf2d688bf0098083f443b47b..edf6c8106ec783e35b30e9c854a71d19da1f2500 100644 (file)
@@ -71,6 +71,13 @@ SOURCE[../../providers/libfips.a]=$COMMON
 DEFINE[../../libcrypto]=$AESDEF
 DEFINE[../../providers/libfips.a]=$AESDEF
 DEFINE[../../providers/libdefault.a]=$AESDEF
+# We only need to include the AESDEF stuff in the legacy provider when it's a
+# separate module and it's dynamically linked with libcrypto.  Otherwise, it
+# already gets everything that the static libcrypto.a has, and doesn't need it
+# added again.
+IF[{- !$disabled{module} && !$disabled{shared} -}]
+  DEFINE[../providers/liblegacy.a]=$AESDEF
+ENDIF
 
 GENERATE[aes-ia64.s]=asm/aes-ia64.S
 GENERATE[bsaes-armv8.S]=asm/bsaes-armv8.S