Мы используем boost в нашем проекте, который мы строим из исходного кода с помощью Command Builder. Но я столкнулся с проблемой на платформах, где мы поддерживаем несколько разных сборок. На Linux-машине мы поддерживаем Linux-версию & для Android.SCons Custom Builder flag
Здесь, если я запустил сборку Android, а затем сборку Linux, которую строитель перестраивает. т. е. поскольку исходные имена целевых файлов & одинаковы (хотя двоичные файлы не являются).
Я хочу, чтобы мой строитель знал, какая версия boost строится. Я хотел бы использовать что-то похожее на переменную CPPDEFINES. Всякий раз, когда значение этой переменной изменяется в программе или библиотеке, цели восстанавливаются.
Возможно ли это? Пока что лучшая идея - использовать параметр пути сканера. Но это не выглядит правильным.
Как создать конкретную переменную строителя, которую SCons должен использовать (например, источники & целей) для запуска сборки. т. е. восстановление за счет изменения MYVARIABLE.