Я перехожу от простого make к CMake в качестве системы сборки для проекта. Предполагается, что проект будет работать на разных встроенных системах Linux, каждый со своей собственной инструментальной цепочкой, а также имеет довольно много разных параметров конфигурации для каждой цели (например, различные определения препроцессора и некоторые источники включены/исключены). Он также должен работать на настольном Linux, а некоторые графические модули должны работать в Windows.CMake несколько инструментальных цепей и целевых платформ
Теперь у CMake есть опция CMAKE_TOOLCHAIN_FILE
, которая может использоваться, чтобы откорректировать спецификацию инструментальной цепочки и компилятора каждой встроенной платформы (настольный Linux и Windows им не нужен).
Я думаю, что положить материал, отличный от того, который указан на CMake Wiki внутри файла toolchain, не является хорошей идеей.
Я думаю о создании некоторых переменных CMake, которые могут быть отредактированы инструментом cmake gui, а затем просто используя if/elseif
, чтобы определить правильную настройку.
У кого-нибудь есть лучшее или более элегантное предложение?