USE-makrá v rpm-baličkoch

V bulletine Fedora bolo zverejnené návrh na štandardizáciu makier v špecifikačných súboroch RPM, ktoré umožňujú pridať do RPM balíkov možnosť výberu kompilovacích flagov a dodatočných závislostí počas zostavovania.

Príklad použitia:

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

%prep
%configure %{use_enable ssl openssl}

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

V tomto príklade bude pri nastavení USE makra ssl v špecifikačnom súbore pridaná dodatočná závislosť na balík openssl-devel, vykoná sa krok konfigurácie s povolenou voľbou —enable-openssl a pri zostavovaní sa vykonajú príslušné testy.

Predpokladá sa, že voľba zostavenia bude zadávaná binárnym makrom %_use_ s dodatočnými obalmi vo forme:

  • %{use } – prijíma hodnoty 0 alebo 1,
  • %{use_enable [ []]} – rozvinie sa na —disable- alebo —enable-.

Pridanie takýchto možností do špecifikačných súborov umožní zostavovať rôzne varianty distribúcie z rovnakých zdrojových súborov.

Napríklad, aby sa minimalizoval strom build-závislostí, bude možné použiť globálny parameter %{use docs}, ktorý zakáže zostavovanie dokumentácie.

Pridelenie správneho súboru možností bude možné nakonfigurovaním zostavovacieho prostredia. Možnosti bude možné určiť ako globálne, tak aj predefinovaním osobitne pre každý balík.

Návrh zatiaľ nebol prijatý a nachádza sa v štádiu diskusie.

Zdroj: linux.org.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster