2019-01-30 09:57:27 +00:00
|
|
|
cmake_minimum_required(VERSION 3.13.0) ## FIXME This is wrong we actually need pre-relase 3.14
|
2018-10-24 13:20:27 +00:00
|
|
|
|
2019-01-30 10:12:21 +00:00
|
|
|
CMAKE_POLICY(SET CMP0083 NEW) ## TODO Remove when we start requiring 3.14 in the line above
|
|
|
|
|
2018-10-24 13:20:27 +00:00
|
|
|
project(QtBase
|
|
|
|
VERSION 5.12.0
|
|
|
|
DESCRIPTION "Qt Base Libraries"
|
|
|
|
HOMEPAGE_URL "https://qt.io/"
|
|
|
|
LANGUAGES CXX C
|
|
|
|
)
|
|
|
|
|
|
|
|
## Add some paths to check for cmake modules:
|
2018-11-01 09:43:05 +00:00
|
|
|
list(APPEND CMAKE_MODULE_PATH
|
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
|
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/3rdparty/extra-cmake-modules/find-modules"
|
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/3rdparty/kwin"
|
|
|
|
)
|
2018-10-24 13:20:27 +00:00
|
|
|
|
|
|
|
## Qt specific setup common for all modules:
|
|
|
|
include(QtSetup)
|
|
|
|
|
|
|
|
## Enable feature summary at the end of the configure run:
|
|
|
|
include(FeatureSummary)
|
|
|
|
|
|
|
|
## QtBase specific configure tests:
|
|
|
|
include(QtBaseConfigureTests)
|
|
|
|
|
2018-11-14 12:37:52 +00:00
|
|
|
## Build System tests:
|
|
|
|
include(QtBaseCMakeTesting)
|
|
|
|
|
2018-10-24 13:20:27 +00:00
|
|
|
## Targets for global features, etc.:
|
|
|
|
include(QtBaseGlobalTargets)
|
|
|
|
|
|
|
|
## Should this Qt be static or dynamically linked?
|
|
|
|
option(BUILD_SHARED_LIBS "Build Qt statically or dynamically" ON)
|
|
|
|
set(QT_BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS})
|
|
|
|
|
|
|
|
## Visit all the directories:
|
|
|
|
add_subdirectory(src)
|
|
|
|
|
|
|
|
if (BUILD_TESTING)
|
|
|
|
add_subdirectory(tests)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
add_subdirectory(qmake)
|
2019-01-17 09:22:59 +00:00
|
|
|
|
|
|
|
option(BUILD_EXAMPLES "Build Qt examples" ON)
|
|
|
|
if (BUILD_EXAMPLES)
|
|
|
|
add_subdirectory(examples)
|
|
|
|
endif()
|
2018-10-24 13:20:27 +00:00
|
|
|
|
|
|
|
## Delayed actions on some of the Qt targets:
|
|
|
|
include(QtPostProcess)
|
|
|
|
|
|
|
|
## Print a feature summary:
|
|
|
|
feature_summary(WHAT PACKAGES_FOUND PACKAGES_NOT_FOUND FATAL_ON_MISSING_REQUIRED_PACKAGES)
|