CMake: чтение номера сборки из файла для установки переменной
Я работаю над проектом, в котором номер сборки хранится в файле с именем BuildNumber.txt в корне проекта. Я хотел бы, чтобы CMake прочитал число из этого файла и установил переменную, которая может быть применена к заголовочному файлу.
setup.h.in
#define build_number "@BUILD_NUMBER@";
Используя файл configure_file, можно заменить заполнители в файле.in, как указано выше, на переменную CMake. Можно ли заставить CMake прочитать число из BuildNumber.txt в переменную?
2 ответа
Вы можете использовать команду CMake file (STRINGS ...)
для этой цели. Предполагая, что номер сборки находится в файле BuildNumber.txt
в одной строке следующая команда будет читать его в переменную CMake BUILD_NUMBER
:
file (STRINGS "BuildNumber.txt" BUILD_NUMBER)
Также см. Ссылку на команду файла.
Я не знаю вашу ОС, но я предполагаю, что вы используете Windows или Linux.
if (UNIX)
set (show_contents_prog cat)
elseif (WIN32)
set (show_contents_prog type)
endif (WIN32)
execute_process(COMMAND ${show_contents_prog} input.txt OUTPUT_VARIABLE file_contents)
Я думаю, что это может помочь.