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.11/variable/CPACK_SET_DESTDIR.html