USE-makroer i RPM-pakker

Der er offentliggjort et forslag i Fedora-nyhedsbrevet forslag til standardisering af makroer i RPM-spec-filer, der muliggør valg af kompilationsflager og yderligere afhængigheder under bygningen.

Eksempel på brug:

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

%prep
%configure %{use_enable ssl openssl}

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

I dette eksempel, når USE-makroen ssl er angivet i spec-filen, vil der blive tilføjet en ekstra afhængighed til pakken openssl-devel, konfigurationstrinnet udføres med indstillingen —enable-openssl, og relevante tests vil også blive udført under bygningen.

Det antages, at bygningsmuligheden vil blive angivet af den binære makro %_use_ med yderligere indpakninger som:

  • %{use } – accepterer værdierne 0 eller 1,
  • %{use_enable [ []]} – udvides til —disable- eller —enable-.

Tilføjelsen af sådanne parametre i spec-filerne gør det muligt at opbygge forskellige varianter af distributionen fra de samme kilder.

For eksempel vil en global parameter %{use docs}, der deaktiverer opbygningen af dokumentation, kunne bruges til at minimere træet af build-afhængigheder.

Et passende sæt parametre kan konfigureres i build-miljøet. Desuden kan parametre angives både globalt og ved at overskrive dem for hver pakke.

Forslaget er ikke blevet vedtaget endnu og er stadig under diskussion.

Kilde: linux.org.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster