Месон буилд систем издање 1.1

Објављено је издање Месон 1.1.0 буилд система који се користи за изградњу пројеката као што су Кс.Орг Сервер, Меса, Лигхттпд, системд, ГСтреамер, Ваиланд, ГНОМЕ и ГТК. Месон код је написан у Питхон-у и лиценциран је под лиценцом Апацхе 2.0.

Кључни развојни циљ Месон-а је да обезбеди велику брзину процеса монтаже у комбинацији са практичношћу и лакоћом коришћења. Уместо маке, градња подразумевано користи Ниња комплет алата, али се могу користити и други бацкендови као што су кцоде и ВисуалСтудио. Систем има уграђени руковалац зависности на више платформи који вам омогућава да користите Месон за прављење пакета за дистрибуције. Правила асемблера су постављена на поједностављеном језику специфичном за домен, добро су читљива и разумљива кориснику (према идеји аутора, програмер треба да потроши минимум времена на писање правила).

Подржано је унакрсно компајлирање и изградња на Линук, Иллумос/Соларис, ФрееБСД, НетБСД, ДрагонФли БСД, Хаику, мацОС и Виндовс користећи ГЦЦ, Цланг, Висуал Студио и друге компајлере. Могуће је градити пројекте у различитим програмским језицима, укључујући Ц, Ц++, Фортран, Јава и Руст. Подржан је инкрементални режим изградње, у којем се поново праве само компоненте које су директно повезане са променама направљеним од последње израде. Месон се може користити за генерисање поновљивих буилд-ова, где покретање буилд-а у различитим окружењима резултира потпуно идентичним извршним програмима.

Главне иновације Месон 1.1:

  • Нови аргумент "објецтс:" је додат у децларе_депенденци() за причвршћивање објеката директно на извршне датотеке као интерне зависности које не захтевају линк_вхо.
  • Команда "месон девенв --думп" има опциону могућност да одреди датотеку у коју ће се писати променљиве окружења, уместо да се шаље у стандардни излазни ток.
  • Додане су методе ФеатуреОптион.енабле_иф и ФеатуреОптион.дисабле_иф да би се олакшало креирање услова у припреми за прослеђивање параметара функцији депенденци(). опт = гет_оптион('феатуре').дисабле_иф(не фоо, еррор_мессаге: 'Не могу да омогућим функцију када фоо такође није омогућен') деп = депенденци('фоо', обавезно : опт)
  • Дозвољено је прослеђивање генерисаних објеката међу аргументима „објекти:“.
  • Функција пројекта подржава инсталацију датотека са информацијама о пројектним лиценцама.
  • Извршавање „судо месон инсталл“ обезбеђује ресетовање привилегија током поновне изградње за циљне платформе.
  • Команда "месон инсталл" пружа могућност да се наведе посебан руковалац за добијање роот дозвола (на пример, можете да изаберете полкит, судо, опендоас или $МЕСОН_РООТ_ЦМД). Покретање „месон инсталл“ у неинтерактивном режиму више не покушава да подигне привилегије.
  • Додата подршка за читање опција из датотеке месон.оптионс уместо месон_оптионс.ткт.
  • Обезбеђено преусмеравање на стдерр излазних информација о напретку интроспекције.
  • Додата је нова позадина „ноне“ (--бацкенд=ноне) за креирање пројеката који имају само правила за инсталацију и немају правила за прављење.
  • Додата је нова зависност пибинд11 да би зависност('пибинд11') радила са пкг-цонфиг и цмаке без употребе скрипте пибинд11-цонфиг.
  • Опције "--рецонфигуре" и "--випе" (месон сетуп --рецонфигуре буилддир и месон сетуп --випе буилддир) су дозвољене са празним буилддиром.
  • месон.адд_инсталл_сцрипт() је додао подршку за кључну реч дри_рун, која вам омогућава да покренете сопствене инсталационе скрипте када позивате "месон инсталл --дри-рун".

Извор: опеннет.ру

Додај коментар