Новости и события » Hi-Tech » Разработчик языка XL опубликовал новую сборочную систему build

Разработчик языка XL опубликовал новую сборочную систему build

Christophe de Dinechin, автор языка программирования XL, участник разработки спецификаций C++, создатель системы виртуализации для HP-UX и разработчик ряда известных компьютерных игр, в настоящее время работающий в компании Red Hat над технологией удаленного рабочего стола SPICE, опубликовал новую сборочную систему "build". Сборочная система ранее была задействована для сборки кодовой базы проектов ELFE и XL, а теперь может применяться в качестве универсального продукта, не привязанного к конкретным системам. Код открыт под лицензией GPLv3.

Build представляет собой серию надстроек над утилитой make для упрощения сборки проектов на С/С++, которая оформлена в виде набора make-сценариев. Ключевой особенностью Build является предоставление встроенных средств для автоматической настройки сборочного окружения, которые в отличие от Automake не требуют запуска отдельной фазы генерации сборочных файлов. Build также поддерживает ведение сборочного лога, подсветку вывода, обработку стадий тестирования и установки приложения. Отмечается, что Build не так богат возможностями как Autoconf, но вполне подходит для несложных проектов. При этом Build очень прост в использовании и не требует написания длинных make-файлов или определения правил для automake и cmake.

Особенности Build:

  • Очень короткие и хорошо читаемые сборочные сценарии, предоставляющие все наиболее полезные возможности сборочной системы;
  • Компактный размер: для типовой сборки достаточно поставки кода makefile, размером около 500 строк;
  • Высокая скорость работы, так как короткие makefile с небольшим числом правил разбираются очень быстро;
  • Автоматическая инкрементальная конфигурация проекта, генерация файла config.h;
  • Автоматическое ведение лога с деталями процесса сборки;
  • Автоматическая однопроходная генерация зависимостей для заголовочных файлов;
  • Поддержка команд "make test" и "make install";
  • Компактный отчет о ходе сборки с подсветкой важных элементов;
  • Вывод после завершения сборки сводного отчета об ошибках и предупреждениях;
  • Подсветка ошибок и предупреждений в выводе;
  • Правила для сборки в различных режимах (оптимизация, отладка, формирование релиза, профилирование);
  • Наличие правил-модификаторов для типовых сборочных опций, таких как v-debug для подробной отладки;
  • Возможность определения персональных настроек через переменные окружения;
  • Встроенная система подсказки ("make help");
  • Полная поддержка стандартного синтаксиса Makefile и всех возможностей утилиты make;
  • Поддержка распараллеливания процесса сборки на несколько потоков;
  • Возможность разделения библиотек для ускорения сборки (библиотеки собираются только при первой сборке или при инициировании глубокой сборки);
  • Хорошая переносимость. Система протестирована в Linux, macOS и Windows.

Пример сборочного сценария:

BUILD=./ SOURCES=hello.cpp PRODUCTS=hello.exe CONFIG= stdio.h iostream clearenv libm TESTS=product include $(BUILD)rules.mk.


Сучасні та економічні методи зведення будівель

Сучасні та економічні методи зведення будівель

У сучасному будівництві швидкість, економічність та універсальність є ключовими факторами при виборі технологій і матеріалів. Швидкомонтовані сталеві будівлі повністю відповідають цим вимогам, завдяки чому вони набувають великої популярності у різних сферах...

сегодня 10:39

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх