ΠΠΎΡΠ»Π΅ ΠΏΠΎΡΡΠΈ Π΄Π²ΡΡ Π»Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ΅Π»ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° . ΠΡΠΎΠ΅ΠΊΡ RPM4 ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Red Hat ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠ°ΠΊΠΈΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π°Ρ , ΠΊΠ°ΠΊ RHEL (Π²ΠΊΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ Π΄ΡΡΠ³ΠΈΡ . Π Π°Π½Π΅Π΅ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡ , ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π½Π΅ ΡΠ²ΡΠ·Π°Π½ Ρ RPM4 ΠΈ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π·Π°Π±ΡΠΎΡΠ΅Π½ (Π½Π΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ»ΡΡ Ρ 2010 Π³ΠΎΠ΄Π°).
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅ΡΠ½ΡΠ΅ Π² RPM 4.15:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅ΠΏΡΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ Π² chroot-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΈ;
- ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ°ΡΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ²Π°Π½ΠΈΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΡΠ΄Π΅ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ . ΠΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠΈΡΠ»Π° ΠΏΠΎΡΠΎΠΊΠΎΠ² Π·Π°Π΄Π°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΠΌΠ°ΠΊΡΠΎΡ Β«%_smp_build_ncpusΒ» ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ $RPM_BUILD_NCPUS. ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΡΠ»Π° CPU ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΌΠ°ΠΊΡΠΎΡ Β«%getncpusΒ»;
- Π spec-ΡΠ°ΠΉΠ»Π°Ρ ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ»ΠΎΠ²Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Β«%elifΒ» (else if), Π° ΡΠ°ΠΊΠΆΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Β«%elifosΒ» ΠΈ Β«%elifarchΒ» Π΄Π»Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Ρ ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅;
- Π½ΠΎΠ²ΡΠ΅ ΡΠ΅ΠΊΡΠΈΠΈ Β«%patchlistΒ» ΠΈ Β«%sourcelistΒ», ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΠΏΠ°ΡΡΠ΅ΠΉ ΠΈ ΠΈΡΡ
ΠΎΠ΄Π½ΡΡ
ΡΠ΅ΠΊΡΡΠΎΠ² ΠΏΡΠΎΡΡΡΠΌ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠΌΡΠ½ Π±Π΅Π· ΡΠΊΠ°Π·Π°Π½ΠΈΡ Π½ΠΎΠΌΠ΅ΡΠΎΠ² Π·Π°ΠΏΠΈΡΠ΅ΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ
Β«Patch0: popt-1.16-pkgconfig.patchΒ» Π² ΡΠ΅ΠΊΡΠΈΠΈ %patchlist ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Β«popt-1.16-pkgconfig.patchΒ»); - Π rpmbuild ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ Ρ ΠΈΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π² src.rpm. Π spec-ΡΠ°ΠΉΠ»Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΠΊΡΠΈΠΈ Β«%generate_buildrequiresΒ», ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠΏΠΈΡΠΎΠΊ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ (BuildRequires), ΡΡΠ΅Π±ΡΡΡΠΈΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ (Π΅ΡΠ»ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°).
- ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Β«^Β» Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²Π΅ΡΡΠΈΠΉ ΡΡΠ°ΡΡΠ΅ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π΄Π°ΡΡ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Β«~Β». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,
Β«1.1^20160101Β» ΠΎΡ Π²Π°ΡΠΈΡ Π²Π΅ΡΡΠΈΡ 1.1 ΠΈ ΠΏΠ°ΡΡΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠ΅ ΠΏΠΎΡΠ»Π΅ 1 ΡΠ½Π²Π°ΡΡ 2016 Π³ΠΎΠ΄Π°; - ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠΏΡΠΈΡ Β«βscmΒ» Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΆΠΈΠΌΠ° Β«%autosetup SCMΒ»;
- ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΌΠ°ΠΊΡΠΎΡ Β«%{expr:β¦}Β» Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ (Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ Π½Π°Π·Π°Π΄ ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ» ΡΠΎΡΠΌΠ°Ρ Β«%[ 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 Π² ΠΊΠΎΠ΄Π΅.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
