Ответ 1
Вам нужна команда execute_process
.
В вашем случае в Windows:
execute_process(COMMAND CMD /c echo bar OUTPUT_VARIABLE FOO)
или на Linux, просто:
execute_process(COMMAND echo bar OUTPUT_VARIABLE FOO)
В этом конкретном случае CMake предлагает кросс-платформенное решение. Сам CMake может использоваться для запуска команд, которые могут использоваться во всех системах, один из которых - echo
. Для этого CMake следует передать командной строке arg -E
. Для получения полного списка таких команд запустите cmake -E help
Внутри CMake script исполняемый файл CMake называется ${CMAKE_COMMAND}
, поэтому script должен выполнить:
execute_process(COMMAND ${CMAKE_COMMAND} -E echo bar OUTPUT_VARIABLE FOO)