INTERFACE_COMPILE_DEFINITIONS¶
程式庫的公開編譯定義需求列表。
目標可以填充此屬性,以發布針對目標標頭進行編譯所需的編譯定義。target_compile_definitions()
命令會使用提供給 PUBLIC
和 INTERFACE
關鍵字的值來填充此屬性。專案也可以直接取得和設定此屬性。
當使用 target_link_libraries()
指定目標依賴項時,CMake 將從所有目標依賴項中讀取此屬性,以確定消費者的建置屬性。
INTERFACE_COMPILE_DEFINITIONS
的內容可以使用帶有語法 $<...>
的「產生器表達式」。 有關可用表達式,請參閱 cmake-generator-expressions(7)
手冊。有關定義建置系統屬性的更多信息,請參閱 cmake-buildsystem(7)
手冊。