Po takmer dvoch rokoch vývoja vydanie správcu balíkov . Projekt RPM4 je vyvinutý spoločnosťou Red Hat a používa sa v takých distribúciách ako RHEL (vrátane odvodených projektov CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen a mnoho ďalších. Predtým nezávislý vývojový tím projekt , ktorá priamo nesúvisí s RPM4 a v súčasnosti je opustená (neaktualizovaná od roku 2010).
Najpozoruhodnejšie v otáčkach 4.15:
- Pridaná experimentálna podpora pre neprivilegované zostavovanie v prostredí chroot;
- podpora paralelizácie zostavovania balíkov na viacjadrových systémoch. Obmedzenie počtu vlákien sa nastavuje pomocou makra „%_smp_build_ncpus“ a premennej $RPM_BUILD_NCPUS. Na určenie počtu CPU sa navrhuje makro „%getncpus“;
- Súbory Spec teraz podporujú podmienený operátor „%elif“ (else if), ako aj možnosti „%elifos“ a „%elifarch“ pre väzbu na distribúciu a architektúru;
- nové sekcie "%patchlist" a "%sourcelist", ktoré možno použiť na pridávanie opráv a zdrojov jednoduchým uvedením názvov bez zadania čísel položiek (napríklad namiesto
“Patch0: popt-1.16-pkgconfig.patch” v sekcii %patchlist môžete zadať “popt-1.16-pkgconfig.patch”); - V rpmbuild podpora dynamického zostavovania závislostí s ich zahrnutím do src.rpm. V súbore spec bola pridaná podpora pre sekciu “%generate_buildrequires”, ktorej obsah je spracovaný ako zoznam závislostí (BuildRequires), vyžadujúcich overenie (ak závislosť chýba, zobrazí sa chyba).
- Operátor "^" sa používa na kontrolu verzií starších ako daný dátum, pričom robí opak operátora "~". Napríklad,
"1.1^20160101" bude pokrývať verziu 1.1 a opravy pridané po 1. januári 2016; - Pridaná možnosť „--scm“ na aktiváciu režimu „%autosetup SCM“;
- Pridané vstavané makro "%{expr:...}" na vyhodnocovanie ľubovoľných výrazov (pred pár dňami bolo formát "%[ expr ]");
- Zabezpečuje, že predvolené kódovanie je UTF-8 pre reťazcové údaje v hlavičkách;
- Pridané globálne makrá %build_cflags, %build_cxxflags, %build_fflags a %build_ldflags s príznakmi pre kompilátor a linker;
- Pridané makro „%dnl“ (Zahodiť na ďalší riadok) na vkladanie komentárov;
- Väzby pre Python 3 zaisťujú, že reťazce sa namiesto bajtových údajov vracajú ako sekvencie utečené v UTF-8;
- Pridaný fiktívny databázový backend na zlepšenie podpory pre systémy bez rpmdb (napr. Debian);
- Vylepšená detekcia architektúry ARM a pridaná podpora pre armv8;
- Poskytuje bezproblémovú podporu pre Lua 5.2-5.3, ktorá nevyžaduje kompatibilné definície v kóde.
Zdroj: opennet.ru
