【发布时间】:2012-06-26 09:23:48
【问题描述】:
我有一个 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 实现这一点?
【问题讨论】:
标签: compiler-construction cmake c-preprocessor