The OpenNET Project / Index page

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

27.06.2017 09:21  Разработчик языка 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 


  1. Главная ссылка к новости (https://tech.slashdot.org/stor...)
  2. OpenNews: Первый публичный выпуск сборочного инструментария build2
  3. OpenNews: Компания Google представила первый выпуск открытой системы сборки Bazel
  4. OpenNews: Twitter представил первый значительный выпуск системы сборки Pants
  5. OpenNews: Выпуск сборочного инструментария qbs 1.8, развиваемого проектом Qt
  6. OpenNews: Для GNOME-приложений представлена новая экспериментальная система сборки BuilDj
Лицензия: CC-BY
Тип: Программы
Ключевые слова: build, make
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Аноним, 09:24, 27/06/2017 [ответить] [смотреть все]
  • –4 +/
    Dinechin - это типа Деникин, потомок белых мигрантов Матёрый мужик, чем-то похо... весь текст скрыт [показать]
     
     
  • 2.2, Аноним, 09:28, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Примерно как и у Lennart Poettering...
     
     
  • 3.3, Аноним, 09:35, 27/06/2017 [^] [ответить] [смотреть все]  
  • +10 +/
    Poettering любитель комбайнов и усложнений, а здесь наоборот предельное упрощение и ясность. Poettering также мастер собрать вкруг себя команду сторонников и хейтеров, а Bellard и Dinechin - одиночки.

     
  • 2.4, Аноним, 09:37, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +11 +/
    >>Dinechin
    >Деникин

    Ты буквы через одну читаешь, хрустя франузской булкой?

     
     
  • 3.5, Led, 09:50, 27/06/2017 [^] [ответить] [смотреть все]  
  • +/
    Не булкой, а пальмезаном.
     
     
  • 4.19, user, 13:43, 27/06/2017 [^] [ответить] [смотреть все]  
  • –1 +/
    Им не хрустят, а хлюпают.
     
  • 3.7, Аноним, 09:55, 27/06/2017 [^] [ответить] [смотреть все]  
  • +3 +/
    По французски читается как Динишан, что не исключает, что это переиначенный Дени... весь текст скрыт [показать]
     
     
  • 4.11, A.Stahl, 10:41, 27/06/2017 [^] [ответить] [смотреть все]  
  • +2 +/
    И не исключено что это англичанин американец 300 лет назад оконфузившийся на обе... весь текст скрыт [показать]
     
  • 2.28, ОМДЗТ, 19:25, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • –2 +/
    Dinechin - это типа Деникин Это типа Дениска Попов Сделал Инструментарий По... весь текст скрыт [показать] [показать ветку]
     
  • 1.6, Аноним, 09:52, 27/06/2017 [ответить] [смотреть все]  
  • –1 +/
    А как вообще на гитхабе указывать GPL3 and above вместо GPL3 ... весь текст скрыт [показать]
     
     
  • 2.12, Andrey Mitrofanov, 10:50, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Как и везде, https www gnu org licenses gpl-howto html Например, https githu... весь текст скрыт [показать] [показать ветку]
     
  • 1.8, Аноним, 10:01, 27/06/2017 [ответить] [смотреть все]  
  • +8 +/
    >Build представляет собой серию надстроек над утилитой make

    Что, опять?

     
  • 1.9, Аноним, 10:11, 27/06/2017 [ответить] [смотреть все]  
  • +5 +/
    УРААА, здорово Мне как раз не хватало ещё одной Теперь заживу ... весь текст скрыт [показать]
     
     
  • 2.10, Девелопер, 10:24, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +10 +/
    Мужик сделал для себя и решил поделиться с народом, в чем проблема?
     
     
  • 3.18, Аноним, 12:53, 27/06/2017 [^] [ответить] [смотреть все]  
  • +2 +/
    Половина гитхаба забита такими "для себя", а новость только об этом.
     
  • 2.13, Аноним, 11:57, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    Все существующие системы сборки - так себе , и как раз еще одной остро не хвата... весь текст скрыт [показать] [показать ветку]
     
  • 1.14, Аноним, 12:05, 27/06/2017 [ответить] [смотреть все]  
  • –1 +/
    И как отлаживать проблемы на этапе настройки ... весь текст скрыт [показать]
     
  • 1.15, Аноним, 12:07, 27/06/2017 [ответить] [смотреть все]  
  • +8 +/
    >build

    Это чтобы было проще гуглить?

     
     
  • 2.17, gaga, 12:41, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +3 +/
    Ага, язык XL с системой build И так никто и не узнал о новом революционном язык... весь текст скрыт [показать] [показать ветку]
     
  • 1.22, lucentcode, 14:52, 27/06/2017 [ответить] [смотреть все]  
  • –1 +/
    Ну, ещё одна система сборки явно не помещает. Посмотрим, что из этого проекта выйдет со временем. Время всё расставляет на свои места. А конкретной в этой новости меня больше заинтересовало упоминание ЯП XL. Никогда о нём не слышал. Но судя по описанию, выглядит очень интересно.
     
     
  • 2.24, Аноним, 15:56, 27/06/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Вот только...
    Stable release
    0.1 / February 2010; 7 years ago
     
     
  • 3.27, Andrey Mitrofanov, 18:04, 27/06/2017 [^] [ответить] [смотреть все]  
  • +1 +/
    > Вот только...
    > Stable release
    > 0.1 / February 2010; 7 years ago

    Commits on May 10, 2017
    https://github.com/c3d/XL-programming-language/commits/master

    ...
    https://github.com/c3d/ смотрит на тебя... ну, как ги-хаб на сорс-форж.

     
  • 1.25, Аноним, 16:01, 27/06/2017 [ответить] [смотреть все]  
  • +/
    Раз уж упомянули игры, сказали бы, что этот Де Динешен -- автор игры Alpha Waves... весь текст скрыт [показать]
     
  • 1.29, nobody, 17:45, 29/06/2017 [ответить] [смотреть все]  
  • –1 +/
    > Хорошая переносимость. Система протестирована в Linux, macOS и Windows.

    Эхххх... Прям как "кроссплатформенная разработка" у M$:
    Работает аж под Windows Client, Windows Server, Windows 32bit, Windows 64bit...

     
  • 1.30, annual slayer, 19:16, 03/07/2017 [ответить] [смотреть все]  
  • +/
    немного напоминает ebuild или PKGBUILD

    это хорошо

     
     
  • 2.31, Аноним, 07:35, 17/08/2017 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Мне qmake напомнило.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor