Move iOS asm tricks up in external CMake build. This block needs to come before enable_language in order to have the correct effect. Change-Id: I2c0e3332c055828381694305e14f2f54b50bb06b Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/39644 Commit-Queue: David Benjamin <davidben@google.com> Reviewed-by: David Benjamin <davidben@google.com>
diff --git a/util/generate_build_files.py b/util/generate_build_files.py index 92bc08e..d805d4f 100644 --- a/util/generate_build_files.py +++ b/util/generate_build_files.py
@@ -466,6 +466,20 @@ add_definitions(-DBORINGSSL_IMPLEMENTATION) +# CMake's iOS support uses Apple's multiple-architecture toolchain. It takes an +# architecture list from CMAKE_OSX_ARCHITECTURES, leaves CMAKE_SYSTEM_PROCESSOR +# alone, and expects all architecture-specific logic to be conditioned within +# the source files rather than the build. This does not work for our assembly +# files, so we fix CMAKE_SYSTEM_PROCESSOR and only support single-architecture +# builds. +if(NOT OPENSSL_NO_ASM AND CMAKE_OSX_ARCHITECTURES) + list(LENGTH CMAKE_OSX_ARCHITECTURES NUM_ARCHES) + if(NOT ${NUM_ARCHES} EQUAL 1) + message(FATAL_ERROR "Universal binaries not supported.") + endif() + list(GET CMAKE_OSX_ARCHITECTURES 0 CMAKE_SYSTEM_PROCESSOR) +endif() + if(OPENSSL_NO_ASM) add_definitions(-DOPENSSL_NO_ASM) set(ARCH "generic") @@ -528,20 +542,6 @@ endif() endif() -# CMake's iOS support uses Apple's multiple-architecture toolchain. It takes an -# architecture list from CMAKE_OSX_ARCHITECTURES, leaves CMAKE_SYSTEM_PROCESSOR -# alone, and expects all architecture-specific logic to be conditioned within -# the source files rather than the build. This does not work for our assembly -# files, so we fix CMAKE_SYSTEM_PROCESSOR and only support single-architecture -# builds. -if(NOT OPENSSL_NO_ASM AND CMAKE_OSX_ARCHITECTURES) - list(LENGTH CMAKE_OSX_ARCHITECTURES NUM_ARCHES) - if(NOT ${NUM_ARCHES} EQUAL 1) - message(FATAL_ERROR "Universal binaries not supported.") - endif() - list(GET CMAKE_OSX_ARCHITECTURES 0 CMAKE_SYSTEM_PROCESSOR) -endif() - include_directories(src/include) '''