cmake子项目依赖项

时间:2016-04-20 15:15:28

标签: c++ cmake

我有以下文件结构:

project
    folder1
        generator
        ...
    folder2
        sub
        ...

project中有一个CMakeLists.txt文件:

add_subdirectory(folder1)
add_subdirectory(folder2)

子项目generatorrequired.cpp创建sub。 在sub中,我只在required.cpp生成后才设法构建:

add_custom_command(OUTPUT required.cpp
        PRE_BUILD
        COMMAND generate...
        COMMENT "Generating..."
)

add_custom_target(run ALL DEPENDS required.cpp)

在尝试构建generator之前,如何确保构建sub?或folder1之前构建folder2

1 个答案:

答案 0 :(得分:1)

假设generator是目标,那么使目标run取决于generator使用

add_dependencies(run generator)

有关详细信息,请参阅add_dependencies的cmake文档。