RPM 4.15 vrystelling

Na byna twee jaar van ontwikkeling plaasgevind pakketbestuurder vrystelling RPM 4.15.0. Die RPM4-projek word deur Red Hat ontwikkel en word gebruik in verspreidings soos RHEL (insluitend afgeleide projekte CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen en vele ander. Voorheen onafhanklike ontwikkelingspan ontwikkel projek RPM 5, wat nie direk met RPM4 verband hou nie en tans verlate is (nie sedert 2010 opgedateer nie).

Mees opvallend verbeterings in RPM 4.15:

  • Bygevoeg eksperimentele ondersteuning vir onbevoorregte samestelling in 'n chroot-omgewing;
  • Geïmplementeer ondersteuning vir parallelisering van pakketsamestelling op multikernstelsels. Die limiet op die aantal drade word gestel deur die makro "%_smp_build_ncpus" en die $RPM_BUILD_NCPUS veranderlike. Om die aantal SVE's te bepaal, word die makro "%getncpus" voorgestel;
  • Spesifikasielêers ondersteun nou die voorwaardelike operateur “%elif” (else if), sowel as die opsies “%elifos” en “%elifarch” vir binding aan die verspreiding en argitektuur;
  • Bygevoeg nuwe afdelings "%patchlist" en "%sourcelist", wat gebruik kan word om kolle en bronne by te voeg deur bloot name te lys sonder om inskrywingsnommers te spesifiseer (byvoorbeeld, in plaas van
    “Patch0: popt-1.16-pkgconfig.patch” in die %patchlist-afdeling kan jy “popt-1.16-pkgconfig.patch” spesifiseer);

  • In rpmbuild bygevoeg ondersteuning vir dinamiese samestelling van afhanklikhede met hul insluiting in src.rpm. In die spesifikasielêer is ondersteuning vir die "%generate_buildrequires"-afdeling bygevoeg, waarvan die inhoud as 'n lys van afhanklikhede (BuildRequires) verwerk word, wat verifikasie vereis (as die afhanklikheid ontbreek, sal 'n fout vertoon word).
  • Geïmplementeer Die "^"-operateur word gebruik om te kyk vir weergawes ouer as 'n gegewe datum, en doen die teenoorgestelde van die "~"-operateur. Byvoorbeeld,
    "1.1^20160101" sal weergawe 1.1 dek en pleisters bygevoeg na 1 Januarie 2016;

  • Bygevoeg "--scm" opsie om "%autosetup SCM" af te aktiveer;
  • Bygevoeg ingeboude makro "%{expr:...}" vir die evaluering van arbitrêre uitdrukkings ('n paar dae gelede was daar ook voorgestelde formaat "%[ uitdr ]");
  • Verseker dat die verstekkodering UTF-8 is vir stringdata in opskrifte;
  • Bygevoeg globale makros %build_cflags, %build_cxxflags, %build_fflags en %build_ldflags met vlae vir die samesteller en koppelaar;
  • Bygevoeg makro "%dnl" (Gooi na volgende reël) vir die invoeging van opmerkings;
  • Bindings vir Python 3 verseker dat stringe teruggestuur word as ontsnapte UTF-8-reekse in plaas van greepdata;
  • Bygevoeg dummy databasis backend om ondersteuning vir stelsels sonder rpmdb (bv. Debian) te verbeter;
  • Verbeterde ARM argitektuur opsporing en bygevoeg ondersteuning vir armv8;
  • Bied naatlose ondersteuning vir Lua 5.2-5.3, wat nie compat-definisies in die kode vereis nie.

Bron: opennet.ru

Voeg 'n opmerking