diff options
author | Alexandru Croitor <alexandru.croitor@qt.io> | 2020-10-12 10:55:18 +0200 |
---|---|---|
committer | Alexandru Croitor <alexandru.croitor@qt.io> | 2020-10-12 13:36:01 +0200 |
commit | acf9b3a68b98b806329dd92184e632e049441cec (patch) | |
tree | ab235d74450495ed642a3f1981265c5384226c13 /cmake/QtPublicTargetsHelpers.cmake | |
parent | 5b90b650a414c8088854e7ca84663aaa0f3528af (diff) |
CMake: Split QtBaseGlobalTargets.cmake into multiple files
And wrap the various behaviors into separate functions.
Change-Id: If940351af34e445de050f2b46301de7080b1555b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Diffstat (limited to 'cmake/QtPublicTargetsHelpers.cmake')
-rw-r--r-- | cmake/QtPublicTargetsHelpers.cmake | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/cmake/QtPublicTargetsHelpers.cmake b/cmake/QtPublicTargetsHelpers.cmake new file mode 100644 index 0000000000..8d916535ac --- /dev/null +++ b/cmake/QtPublicTargetsHelpers.cmake @@ -0,0 +1,32 @@ +# Defines the public Qt::Platform target, which is used by both internal Qt builds as well as +# public Qt consuming projects. +function(qt_internal_setup_public_platform_target) + ## QtPlatform Target: + add_library(Platform INTERFACE) + add_library(Qt::Platform ALIAS Platform) + target_include_directories(Platform + INTERFACE + $<BUILD_INTERFACE:${QT_PLATFORM_DEFINITION_DIR_ABSOLUTE}> + $<BUILD_INTERFACE:${PROJECT_BINARY_DIR}/include> + $<INSTALL_INTERFACE:${QT_PLATFORM_DEFINITION_DIR}> + $<INSTALL_INTERFACE:${INSTALL_INCLUDEDIR}> + ) + target_compile_definitions(Platform INTERFACE ${QT_PLATFORM_DEFINITIONS}) + + # When building on android we need to link against the logging library + # in order to satisfy linker dependencies. Both of these libraries are part of + # the NDK. + if (ANDROID) + target_link_libraries(Platform INTERFACE log) + endif() + + qt_enable_msvc_cplusplus_define(Platform INTERFACE) + + # Propagate minimum C++ 17 via Platform to Qt consumers (apps), after the global features + # are computed. + qt_set_language_standards_interface_compile_features(Platform) + + # By default enable utf8 sources for both Qt and Qt consumers. Can be opted out. + qt_enable_utf8_sources(Platform) + +endfunction() |