如何在 CMake 中定义包含匹配模式的文件列表的变量?例如,test_*.cpp
?
以及如何定义包含与模式不匹配的文件列表的变量?例如,test_*.cpp
应该匹配除上面匹配的文件之外的所有文件。
最佳答案
为了匹配特定模式的源文件,您可以使用通配模式。
file(GLOB_RECURSE TEST_FILES
"${PROJECT_SOURCE_DIR}/src/test_*.cpp"
)
我不确定如何排除这些特定文件,可能将它们从所有工作文件列表中排除,就像这样
file(GLOB_RECURSE SRC_FILES
"${PROJECT_SOURCE_DIR}/src/*.cpp"
)
list(REMOVE_ITEM ${SRC_FILES} ${TEST_FILES})
我指的是
list REMOVE_ITEM
来自此来源 http://www.cmake.org/cmake/help/v3.0/command/list.html
关于cmake - 如何在 CMake 中定义与模式匹配的文件列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31755184/