mirror of
https://git.freebsd.org/ports.git
synced 2025-05-15 00:31:51 -04:00
Fix build by merging another change in ssl.cmake from MySQL 8.0 PORTREVISION not bumped intentionally. PR: 271656
82 lines
3 KiB
CMake
82 lines
3 KiB
CMake
--- cmake/ssl.cmake.orig 2023-03-16 22:25:04.000000000 +0700
|
|
+++ cmake/ssl.cmake 2023-06-13 12:11:25.125506000 +0700
|
|
@@ -176,24 +176,32 @@ MACRO (MYSQL_CHECK_SSL)
|
|
MESSAGE(STATUS "OPENSSL_APPLINK_C ${OPENSSL_APPLINK_C}")
|
|
ENDIF()
|
|
|
|
- # On mac this list is <.dylib;.so;.a>
|
|
- # We prefer static libraries, so we reverse it here.
|
|
- IF (WITH_SSL_PATH)
|
|
- LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)
|
|
- MESSAGE(STATUS "suffixes <${CMAKE_FIND_LIBRARY_SUFFIXES}>")
|
|
- ENDIF()
|
|
-
|
|
FIND_LIBRARY(OPENSSL_LIBRARY
|
|
NAMES ssl libssl ssleay32 ssleay32MD
|
|
HINTS ${OPENSSL_ROOT_DIR}/lib)
|
|
FIND_LIBRARY(CRYPTO_LIBRARY
|
|
NAMES crypto libcrypto libeay32
|
|
HINTS ${OPENSSL_ROOT_DIR}/lib)
|
|
- IF (WITH_SSL_PATH)
|
|
- LIST(REVERSE CMAKE_FIND_LIBRARY_SUFFIXES)
|
|
- ENDIF()
|
|
-
|
|
IF(OPENSSL_INCLUDE_DIR)
|
|
+ FOREACH(version_part
|
|
+ OPENSSL_VERSION_MAJOR
|
|
+ OPENSSL_VERSION_MINOR
|
|
+ OPENSSL_VERSION_PATCH
|
|
+ )
|
|
+ FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" ${version_part}
|
|
+ REGEX "^#[\t ]*define[\t ]+${version_part}[\t ]+([0-9]+).*")
|
|
+ STRING(REGEX REPLACE
|
|
+ "^.*${version_part}[\t ]+([0-9]+).*" "\\1"
|
|
+ ${version_part} "${${version_part}}")
|
|
+ ENDFOREACH()
|
|
+
|
|
+ IF(OPENSSL_VERSION_MAJOR VERSION_EQUAL 3)
|
|
+ # OpenSSL 3
|
|
+ SET(OPENSSL_MAJOR_VERSION "${OPENSSL_VERSION_MAJOR}")
|
|
+ SET(OPENSSL_MINOR_VERSION "${OPENSSL_VERSION_MINOR}")
|
|
+ SET(OPENSSL_FIX_VERSION "${OPENSSL_VERSION_PATCH}")
|
|
+ SET(OPENSSL_FOUND TRUE)
|
|
+ ELSE()
|
|
# Verify version number. Version information looks like:
|
|
# #define OPENSSL_VERSION_NUMBER 0x1000103fL
|
|
# Encoded as MNNFFPPS: major minor fix patch status
|
|
@@ -213,15 +221,17 @@ MACRO (MYSQL_CHECK_SSL)
|
|
"^.*OPENSSL_VERSION_NUMBER[\t ]+0x[0-9][0-9][0-9]([0-9][0-9]).*$" "\\1"
|
|
OPENSSL_FIX_VERSION "${OPENSSL_VERSION_NUMBER}"
|
|
)
|
|
+ ENDIF()
|
|
ENDIF()
|
|
SET(OPENSSL_VERSION
|
|
"${OPENSSL_MAJOR_VERSION}.${OPENSSL_MINOR_VERSION}.${OPENSSL_FIX_VERSION}"
|
|
)
|
|
SET(OPENSSL_VERSION ${OPENSSL_VERSION} CACHE INTERNAL "")
|
|
|
|
- IF("${OPENSSL_VERSION}" VERSION_GREATER "1.1.0")
|
|
- ADD_DEFINITIONS(-DHAVE_TLSv13)
|
|
- SET(HAVE_TLSv13 1)
|
|
+ CHECK_SYMBOL_EXISTS(TLS1_3_VERSION "openssl/tls1.h" HAVE_TLS1_3_VERSION)
|
|
+ IF(HAVE_TLS1_3_VERSION)
|
|
+ #ADD_DEFINITIONS(-DHAVE_TLSv13)
|
|
+ #SET(HAVE_TLSv13 1)
|
|
IF(SOLARIS)
|
|
SET(FORCE_SSL_SOLARIS "-Wl,--undefined,address_of_sk_new_null")
|
|
ENDIF()
|
|
@@ -229,7 +239,13 @@ MACRO (MYSQL_CHECK_SSL)
|
|
IF(OPENSSL_INCLUDE_DIR AND
|
|
OPENSSL_LIBRARY AND
|
|
CRYPTO_LIBRARY AND
|
|
- OPENSSL_MAJOR_VERSION STREQUAL "1"
|
|
+ OPENSSL_MAJOR_VERSION VERSION_GREATER_EQUAL "1"
|
|
+ )
|
|
+ SET(OPENSSL_FOUND TRUE)
|
|
+ ELSEIF(OPENSSL_INCLUDE_DIR AND
|
|
+ OPENSSL_LIBRARY AND
|
|
+ CRYPTO_LIBRARY AND
|
|
+ OPENSSL_MAJOR_VERSION STREQUAL "2"
|
|
)
|
|
SET(OPENSSL_FOUND TRUE)
|
|
ELSE()
|