CMP0049

不要在目標原始碼條目中展開變數。

CMake 2.8.12 及更早版本在評估原始碼檔案名稱時,會執行額外的變數展開層。

set(a_source foo.c)
add_executable(foo \${a_source})

這是未記載的行為。

此政策的 OLD 行為是在處理目標原始碼時展開此類變數。此政策的 NEW 行為是如果需要展開此類變數,則發出錯誤。

此政策是在 CMake 3.0 版中引入的。可由 cmake_policy()cmake_minimum_required() 設定。如果未設定,CMake 會發出警告,並使用 OLD 行為。

注意

政策的 OLD 行為 依定義為已棄用,並可能在 CMake 的未來版本中移除。