diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/CMakeLists.txt | 54 |
1 files changed, 49 insertions, 5 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 73050cf1..4ec07d66 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -24,6 +24,40 @@ # # SPDX-License-Identifier: GPL-3.0-or-later +# Introduce boost +if(NOT BOOST_ROOT) + find_package(Boost COMPONENTS date_time system REQUIRED) +else() + find_package(Boost + COMPONENTS date_time system REQUIRED + PATHS ${BOOST_ROOT} NO_DEFAULT_PATH) +endif() + +# Introduce OpenSSL +if(APPLE) + set(OPENSSL_ROOT_DIR /usr/local/opt/[email protected]) +endif() +find_package(OpenSSL REQUIRED) + +# Introduce Qt +if (QT5_ENV_SUPPORT) + # Support Qt version: 6.x, 5.12.x and 5.15.x + find_package(Qt6 6.3 COMPONENTS Core Test Widgets PrintSupport Network Core5Compat) + if(NOT Qt6_DIR) + find_package(Qt5 5.9 COMPONENTS Core Test Widgets PrintSupport Network REQUIRED) + else() + add_definitions(-DGPGFRONTEND_GUI_QT6) + endif() + + # Qt configuration + set(CMAKE_AUTOMOC ON) + set(CMAKE_AUTORCC ON) + set(CMAKE_AUTOUIC ON) + + set(CMAKE_AUTORCC_OPTIONS "--compress;9") + set(CMAKE_AUTOUIC_SEARCH_PATHS ${CMAKE_AUTOUIC_SEARCH_PATHS} ${CMAKE_SOURCE_DIR}/ui) +endif () + # configure for output path and resources if (APPLICATION_BUILD) aux_source_directory(. BASE_SOURCE) @@ -283,7 +317,7 @@ if (APPLICATION_BUILD) list(APPEND ALL_RUNTIME_DEP_PATH_LIST ${_libExEPath}) set(ALL_RUNTIME_DLL_FILES "") - list(APPEND ALL_RUNTIME_DLL_FILES "Qt5Core.dll;Qt5Gui.dll;Qt5Network.dll;Qt5PrintSupport.dll;Qt5Svg.dll;Qt5Widgets.dll;libbrotlicommon.dll;libbrotlidec.dll;libdouble-conversion.dll;libzstd.dll;libmd4c.dll;") + list(APPEND ALL_RUNTIME_DLL_FILES "Qt6Core.dll;Qt6Core5Compat.dll;Qt6Gui.dll;Qt6Network.dll;Qt6PrintSupport.dll;Qt6Svg.dll;Qt6Widgets.dll;libbrotlicommon.dll;libbrotlidec.dll;libdouble-conversion.dll;libzstd.dll;libmd4c.dll;") # find the other dlls foreach (_dllFileName ${ALL_RUNTIME_DLL_FILES}) message(STATUS "DLL FILE ${_dllFileName}") @@ -318,8 +352,13 @@ if (APPLICATION_BUILD) if (MINGW) add_executable(${AppName} WIN32 ${BASE_SOURCE} ${RESOURCE_FILES} ${QT5_MOCS}) # include qt dependencies - add_custom_command(TARGET ${AppName} POST_BUILD - COMMAND windeployqt --force ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${AppName}.exe) + if(NOT Qt6_DIR) + add_custom_command(TARGET ${AppName} POST_BUILD + COMMAND windeployqt --force ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${AppName}.exe) + else() + add_custom_command(TARGET ${AppName} POST_BUILD + COMMAND windeployqt-qt6.exe --force ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${AppName}.exe) + endif() elseif (APPLE AND NOT XCODE_BUILD) # custom app bundle packing add_executable(${AppName} MACOSX_BUNDLE ${ICON_RESOURCE} ${BASE_SOURCE} ${RESOURCE_FILES} ${QT5_MOCS}) @@ -406,8 +445,13 @@ if (APPLICATION_BUILD) add_executable(${AppName} ${BASE_SOURCE} ${RESOURCE_FILES} ${QT5_MOCS}) if(MINGW) # include qt dependencies - add_custom_command(TARGET ${AppName} POST_BUILD - COMMAND windeployqt --force ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${AppName}.exe) + if(NOT Qt6_DIR) + add_custom_command(TARGET ${AppName} POST_BUILD + COMMAND windeployqt --force ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${AppName}.exe) + else() + add_custom_command(TARGET ${AppName} POST_BUILD + COMMAND windeployqt-qt6.exe --force ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${AppName}.exe) + endif() endif() endif () |