我的CMmake构建脚本包含"外部本机makefile".Target-all与"外部制作"有依赖关系.这种依赖是由CMake完成的.
CMakeLists.txt
|____( add_custom_target )_____ GNU make file
Run Code Online (Sandbox Code Playgroud)
但Target-clean没有依赖"外部make clean".我不能让依赖清洁 - 外部清洁.我可以创建一个新的自定义目标(例如,newClean),它具有"clean"和"external make clean"的依赖关系.但是"干净"和"新清洁"存在.这可能是混乱.
我该如何解决这个问题?
我能想到三种可能的解决方案:
确保自定义命令中的所有输出文件都列在OUTPUT行中.然后它们将作为清理的一部分被删除(此CLEAN_NO_CUSTOM属性与属性一起提及).
将额外文件添加到ADDITIONAL_MAKE_CLEAN_FILESdirectory属性.
创建一个新的自定义命令,该命令调用普通的清理目标和另一个make文件.例:
add_custom_target(really-clean
COMMAND "$(CMAKE)" --build "${CMAKE_BINARY_DIR}" clean
COMMAND cd "${CMAKE_BINARY_DIR}/otherproject" && make clean
)
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
5656 次 |
| 最近记录: |