A Fedora hírlevélben közzétették ajánlat a RPM spec fájlok makróinak szabványosításáról, amely lehetővé teszi az RPM csomagokban a fordítási zászlók és további függőségek kiválasztását a fordítási folyamat során.
Példa használatra:
%if %{use ssl}
BuildRequires: openssl-devel
%endif
%prep
%configure %{use_enable ssl openssl}
%check
make test %{?_use_ssl:-DSSL}
Ebben a példában, ha a USE makrót ssl-ként definiálják a spec fájlban, akkor egy további függőség kerül hozzáadásra az openssl-devel csomaghoz, a konfigurációs lépés pedig az —enable-openssl opcióval fog végrehajtódni, és a fordítás közben a megfelelő teszteket is elvégzik.
Feltételezve van, hogy a fordítási opciót a %_use_<feature> bináris makróval kell megadni, további burkolókkal, mint például:
- %{use <feature>} – értéket vehet fel 0 vagy 1,
- %{use_enable <feature> [<configure name> [<configure option>]]} – az —disable-<feature> vagy —enable-<feature> alakra bontódik.
Az ilyen típusú opciók hozzáadása a spec fájlokhoz lehetővé teszi különböző disztribúciós verziók összeállítását ugyanabból a forrásból.
Például a build-függőségek fáját minimalizálva globális paraméterként %{use docs} használható a dokumentáció építésének letiltására.
A megfelelő opciók készletének beállítása a fordító környezet konfigurálásával lehetséges. Az opciókat globálisan vagy csomagonként is meg lehet adni.
Az ajánlat még nem került elfogadásra és megvitatás alatt áll.
Forrás: linux.org.ru
