ファイルを生成し、生成されたファイルをコンパイルする CMakeLists.txt を作成しています。グローバル リスト変数にいくつかのファイル パス文字列を追加する関数を作成します。
私のCMakeLists.txt:
set(source_list "nothing")
function(test file_path)
list(APPEND source_list ${file_path})
endfunction(test)
test(abc.txt)
test(def.txt)
message("At last, the source_list is:\"${source_list}\"")
cmake の出力:
At last, the source_list is:"nothing"
関数の代わりにマクロを使用することを誰かが提案しましたが、ローカル変数を使用する必要があるため、マクロの代わりに関数を使用する必要があります。
関数 test() でグローバル変数 source_list を正しく設定するにはどうすればよいですか? シンプルで通常の方法でcmakeを行うことはできませんか?