GEBRUIK macro's in rpm-pakketten

Gepubliceerd in de Fedora mailinglijst voorstel om macro's in RPM-specificatiebestanden te standaardiseren, waardoor u aan RPM-pakketten de mogelijkheid kunt toevoegen om compilatievlaggen en aanvullende afhankelijkheden te selecteren in de bouwfase.

Gebruiksvoorbeeld:

%if %{gebruik ssl}
BuildVereist: openssl-devel
%stop als

% prep
%configure %{use_enable ssl openssl}

% controleren
maak test %{?_use_ssl:-DSSL}

In dit voorbeeld wordt bij het specificeren van de USE macro ssl in het spec-bestand een extra afhankelijkheid van het openssl-devel-pakket toegevoegd, wordt een configuratiestap uitgevoerd met de optie --enable-openssl ingeschakeld, en worden de bijbehorende tests uitgevoerd uitgevoerd tijdens de bouw.

Er wordt aangenomen dat de build-optie wordt gespecificeerd door de binaire macro %_use_ met extra wrappers zoals:

  • %{gebruik } – neemt waarden 0 of 1,
  • %{use_enable [ [ ]]} – breidt uit naar —uitschakelen- of --inschakelen- .

Door dit soort opties aan spec-bestanden toe te voegen, kunt u verschillende versies van de distributie uit dezelfde bronnen compileren.

Om bijvoorbeeld de build-afhankelijkheidsboom te minimaliseren, kunt u de globale parameter %{use docs} gebruiken, die het bouwen van documentatie uitschakelt.

U kunt de juiste set opties instellen door de bouwomgeving te configureren. Bovendien kunnen opties zowel globaal worden ingesteld als door ze voor elk pakket afzonderlijk opnieuw te definiëren.

Het voorstel is nog niet aanvaard en wordt besproken.

Bron: linux.org.ru

Voeg een reactie