通过CPack自动启动创建Deb软件包

时间:2018-11-28 13:05:09

标签: bash cmake systemd cpack

我正在构建应该作为服务运行的Debian软件包。另外,我有一个描述我的服务的文件。

install(TARGETS "${SERVICE_NAME}"
        DESTINATION "bin"
        COMPONENT "${SERVICE_NAME}")

install(FILES "${SERVICE_NAME}.service"
        DESTINATION "/lib/systemd/system/"
        COMPONENT "${SERVICE_NAME}")

cpack_add_component_group("${SERVICE_NAME}")

cpack_add_component("${SERVICE_NAME}"
                    DISPLAY_NAME "${SERVICE_NAME}"
                    DESCRIPTION "${DESCRIPTION}"
                    GROUP "${SERVICE_NAME}"
                    INSTALL_TYPES Full)

我要在安装软件包后运行:

systemctl enable wb-rules && service wb-rules start

作为另一种选择,也许CPack可以提供现成的解决方案来安装system.d服务?

1 个答案:

答案 0 :(得分:1)

您可以将add_custom_command()POST_BUILD参数一起使用。像这样:

add_custom_command(TARGET ${MY_TARGET} POST_BUILD COMMAND service my-service start)