summaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
authorAlexey Edelev <alexey.edelev@qt.io>2024-04-09 14:36:38 +0200
committerAlexey Edelev <alexey.edelev@qt.io>2024-04-17 20:41:35 +0200
commit0075672da31b96f07279e173f35dd5a426575636 (patch)
tree9d421ebffb856371b1364be471068b804d835295 /cmake
parenta868c6947a50cd89416cb5fd996fc4bd19ae71b4 (diff)
Remove the headersclean feature
'headersclean' shoudn't be a feature. The respective flag should behave like command-line switch that affects the only repo that it was passed for. This also avoids propagating of the headersclean feature between the different repos when qtbase was built with the headerclean enabled. Fixes: QTBUG-121722 Change-Id: I304cbc980b06030513c015a2016678a6a0965fed Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/QtHeadersClean.cmake4
-rw-r--r--cmake/QtModuleHelpers.cmake2
-rw-r--r--cmake/QtProcessConfigureArgs.cmake7
3 files changed, 12 insertions, 1 deletions
diff --git a/cmake/QtHeadersClean.cmake b/cmake/QtHeadersClean.cmake
index d56b0305ae..f47ac1754c 100644
--- a/cmake/QtHeadersClean.cmake
+++ b/cmake/QtHeadersClean.cmake
@@ -5,6 +5,10 @@
# ${module_headers} with a custom set of defines. This makes sure our public headers
# are self-contained, and also compile with more strict compiler options.
function(qt_internal_add_headersclean_target module_target module_headers)
+ if(INPUT_headersclean AND WASM)
+ message(FATAL_ERROR "The headersclean targets are not supported on WASM platform.")
+ endif()
+
get_target_property(no_headersclean_check ${module_target} _qt_no_headersclean_check)
if(no_headersclean_check)
return()
diff --git a/cmake/QtModuleHelpers.cmake b/cmake/QtModuleHelpers.cmake
index 532167a149..ba03173073 100644
--- a/cmake/QtModuleHelpers.cmake
+++ b/cmake/QtModuleHelpers.cmake
@@ -486,7 +486,7 @@ function(qt_internal_add_module target)
endif()
if(arg_NO_HEADERSCLEAN_CHECK OR arg_NO_MODULE_HEADERS OR arg_NO_SYNC_QT
- OR NOT QT_FEATURE_headersclean)
+ OR NOT INPUT_headersclean)
set_target_properties("${target}" PROPERTIES _qt_no_headersclean_check ON)
endif()
diff --git a/cmake/QtProcessConfigureArgs.cmake b/cmake/QtProcessConfigureArgs.cmake
index 55980f275b..53235ee9d9 100644
--- a/cmake/QtProcessConfigureArgs.cmake
+++ b/cmake/QtProcessConfigureArgs.cmake
@@ -302,6 +302,11 @@ function(qt_commandline_option name)
endif()
endfunction()
+# Add the common command line options for every qt repo.
+macro(qt_add_common_commandline_options)
+ qt_commandline_option(headersclean TYPE boolean)
+endmacro()
+
function(qt_commandline_prefix arg var)
set(idx ${commandline_nr_of_prefixes})
set(commandline_prefix_${idx} "${arg}" "${var}" PARENT_SCOPE)
@@ -318,6 +323,8 @@ set(QT_CONFIGURE_RUNNING ON)
# Load qt_cmdline.cmake files
####################################################################################################
+qt_add_common_commandline_options()
+
while(commandline_files)
list(POP_FRONT commandline_files commandline_file)
get_filename_component(commandline_file_directory "${commandline_file}" DIRECTORY)