我的项目中有类似的东西:
add_custom_command(OUTPUT somefile)
add_custom_target(tgt ALL DEPENDS somefile)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/somefile DESTINATION somedir)
这可行,但我的命令是在make
期间运行的,因为add_custom_target()中有ALL
个关键字。我想要的是让CMake仅在发出make install
时运行此命令,而不是在构建期间运行。
如果删除ALL关键字,默认情况下不会构建整个目标,因此不会生成某个文件,make install
会失败。