【发布时间】:2011-04-08 07:53:32
【问题描述】:
我正在从普通 make 更改为 CMake 作为项目的构建系统。该项目应该在不同的嵌入式 Linux 系统上运行,每个系统都有自己的工具链,并且每个目标也有很多不同的配置选项(例如不同的预处理器定义和包含/排除的一些源)。它也应该可以在桌面 Linux 上运行,并且一些 GUI 模块必须在 Windows 上运行。
现在,CMake 有其 CMAKE_TOOLCHAIN_FILE 选项,可用于分解每个嵌入式平台的工具链和编译器特定内容(桌面 Linux 和 Windows 应该不需要)。
我想把CMake Wiki 中列出的东西以外的东西放在工具链文件中并不是一个好主意。
我正在考虑创建一些可以通过 cmake gui 工具编辑的 CMake 变量,然后简单地使用 if/elseif 来确定正确的设置。
有没有人有更好或更优雅的建议?
【问题讨论】:
标签: c cross-platform makefile cmake multiplatform