CMake TLS cleanup
This commit is contained in:
		@@ -134,10 +134,11 @@ if (USE_TLS)
 | 
				
			|||||||
    elseif (USE_SECURE_TRANSPORT)
 | 
					    elseif (USE_SECURE_TRANSPORT)
 | 
				
			||||||
        list( APPEND IXWEBSOCKET_HEADERS ixwebsocket/IXSocketAppleSSL.h)
 | 
					        list( APPEND IXWEBSOCKET_HEADERS ixwebsocket/IXSocketAppleSSL.h)
 | 
				
			||||||
        list( APPEND IXWEBSOCKET_SOURCES ixwebsocket/IXSocketAppleSSL.cpp)
 | 
					        list( APPEND IXWEBSOCKET_SOURCES ixwebsocket/IXSocketAppleSSL.cpp)
 | 
				
			||||||
    else()
 | 
					    else (USE_OPEN_SSL)
 | 
				
			||||||
        set(USE_OPEN_SSL ON)
 | 
					 | 
				
			||||||
        list( APPEND IXWEBSOCKET_HEADERS ixwebsocket/IXSocketOpenSSL.h)
 | 
					        list( APPEND IXWEBSOCKET_HEADERS ixwebsocket/IXSocketOpenSSL.h)
 | 
				
			||||||
        list( APPEND IXWEBSOCKET_SOURCES ixwebsocket/IXSocketOpenSSL.cpp)
 | 
					        list( APPEND IXWEBSOCKET_SOURCES ixwebsocket/IXSocketOpenSSL.cpp)
 | 
				
			||||||
 | 
					    else()
 | 
				
			||||||
 | 
					        message(STATUS "TLS Configuration error: unknown backend")
 | 
				
			||||||
    endif()
 | 
					    endif()
 | 
				
			||||||
endif()
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -154,11 +155,53 @@ if (USE_TLS)
 | 
				
			|||||||
        target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_OPEN_SSL)
 | 
					        target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_OPEN_SSL)
 | 
				
			||||||
    elseif (USE_SECURE_TRANSPORT)
 | 
					    elseif (USE_SECURE_TRANSPORT)
 | 
				
			||||||
        target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_SECURE_TRANSPORT)
 | 
					        target_compile_definitions(ixwebsocket PUBLIC IXWEBSOCKET_USE_SECURE_TRANSPORT)
 | 
				
			||||||
 | 
					    else()
 | 
				
			||||||
 | 
					        message(STATUS "TLS Configuration error: unknown backend")
 | 
				
			||||||
    endif()
 | 
					    endif()
 | 
				
			||||||
endif()
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if (APPLE AND USE_TLS AND NOT USE_MBED_TLS AND NOT USE_OPEN_SSL)
 | 
					if (USE_TLS)
 | 
				
			||||||
  target_link_libraries(ixwebsocket "-framework foundation" "-framework security")
 | 
					  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()
 | 
					endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if (WIN32)
 | 
					if (WIN32)
 | 
				
			||||||
@@ -175,40 +218,6 @@ if (UNIX)
 | 
				
			|||||||
  target_link_libraries(ixwebsocket ${CMAKE_THREAD_LIBS_INIT})
 | 
					  target_link_libraries(ixwebsocket ${CMAKE_THREAD_LIBS_INIT})
 | 
				
			||||||
endif()
 | 
					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
 | 
					set( IXWEBSOCKET_INCLUDE_DIRS
 | 
				
			||||||
    ${CMAKE_CURRENT_SOURCE_DIR}
 | 
					    ${CMAKE_CURRENT_SOURCE_DIR}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user