Как стать автором
Обновить

Комментарии 9

Спасибо. А насколько серьезно вы разбирались с WAF — не сталкивались ли случайно с задачей изменения дерева целей при выполнении сборки?

В SCons у меня была проблема — нужно было дополнять/перестраивать дерево зависимостей в процессе сборки (т.е. уже после этапа сканирования файлов и построения исходного дерева зависимостей). Там с этим было плохо, и мне пришлось сгородить хак с самостоятельным отслеживанием дополнительных зависимостей.

Вот, интересно, не лучше ли с этим у WAF.

На практике с описанной вами проблемой не сталкивался, но подозреваю, что в Waf это вполне достижимо. Взгляните на параграф 9.3 в е-книге. Сканнер в Waf срабатывает, насколько я понимаю, ближе к моменту непосредственного вызова инструмента.

Это то, что касается автоматического скана зависимостей. А просто поменять список исходников/целей — это в Waf обыденость и используется повсеместно. Просто заводим свой @feature, понимаем в какой момент его дёргать и обозначаем это декораторами @after, @before. Фича будет дёргаться в обозначенный момент с аргументом «генератор тасков». С ним то уже можно делать что угодно.
Как насчет cmake?
До CMake руки пока не добрались. Хотел попробовать, но упёрся в практически полное отсутствие вводных статей. Может не там искал. Если таковые есть буду признателен за ссылочки.
НЛО прилетело и опубликовало эту надпись здесь
Если честно, в голову не приходило поискать информацию на русском. Большое спасибо!
НЛО прилетело и опубликовало эту надпись здесь
Прошло много лет, вы бы не могли сказать к чему вы дошли сейчас? Покушаюсь на Waf пока с целью замены bash-скриптов. Специфика проекта такова, что С++ код уже собирается CMake, а вот Python пакеты, которые мы пакуем Nuitka и кладём собранные С++ библиотеки рядом, собираются bash-скриптами. bash-скрипты справляются на отлично (они хорошо написаны и достаточно небольшие и читабельные) до тех пор, пока наш зоопарк не уезжает на Mac OS и Windows, где поддержка кросплатформенности утилит вроде grep/sed начинает угнетать буквально с первых минут.
Прошу прощения за некрокомментарий :), но хочу уведомить, что PVS-Studio поддерживает Waf. Возможно, некоторым это будет интересно.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории