@@ -427,22 +427,13 @@ set func_cmake "function\\\(module\\\)
427427\\s*execute_process\\\(COMMAND mktemp -t moduleinit.cmake.XXXXXXXXXXXX
428428\\s*OUTPUT_VARIABLE tempfile_name
429429\\s*OUTPUT_STRIP_TRAILING_WHITESPACE\\\)
430- \\s*if\\\(\\\${ARGC} EQUAL 1\\\)
431- \\s*execute_process\\\(COMMAND \\\${_mlre} $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\"
432- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
433- \\s*elseif\\\(\\\${ARGC} EQUAL 2\\\)
434- \\s*execute_process\\\(COMMAND \\\${_mlre} $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\" \"\\\${ARGV1}\"
435- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
436- \\s*elseif\\\(\\\${ARGC} EQUAL 3\\\)
437- \\s*execute_process\\\(COMMAND \\\${_mlre} $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\" \"\\\${ARGV1}\" \"\\\${ARGV2}\"
438- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
439- \\s*elseif\\\(\\\${ARGC} EQUAL 4\\\)
440- \\s*execute_process\\\(COMMAND \\\${_mlre} $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\" \"\\\${ARGV1}\" \"\\\${ARGV2}\" \"\\\${ARGV3}\"
441- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
442- \\s*else\\\(\\\)
443- \\s*execute_process\\\(COMMAND \\\${_mlre} $tclshlocre \"$modulecmd_pathre\" cmake \\\${ARGV}
444- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
445- \\s*endif\\\(\\\)
430+ \\s*set\\\(quotedArgs \"COMMAND2 \\\${_mlre} $tclshlocre \\\\\"$modulecmd_pathre\\\\\" cmake \"\\\)
431+ \\s*cmake_parse_arguments\\\(PARSE_ARGV 0 FWD \"\" \"\" \"\"\\\)
432+ \\s*foreach\\\(arg IN LISTS FWD_UNPARSED_ARGUMENTS\\\)
433+ \\s*string\\\(APPEND quotedArgs \" \\\[===\\\[\\\${arg}\\\]===\\\]\"\\\)
434+ \\s*endforeach\\\(\\\)
435+ \\s*string\\\(APPEND quotedArgs \" OUTPUT_FILE \\\${tempfile_name}\"\\\)
436+ \\s*cmake_language\\\(EVAL CODE \"execute_process\\\(\\\${quotedArgs}\\\)\"\\\)
446437\\s*if\\\(EXISTS \\\${tempfile_name}\\\)
447438\\s*include\\\(\\\${tempfile_name}\\\)
448439\\s*file\\\(REMOVE \\\${tempfile_name}\\\)
@@ -619,22 +610,13 @@ set func_cmake "function\\\(module\\\)
619610\\s*execute_process\\\(COMMAND mktemp -t moduleinit.cmake.XXXXXXXXXXXX
620611\\s*OUTPUT_VARIABLE tempfile_name
621612\\s*OUTPUT_STRIP_TRAILING_WHITESPACE\\\)
622- \\s*if\\\(\\\${ARGC} EQUAL 1\\\)
623- \\s*execute_process\\\(COMMAND $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\"
624- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
625- \\s*elseif\\\(\\\${ARGC} EQUAL 2\\\)
626- \\s*execute_process\\\(COMMAND $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\" \"\\\${ARGV1}\"
627- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
628- \\s*elseif\\\(\\\${ARGC} EQUAL 3\\\)
629- \\s*execute_process\\\(COMMAND $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\" \"\\\${ARGV1}\" \"\\\${ARGV2}\"
630- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
631- \\s*elseif\\\(\\\${ARGC} EQUAL 4\\\)
632- \\s*execute_process\\\(COMMAND $tclshlocre \"$modulecmd_pathre\" cmake \"\\\${ARGV0}\" \"\\\${ARGV1}\" \"\\\${ARGV2}\" \"\\\${ARGV3}\"
633- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
634- \\s*else\\\(\\\)
635- \\s*execute_process\\\(COMMAND $tclshlocre \"$modulecmd_pathre\" cmake \\\${ARGV}
636- \\s*OUTPUT_FILE \\\${tempfile_name}\\\)
637- \\s*endif\\\(\\\)
613+ \\s*set\\\(quotedArgs \"COMMAND $tclshlocre \\\\\"$modulecmd_pathre\\\\\" cmake \"\\\)
614+ \\s*cmake_parse_arguments\\\(PARSE_ARGV 0 FWD \"\" \"\" \"\"\\\)
615+ \\s*foreach\\\(arg IN LISTS FWD_UNPARSED_ARGUMENTS\\\)
616+ \\s*string\\\(APPEND quotedArgs \" \\\[===\\\[\\\${arg}\\\]===\\\]\"\\\)
617+ \\s*endforeach\\\(\\\)
618+ \\s*string\\\(APPEND quotedArgs \" OUTPUT_FILE \\\${tempfile_name}\"\\\)
619+ \\s*cmake_language\\\(EVAL CODE \"execute_process\\\(\\\${quotedArgs}\\\)\"\\\)
638620\\s*if\\\(EXISTS \\\${tempfile_name}\\\)
639621\\s*include\\\(\\\${tempfile_name}\\\)
640622\\s*file\\\(REMOVE \\\${tempfile_name}\\\)
0 commit comments