CMake TLS cleanup
This commit is contained in:
		@@ -134,10 +134,11 @@ if (USE_TLS)
 | 
			
		||||
    elseif (USE_SECURE_TRANSPORT)
 | 
			
		||||
        list( APPEND IXWEBSOCKET_HEADERS ixwebsocket/IXSocketAppleSSL.h)
 | 
			
		||||
        list( APPEND IXWEBSOCKET_SOURCES ixwebsocket/IXSocketAppleSSL.cpp)
 | 
			
		||||
    else()
 | 
			
		||||
        set(USE_OPEN_SSL ON)
 | 
			
		||||
    else (USE_OPEN_SSL)
 | 
			
		||||
        list( APPEND IXWEBSOCKET_HEADERS ixwebsocket/IXSocketOpenSSL.h)
 | 
			
		||||
        list( APPEND IXWEBSOCKET_SOURCES ixwebsocket/IXSocketOpenSSL.cpp)
 | 
			
		||||
    else()
 | 
			
		||||
        message(STATUS "TLS Configuration error: unknown backend")
 | 
			
		||||
    endif()
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
@@ -154,11 +155,53 @@ if (USE_TLS)
 | 
			
		||||
        target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_OPEN_SSL)
 | 
			
		||||
    elseif (USE_SECURE_TRANSPORT)
 | 
			
		||||
        target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_SECURE_TRANSPORT)
 | 
			
		||||
    else()
 | 
			
		||||
        message(STATUS "TLS Configuration error: unknown backend")
 | 
			
		||||
    endif()
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if (APPLE AND USE_TLS AND NOT USE_MBED_TLS AND NOT USE_OPEN_SSL)
 | 
			
		||||
  target_link_libraries(ixwebsocket "-framework foundation" "-framework security")
 | 
			
		||||
if (USE_TLS)
 | 
			
		||||
  if (USE_OPEN_SSL)
 | 
			
		||||
    message(STATUS "TLS configured to use openssl")
 | 
			
		||||
 | 
			
		||||
    # Help finding Homebrew's OpenSSL on macOS
 | 
			
		||||
    if (APPLE)
 | 
			
		||||
      set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /usr/local/opt/openssl/lib)
 | 
			
		||||
      set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} /usr/local/opt/openssl/include)
 | 
			
		||||
    endif()
 | 
			
		||||
 | 
			
		||||
    # This OPENSSL_FOUND check is to help find a cmake manually configured OpenSSL
 | 
			
		||||
    if (NOT OPENSSL_FOUND)
 | 
			
		||||
      find_package(OpenSSL REQUIRED)
 | 
			
		||||
    endif()
 | 
			
		||||
    message(STATUS "OpenSSL: " ${OPENSSL_VERSION})
 | 
			
		||||
 | 
			
		||||
    target_compile_definitions(ixwebsocket PUBLIC ${OPENSSL_DEFINITIONS})
 | 
			
		||||
    target_include_directories(${OPENSSL_INCLUDE_DIR})
 | 
			
		||||
    target_link_libraries(ixwebsocket ${OPENSSL_LIBRARIES})
 | 
			
		||||
  elseif (USE_MBED_TLS)
 | 
			
		||||
    message(STATUS "TLS configured to use mbedtls")
 | 
			
		||||
 | 
			
		||||
    find_package(MbedTLS REQUIRED)
 | 
			
		||||
    target_include_directories(ixwebsocket PUBLIC ${MBEDTLS_INCLUDE_DIRS})
 | 
			
		||||
    target_link_libraries(ixwebsocket ${MBEDTLS_LIBRARIES})
 | 
			
		||||
  elseif (USE_SECURE_TRANSPORT)
 | 
			
		||||
    message(STATUS "TLS configured to use secure transport")
 | 
			
		||||
    target_link_libraries(ixwebsocket "-framework foundation" "-framework security")
 | 
			
		||||
  endif()
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
# This ZLIB_FOUND check is to help find a cmake manually configured zlib
 | 
			
		||||
if (NOT ZLIB_FOUND)
 | 
			
		||||
  find_package(ZLIB)
 | 
			
		||||
endif()
 | 
			
		||||
if (ZLIB_FOUND)
 | 
			
		||||
  include_directories(${ZLIB_INCLUDE_DIRS})
 | 
			
		||||
  target_link_libraries(ixwebsocket ${ZLIB_LIBRARIES})
 | 
			
		||||
else()
 | 
			
		||||
  include_directories(third_party/zlib ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib)
 | 
			
		||||
  add_subdirectory(third_party/zlib)
 | 
			
		||||
  target_link_libraries(ixwebsocket zlibstatic)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if (WIN32)
 | 
			
		||||
@@ -175,40 +218,6 @@ if (UNIX)
 | 
			
		||||
  target_link_libraries(ixwebsocket ${CMAKE_THREAD_LIBS_INIT})
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if (USE_TLS AND USE_OPEN_SSL)
 | 
			
		||||
 | 
			
		||||
  # Help finding Homebrew's OpenSSL on macOS
 | 
			
		||||
  if (APPLE)
 | 
			
		||||
    set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} /usr/local/opt/openssl/lib)
 | 
			
		||||
    set(CMAKE_INCLUDE_PATH ${CMAKE_INCLUDE_PATH} /usr/local/opt/openssl/include)
 | 
			
		||||
  endif()
 | 
			
		||||
 | 
			
		||||
  if(NOT OPENSSL_FOUND)
 | 
			
		||||
    find_package(OpenSSL REQUIRED)
 | 
			
		||||
  endif()
 | 
			
		||||
  add_definitions(${OPENSSL_DEFINITIONS})
 | 
			
		||||
  message(STATUS "OpenSSL: " ${OPENSSL_VERSION})
 | 
			
		||||
  include_directories(${OPENSSL_INCLUDE_DIR})
 | 
			
		||||
  target_link_libraries(ixwebsocket ${OPENSSL_LIBRARIES})
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if (USE_TLS AND USE_MBED_TLS)
 | 
			
		||||
  find_package(MbedTLS REQUIRED)
 | 
			
		||||
  target_include_directories(ixwebsocket PUBLIC ${MBEDTLS_INCLUDE_DIRS})
 | 
			
		||||
  target_link_libraries(ixwebsocket ${MBEDTLS_LIBRARIES})
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
if (NOT ZLIB_FOUND)
 | 
			
		||||
  find_package(ZLIB)
 | 
			
		||||
endif()
 | 
			
		||||
if (ZLIB_FOUND)
 | 
			
		||||
  include_directories(${ZLIB_INCLUDE_DIRS})
 | 
			
		||||
  target_link_libraries(ixwebsocket ${ZLIB_LIBRARIES})
 | 
			
		||||
else()
 | 
			
		||||
  include_directories(third_party/zlib ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib)
 | 
			
		||||
  add_subdirectory(third_party/zlib)
 | 
			
		||||
  target_link_libraries(ixwebsocket zlibstatic)
 | 
			
		||||
endif()
 | 
			
		||||
 | 
			
		||||
set( IXWEBSOCKET_INCLUDE_DIRS
 | 
			
		||||
    ${CMAKE_CURRENT_SOURCE_DIR}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user