The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Ninja - small build system similar to make

Дата
18 Feb 2011
ЗаголовокNinja - small build system similar to make
ПояснениеNinja представляет собой упрощенный вариант программы make, оптимизированный для значительного ускорения процесса повторной сборки крупных проектов, после внесения незначительных изменений в код. Ninja не поддерживает сложные сценарии принятия решений и оперирует простейшими правилами для описания зависимостей между файлами собираемого проекта. Вопрос учета системных зависимостей выносятся на плечи внешних инструментов, таких как пакет autotools. Использование Ninja позволяет значительно сократить время выполнения служебных операций в процессе пересборки.

Дополнительно в Ninja была добавлена поддержка некоторых новых возможностей, например:

  • Буферизация вывода всех параллельно выполняемых команд, что позволило более точно ассоциировать ошибку с вызвавшей её командой, без смешивания с выводом от других процессов;
  • Правило может ссылаться на дополнительную информацию о разрешении неявных зависимостей, что позволяет, например, обеспечить корректный учет зависимостей заголовочных файлов;
  • Процесс сборки может приводить к созданию сразу нескольких целевых файлов;
  • Формирование целевого файла косвенно зависит от формирующей его командной строки, т.е. изменение опций компилятора приводит к пересборке соответствующих файлов;
  • Директории для помещения результатов сборки создаются до выполнения связанных с ними правил;
  • При выполнении правил могут использоваться краткие описания выполняемых команд, например, "CC foo.o" вместо длинной командной строки.
Home URLhttps://github.com/martine/ninja
Флагenglish
РазделСборка проекта и портирование
Ключи

 Добавить ссылку
 
 Поиск ссылки (regex):
 

Последние заметки
- 06.12.2024 Использование инструментария Podman для запуска контейнеров во FreeBSD
- 04.12.2024 Запуск ChromeOS Flex в виртуальной машине Proxmox
- 25.11.2024 Как сделать ноутбук с APU AMD гораздо тише и холоднее
- 07.11.2024 Как отключить TLS-расширение ECH для решения проблем с Cloudflare в РФ
- 11.10.2024 Гарантия консистентности двух и более состояний
- 28.06.2024 Как избавиться от щелчков при запуске приложений на системах с чипами Intel
- 22.05.2024 Использование HTTPS-сертификатов для шифрования и подписи произвольных данных
- 17.05.2024 Проброс графического адаптера в виртуальную машину KVM
- 10.05.2024 Актуальность опции TCP_NODELAY для распределённых приложений
- 27.04.2024 Подключение в BHyVe zvol-диска с другой машины
- 24.03.2024 Полезные пакеты, которые можно установить на сервер для диагностики сбоев
- 29.12.2023 Диагональное размещение информации на экране
- 25.12.2023 Автоматизация установки Samba AD+DDNS+DHCPD и почтового сервера в openSUSE Leap 15.5
- 24.12.2023 Проброс доступа к SSH через HTTPS
- 20.12.2023 Использование SSH поверх UNIX-сокета вместо sudo
RSS | Следующие 15 записей >>




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру