У меня есть CMakeLists.txt
, который указывает проект без жестко запрограммированного номера версии:
project (project_name C CXX)
Затем немного дальше включает скрипт и использует функцию для выяснения номер версии на основе git describe
:
include(GetGitRevisionDescription)
git_describe(GIT_VERSION --tags)
string(REGEX REPLACE "-([0-9]*).*" ".\\1" VERSION "${GIT_VERSION}")
Прекрасный результат для сборки проекта из репозитория git с использованием cmake
, коммиты с тегами имеют правильную версию, HEAD создает после этого дополнительное поле (версия настройки) со счетчиком для коммитов с момента последнего тега.
Проблема в том, что при использовании CPack для объединения исходного архива, у CMakeLists.txt
в архиве больше нет способа определить свой собственный версия (в каталог .git
и все такое).
Как изменить сгенерированный * tar-архив CMakeLists.txt
на жестко закодированный номер версии?