summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorIvan Komissarov <abbapoh@gmail.com>2021-05-12 16:35:16 +0200
committerIvan Komissarov <ABBAPOH@gmail.com>2021-05-18 08:37:37 +0000
commit287311ed774a86ef9ce053dd42e947cd28b48495 (patch)
treeb3fe3f16a83920df60d275411251e22de590bd57 /CMakeLists.txt
parentb1ccd9ab328cc7f7e34ab653ec93f389b9945e19 (diff)
downloadqbs-287311ed774a86ef9ce053dd42e947cd28b48495.tar.gz
cmake: Add Qt6 build
Also, switch Linux CMake job to build Qbs with Qt6 Change-Id: I188845a7cc086a8c87dbb7445ea95f99b26d94ef Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt16
1 files changed, 13 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2e3d15219..441454b10 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,18 +22,28 @@ set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)
+find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED)
+
if(WITH_TESTS)
enable_testing()
set(QT_TEST_COMPONENT Test)
- set(IMPLICIT_DEPENDS Qt5::Test)
+ set(IMPLICIT_DEPENDS Qt${QT_VERSION_MAJOR}::Test)
endif()
-find_package(Qt5
+find_package(Qt${QT_VERSION_MAJOR}
COMPONENTS Concurrent Core Gui Network Widgets Xml ${QT_TEST_COMPONENT}
REQUIRED
)
-find_package(Qt5 COMPONENTS Script)
+find_package(Qt${QT_VERSION_MAJOR} OPTIONAL_COMPONENTS Script)
+
+if (Qt6_FOUND)
+ find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core5Compat REQUIRED)
+ set_property(TARGET Qt6::Core5Compat PROPERTY IMPORTED_GLOBAL TRUE) # hack for CMake < 1.18
+ add_library(Qt6Core5Compat ALIAS Qt6::Core5Compat)
+else()
+ add_library(Qt6Core5Compat INTERFACE)
+endif()
add_subdirectory(src)
add_subdirectory(doc)