Merge pull request #16415 from jtattermusch/cmake_likes_assembly

cmake: disable assembly optimizations only when necessary
pull/16426/merge
Jan Tattermusch 7 years ago committed by GitHub
commit f10596f0f3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 9
      cmake/ssl.cmake
  2. 4
      doc/ssl-performance.md

@ -17,7 +17,14 @@ if("${gRPC_SSL_PROVIDER}" STREQUAL "module")
set(BORINGSSL_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/third_party/boringssl)
endif()
if(EXISTS "${BORINGSSL_ROOT_DIR}/CMakeLists.txt")
set(OPENSSL_NO_ASM ON) # make boringssl buildable with Visual Studio
if (MSVC AND NOT CMAKE_GENERATOR STREQUAL "Ninja")
# Visual Studio build with assembly optimizations is broken,
# but it works with Ninja generator.
# This will get eventually fixed in cmake, but until then
# we need to disable assembly optimizations.
# See https://github.com/grpc/grpc/issues/16376
set(OPENSSL_NO_ASM ON)
endif()
add_subdirectory(${BORINGSSL_ROOT_DIR} third_party/boringssl)
if(TARGET ssl)
set(_gRPC_SSL_LIBRARIES ssl)

@ -14,7 +14,9 @@ Makefile | all other cases | all | :x:
Bazel | | Linux | :heavy_check_mark:
Bazel | | MacOS | :heavy_check_mark:
Bazel | | Windows | :x:
CMake | boringssl from submodule (default) | all | :x:
CMake | boringssl from submodule (default) | Linux or MacOS | :heavy_check_mark:
CMake | boringssl from submodule (default), generator=Ninja | Windows | :heavy_check_mark:
CMake | boringssl from submodule (default), generator=Visual Studio | Windows | :x:
CMake | pre-installed OpenSSL 1.0.2+ (`gRPC_SSL_PROVIDER=package`) | all | :heavy_check_mark:
## Other Languages: Binary/Source Packages

Loading…
Cancel
Save