USE макроси в RPM пакети

В бюлетине Fedora е публикувано предложение предложение за стандартизиране на макроси в спек файловете RPM, което позволява добавянето на възможности за избор на флагове за компилация и допълнителни зависимости по време на изграждането на RPM пакетите.

Пример за използване:

%if %{use ssl}
BuildRequires: openssl-devel
%endif

%prep
%configure %{use_enable ssl openssl}

%check
make test %{?_use_ssl:-DSSL}

В този пример, задаването на USE макроса ssl в спек файла ще добави допълнителна зависимост от пакета openssl-devel, ще се изпълни стъпката на конфигурация с включена опция —enable-openssl, а също така при изграждането ще се изпълнят съответните тестове.

Предполага се, че опцията за изграждане ще бъде зададена чрез бинарен макрос %_use_ с допълнителни обвивки от вида:

  • %{use } – приема стойности 0 или 1,
  • %{use_enable [& [&]]} – разширява се в —disable- или —enable-.

Добавянето на опции от този вид в спек файловете ще позволи изграждането на различни варианти на дистрибуцията от едни и същи изходни кодове.

Например, за минимизиране на дървото от зависимости за изграждане, може да се използва глобален параметър %{use docs}, който деактивира изграждането на документация.

Подходящият набор от опции може да бъде зададен, конфигурирайки средата за изграждане. Опциите могат да се задават както глобално, така и да се преопределят поотделно за всеки пакет.

Предложението все още не е прието и е в етап на обсъждане.

Източник: linux.org.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster