Я мог бы просто сделать следующее: < /p>
Код: Выделить всё
cd
ninja &
cd
ninja &
...
cd
ninja
< /code>
but Существует несколько проблем с этим: < /p>
[*] Количество по умолчанию нитей, используемых Ninja, вероятно, не оптимально, когда выпущен несколько независимых сборок одновременно. /> < /ul>
edit < /strong> Я также мог бы просто сохранить звонки ниндзя < /code> на переднем плане (что я сейчас делаю), но тогда не было бы простого способа оценить, каково текущее прогресс (целый) сборка. />[list]
merge the build.ninja
both builds in one ninja invocation.
[*]somehow launch ninja with multiple target build.ninja scripts.
[/list]
It doesn't look Как этот второй вариант поддерживается Ninja , но первое, кажется, это может быть сделано достаточно легко, используя Subninja /build.ninja . Кто -нибудь делал что -то подобное раньше? Есть ли скрытые ловушки? В качестве альтернативы я мог бы просто выполнить сборки в последовательности (то есть приведенная выше последовательность, но без & s), но это не похоже на правильное решение. Я также нацелен на несколько платформ, поэтому у меня есть несколько компилятора, и Cmake должен работать отдельно для каждой платформы. Поэтому, если я хочу создать релиз и отладка кода для платформ All , мне нужно запустить Ninja несколько раз.
Подробнее здесь: https://stackoverflow.com/questions/317 ... inja-files