mirror of
https://github.com/transmission/transmission
synced 2025-01-03 05:25:52 +00:00
Add support for WolfSSL
It was announced on March 5th that CyaSSL changes name to WolfSSL, and version 3.4.0 has been released under that new name. Tune FindCyaSSL.cmake a bit to probe for both libraries. Fortunately, compatibility headers are provided so I didn't have to touch the code at all for now.
This commit is contained in:
parent
3f9575fcc8
commit
82f4e06658
1 changed files with 26 additions and 11 deletions
|
@ -8,21 +8,36 @@ if(CYASSL_PREFER_STATIC_LIB)
|
|||
endif()
|
||||
|
||||
if(UNIX)
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(_CYASSL QUIET cyassl)
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(_WOLFSSL QUIET wolfssl)
|
||||
endif()
|
||||
|
||||
find_path(CYASSL_INCLUDE_DIR NAMES cyassl/version.h HINTS ${_CYASSL_INCLUDEDIR})
|
||||
find_library(CYASSL_LIBRARY NAMES cyassl HINTS ${_CYASSL_LIBDIR})
|
||||
find_path(WOLFSSL_INCLUDE_DIR NAMES wolfssl/version.h HINTS ${_WOLFSSL_INCLUDEDIR})
|
||||
find_library(WOLFSSL_LIBRARY NAMES wolfssl HINTS ${_WOLFSSL_LIBDIR})
|
||||
if(WOLFSSL_INCLUDE_DIR AND WOLFSSL_LIBRARY)
|
||||
set(CYASSL_INCLUDE_DIR ${WOLFSSL_INCLUDE_DIR})
|
||||
set(CYASSL_LIBRARY ${WOLFSSL_LIBRARY})
|
||||
set(CYASSL_VERSION ${_WOLFSSL_VERSION})
|
||||
set(CYASSL_IS_WOLFSSL ON)
|
||||
else()
|
||||
if(UNIX)
|
||||
pkg_check_modules(_CYASSL QUIET cyassl)
|
||||
endif()
|
||||
|
||||
if(CYASSL_INCLUDE_DIR)
|
||||
if(_CYASSL_VERSION)
|
||||
set(CYASSL_VERSION ${_CYASSL_VERSION})
|
||||
find_path(CYASSL_INCLUDE_DIR NAMES cyassl/version.h HINTS ${_CYASSL_INCLUDEDIR})
|
||||
find_library(CYASSL_LIBRARY NAMES cyassl HINTS ${_CYASSL_LIBDIR})
|
||||
set(CYASSL_VERSION ${_CYASSL_VERSION})
|
||||
set(CYASSL_IS_WOLFSSL OFF)
|
||||
endif()
|
||||
|
||||
if(NOT CYASSL_VERSION AND CYASSL_INCLUDE_DIR)
|
||||
if(CYASSL_IS_WOLFSSL)
|
||||
file(STRINGS "${CYASSL_INCLUDE_DIR}/wolfssl/version.h" CYASSL_VERSION_STR REGEX "^#define[\t ]+LIBWOLFSSL_VERSION_STRING[\t ]+\"[^\"]+\"")
|
||||
else()
|
||||
file(STRINGS "${CYASSL_INCLUDE_DIR}/cyassl/version.h" CYASSL_VERSION_STR REGEX "^#define[\t ]+LIBCYASSL_VERSION_STRING[\t ]+\"[^\"]+\"")
|
||||
if(CYASSL_VERSION_STR MATCHES "\"([^\"]+)\"")
|
||||
set(CYASSL_VERSION "${CMAKE_MATCH_1}")
|
||||
endif()
|
||||
endif()
|
||||
if(CYASSL_VERSION_STR MATCHES "\"([^\"]+)\"")
|
||||
set(CYASSL_VERSION "${CMAKE_MATCH_1}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
@ -39,7 +54,7 @@ find_package_handle_standard_args(CyaSSL
|
|||
CYASSL_VERSION
|
||||
)
|
||||
|
||||
mark_as_advanced(CYASSL_INCLUDE_DIR CYASSL_LIBRARY)
|
||||
mark_as_advanced(WOLFSSL_INCLUDE_DIR WOLFSSL_LIBRARY CYASSL_INCLUDE_DIR CYASSL_LIBRARY)
|
||||
|
||||
if(CYASSL_PREFER_STATIC_LIB)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${CYASSL_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
|
|
Loading…
Reference in a new issue