问题
In our C++ project, we have several CMakeLists.txt files (on different directories) listing every single cpp file desired with target_sources()
.
For example:
target_sources(<Project> PUBLIC
foo_1.cpp
foo_2.cpp
foo_3.cpp
)
This is fine in case we have few source files, but it's becoming harder for those directories where we have multiple cpp files to be added.
Is there a simple way to tell target_resources()
to add all files on directory and subdirectories where CMakeList.txt file is?
For example, placing a CMakeLists.txt on a directory with multiple files and sub-directories (with more files) that just adds everything contained there.
回答1:
This is solving my problem:
file(GLOB SRC_FILES
"*.cpp"
)
target_sources(<project> PUBLIC
${SRC_FILES}
)
´´´
来源:https://stackoverflow.com/questions/60540624/cmake-add-all-files-on-current-directory-and-subdirectories-with-target-sources