GAMITIN ang mga macro sa mga rpm na pakete

Na-publish sa Fedora mailing list panukala upang i-standardize ang mga macro sa RPM spec file, na nagbibigay-daan sa iyong idagdag sa RPM packages ang kakayahang pumili ng mga flag ng compilation at karagdagang dependencies sa yugto ng build.

Halimbawa ng paggamit:

%if %{use ssl}
BuildRequires: openssl-devel
%tapusin kung

% prep
%configure %{use_enable ssl openssl}

% check
gumawa ng pagsubok %{?_use_ssl:-DSSL}

Sa halimbawang ito, kapag tinukoy ang USE macro ssl sa spec file, magdaragdag ng karagdagang dependency sa openssl-devel package, isasagawa ang configuration step na pinagana ang --enable-openssl na opsyon, at ang mga katumbas na pagsubok ay naisakatuparan sa panahon ng pagtatayo.

Ipinapalagay na ang build option ay tutukuyin ng binary macro %_use_ na may mga karagdagang wrapper tulad ng:

  • %{gamitin } - kumukuha ng mga halaga 0 o 1,
  • %{use_enable [ [ ]]} – lumalawak sa β€”disable- o --paganahin- .

Ang pagdaragdag ng mga opsyon ng ganitong uri sa mga spec file ay magbibigay-daan sa iyong mag-compile ng iba't ibang bersyon ng pamamahagi mula sa parehong mga pinagmulan.

Halimbawa, para mabawasan ang build dependency tree, maaari mong gamitin ang global parameter na %{use docs}, na hindi pinapagana ang pagbuo ng dokumentasyon.

Maaari mong itakda ang naaangkop na hanay ng mga opsyon sa pamamagitan ng pag-configure sa build environment. Bukod dito, maaaring itakda ang mga opsyon sa buong mundo at sa pamamagitan ng muling pagtukoy sa mga ito nang hiwalay para sa bawat pakete.

Ang panukala ay hindi pa tinatanggap at pinag-uusapan.

Pinagmulan: linux.org.ru

Magdagdag ng komento