From 3df0f94f51f6ec9c30f13d15574f82a86a697638 Mon Sep 17 00:00:00 2001
From: Vladimir Davydov <vdavydov@tarantool.org>
Date: Tue, 7 Nov 2023 11:37:24 +0300
Subject: [PATCH] cmake: enable static linking of OpenSSL if BUILD_STATIC is
 set

Currently, the BUILD_STATIC and BUILD_STATIC_WITH_BUNDLED_LIBS cmake
options don't enable static linking of the OpenSSL library so we have
to set OPENSSL_USE_STATIC_LIBS explicitly. Let's enable static linking
of OpenSSL by default because we enable it anyway in all our official
builds.

NO_DOC=build
NO_TEST=build
NO_CHANGELOG=build

(cherry picked from commit edadffd783dfd86a28b33966e61aaf4a1dc97fdb)
---
 CMakeLists.txt                               | 3 +++
 static-build/cmake/AddTarantoolProject.cmake | 1 -
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index cef135c7fc..2b5f11345f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -450,6 +450,8 @@ endif()
 # OpenSSL
 #
 
+option(OPENSSL_USE_STATIC_LIBS "Link OpenSSL statically"
+    ${BUILD_STATIC})
 set(ENABLE_BUNDLED_OPENSSL_DEFAULT OFF)
 if(BUILD_STATIC_WITH_BUNDLED_LIBS AND OPENSSL_USE_STATIC_LIBS)
     set(ENABLE_BUNDLED_OPENSSL_DEFAULT ON)
@@ -850,6 +852,7 @@ set(options PACKAGE VERSION BUILD C_COMPILER CXX_COMPILER C_FLAGS CXX_FLAGS
     ENABLE_DOC
     ENABLE_DIST
     ENABLE_BUNDLED_ZLIB
+    OPENSSL_USE_STATIC_LIBS
     ENABLE_BUNDLED_OPENSSL
     ENABLE_BUNDLED_LIBCURL
     BUNDLED_LIBCURL_USE_ARES
diff --git a/static-build/cmake/AddTarantoolProject.cmake b/static-build/cmake/AddTarantoolProject.cmake
index cd52881930..afd7f093b6 100644
--- a/static-build/cmake/AddTarantoolProject.cmake
+++ b/static-build/cmake/AddTarantoolProject.cmake
@@ -9,7 +9,6 @@ ExternalProject_Add(tarantool
         # https://cmake.org/cmake/help/v3.4/module/GNUInstallDirs.html#special-cases
         -DCMAKE_INSTALL_LOCALSTATEDIR=<INSTALL_DIR>/var
         -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-        -DOPENSSL_USE_STATIC_LIBS=TRUE
         -DBUILD_STATIC_WITH_BUNDLED_LIBS=TRUE
         -DENABLE_DIST=TRUE
         -DENABLE_HARDENING=${ENABLE_HARDENING}
-- 
GitLab