CMake option
使用场景:通过编译脚本(CMakeLists)传递参数(源代码中定义的宏)
例如:test.cpp
#include <iostream>
int main() {
#ifdef TEST
std::cout<<"Hello,Test"<<std::endl;
#endif
std::cout << "Hello, World!" << std::endl;
return 0;
}
CMakeLists.txt 内容如下:
cmake_minimum_required(VERSION 3.13)
project(cmake_option_example_00)
set(CMAKE_CXX_STANDARD 14)
option(TEST "option for TEST" OFF)
if(TEST)
add_definitions(-DTEST)
endif()
add_executable(cmake_option_example_00 main.cpp)
其中:
option 的格式如下:
option(编译开关 “一些简单的描述” NO/OFF)
例如:
option(TEST "option for TEST" OFF)
编译命令:
cmake .
执行结果:
开启宏定义的编译命令:
cmake -DTEST=NO .
执行结果:
参考:
https://blog.csdn.net/qinglongzhan/article/details/80663019 指令解析
https://blog.csdn.net/chouhuan1877/article/details/100808689 指令例程