From c201814ba26c248ad6ed585d94c94b30ca9e9bf1 Mon Sep 17 00:00:00 2001 From: Stanislaw Halik Date: Mon, 28 Nov 2022 19:42:23 +0100 Subject: cmake: fix userconfig variable scope --- CMakeLists.txt | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index ef050d54..793c6dc5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -59,29 +59,26 @@ endfunction() string(TOUPPER "${CMAKE_BUILD_TYPE}" __fm_uppercase_CMAKE_BUILD_TYPE) sets(STRING CMAKE_BUILD_TYPE "${__fm_uppercase_CMAKE_BUILD_TYPE}") -function(fm_run_hook str) +macro(fm_run_hook str) if(COMMAND "${str}") cmake_language(CALL "${str}") endif() -endfunction() +endmacro() -function(fm_load_userconfig) +macro(fm_load_userconfig) if(NOT DEFINED FLOORMAT_USERCONFIG) if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows") - set(_fm_username "$ENV{USERNAME}") - else() - set(_fm_username "$ENV{USER}") + set(ENV{USER} "$ENV{USERNAME}") endif() - sets(FILEPATH FLOORMAT_USERCONFIG "${CMAKE_CURRENT_SOURCE_DIR}/userconfig-${_fm_username}@${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_ID}.cmake") + sets(FILEPATH FLOORMAT_USERCONFIG "${CMAKE_CURRENT_SOURCE_DIR}/userconfig-$ENV{USER}@${CMAKE_SYSTEM_NAME}-${CMAKE_CXX_COMPILER_ID}.cmake") endif() if(EXISTS "${FLOORMAT_USERCONFIG}") - get_filename_component(__fm_userconfig_basename "${FLOORMAT_USERCONFIG}" NAME) - message(STATUS "Loading user config '${__fm_userconfig_basename}'") + message(STATUS "Loading user config '${FLOORMAT_USERCONFIG}'") include("${FLOORMAT_USERCONFIG}" NO_POLICY_SCOPE) else() message(STATUS "Can't find user config '${FLOORMAT_USERCONFIG}'") endif() -endfunction() +endmacro() if(WIN32) if(MSVC) -- cgit v1.2.3