Fix the build with FIPS + NO_ASM. Setting OPENSSL_NO_ASM skips enabling the “ASM” language in CMake. However, the FIPS module fundamentally needs to build asm because delocate works via textual assembly. Thus this combination is currently broken with CMake. This change ensures that support for building asm is enabled in CMake for this combination. Change-Id: I4516cf3a6f579ee7c72f04ac25d15785926cf125 Reviewed-on: https://boringssl-review.googlesource.com/29884 Reviewed-by: Adam Langley <agl@google.com>
diff --git a/crypto/fipsmodule/CMakeLists.txt b/crypto/fipsmodule/CMakeLists.txt index e83c483..3082375 100644 --- a/crypto/fipsmodule/CMakeLists.txt +++ b/crypto/fipsmodule/CMakeLists.txt
@@ -121,6 +121,13 @@ perlasm(x86-mont.${ASM_EXT} bn/asm/x86-mont.pl) if(FIPS_DELOCATE) + if(OPENSSL_NO_ASM) + # If OPENSSL_NO_ASM was defined then ASM will not have been enabled, but in + # FIPS mode we have to have it because the module build requires going via + # textual assembly. + enable_language(ASM) + endif() + add_library( bcm_c_generated_asm