我们的库使用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