使用以下CMakeLists.txt构建脚本:
include( ExternalProject )
ExternalProject_Add( framework SOURCE_DIR ${framework_SOURCE}
PREFIX framework_build
INSTALL_DIR ${framework_DISTRIBUTION} )
...
add_library( ${PROJECT_NAME} SHARED ${BUILD_MANIFEST} )
add_dependencies( ${PROJECT_NAME} framework )
当我尝试执行并行构建 ( make -j5
) 时,它偶尔会由于框架中的构建工件不存在而失败。add_dependencies
没有遵守由 固定的构建顺序。
我是否误解了有关add_dependencies的文档?
输出自cmake --graphviz=graph.dot