USE-makroi u rpm-paketima

U Fedora biltenu objavljeno je prijedlog o standardizaciji makroa u RPM spec datotekama, koji omogućuje dodavanje mogućnosti odabira kompajlerskih zastavica i dodatnih ovisnosti tijekom izrade RPM paketa.

Primer upotrebe:

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

%prep
%configure %{use_enable Uklonjena je neiskorištena tabela INFORMATION_SCHEMA.TABLESPACES. openssl}

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

U ovom primjeru, kada je postavljen USE makro ssl u spec datoteci, dodatna ovisnost na paket openssl-devel će biti dodana, korak konfiguracije će se izvršiti s uključenom opcijom —enable-openssl, a također će se izvršiti odgovarajući testovi tijekom izrade.

Pretpostavlja se da će se opcija izrade postaviti binarnim makroom %_use_<feature> s dodatnim wrapperima poput:

  • %{use <feature>} – prihvaća vrijednosti 0 ili 1,
  • %{use_enable <feature> [<configure name> [<configure option>]]} – raspakirati u —disable-<feature> ili —enable-<feature>.

Dodavanje opcija takvog tipa u spec datoteke omogućit će izradu različitih varijanti distribucije iz istih izvora.

Na primjer, kako bi se minimizirala drvo build-ovisnosti, moći će se koristiti globalni parametar %{use docs} koji isključuje izradu dokumentacije.

Prikladan skup opcija će se moći postaviti konfiguriranjem okruženja za izradu. Opcije će se moći postaviti globalno ili preinačiti odvojeno za svaki paket.

Prijedlog za sada nije usvojen i nalazi se u fazi rasprave.

Izvor: linux.org.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster