Spec-Zone.ru › CMake 3.26

FindSubversion

Извлечение информации из рабочей копии Subversion

Модуль определяет следующие переменные:

Subversion_SVN_EXECUTABLE - path to svn command line client
Subversion_VERSION_SVN - version of svn command line client
Subversion_FOUND - true if the command line client was found
SUBVERSION_FOUND - same as Subversion_FOUND, set for compatibility reasons

Минимальная требуемая версия Subversion может быть указана с использованием стандартного синтаксиса, например find_package(Subversion 1.4).

Если исполняемый файл клиента командной строки найден, определяются две макросы:

Subversion_WC_INFO(<dir> <var-prefix> [IGNORE_SVN_FAILURE])
Subversion_WC_LOG(<dir> <var-prefix>)

Subversion_WC_INFO извлекает информацию о рабочей копии Subversion в заданном расположении. Эта макрос определяет следующие переменные, если выполнение команды Subversion info в <dir> успешно; в противном случае генерируется сообщение об SEND_ERROR.

Новая в версии 3.13: Ошибка может быть проигнорирована, если предоставлен параметр IGNORE_SVN_FAILURE, что приводит к тому, что эти переменные останутся неопределёнными.

<var-prefix>_WC_URL - url of the repository (at <dir>)
<var-prefix>_WC_ROOT - root url of the repository
<var-prefix>_WC_REVISION - current revision
<var-prefix>_WC_LAST_CHANGED_AUTHOR - author of last commit
<var-prefix>_WC_LAST_CHANGED_DATE - date of last commit
<var-prefix>_WC_LAST_CHANGED_REV - revision of last commit
<var-prefix>_WC_INFO - output of command `svn info <dir>'

Subversion_WC_LOG извлекает сообщение журнала базового изменения рабочей копии Subversion в заданном расположении. Эта макрос определяет переменную:

<var-prefix>_LAST_CHANGED_LOG - last log of base revision

Пример использования:

find_package(Subversion)
if(SUBVERSION_FOUND)
  Subversion_WC_INFO(${PROJECT_SOURCE_DIR} Project)
  message("Current revision is ${Project_WC_REVISION}")
  Subversion_WC_LOG(${PROJECT_SOURCE_DIR} Project)
  message("Last changed log is ${Project_LAST_CHANGED_LOG}")
endif()

© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.21/module/FindSubversion.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API