Liberigo de pakaĵmanaĝero RPM 4.15

Post preskaŭ du jaroj da evoluo okazis eldono de pakaĵmanaĝero rpm 4.15.0. La projekto RPM4 estas evoluigita de Red Hat kaj estas uzata en tiaj distribuoj kiel RHEL (inkluzive de derivitaj projektoj CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen kaj multaj aliaj. Antaŭe sendependa disvolva teamo evoluinta la projekto RPM5, kiu ne rekte rilatas al RPM4 kaj estas nuntempe forlasita (ne ĝisdatigita ekde 2010).

Plej rimarkinda plibonigoj en RPM 4.15:

  • Aldonita eksperimenta subteno por senprivilegia asembleo en chroot-medio;
  • Efektivigita subteno por paraleligo de pakaĵaro sur plurkernaj sistemoj. La limo de la nombro da fadenoj estas fiksita per la makroo "%_smp_build_ncpus" kaj la variablo $RPM_BUILD_NCPUS. Por determini la nombron da CPUoj, la makroo “%getncpus” estas proponita;
  • Spec-dosieroj nun subtenas la kondiĉan operatoron “%elif” (alie se), same kiel la opciojn “%elifos” kaj “%elifarch” por ligado al la distribuo kaj arkitekturo;
  • Aldonita novaj sekcioj "%patchlist" kaj "%sourcelist", kiuj povas esti uzataj por aldoni flikaĵojn kaj fontojn simple listigante nomojn sen specifi enirajn nombrojn (ekzemple anstataŭ
    "Patch0: popt-1.16-pkgconfig.patch" en la sekcio %patchlist vi povas specifi "popt-1.16-pkgconfig.patch");

  • En rpmbuild aldonis subteno por dinamika kunigo de dependecoj kun ilia inkludo en src.rpm. En la specifdosiero, subteno por la sekcio "%generate_buildrequires" estis aldonita, kies enhavo estas prilaborita kiel listo de dependecoj (BuildRequires), postulante konfirmon (se la dependeco mankas, eraro estos montrata).
  • Efektivigita La operatoro "^" estas uzata por kontroli versiojn pli malnovajn ol difinita dato, farante la malon de la operatoro "~". Ekzemple,
    "1.1^20160101" kovros version 1.1 kaj flikojn aldonitajn post la 1-a de januaro 2016;

  • Aldonita "--scm" opcio por ebligi "%autosetup SCM" reĝimon;
  • Aldonita enkonstruita makroo "%{expr:...}" por taksi arbitrajn esprimojn (antaŭ kelkaj tagoj estis ankaŭ proponis formato "%[ expr ]");
  • Certigas, ke la defaŭlta kodado estas UTF-8 por ĉendatumoj en kaplinioj;
  • Aldonitaj tutmondaj makrooj %build_cflags, %build_cxxflags, %build_fflags kaj %build_ldflags kun flagoj por la kompililo kaj ligilo;
  • Aldonita makroo "%dnl" (Forĵeti al Sekva Linio) por enmeti komentojn;
  • Ligoj por Python 3 certigas ke ŝnuroj estas resenditaj kiel eskapintaj UTF-8-sekvencoj anstataŭe de bajtaj datumoj;
  • Aldonita falsa datumbazo backend por plibonigi subtenon por sistemoj sen rpmdb (ekz. Debiano);
  • Plibonigita ARM-arkitekturo-detekto kaj aldonita subteno por armv8;
  • Provizas senjuntan subtenon por Lua 5.2-5.3, kiu ne postulas kompatdifinojn en la kodo.

fonto: opennet.ru

Aldoni komenton