Versione RPM 4.15

Dopu à quasi dui anni di sviluppu hè accadutu liberazione di u gestore di pacchetti 4.15.0 RPM. U prughjettu RPM4 hè sviluppatu da Red Hat è hè utilizatu in distribuzioni cum'è RHEL (cumpresi prughjetti derivati ​​CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen è assai altri. Prima squadra di sviluppu indipendente sviluppatu scrive RPM 5, chì ùn hè micca direttamente in relazione cù RPM4 è hè attualmente abbandunatu (micca aghjurnatu da 2010).

U più notevuli migliurà in RPM 4.15:

  • Aghjunghje un supportu sperimentale per l'assemblea senza privilegiu in un ambiente chroot;
  • Implementatu supportu per a parallelizazione di l'assemblea di pacchetti in sistemi multi-core. U limitu di u numeru di fili hè stabilitu attraversu a macro "%_smp_build_ncpus" è a variàbile $RPM_BUILD_NCPUS. Per determinà u numeru di CPU, a macro "% getncpus" hè pruposta;
  • I schedarii di spec avà supportanu l'operatore cundizionale "%elif" (altri se), è ancu l'opzioni "%elifos" è "%elifarch" per ubligatoriu à a distribuzione è l'architettura;
  • Aggiuntu novi rùbbriche "%patchlist" è "%sourcelist", chì ponu esse aduprati per aghjunghje patch è fonti, solu listendu i nomi senza specificà numeri di entrata (per esempiu, invece di
    "Patch0: popt-1.16-pkgconfig.patch" in a sezione %patchlist pudete specificà "popt-1.16-pkgconfig.patch");

  • In rpmbuild aghjustatu supportu per l'assemblea dinamica di dipendenze cù a so inclusi in src.rpm. In u schedariu spec, u supportu per a sezione "%generate_buildrequires" hè stata aghjunta, u cuntenutu di quale hè trattatu cum'è una lista di dipendenze (BuildRequires), chì necessitanu verificazione (se a dependenza manca, un errore serà visualizatu).
  • Implementatu L'operatore "^" hè utilizatu per verificà e versioni più vechje di una data data, facendu u cuntrariu di l'operatore "~". Per esempiu,
    "1.1^20160101" coprerà a versione 1.1 è i patches aghjuntu dopu u 1 di ghjennaghju di u 2016;

  • Aggiunta l'opzione "--scm" per attivà u modu "%autosetup SCM";
  • Aggiunta macro integrata "%{expr:...}" per evaluà espressioni arbitrarie (quelli ghjorni fà ci era ancu prupostu furmatu "%[ expr ]");
  • Assicura chì a codificazione predeterminata hè UTF-8 per i dati di stringa in headers;
  • Aghjunghjite macros glubale %build_cflags, %build_cxxflags, %build_fflags è %build_ldflags cù bandiere per u compilatore è u linker;
  • Aggiunta macro "%dnl" (Discard to Next Line) per inserisce cumenti;
  • Ligami per Python 3 assicuranu chì e stringhe sò tornate cum'è sequenze UTF-8 scappate invece di dati di byte;
  • Aghjunghje un backend di basa di dati simulatu per migliurà u supportu per i sistemi senza rpmdb (per esempiu Debian);
  • Rilevazione di l'architettura ARM mejorata è supportu aghjuntu per armv8;
  • Fornisce un supportu senza saldatura per Lua 5.2-5.3, chì ùn hà micca bisognu di definizione di cumpatibili in u codice.

Source: opennet.ru

Add a comment