qt5base-lts/CMakeLists.txt
Simon Hausmann c965137448 Fix build against sysroots
Toolchain files from sysroots (such as Yocto or Android) typically set
the CMAKE_FIND_ROOT_PATH_MODE_PACKAGE to ONLY to ensure that no external
packages are accidentally found. Similar to how we discover the Qt tools
packages for cross-compiling, we need to temporarily change the mode to
BOTH to locate our build internals.

Change-Id: Ib4374ee4a974379213218b7ec430637857ed02e7
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-05-29 14:21:48 +00:00

58 lines
1.3 KiB
CMake

cmake_minimum_required(VERSION 3.14.0)
project(QtBase
VERSION 5.14.0
DESCRIPTION "Qt Base Libraries"
HOMEPAGE_URL "https://qt.io/"
LANGUAGES CXX C ASM
)
## Add some paths to check for cmake modules:
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"
)
## Find the build internals package.
list(APPEND CMAKE_PREFIX_PATH
"${CMAKE_CURRENT_SOURCE_DIR}/cmake"
)
find_package(QtBuildInternals CMAKE_FIND_ROOT_PATH_BOTH)
qt_build_repo_begin(SKIP_CMAKE_MODULE_PATH_ADDITION)
## QtBase specific configure tests:
include(QtBaseConfigureTests)
## Build System tests:
include(QtBaseCMakeTesting)
## 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})
## Decide whether tools will be built.
qt_check_if_tools_will_be_built()
## Visit all the directories:
add_subdirectory(src)
if (BUILD_TESTING)
add_subdirectory(tests)
endif()
if (QT_WILL_BUILD_TOOLS)
add_subdirectory(qmake)
endif()
option(BUILD_EXAMPLES "Build Qt examples" ON)
if (BUILD_EXAMPLES)
add_subdirectory(examples)
endif()
qt_build_repo_end()