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, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ нСпосрСдствСнно Π½Π΅ связан с RPM4 ΠΈ Π² настоящСС врСмя Π·Π°Π±Ρ€ΠΎΡˆΠ΅Π½ (Π½Π΅ обновлялся с 2010 Π³ΠΎΠ΄Π°).

Plej rimarkinda plibonigoj en RPM 4.15:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ сборки Π² chroot-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ;
  • Efektivigita ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° распараллСливания сборки ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Π½Π° многоядСрных систСмах. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ числа ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² задаётся Ρ‡Π΅Ρ€Π΅Π· макрос Β«%_smp_build_ncpusΒ» ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ $RPM_BUILD_NCPUS. Для опрСдСлСния числа CPU ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ макрос Β«%getncpusΒ»;
  • Π’ spec-Ρ„Π°ΠΉΠ»Π°Ρ… появилась ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° условных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Β«%elifΒ» (else if), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Β«%elifosΒ» ΠΈ Β«%elifarchΒ» для привязки ΠΊ дистрибутиву ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅;
  • Aldonita Π½ΠΎΠ²Ρ‹Π΅ сСкции Β«%patchlistΒ» ΠΈ Β«%sourcelistΒ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для добавлСния ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ ΠΈ исходных тСкстов простым пСрСчислСниСм ΠΈΠΌΡ‘Π½ Π±Π΅Π· указания Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² записСй (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, вмСсто
    Β«Patch0: popt-1.16-pkgconfig.patchΒ» Π² сСкции %patchlist ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Β«popt-1.16-pkgconfig.patchΒ»);

  • Π’ rpmbuild aldonis ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° динамичСской сборки зависимостСй с ΠΈΡ… Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Π² src.rpm. Π’ spec-Ρ„Π°ΠΉΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сСкции Β«%generate_buildrequiresΒ», содСрТимоС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ обрабатываСтся ΠΊΠ°ΠΊ список зависимостСй (BuildRequires), Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ (Ссли Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ отсутствуСт Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Π° ошибка).
  • Efektivigita ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Β«^Β» для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ вСрсий ΡΡ‚Π°Ρ€ΡˆΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π΄Π°Ρ‚Ρ‹, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ дСйствиС, ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ Β«~Β». НапримСр,
    Β«1.1^20160101Β» ΠΎΡ…Π²Π°Ρ‚ΠΈΡ‚ Π²Π΅Ρ€ΡΠΈΡŽ 1.1 ΠΈ ΠΏΠ°Ρ‚Ρ‡ΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ послС 1 января 2016 Π³ΠΎΠ΄Π°;

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция Β«β€”scmΒ» для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π΅ΠΆΠΈΠΌΠ° Β«%autosetup SCMΒ»;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ встроСнный макрос Β«%{expr:…}Β» для вычислСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ (нСсколько Π΄Π½Π΅ΠΉ Π½Π°Π·Π°Π΄ Ρ‚Π°ΠΊΠΆΠ΅ Π±Ρ‹Π» proponis Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Β«%[ expr ]Β» );
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΎ использованиС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ UTF-8 для строковых Π΄Π°Π½Π½Ρ‹Ρ… Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°Ρ…;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ макросы %build_cflags, %build_cxxflags, %build_fflags ΠΈ %build_ldflags с Ρ„Π»Π°Π³Π°ΠΌΠΈ для компилятора ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Ρ‰ΠΈΠΊΠ°;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ макрос Β«%dnlΒ» (Discard to Next Line) для вставки ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²;
  • Π’ Π±ΠΈΠ½Π΄ΠΈΠ½Π³Π°Ρ… для Python 3 обСспСчСн Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ строк Π² Π²ΠΈΠ΄Π΅ экранированных ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ UTF-8 вмСсто Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…;
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½ Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ бэкСнд Π‘Π” для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ систСм Π±Π΅Π· rpmdb (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Debian);
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡƒΡ‚Ρ€Ρ‹ ARM ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° armv8;
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½Π° бСсшовная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Lua 5.2-5.3, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π°Ρ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ compat Π² ΠΊΠΎΠ΄Π΅.

fonto: opennet.ru

Aldoni komenton