RPM 4.15 шығарылымы

Екі жылға жуық дамудан кейін орын алды пакет менеджерінің шығарылымы 4.15.0 RPM. RPM4 жобасын Red Hat әзірлеген және RHEL (соның ішінде CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux туынды жобалары), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS сияқты дистрибутивтерде қолданылады. Тизен және басқалар. Бұрын тәуелсіз даму тобы дамыған жоба RPM5, ол RPM4-ке тікелей қатысы жоқ және қазіргі уақытта бас тартылған (2010 жылдан бері жаңартылмаған).

Ең көрнекті жақсартулар RPM 4.15 кезінде:

  • Chroot ортасында артықшылықсыз жинаққа арналған эксперименттік қолдау қосылды;
  • Орындалды көп ядролы жүйелерде пакеттерді құрастыруды параллелизациялауды қолдау. Ағындар санының шегі «%_smp_build_ncpus» макросы және $RPM_BUILD_NCPUS айнымалысы арқылы орнатылады. Орталық процессорлардың санын анықтау үшін «%getncpus» макросы ұсынылады;
  • Spec файлдары енді шартты «%elif» операторын (егер болса), сонымен қатар тарату мен архитектураға байланыстыру үшін «%elifos» және «%elifarch» опцияларын қолдайды;
  • Қосылды жаңа бөлімдер "% patchlist" және "%sourcelist", оларды енгізу нөмірлерін көрсетпей жай ғана атауларды тізімдеу арқылы патчтар мен көздерді қосу үшін пайдалануға болады (мысалы,
    % patchlist бөлімінде «Patch0: popt-1.16-pkgconfig.patch» сіз «popt-1.16-pkgconfig.patch» көрсете аласыз);

  • rpmbuild ішінде қосылды src.rpm ішіне қосу арқылы тәуелділіктерді динамикалық жинақтауды қолдау. Арнайы файлда мазмұны тексеруді қажет ететін тәуелділіктер тізімі (BuildRequires) ретінде өңделетін «%generate_buildrequires» бөліміне қолдау қосылды (егер тәуелділік жоқ болса, қате көрсетіледі).
  • Орындалды «^» операторы «~» операторына қарама-қарсы әрекетті орындай отырып, берілген күннен ескі нұсқаларды тексеру үшін пайдаланылады. Мысалы,
    "1.1^20160101" 1.1 нұсқасын және 1 жылдың 2016 қаңтарынан кейін қосылған патчтарды қамтиды;

  • «%autosetup SCM» режимін қосу үшін «--scm» опциясы қосылды;
  • Ерікті өрнектерді бағалауға арналған кірістірілген макрос "%{expr:...}" қосылды (бірнеше күн бұрын да бар ұсынылған пішімі "%[ 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

пікір қалдыру