summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2020-11-23 18:27:59 +0100
committerAlexandru Croitor <alexandru.croitor@qt.io>2020-11-24 16:45:06 +0000
commit6ca66de9120537134b63d42de6c53c6e5834e8f3 (patch)
tree9831c43f55de8df979095228e315566b1d646124
parent143d619ba33c693fbbf9fbc3587921a44ae87435 (diff)
CMake: Use lower cased property name for entrypoint library opt-out
We need this to enable headersclean functionality to work with CMake <=3.18 which is our minimum required CMake version to build Qt (it's not a problem for 3.19). Otherwise we hit a configuration error while trying to evaluate generator expressions for INTERFACE only libraries for which we need to do the headersclean check (e.g. UiPlugin in qttools). Sample error message: INTERFACE_LIBRARY targets may only have whitelisted properties. The property "QT_NO_ENTRYPOINT" is not allowed. More info: https://gitlab.kitware.com/cmake/cmake/-/issues/21484 Naming it lower case avoids the issue, but is inconsistent with all our other public property names. Furthermore if we do this change, it should probably go to 6.0.0 due to it being a property that a user is meant to set in their project. Task-number: QTBUG-82615 Pick-to: 6.0 dev Change-Id: I1f1439f1e5cbc816010eba7301605a8f60b88fd1 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
-rw-r--r--src/corelib/CMakeLists.txt4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/corelib/CMakeLists.txt b/src/corelib/CMakeLists.txt
index 7a33dd430e..db936ce628 100644
--- a/src/corelib/CMakeLists.txt
+++ b/src/corelib/CMakeLists.txt
@@ -1294,14 +1294,14 @@ endif()
qt_internal_apply_gc_binaries_conditional(Core PUBLIC)
# Add entry-point on platforms that need it. A project can opt-out of using the
-# entrypoint by setting the QT_NO_ENTRYPOINT property to TRUE on a target.
+# entrypoint by setting the qt_no_entrypoint property to TRUE on a target.
if(WIN32 OR CMAKE_SYSTEM_NAME STREQUAL "iOS")
# find_package(Qt6Core) should call find_package(Qt6EntryPoint) so that we can
# link against EntryPoint. Normally this is handled automatically for deps, but
# for some reason it doesn't work for the EntryPoint, so we need to add it manually.
qt_record_extra_qt_package_dependency(Core EntryPoint "${PROJECT_VERSION}")
- set(entrypoint_conditions "$<NOT:$<BOOL:$<TARGET_PROPERTY:QT_NO_ENTRYPOINT>>>")
+ set(entrypoint_conditions "$<NOT:$<BOOL:$<TARGET_PROPERTY:qt_no_entrypoint>>>")
list(APPEND entrypoint_conditions "$<STREQUAL:$<TARGET_PROPERTY:TYPE>,EXECUTABLE>")
if(WIN32)