多个目标上的ADDITIONAL_MAKE_CLEAN_FILES

时间:2016-11-09 06:58:28

标签: cmake

我觉得我偶然发现了一个CMAKE错误,但我无法在网上找到足够的信息进行确认。在make clean后,我想删除两个文件夹:foobar。我的问题是我只能删除一个。

这将删除foo

SET_DIRECTORIES_PROPERTIES( PROPERTIES
    ADDITIONAL_MAKE_CLEAN_FILES "${CMAKE_CURRENT_SOURCE_DIR}/foo"
)

我希望这会删除foobar,但它只会删除bar

SET_DIRECTORIES_PROPERTIES( PROPERTIES
    ADDITIONAL_MAKE_CLEAN_FILES "${CMAKE_CURRENT_SOURCE_DIR}/foo"
    ADDITIONAL_MAKE_CLEAN_FILES "${CMAKE_CURRENT_SOURCE_DIR}/bar"
)

我也尝试了这个,但得到了与上面相同的结果:

SET_DIRECTORIES_PROPERTIES( PROPERTIES
    ADDITIONAL_MAKE_CLEAN_FILES "${CMAKE_CURRENT_SOURCE_DIR}/foo"
)
SET_DIRECTORIES_PROPERTIES( PROPERTIES
    ADDITIONAL_MAKE_CLEAN_FILES "${CMAKE_CURRENT_SOURCE_DIR}/bar"
)

有人可以告诉我我做错了吗?

1 个答案:

答案 0 :(得分:2)

使用set_property代替set_directory_properties

set_property(DIRECTORY PROPERTY ADDITIONAL_MAKE_CLEAN_FILES
   "${CMAKE_CURRENT_SOURCE_DIR}/foo"
   "${CMAKE_CURRENT_SOURCE_DIR}/bar")