Я пытаюсь настроить свой проект CMake так, чтобы он мог принимать динамический c исходный список. Но по какой-то причине я получаю пустой список из файловой функции. Итак, я попытался выполнить ту же операцию двумя способами:
[1] stati c list (нежелательный способ)
set(VARIANT_A "src/dir1/*.cpp src/dur2/*.cpp src/dir3/*.cpp")
file(GLOB SRC . ${VARIANT_A})
messages(${SRC})
здесь я получаю файл список, который мне нужен.
[2] Dynami c список (то, что я хочу сделать)
set(VARIANT_B "dir1 dir2 dir3")
string(REPLACE " " ";" DirList ${VARIANT_B})
set(Sources "")
foreach(Dir ${DirList})
set(Sources "src/${Source}/*cpp ${Sources}")
endforeach()
message(${Sources})
file(GLOB SRC . ${Sources})
messages(${SRC})
здесь я почему-то получаю пустой список, несмотря на то, что что message(${Sources})
выводит ту же строку, что и ${VARIANT_A}
.
Так что я делаю не так?