Spec-Zone.ru › CMake 3.9

GNUInstallDirs

Определение стандартных каталогов установки GNU

Предоставляет переменные каталогов установки, определённые стандартами программирования GNU.

Переменные результатов

Включение этого модуля определяет следующие переменные:

CMAKE_INSTALL_<dir>

Путь назначения для файлов заданного типа. Это значение может быть передано в опции DESTINATION команд install() для соответствующего типа файла.

CMAKE_INSTALL_FULL_<dir>

Абсолютный путь, сгенерированный из соответствующего значения CMAKE_INSTALL_<dir>. Если значение не является уже абсолютным путём, абсолютный путь строится, обычно, путём добавления значения переменной CMAKE_INSTALL_PREFIX. Однако, существуют некоторые исключения, как описано ниже.

где <dir> — это:

BINDIR
исполняемые файлы пользователя (bin)
SBINDIR
исполняемые файлы системного администратора (sbin)
LIBEXECDIR
исполняемые файлы программы (libexec)
SYSCONFDIR
только для чтения данные для одного компьютера (etc)
SHAREDSTATEDIR
изменяемые данные, независимые от архитектуры (com)
LOCALSTATEDIR
изменяемые данные для одного компьютера (var)
RUNSTATEDIR
данные переменных во время выполнения (LOCALSTATEDIR/run)
LIBDIR
библиотеки объектного кода (lib или lib64 или lib/<multiarch-tuple> в Debian)
INCLUDEDIR
заголовочные файлы C (include)
OLDINCLUDEDIR
заголовочные файлы C для не-gcc (/usr/include)
DATAROOTDIR
корневой каталог данных для чтения, независимых от архитектуры (share)
DATADIR
данные для чтения, независимые от архитектуры (DATAROOTDIR)
INFODIR
документация info (DATAROOTDIR/info)
LOCALEDIR
данные, зависящие от локали (DATAROOTDIR/locale)
MANDIR
документация man (DATAROOTDIR/man)
DOCDIR
корень документации (DATAROOTDIR/doc/PROJECT_NAME)

Если включающий модуль не определяет значение, будет использовано показанное выше значение по умолчанию, и значение будет отображено в кэше для редактирования пользователем.

Исключения

Следующие значения CMAKE_INSTALL_PREFIX являются специальными:

/

Для <dir> значений, отличных от SYSCONFDIR, LOCALSTATEDIR и RUNSTATEDIR, значение CMAKE_INSTALL_<dir> предваряется значением usr/, если оно не указано как абсолютный путь. Например, значение INCLUDEDIR include становится usr/include. Это необходимо для стандартов программирования GNU, которые гласят:

При построении полной системы GNU префикс будет пустым, а /usr будет символической ссылкой на /.

/usr

Для <dir>, равного SYSCONFDIR, RUNSTATEDIR, значение CMAKE_INSTALL_FULL_<dir> вычисляется путём добавления просто / к значению CMAKE_INSTALL_<dir>, если оно не указано как абсолютный путь. Например, значение SYSCONFDIR etc становится /etc. Это требуется стандартами программирования GNU.

/opt/...

Для <dir>, равного SYSCONFDIR, LOCALSTATEDIR или RUNSTATEDIR, значение CMAKE_INSTALL_FULL_<dir> вычисляется путём дополнения префикса к значению CMAKE_INSTALL_<dir>, если оно не указано как абсолютный путь. Например, значение SYSCONFDIR etc становится /etc/opt/.... Это определяется стандартом структуры файловой системы.

Макросы

GNUInstallDirs_get_absolute_install_dir
GNUInstallDirs_get_absolute_install_dir(absvar var)

Устанавливает заданную переменную absvar в абсолютный путь, содержащийся в переменной var. Это позволяет вычислить абсолютный путь, учитывая все исключения, описанные выше. Хотя этот макрос используется для вычисления различных переменных CMAKE_INSTALL_FULL_<dir>, он публично доступен, чтобы пользователи, создающие дополнительные переменные пути, также могли вычислять абсолютные пути при необходимости, используя ту же логику.

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

Spec-Zone.ru

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