From f58342ae21fe4a04edddd98f255d8b0c3d66ae3a Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Tue, 12 Nov 2024 21:37:07 +0100 Subject: [PATCH] cmake: improve `curl_dumpvars()` and move to `Utilities.cmake` Also: - dump variable types. - show which variables are marked as advanced. - use `IN ITEMS`. Closes #15562 --- CMake/Utilities.cmake | 18 ++++++++++++++++++ CMakeLists.txt | 9 --------- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/CMake/Utilities.cmake b/CMake/Utilities.cmake index 0ecfa31293..08e679090b 100644 --- a/CMake/Utilities.cmake +++ b/CMake/Utilities.cmake @@ -33,3 +33,21 @@ function(count_true _output_count_var) endforeach() set(${_output_count_var} ${lst_len} PARENT_SCOPE) endfunction() + +# Dump all defined variables with their values +function(curl_dumpvars) + message("::group::CMake Variable Dump") + get_cmake_property(_vars VARIABLES) + foreach(_var IN ITEMS ${_vars}) + get_property(_var_type CACHE ${_var} PROPERTY TYPE) + get_property(_var_advanced CACHE ${_var} PROPERTY ADVANCED) + if(_var_type) + set(_var_type ":${_var_type}") + endif() + if(_var_advanced) + set(_var_advanced " [adv]") + endif() + message("${_var}${_var_type}${_var_advanced} = ${${_var}}") + endforeach() + message("::endgroup::") +endfunction() diff --git a/CMakeLists.txt b/CMakeLists.txt index 7b1797cad0..eb3108766d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -66,15 +66,6 @@ if(NOT "$ENV{CURL_BUILDINFO}$ENV{CURL_CI}$ENV{CI}" STREQUAL "") endforeach() endif() -function(curl_dumpvars) # Dump all defined variables with their values - message("::group::CMake Variable Dump") - get_cmake_property(_vars VARIABLES) - foreach(_var ${_vars}) - message("${_var} = ${${_var}}") - endforeach() - message("::endgroup::") -endfunction() - set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake;${CMAKE_MODULE_PATH}") include(Utilities) include(Macros)