summaryrefslogtreecommitdiffstats
path: root/cmake/QtFlagHandlingHelpers.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/QtFlagHandlingHelpers.cmake')
-rw-r--r--cmake/QtFlagHandlingHelpers.cmake11
1 files changed, 10 insertions, 1 deletions
diff --git a/cmake/QtFlagHandlingHelpers.cmake b/cmake/QtFlagHandlingHelpers.cmake
index 51491da46e..a18d3ac89a 100644
--- a/cmake/QtFlagHandlingHelpers.cmake
+++ b/cmake/QtFlagHandlingHelpers.cmake
@@ -593,13 +593,22 @@ function(qt_internal_add_optimize_full_flags)
""
${ARGN})
+ # Assume that FEATURE_optimize_full has higher priority. But if FEATURE_optimize_full is OFF,
+ # flags are set by FEATURE_optimize_size should remain unchanged.
+ if(QT_FEATURE_optimize_size AND NOT QT_FEATURE_optimize_full)
+ return()
+ endif()
+
set(args "")
if(arg_IN_CACHE)
list(APPEND args IN_CACHE)
endif()
qt_internal_get_enabled_languages_for_flag_manipulation(enabled_languages)
- set(configs RELEASE RELWITHDEBINFO MINSIZEREL)
+ set(configs RELEASE RELWITHDEBINFO)
+ if(QT_FEATURE_optimize_full) # Assume that FEATURE_optimize_full has higher priority.
+ list(APPEND configs MINSIZEREL)
+ endif()
qt_internal_remove_known_optimization_flags(${args} CONFIGS ${configs})