Merge topic 'ExternalProject-env-mod' 8afe5f227c ExternalProject: Fix environment modification ops named with underscores Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !11442
diff --git a/Modules/ExternalProject.cmake b/Modules/ExternalProject.cmake index bae238d..fefcd27 100644 --- a/Modules/ExternalProject.cmake +++ b/Modules/ExternalProject.cmake
@@ -2285,7 +2285,7 @@ if(environment) set(env_args "") foreach(env_mod IN LISTS environment) - if(env_mod MATCHES [[^([^=:]+)=([a-z]+):(.*)$]]) + if(env_mod MATCHES [[^([^=:]+)=([a-z_]+):(.*)$]]) set(_value "${CMAKE_MATCH_3}") # Replace the separator only in the value in case it is `:`. if(sep)
diff --git a/Tests/RunCMake/ExternalProject/EnvVars.cmake b/Tests/RunCMake/ExternalProject/EnvVars.cmake index 7fc3cbc..f34c3e4 100644 --- a/Tests/RunCMake/ExternalProject/EnvVars.cmake +++ b/Tests/RunCMake/ExternalProject/EnvVars.cmake
@@ -67,7 +67,7 @@ CMAKE_ARGS -DVARIABLE=ConfigVar CONFIGURE_ENVIRONMENT_MODIFICATION - ConfigVar=set:config + ConfigVar=string_append:fig # RunCMakeTest.cmake sets to "con" ListVar=set:7,8,9 ListSeparator=set:, BUILD_ENVIRONMENT_MODIFICATION
diff --git a/Tests/RunCMake/ExternalProject/RunCMakeTest.cmake b/Tests/RunCMake/ExternalProject/RunCMakeTest.cmake index 6186292..3848d77 100644 --- a/Tests/RunCMake/ExternalProject/RunCMakeTest.cmake +++ b/Tests/RunCMake/ExternalProject/RunCMakeTest.cmake
@@ -261,6 +261,8 @@ endif() set(RunCMake_TEST_OUTPUT_MERGE 1) +set(ENV{ConfigVar} "con") __ep_test_with_build(EnvVars) +unset(ENV{ConfigVar}) unset(RunCMake_TEST_OUTPUT_MERGE) run_cmake(InvalidEnvModification)