相关疑难解决方法(0)

是否可以将安装后命令添加到cmake生成的顶级Makefile中?

cmake为安装规则生成如下内容:

# Special rule for the target install
install: preinstall
        @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
        /usr/local/bin/cmake -P cmake_install.cmake
.PHONY : install
Run Code Online (Sandbox Code Playgroud)

我想要做的是在调用cmake_install.cmake后执行一些自定义命令,因此它看起来像:

# Special rule for the target install
install: preinstall
        @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
        /usr/local/bin/cmake -P cmake_install.cmake
        post_install_command_1
        ...
        post_install_command_n
.PHONY : install
Run Code Online (Sandbox Code Playgroud)

对于我们编写的内容(6-10个要更新的宏),我可以使用"add_custom_command(TARGET ... POST_BUILD ...)"执行我想要的操作.但是,有很多第三方的东西安装完毕,我真的不想为所有这些东西添加POST_BUILD自定义命令(目前有19个项目有更多的东西,很难确定需要处理什么建成后而不是安装后).我认为如果自定义命令仅在一个地方使用(即作为安装处理的最后一部分)并且我知道他们将完成所有必要的操作,那么维护会更容易.

是否有可能让cmake将命令添加到顶级Makefile的安装规则中?

cmake

14
推荐指数
2
解决办法
1万
查看次数

标签 统计

cmake ×1