0
我想用cmake中的一个变量MY_VARIABLE填充包含Makefile的所有/ foo子目录的列表。问题是,所有/ foo子目录的深度都与我的CMakeLists所处的深度不同,并且我不希望任何不包含Makefile的子目录。我也只是想要目录的名称。创建只保存某些子目录的cmake变量
例如,如果$(BUILD_DIR)/ A/B /富/包含在生成文件:
$(BUILD_DIR)/ A/B /富/将是很好
$(BUILD_DIR)/ A/B /富/ Makefile文件会很糟糕
摆弄周围,我知道我可以做这样的事情与UNIX Shell:
find $(BUILD_DIR) -name 'Makefile' | grep 'foo/' | sed 's/\/Makefile//'
但我不知道如何调用,在CMake的,或者如果有另一种方式。我试过
execute_process(COMMAND find $(BUILD_DIR) -name 'Makefile' | grep 'foo/' | sed 's/\/Makefile\//'
OUTPUT_VARIABLE MY_VARIABLE
)
只能遇到解析错误。
任何帮助或建议,将不胜感激。
你可以做[字符串操作在CMake中](https://cmake.org/cmake/help/v 3.0/command/string.html),不需要在外部调用grep,sed或任何东西 – brunocodutra