我有一个 CMake 项目,我希望能够使用 g++、MinGW/g++(每个 4.x)、Clang(3.x)和 MSVC++(>= V8)进行编译。
我想要一个带有编译器参数或命令行的预编译器符号。
这对于查看是否启用了优化以及在命令行中启用了哪些开关很有用。
例如,用编译的程序g++ -O3 -DNDEBUG -g0
应该知道标志是"-O3 -DNDEBUG -g0"
. 在编写手动 Makefile 时,我可以简单地将标志收集到一个变量中,然后另外将其传递给编译器,生成一个命令行g++ -O3 -DNDEBUG -g0 -DCOMPILER_ARGS="-O3 -DNDEBUG -g0"
。
如何使用 CMake 实现这一目标?