pineapple/externals/vcpkg/ports/libmysql/system-libs.patch
2022-07-23 03:01:36 +02:00

149 lines
5.3 KiB
Diff
Executable file

diff --git a/cmake/icu.cmake b/cmake/icu.cmake
index fde3a75..9f694b9 100644
--- a/cmake/icu.cmake
+++ b/cmake/icu.cmake
@@ -38,49 +38,11 @@
# install_root is either 'system' or is assumed to be a path.
#
MACRO (FIND_ICU install_root)
- IF("${install_root}" STREQUAL "system")
- SET(EXTRA_FIND_LIB_ARGS)
- SET(EXTRA_FIND_INC_ARGS)
- ELSE()
- SET(EXTRA_FIND_LIB_ARGS HINTS "${install_root}"
- PATH_SUFFIXES "lib" "lib64" NO_DEFAULT_PATH)
- SET(EXTRA_FIND_INC_ARGS HINTS "${install_root}"
- PATH_SUFFIXES "include" NO_DEFAULT_PATH)
- ENDIF()
-
- FIND_PATH(ICU_INCLUDE_DIR NAMES unicode/regex.h ${EXTRA_FIND_INC_ARGS})
- IF (NOT ICU_INCLUDE_DIR)
- MESSAGE(FATAL_ERROR "Cannot find ICU regular expression headers")
- ENDIF()
-
- IF(WIN32)
- SET(ICU_LIBS icuuc icuio icudt icuin)
- ELSE()
- SET(ICU_LIBS icuuc icuio icudata icui18n)
- ENDIF()
-
- SET(ICU_SYSTEM_LIBRARIES)
- FOREACH(ICU_LIB ${ICU_LIBS})
- UNSET(ICU_LIB_PATH CACHE)
- FIND_LIBRARY(ICU_LIB_PATH NAMES ${ICU_LIB} ${EXTRA_FIND_LIB_ARGS})
- IF(NOT ICU_LIB_PATH)
- MESSAGE(FATAL_ERROR "Cannot find the ICU library ${ICU_LIB}")
- ENDIF()
- LIST(APPEND ICU_SYSTEM_LIBRARIES ${ICU_LIB_PATH})
- ENDFOREACH()
-
- # To do: If we include the path in ICU_INCLUDE_DIR, it leads to GUnit
- # picking up the wrong regex.h header. And it looks like we don't need it;
- # at least on Linux, the header gets installed in an OS path anyway.
- IF(NOT "${install_root}" STREQUAL "system")
- SET(ICU_INCLUDE_DIRS ${ICU_INCLUDE_DIR})
- ENDIF()
-
- SET(ICU_LIBRARIES ${ICU_SYSTEM_LIBRARIES})
-
- # Needed for version information.
- SET(ICU_COMMON_DIR ${ICU_INCLUDE_DIR})
+ find_package(ICU REQUIRED COMPONENTS uc io dt in)
+ set(ICU_SYSTEM_LIBRARIES ICU::uc ICU::io ICU::dt ICU::in)
+ set(ICU_COMMON_DIR ${ICU_INCLUDE_DIR})
+ SET(ICU_INCLUDE_DIRS ${ICU_INCLUDE_DIR})
ENDMACRO()
MACRO (MYSQL_USE_BUNDLED_ICU)
diff --git a/cmake/libutils.cmake b/cmake/libutils.cmake
index 3fa58da..88b53e7 100644
--- a/cmake/libutils.cmake
+++ b/cmake/libutils.cmake
@@ -350,12 +350,7 @@ MACRO(MERGE_CONVENIENCE_LIBRARIES)
# On Windows, ssleay32.lib/libeay32.lib or libssl.lib/libcrypto.lib
# must be merged into mysqlclient.lib
IF(WIN32 AND ${TARGET} STREQUAL "mysqlclient")
- SET(LINKER_EXTRA_FLAGS "")
- FOREACH(LIB ${SSL_LIBRARIES})
- STRING_APPEND(LINKER_EXTRA_FLAGS " ${LIB}")
- ENDFOREACH()
- SET_TARGET_PROPERTIES(${TARGET}
- PROPERTIES STATIC_LIBRARY_FLAGS "${LINKER_EXTRA_FLAGS}")
+ TARGET_LINK_LIBRARIES(${TARGET} PRIVATE ${SSL_LIBRARIES})
ENDIF()
IF(OSLIBS)
diff --git a/cmake/lz4.cmake b/cmake/lz4.cmake
index 9aad130..68cbaba 100644
--- a/cmake/lz4.cmake
+++ b/cmake/lz4.cmake
@@ -25,7 +25,7 @@
MACRO (FIND_SYSTEM_LZ4)
FIND_PATH(PATH_TO_LZ4 NAMES lz4frame.h)
- FIND_LIBRARY(LZ4_SYSTEM_LIBRARY NAMES lz4)
+ FIND_LIBRARY(LZ4_SYSTEM_LIBRARY NAMES lz4d lz4)
IF (PATH_TO_LZ4 AND LZ4_SYSTEM_LIBRARY)
SET(SYSTEM_LZ4_FOUND 1)
INCLUDE_DIRECTORIES(SYSTEM ${PATH_TO_LZ4})
diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake
index 52feade..1e71bd7 100644
--- a/cmake/ssl.cmake
+++ b/cmake/ssl.cmake
@@ -93,7 +93,20 @@ ENDMACRO()
# Provides the following configure options:
# WITH_SSL=[yes|system|<path/to/custom/installation>]
MACRO (MYSQL_CHECK_SSL)
+ find_package(OpenSSL REQUIRED)
+ set(OPENSSL_LIBRARY OpenSSL::SSL CACHE STRING "")
+ set(CRYPTO_LIBRARY OpenSSL::Crypto CACHE STRING "")
+ FIND_PROGRAM(OPENSSL_EXECUTABLE openssl
+ DOC "path to the openssl executable")
+ SET(SSL_DEFINES "-DHAVE_OPENSSL")
+ set(SSL_LIBRARIES OpenSSL::SSL OpenSSL::Crypto)
+ if(NOT WIN32)
+ find_package(Threads REQUIRED)
+ list(APPEND SSL_LIBRARIES Threads::Threads)
+ endif()
+ENDMACRO()
+MACRO (MYSQL_CHECK_SSL_OLD)
IF(NOT WITH_SSL)
SET(WITH_SSL "system" CACHE STRING ${WITH_SSL_DOC_STRING} FORCE)
ENDIF()
diff --git a/cmake/zlib.cmake b/cmake/zlib.cmake
index 26c56fe..65bebb4 100644
--- a/cmake/zlib.cmake
+++ b/cmake/zlib.cmake
@@ -51,28 +51,7 @@ MACRO (MYSQL_CHECK_ZLIB_WITH_COMPRESS)
IF(WITH_ZLIB STREQUAL "bundled")
MYSQL_USE_BUNDLED_ZLIB()
ELSE()
- SET(ZLIB_FIND_QUIETLY TRUE)
- INCLUDE(FindZLIB)
- IF(ZLIB_FOUND)
- INCLUDE(CheckFunctionExists)
- SET(SAVE_CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES})
- SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} z)
- CHECK_FUNCTION_EXISTS(crc32 HAVE_CRC32)
- CHECK_FUNCTION_EXISTS(compressBound HAVE_COMPRESSBOUND)
- CHECK_FUNCTION_EXISTS(deflateBound HAVE_DEFLATEBOUND)
- SET(CMAKE_REQUIRED_LIBRARIES ${SAVE_CMAKE_REQUIRED_LIBRARIES})
- IF(HAVE_CRC32 AND HAVE_COMPRESSBOUND AND HAVE_DEFLATEBOUND)
- SET(ZLIB_LIBRARY ${ZLIB_LIBRARIES} CACHE INTERNAL "System zlib library")
- SET(WITH_ZLIB "system" CACHE STRING
- "Which zlib to use (possible values are 'bundled' or 'system')")
- SET(ZLIB_SOURCES "")
- ELSE()
- SET(ZLIB_FOUND FALSE CACHE INTERNAL "Zlib found but not usable")
- MESSAGE(STATUS "system zlib found but not usable")
- ENDIF()
- ENDIF()
- IF(NOT ZLIB_FOUND)
- MYSQL_USE_BUNDLED_ZLIB()
- ENDIF()
+ find_package(ZLIB REQUIRED)
+ SET(ZLIB_LIBRARY ZLIB::ZLIB CACHE INTERNAL "System zlib library")
ENDIF()
ENDMACRO()