gpt4 book ai didi

cmake - 为 CMake 中的子目录生成 'clean' 目标

转载 作者:行者123 更新时间:2023-12-02 17:51:10 25 4
gpt4 key购买 nike

我想为子目录生成一个干净目标。

我的项目结构是这样的:

app/
A
B

lib/
A
B
C

有时我只想在 app/A 上运行 clean 而不想清理库。

是否可以告诉 CMake 为每个目录生成一个 clean 目标?

或者像 app-clean 这样的自定义目标会在每个应用程序子目录上调用 clean?

最佳答案

您只需 cd 到 ${CMAKE_BINARY_DIR}/app/A 并在那里运行 make clean

当然,您可以添加_custom_target(app-A-clean ...) 来为您执行此操作。

macro(add_clean_target dir)
add_custom_target(clean-${dir} COMMAND ${CMAKE_MAKE_PROGRAM} clean WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${dir})
endmacro(add_clean_target)

现在你可以这样使用它了:

add_clean_target(app-A)

关于cmake - 为 CMake 中的子目录生成 'clean' 目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8132628/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com