ВСрсия RPM 4.15

Π‘Π»Π΅Π΄ Π±Π»ΠΈΠ·ΠΎ Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° сС ΡΡŠΡΡ‚ΠΎΡ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€Π° Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ ΠžΠ±ΠΎΡ€ΠΎΡ‚ΠΈ 4.15.0. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ RPM4 Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΎΡ‚ Red Hat ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² дистрибуции ΠΊΠ°Ρ‚ΠΎ RHEL (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ. ΠŸΡ€Π΅Π΄ΠΈΡˆΠ΅Π½ нСзависим Π΅ΠΊΠΈΠΏ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ RPM5, ΠΊΠΎΠΉΡ‚ΠΎ Π½Π΅ Π΅ пряко ΡΠ²ΡŠΡ€Π·Π°Π½ с RPM4 ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅ изоставСн (Π½Π΅ Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ ΠΎΡ‚ 2010 Π³.).

Най-Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ подобрСния ΠΏΡ€ΠΈ RPM 4.15:

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ СкспСримСнтална ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½ асСмблиранС Π² chroot срСда;
  • Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° сглобяванС Π½Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ Π½Π° многоядрСни систСми. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π·Π° броя Π½Π° Π½ΠΈΡˆΠΊΠΈΡ‚Π΅ сС Π·Π°Π΄Π°Π²Π° Ρ‡Ρ€Π΅Π· макроса β€ž%_smp_build_ncpusβ€œ ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° $RPM_BUILD_NCPUS. Π—Π° опрСдСлянС Π½Π° броя Π½Π° процСсоритС сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° ΠΌΠ°ΠΊΡ€ΠΎΡΡŠΡ‚ β€ž% getncpusβ€œ;
  • Π‘ΠΏΠ΅Ρ† Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅Ρ‚Π΅ Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ условния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ β€ž%elifβ€œ (Π΄Ρ€ΡƒΠ³ΠΎ Π°ΠΊΠΎ), ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΠΎΠΏΡ†ΠΈΠΈΡ‚Π΅ β€ž%elifosβ€œ ΠΈ β€ž%elifarchβ€œ Π·Π° ΠΎΠ±Π²ΡŠΡ€Π·Π²Π°Π½Π΅ към дистрибуцията ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π°;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΎ Π½ΠΎΠ²ΠΈ сСкции "%patchlist" ΠΈ "%sourcelist", ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° добавянС Π½Π° ΠΊΠΎΡ€Π΅ΠΊΡ†ΠΈΠΈ ΠΈ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈ Ρ‡Ρ€Π΅Π· просто изброяванС Π½Π° ΠΈΠΌΠ΅Π½Π° Π±Π΅Π· посочванС Π½Π° Π½ΠΎΠΌΠ΅Ρ€Π° Π½Π° записи (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ вмСсто
    β€žPatch0: popt-1.16-pkgconfig.patchβ€œ Π² Ρ€Π°Π·Π΄Π΅Π»Π° %patchlist ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° посочитС β€žpopt-1.16-pkgconfig.patchβ€œ);

  • Π’ rpmbuild Π΄ΠΎΠ±Π°Π²ΠΈ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ сглобяванС Π½Π° зависимости с Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅Ρ‚ΠΎ ΠΈΠΌ Π² src.rpm. Π’ спСцификационния Ρ„Π°ΠΉΠ» Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° сСкцията β€ž%generate_buildrequiresβ€œ, Ρ‡ΠΈΠ΅Ρ‚ΠΎ ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅ сС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π²Π° ΠΊΠ°Ρ‚ΠΎ списък със зависимости (BuildRequires), изискващи ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° (Π°ΠΊΠΎ зависимостта липсва, Ρ‰Π΅ сС ΠΏΠΎΠΊΠ°ΠΆΠ΅ Π³Ρ€Π΅ΡˆΠΊΠ°).
  • Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΎ ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΡŠΡ‚ "^" сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π·Π° вСрсии, ΠΏΠΎ-стари ΠΎΡ‚ Π΄Π°Π΄Π΅Π½Π° Π΄Π°Ρ‚Π°, ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΡ‚ΠΎ Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° "~". НапримСр,
    β€ž1.1^20160101β€œ Ρ‰Π΅ ΠΏΠΎΠΊΡ€ΠΈΠ²Π° вСрсия 1.1 ΠΈ ΠΊΠΎΡ€Π΅ΠΊΡ†ΠΈΠΈ, Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ слСд 1 януари 2016 Π³.;

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ опция "--scm" Π·Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ€Π΅ΠΆΠΈΠΌ "%autosetup SCM";
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π²Π³Ρ€Π°Π΄Π΅Π½ макрос "%{expr:...}" Π·Π° изчисляванС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ ΠΈΠ·Ρ€Π°Π·ΠΈ (ΠΏΡ€Π΅Π΄ΠΈ няколко Π΄Π½ΠΈ имашС ΡΡŠΡ‰ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ "%[ ΠΈΠ·Ρ€Π°Π· ]");
  • Π“Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°, Ρ‡Π΅ ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π΅ UTF-8 Π·Π° Π½ΠΈΠ·ΠΎΠ²ΠΈ Π΄Π°Π½Π½ΠΈ Π² Π·Π°Π³Π»Π°Π²ΠΊΠΈΡ‚Π΅;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ макроси %build_cflags, %build_cxxflags, %build_fflags ΠΈ %build_ldflags с Ρ„Π»Π°Π³ΠΎΠ²Π΅ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° ΠΈ Π»ΠΈΠ½ΠΊΠ΅Ρ€Π°;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ макрос β€œ%dnl” (ΠžΡ‚Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° слСдващия Ρ€Π΅Π΄) Π·Π° вмъкванС Π½Π° ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈ;
  • Π‘Π²ΡŠΡ€Π·Π²Π°Π½ΠΈΡΡ‚Π° Π·Π° Python 3 Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Ρ‚, Ρ‡Π΅ Π½ΠΈΠ·ΠΎΠ²Π΅Ρ‚Π΅ сС Π²Ρ€ΡŠΡ‰Π°Ρ‚ ΠΊΠ°Ρ‚ΠΎ Π΅ΠΊΡ€Π°Π½ΠΈΡ€Π°Π½ΠΈ UTF-8 послСдоватСлности вмСсто Π±Π°ΠΉΡ‚ΠΎΠ²ΠΈ Π΄Π°Π½Π½ΠΈ;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π±Π΅ΠΊΠ΅Π½Π΄ Π½Π° Ρ„ΠΈΠΊΡ‚ΠΈΠ²Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° подобряванС Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° систСми Π±Π΅Π· rpmdb (Π½Π°ΠΏΡ€. Debian);
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Π½Π΅ Π½Π° ARM Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΈ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° armv8;
  • ΠžΡΠΈΠ³ΡƒΡ€ΡΠ²Π° Π±Π΅Π·ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Lua 5.2-5.3, която Π½Π΅ изисква ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΈ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ†ΠΈΠΈ Π² ΠΊΠΎΠ΄Π°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€