Я пытаюсь собрать пакеты deb для проекта cmake. Этот проект (foundationdb - но это, вероятно, не относится к этому вопросу) содержит два компонента, и я хочу создать два пакета для него. Тем не менее, это, кажется, не работает хорошо. В частности, кажется, что дополнения к контрольному архиву игнорируются. Это моя текущая конфигурация cpack:
set(CPACK_DEB_COMPONENT_INSTALL ON)
set(CPACK_DEBIAN_ENABLE_COMPONENT_DEPENDS ON)
# clients
set(CPACK_DEBIAN_clients_PACKAGE_CONTROL_STRICT_PERMISSION ON)
set(CPACK_DEBIAN_clients_PACKAGE_SECTION "database")
set(CPACK_DEBIAN_clients_PACKAGE_DEPENDS "adduser, libc6 (>= 2.11)")
set(CPACK_DEBIAN_clients_PACKAGE_HOMEPAGE "https://www.foundationdb.org")
set(CPACK_DEBIAN_clients_PACKAGE_CONTROL_EXTRA
${CMAKE_SOURCE_DIR}/packaging/deb/DEBIAN-foundationdb-clients/postinst)
set(CPACK_DEBIAN_server_PACKAGE_CONTROL_STRICT_PERMISSION ON)
set(CPACK_DEBIAN_server_PACKAGE_SECTION "database")
set(CPACK_DEBIAN_server_PACKAGE_DEPENDS "adduser, libc6 (>= 2.11), python (>= 2.6)")
set(CPACK_DEBIAN_server_PACKAGE_CONTROL_EXTRA
${CMAKE_SOURCE_DIR}/packaging/deb/DEBIAN-foundationdb-server/conffiles
${CMAKE_SOURCE_DIR}/packaging/deb/DEBIAN-foundationdb-server/preinst
${CMAKE_SOURCE_DIR}/packaging/deb/DEBIAN-foundationdb-server/postinst
${CMAKE_SOURCE_DIR}/packaging/deb/DEBIAN-foundationdb-server/prerm
${CMAKE_SOURCE_DIR}/packaging/deb/DEBIAN-foundationdb-server/postrm)
Однако, когда я собираю пакеты с помощью cpack dpkg -I для пакета сервера, я получаю следующий вывод (вывод для клиента выглядит очень похожим, и этот пакет имеет ту же проблему):
new Debian package, version 2.0.
size 376987382 bytes: control archive=1088 bytes.
265 bytes, 9 lines control
1864 bytes, 27 lines md5sums
Package: foundationdb
Version: 6.0.0
Section: devel
Priority: optional
Architecture: amd64
Installed-Size: 1240492
Maintainer: The FoundationDB Community
Description: FoundationDB is a scalable, fault-tolerant, ordered key-value store with full ACID transactions.
Это означает, что контрольные файлы отсутствуют. Это означает, что сценарии не запускаются во время установки и удаления.
Я уже проверил, что переменные установлены правильно в CPackConfig.cmake, и когда я собираю один пакет вместо компонентов, добавление дополнительных компонентов, кажется, работает нормально.
Есть что-то, чего я здесь не хватает? Я использую cmake версии 3.10.2