在edit_cache之后自动重建外部cmake项目

时间:2012-06-04 13:17:00

标签: cmake

我有一个主cmake项目,它有一个PROJECT_INCLUDE_PATH,它是一个缓存变量。我将此变量作为CMAKE_ARGS参数传递给我使用ExternalProject_Add()添加的外部项目。

问题是,当我使用'make edit_cache'更改PROJECT_INCLUDE_PATH的值时,不会重新配置外部项目。

在主项目中更改缓存变量时,有没有办法让外部项目自动重新配置和构建?

2 个答案:

答案 0 :(得分:0)

我总是在修改CMakeCache.txt之后重新运行CMake(不是我经常这样做)。这会更新您的ExternalProject_Add电话。

这里可能更安全的选择是避免make edit_cache,只需使用命令行参数-DPROJECT_INCLUDE_PATH:PATH=<updated value>重新运行CMake。

答案 1 :(得分:0)

我发现我没有传递正确的变量。现在它正常工作。