我們的庫使用Cmake,而整體系統使用Make文件進行構建。端口一個變量形式使Cmake
我想將生成文件中定義的變量(預處理器宏)的值移植到Cmakefile中,並將其用作庫的源代碼中的預處理器marco。
如何做到這一點?後來在你的CMake文件
cmake -DMY_VAR=ON <path_to_CMakeLists.txt>
然後:
我們的庫使用Cmake,而整體系統使用Make文件進行構建。端口一個變量形式使Cmake
我想將生成文件中定義的變量(預處理器宏)的值移植到Cmakefile中,並將其用作庫的源代碼中的預處理器marco。
如何做到這一點?後來在你的CMake文件
cmake -DMY_VAR=ON <path_to_CMakeLists.txt>
然後:
您可以在CMake的調用定義變量,像這樣
if (MY_VAR)
add_definitions(-DENABLE_MY_VAR)
endif()
在你的代碼
最後:
#ifdef ENABLE_MY_VAR
// Your code
#endif
你能詳細說明一下嗎? cmake -DMY_VAR = ON
從您的問題中不清楚CMake是如何觸發的。當您在全球項目中運行make時啓動它嗎? –
是的...全球項目是使用make構建的......這也會觸發cmake將我們的庫構建爲共享庫。 – user1816574
你必須告訴我們更多關於CMake如何集成到Makefile中的信息。 – Angew