阅读量:0
在C++中,使用CMake进行条件编译可以通过if()
函数来实现。以下是一个简单的示例,展示了如何在CMakeLists.txt文件中根据不同的条件选择性地编译代码:
cmake_minimum_required(VERSION 3.0) project(MyProject) # 设置一个变量 set(MY_FEATURE "ON") # 根据变量的值选择性地编译代码 if(MY_FEATURE STREQUAL "ON") message(STATUS "Enabling MY_FEATURE") # 添加支持MY_FEATURE的源文件 add_executable(MyProject main.cpp feature.cpp) else() message(STATUS "Disabling MY_FEATURE") # 添加不包含MY_FEATURE的源文件 add_executable(MyProject main.cpp) endif()
在这个示例中,我们首先设置了一个名为MY_FEATURE
的变量,并将其值设置为"ON"
。然后,我们使用if()
函数检查MY_FEATURE
的值。如果它的值等于"ON"
,则添加支持该功能的源文件(在本例中为feature.cpp
);否则,只添加不包含该功能的源文件(在本例中仅为main.cpp
)。
你可以根据需要修改这个示例,以适应你的项目中的条件编译需求。