RPM 4.15 väljalase

Pärast peaaegu kaheaastast arendustööd võttis aset paketihalduri väljalase Pöörete arv 4.15.0. RPM4 projekti arendab Red Hat ja seda kasutatakse sellistes distributsioonides nagu RHEL (sh tuletisprojektid CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen ja paljud teised. Varem iseseisev arendusmeeskond arenenud projekt Pöörlemissagedus 5, mis ei ole otseselt seotud RPM4-ga ja on praegu maha jäetud (pole uuendatud alates 2010. aastast).

Kõige tähelepanuväärsem täiustused RPM 4.15 puhul:

  • Lisatud eksperimentaalne tugi privilegeerimata kokkupanekuks chroot-keskkonnas;
  • Rakendatud paketikomplekti paralleelseerimise tugi mitmetuumalistes süsteemides. Lõimede arvu piirang määratakse makro "%_smp_build_ncpus" ja muutuja $RPM_BUILD_NCPUS kaudu. Protsessorite arvu määramiseks pakutakse makro "%getncpus";
  • Spetsifikatsioonifailid toetavad nüüd tingimusoperaatorit “%elif” (muu juhul kui), samuti valikuid “%elifos” ja “%elifarch” distributsiooni ja arhitektuuriga sidumiseks;
  • Lisatud uued jaotised "% patchlist" ja "%sourcelist", mida saab kasutada paikade ja allikate lisamiseks lihtsalt nimede loetlemisega ilma kirjenumbreid määramata (näiteks
    "Patch0: popt-1.16-pkgconfig.patch" jaotises % patchlist saate määrata "popt-1.16-pkgconfig.patch");

  • rpmbuildis lisatud sõltuvuste dünaamilise koostamise tugi koos nende lisamisega faili src.rpm. Spetsifikatsioonifaili on lisatud tugi jaotisele “%generate_buildrequires”, mille sisu töödeldakse sõltuvuste loendina (BuildRequires), mis nõuab kontrollimist (kui sõltuvus puudub, kuvatakse tõrge).
  • Rakendatud Operaatorit "^" kasutatakse antud kuupäevast vanemate versioonide kontrollimiseks, toimides vastupidiselt operaatorile "~". Näiteks,
    "1.1^20160101" hõlmab versiooni 1.1 ja plaastreid, mis on lisatud pärast 1. jaanuari 2016;

  • Lisatud "--scm" valik "%autosetup SCM" lubamiseks;
  • Lisatud sisseehitatud makro "%{expr:...}" suvaliste avaldiste hindamiseks (paar päeva tagasi oli ka pakutud vorming "%[ avaldis ]");
  • Tagab, et päiste stringiandmete vaikekodeering on UTF-8;
  • Lisatud globaalsed makrod %build_cflags, %build_cxxflags, %build_fflags ja %build_ldflags koos kompilaatori ja linkeri lippudega;
  • Lisatud makro "%dnl" (Discard to Next Line) kommentaaride sisestamiseks;
  • Python 3 sidumised tagavad, et stringid tagastatakse baitandmete asemel põgenenud UTF-8 jadadena;
  • Lisatud näiv andmebaasi taustaprogramm, et parandada rpmdb-ta süsteemide tuge (nt Debian);
  • Täiustatud ARM-i arhitektuuri tuvastamine ja lisatud tugi armv8-le;
  • Pakub sujuvat tuge versioonidele Lua 5.2–5.3, mis ei nõua koodis ühilduvaid definitsioone.

Allikas: opennet.ru

Lisa kommentaar