|
|
Ninja - small build system similar to make |
[+] [обсудить] |
| Ninja представляет собой упрощенный вариант программы make, оптимизированный для значительного ускорения процесса повторной сборки крупных проектов, после внесения незначительных изменений в код. Ninja не поддерживает сложные сценарии принятия решений и оперирует простейшими правилами для описания зависимостей между файлами собираемого проекта. Вопрос учета системных зависимостей выносятся на плечи внешних инструментов, таких как пакет autotools. Использование Ninja позволяет значительно сократить время выполнения служебных операций в процессе пересборки.
Дополнительно в Ninja была добавлена поддержка некоторых новых возможностей, например:
- Буферизация вывода всех параллельно выполняемых команд, что позволило более точно ассоциировать ошибку с вызвавшей её командой, без смешивания с выводом от других процессов;
- Правило может ссылаться на дополнительную информацию о разрешении неявных зависимостей, что позволяет, например, обеспечить корректный учет зависимостей заголовочных файлов;
- Процесс сборки может приводить к созданию сразу нескольких целевых файлов;
- Формирование целевого файла косвенно зависит от формирующей его командной строки, т.е. изменение опций компилятора приводит к пересборке соответствующих файлов;
- Директории для помещения результатов сборки создаются до выполнения связанных с ними правил;
- При выполнении правил могут использоваться краткие описания выполняемых команд, например, "CC foo.o" вместо длинной командной строки.
|
|
|
|
|
crosstool - building and Testing gcc/glibc cross toolchains |
[+] [обсудить] |
| Инструмент для проверки сборки приложения при его кросс-компиляции на множество поддерживаемых в Linux платформ, в связке с разными версиями gcc, glibc, binutils и ядра. Позволяет выявить в каких комбинациях имеются проблемы при сборке приложений. Использование данной утилиты особенно актуально для разработчиков приложений для встраиваемых платформ. |
|
|
|
|
GNU Make |
[+] [обсудить] |
| Альтернативные системы для сборки проекта:
AT&T NMake, Jam, Cook, The GNU build system (autoconf, automake и т.д.), iffe, dist, CMake, qmake, tmake, Apache Ant, SCons. |
|
|
|
|
|
|
Konstruct - KDE build system |
(Версия: 20070709 от 2007-07-10) [+] [обсудить] |
| Система для автоматизации процесса сборки и обновления KDE из исходных текстов, весь процесс - от выкачивания нужных исходных текстов и патчей, проверки целостности и зависимостей, до конечной установки, инициируется командой "cd meta/kde;make install". Konstruct пригоден также для сборки дополнительных приложений, таких как KOffice или KDevelop.
Утилита подобного назначения для сборки и обновления GNOME - GARNOME. |
|
|
|
|
A-A-P Project |
[+] [обсудить] |
| Система для создания сценариев сборки проектов - Aap (в проект также входит Agide - GUI для сборки и отладки проектов).
В отличии от стандартной утилиты "make", Aap содержит встроенные средства для доступа к файлу по сети (включая использование CVS), поддерживает автоматический контроль зависимостей, применяется использование контрольных сумм для определения факта модификации (а не полагаясь на сравнение времени последнего изменения файла), объектные файлы создаются в отдельной директории, ведется детальный лог файл, в сценарий можно включать блоки кода на языке python (сам Aap написан на python).
|
|
|
|
|
|
MakeMake.pl -- makefiles creating utility |
[+] [обсудить] |
| Утилита для автоматизации процесса создания Make файлов. Структура собираемого проекта вначале описывается в файле конфигурации, после этого на основания обобщенных данных строится рабочий MakeFile. |
|
|
|
|
|
|