CPACK_SET_DESTDIR
Логический переключатель, позволяющий CPack использовать механизм DESTDIR при создании пакета.
DESTDIR означает директорию назначения. Она часто используется пользователями makefile для установки программного обеспечения в нестандартное местоположение. Это базовый механизм перемещения, который не следует использовать в Windows (см. CMAKE_INSTALL_PREFIX документацию). Обычно вызывается так:
make DESTDIR=/home/john install
что установит данное ПО с использованием префикса установки, например /usr/local с префиксом DESTDIR, что в итоге даст /home/john/usr/local. При подготовке пакета, CPack сначала устанавливает компоненты в локальную (относительно дерева сборки) директорию, используя тот же механизм DESTDIR. Тем не менее, если CPACK_SET_DESTDIR задано, CPack установит DESTDIR перед локальной установкой. Самое заметное отличие заключается в том, что без CPACK_SET_DESTDIR, CPack использует CPACK_PACKAGING_INSTALL_PREFIX в качестве префикса, а при заданном CPACK_SET_DESTDIR, CPack будет использовать CMAKE_INSTALL_PREFIX в качестве префикса.
Ручная установка CPACK_SET_DESTDIR может помочь (или просто быть необходимой), если некоторые правила установки используют абсолютные DESTINATION (см. команду CMake install()). Однако, начиная с CPack/CMake 2.8.3, установщики RPM и DEB пытаются обрабатывать DESTDIR автоматически, поэтому пользователю редко нужно его устанавливать вручную.
© 2000–2019 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.12/variable/CPACK_SET_DESTDIR.html