diff --git a/external/openssl/CMakeLists.txt b/external/openssl/CMakeLists.txt index 1fe84f3..285b56f 100644 --- a/external/openssl/CMakeLists.txt +++ b/external/openssl/CMakeLists.txt @@ -7,66 +7,28 @@ add_library(external_openssl INTERFACE IMPORTED GLOBAL) add_library(desktop-app::external_openssl ALIAS external_openssl) -if (DESKTOP_APP_USE_PACKAGED) - find_package(OpenSSL REQUIRED) - target_link_libraries(external_openssl - INTERFACE - OpenSSL::SSL - OpenSSL::Crypto - ) +if (WIN32) + set(openssl_lib_ext lib) + set(openssl_lib_loc ${libs_loc}/openssl_1_1_1/out32) else() - if (LINUX) - target_include_directories(external_openssl SYSTEM - INTERFACE - /usr/local/desktop-app/openssl-1.1.1/include - ) - elseif (NOT APPLE OR NOT build_osx) - target_include_directories(external_openssl SYSTEM - INTERFACE - ${libs_loc}/openssl_1_1_1/include - ) - else() - target_include_directories(external_openssl SYSTEM - INTERFACE - ${libs_loc}/openssl/include - ) - endif() - - if (WIN32) - set(openssl_lib_ext lib) - set(openssl_lib_loc ${libs_loc}/openssl_1_1_1/out32$<$:.dbg>) - else() - set(openssl_lib_ext a) - if (APPLE) - if (NOT build_osx) - set(openssl_lib_loc ${libs_loc}/openssl_1_1_1) - else() - set(openssl_lib_loc ${libs_loc}/openssl) - endif() + set(openssl_lib_ext a) + if (APPLE) + if (NOT build_osx) + set(openssl_lib_loc ${libs_loc}/openssl_1_1_1) else() - set(openssl_lib_loc /usr/local/desktop-app/openssl-1.1.1/lib) + set(openssl_lib_loc ${libs_loc}/openssl) endif() - endif() - - target_link_libraries(external_openssl - INTERFACE - ${openssl_lib_loc}/libssl.${openssl_lib_ext} - ${openssl_lib_loc}/libcrypto.${openssl_lib_ext} - ) - - if (LINUX) - if (DESKTOP_APP_USE_GLIBC_WRAPS) - target_link_libraries(external_openssl - INTERFACE - desktop-app::linux_glibc_wraps - $ - ) - endif() - - target_link_libraries(external_openssl - INTERFACE - ${CMAKE_DL_LIBS} - pthread - ) + else() + set(openssl_lib_loc /usr/local/desktop-app/openssl-1.1.1/lib) endif() endif() + +add_subdirectory(openssl_common) +add_subdirectory(openssl_ssl) +add_subdirectory(openssl_crypto) + +target_link_libraries(external_openssl +INTERFACE + desktop-app::external_openssl_ssl + desktop-app::external_openssl_crypto +) diff --git a/external/openssl/openssl_common/CMakeLists.txt b/external/openssl/openssl_common/CMakeLists.txt new file mode 100644 index 0000000..bae71ed --- /dev/null +++ b/external/openssl/openssl_common/CMakeLists.txt @@ -0,0 +1,42 @@ +# This file is part of Desktop App Toolkit, +# a set of libraries for developing nice desktop applications. +# +# For license and copyright information please follow this link: +# https://github.com/desktop-app/legal/blob/master/LEGAL + +add_library(external_openssl_common INTERFACE IMPORTED GLOBAL) +add_library(desktop-app::external_openssl_common ALIAS external_openssl_common) + +if (NOT DESKTOP_APP_USE_PACKAGED) + if (LINUX) + target_include_directories(external_openssl_common SYSTEM + INTERFACE + /usr/local/desktop-app/openssl-1.1.1/include + ) + elseif (NOT APPLE OR NOT build_osx) + target_include_directories(external_openssl_common SYSTEM + INTERFACE + ${libs_loc}/openssl_1_1_1/include + ) + else() + target_include_directories(external_openssl_common SYSTEM + INTERFACE + ${libs_loc}/openssl/include + ) + endif() + + if (LINUX) + if (DESKTOP_APP_USE_GLIBC_WRAPS) + target_link_libraries(external_openssl_common + INTERFACE + $ + ) + endif() + + target_link_libraries(external_openssl_common + INTERFACE + ${CMAKE_DL_LIBS} + pthread + ) + endif() +endif() diff --git a/external/openssl/openssl_crypto/CMakeLists.txt b/external/openssl/openssl_crypto/CMakeLists.txt new file mode 100644 index 0000000..1b85eda --- /dev/null +++ b/external/openssl/openssl_crypto/CMakeLists.txt @@ -0,0 +1,31 @@ +# This file is part of Desktop App Toolkit, +# a set of libraries for developing nice desktop applications. +# +# For license and copyright information please follow this link: +# https://github.com/desktop-app/legal/blob/master/LEGAL + +if (DESKTOP_APP_USE_PACKAGED) + add_library(external_openssl_crypto INTERFACE IMPORTED GLOBAL) + add_library(desktop-app::external_openssl_crypto ALIAS external_openssl_crypto) + + find_package(OpenSSL REQUIRED) + target_link_libraries(external_openssl INTERFACE OpenSSL::Crypto) +else() + add_library(external_openssl_crypto STATIC IMPORTED GLOBAL) + add_library(desktop-app::external_openssl_crypto ALIAS external_openssl_crypto) + + set_target_properties(external_openssl_crypto PROPERTIES + IMPORTED_LOCATION "${openssl_lib_loc}/libcrypto.${openssl_lib_ext}" + ) + + if (WIN32) + set_target_properties(external_openssl_ssl PROPERTIES + IMPORTED_LOCATION_DEBUG "${openssl_lib_loc}.dbg/libcrypto.${openssl_lib_ext}" + ) + endif() + + target_link_libraries(external_openssl_crypto + INTERFACE + desktop-app::external_openssl_common + ) +endif() diff --git a/external/openssl/openssl_ssl/CMakeLists.txt b/external/openssl/openssl_ssl/CMakeLists.txt new file mode 100644 index 0000000..95e85fb --- /dev/null +++ b/external/openssl/openssl_ssl/CMakeLists.txt @@ -0,0 +1,31 @@ +# This file is part of Desktop App Toolkit, +# a set of libraries for developing nice desktop applications. +# +# For license and copyright information please follow this link: +# https://github.com/desktop-app/legal/blob/master/LEGAL + +if (DESKTOP_APP_USE_PACKAGED) + add_library(external_openssl_ssl INTERFACE IMPORTED GLOBAL) + add_library(desktop-app::external_openssl_ssl ALIAS external_openssl_ssl) + + find_package(OpenSSL REQUIRED) + target_link_libraries(external_openssl INTERFACE OpenSSL::SSL) +else() + add_library(external_openssl_ssl STATIC IMPORTED GLOBAL) + add_library(desktop-app::external_openssl_ssl ALIAS external_openssl_ssl) + + set_target_properties(external_openssl_ssl PROPERTIES + IMPORTED_LOCATION "${openssl_lib_loc}/libssl.${openssl_lib_ext}" + ) + + if (WIN32) + set_target_properties(external_openssl_ssl PROPERTIES + IMPORTED_LOCATION_DEBUG "${openssl_lib_loc}.dbg/libssl.${openssl_lib_ext}" + ) + endif() + + target_link_libraries(external_openssl_ssl + INTERFACE + desktop-app::external_openssl_common + ) +endif() diff --git a/external/qt/CMakeLists.txt b/external/qt/CMakeLists.txt index 490d13b..885c358 100644 --- a/external/qt/CMakeLists.txt +++ b/external/qt/CMakeLists.txt @@ -302,6 +302,8 @@ else() target_link_libraries(external_qt INTERFACE ${qt_libs_list} + $ + $ ) if (LINUX) @@ -355,7 +357,6 @@ else() if (DESKTOP_APP_USE_GLIBC_WRAPS) target_link_libraries(external_qt INTERFACE - desktop-app::linux_glibc_wraps $ ) endif()