X-Git-Url: http://git.pld-linux.org/?p=packages%2Frpm.git;a=blobdiff_plain;f=rpm.spec;h=4ebca67171db31f2dc25967808a5c42105df38b3;hp=414b142ea728f3a6e36980bb193d594c7e90d0ec;hb=HEAD;hpb=749834ffae4fab8d2aa0549ab9a5e6a924bcef87 diff --git a/rpm.spec b/rpm.spec index 414b142..4ebca67 100644 --- a/rpm.spec +++ b/rpm.spec @@ -11,10 +11,10 @@ %bcond_without audit # audit plugin %bcond_without selinux # SELinux plugin %bcond_without systemd # systemd inhibit plugin +%bcond_without fsverity # fsverity plugin -%define db_ver 5.3.28.0 %define popt_ver 1.15 -%define sover 9.1.2 +%define sover 9.3.0 %if "%{_rpmversion}" >= "4.12" && "%{_rpmversion}" < "5" %define with_recommends_tags 1 @@ -33,13 +33,13 @@ Summary(pt_BR.UTF-8): Gerenciador de pacotes RPM Summary(ru.UTF-8): Менеджер пакетов от RPM Summary(uk.UTF-8): Менеджер пакетів від RPM Name: rpm -Version: 4.16.1.2 -Release: 8 +Version: 4.17.1.1 +Release: 7 Epoch: 1 License: GPL v2 / LGPL v2.1 Group: Base -Source0: http://ftp.rpm.org/releases/rpm-4.16.x/%{name}-%{version}.tar.bz2 -# Source0-md5: 0d10f63a0a4c9517cf3808a601378399 +Source0: http://ftp.rpm.org/releases/rpm-4.17.x/%{name}-%{version}.tar.bz2 +# Source0-md5: 30e5806bdcb06a17cabf23d8f07b6b0f Source1: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc # Source1-md5: 23914bb49fafe7153cee87126d966461 Source2: macros.local @@ -56,14 +56,16 @@ Source12: %{name}.noautoprovfiles Source13: %{name}.noautoreq Source14: %{name}.noautoreqfiles Source15: perl.prov +Source16: libtooldeps.sh +Source17: libtool.attr Patch0: %{name}-man_pl.patch Patch1: %{name}-popt-aliases.patch Patch2: %{name}-perl-macros.patch Patch3: %{name}-perl-req-perlfile.patch Patch4: %{name}-scripts-closefds.patch +Patch5: %{name}-dir-macros-relative.patch Patch6: %{name}-perl_req-INC_dirs.patch Patch7: %{name}-debuginfo.patch -Patch8: %{name}-libtool-deps.patch Patch9: %{name}-builddir-readlink.patch Patch10: %{name}-changelog_order_check_nonfatal.patch Patch11: %{name}-postun-nofail.patch @@ -76,43 +78,44 @@ Patch17: python-internal-build.patch Patch18: missing-macros.patch Patch19: pkgconfig.patch Patch20: uname-deps.patch -Patch21: aarch64.patch +Patch21: arm_abi.patch Patch22: ix86-platforms.patch Patch23: shortcircuited-deps.patch Patch24: cpuinfo-deps.patch Patch25: rpmio-read-proc-files.patch Patch26: allow-at-in-ver-rel.patch -Patch27: no-exeonly-for-elf-reqprov.patch Patch28: default-patch-flags.patch Patch29: %{name}-noarch_py_prov.patch Patch30: missing-ghost-terminate-build.patch Patch31: missing-doc-terminate-build.patch Patch32: noexpand.patch -Patch33: sqlite-db-backend.patch Patch34: skip-symlinks.patch Patch35: pl-po.patch Patch36: build-locale.patch +Patch37: no-exe-for-elf-req.patch +Patch38: gem-in-package-builddir.patch +Patch39: sqlite-log-crash.patch +Patch40: perl-heredoc-matching.patch URL: https://rpm.org/ BuildRequires: acl-devel %{?with_audit:BuildRequires: audit-libs-devel} BuildRequires: autoconf >= 2.63 BuildRequires: automake >= 1:1.10 BuildRequires: bzip2-devel >= 1.0.2-17 -BuildRequires: db-devel >= %{db_ver} -%{?with_systemd:BuildRequires: dbus-devel >= 1.3} -BuildRequires: elfutils-devel >= 0.108 +%{?with_plugins:BuildRequires: dbus-devel >= 1.3} +BuildRequires: elfutils-devel >= 0.159 BuildRequires: gettext-tools >= 0.19.2 +%{?with_imaevm:BuildRequires: ima-evm-utils-devel >= 1.0} BuildRequires: libarchive-devel BuildRequires: libcap-devel -BuildRequires: libmagic-devel BuildRequires: libgcrypt-devel BuildRequires: libgomp-devel >= 6:4.5 -%{?with_imaevm:BuildRequires: libimaevm-devel >= 1.0} +BuildRequires: libmagic-devel %{?with_selinux:BuildRequires: libselinux-devel >= 2.1.0} # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros BuildRequires: libstdc++-devel BuildRequires: libtool >= 1:1.4.2-9 -BuildRequires: lua-devel >= 5.2 +BuildRequires: lua-devel >= 5.3 BuildRequires: patch >= 2.2 BuildRequires: pkgconfig BuildRequires: popt-devel >= %{popt_ver} @@ -126,8 +129,8 @@ BuildRequires: rpm-build >= 4.6 BuildRequires: sqlite3-devel >= 3.22.0 BuildRequires: tcl BuildRequires: xz-devel -BuildRequires: zlib-devel -BuildRequires: zstd-devel +BuildRequires: zlib-devel >= 1.0.5 +BuildRequires: zstd-devel >= 1.3.8 %if %{with apidocs} BuildRequires: doxygen BuildRequires: ghostscript @@ -137,10 +140,10 @@ BuildRequires: tetex-pdftex Requires(posttrans): coreutils Requires: %{name}-base = %{epoch}:%{version}-%{release} Requires: %{name}-lib = %{epoch}:%{version}-%{release} -Requires: rpm-pld-macros >= 1.744 Requires: FHS >= 3.0-2 Requires: libgcrypt Requires: popt >= %{popt_ver} +Requires: rpm-pld-macros >= 2.002 %if %{with recommends_tags} Recommends: rpm-plugin-audit Recommends: rpm-plugin-prioreset @@ -241,10 +244,12 @@ Zawiera on: Summary: RPMs library Summary(pl.UTF-8): Biblioteki RPM-a Group: Libraries -Requires: db >= %{db_ver} +Requires: elfutils-libs >= 0.159 Requires: libmagic >= 1.15-2 Requires: popt >= %{popt_ver} Requires: sqlite3-libs >= 3.22.0 +Requires: zlib >= 1.0.5 +Requires: zstd >= 1.3.8 Obsoletes: rpm-libs < 4.0.2-4 # avoid SEGV caused by mixed db versions Conflicts: poldek < 0.18.1-16 @@ -265,18 +270,26 @@ Summary(ru.UTF-8): Хедеры и библиотеки для программ, Summary(uk.UTF-8): Хедери та бібліотеки для програм, що працюють з пакетами rpm Group: Development/Libraries Requires: %{name}-lib = %{epoch}:%{version}-%{release} +Requires: acl-devel +%{?with_audit:Requires: audit-libs-devel} Requires: bzip2-devel -Requires: db-devel >= %{db_ver} -Requires: elfutils-devel -Requires: libmagic-devel +Requires: elfutils-devel >= 0.159 +Requires: libcap-devel Requires: libgcrypt-devel +Requires: libgomp-devel >= 6:4.5 +Requires: libmagic-devel %if %{with selinux} Requires: libselinux-devel Requires: libsemanage-devel Requires: libsepol-devel %endif +Requires: lua-devel >= 5.3 Requires: popt-devel >= %{popt_ver} -Requires: zlib-devel +Requires: sqlite3-devel >= 3.22.0 +Requires: xz-devel +Requires: zlib-devel >= 1.0.5 +Requires: zstd-devel >= 1.3.8 +Obsoletes: rpm-static < 1:4.15 %description devel The RPM packaging system includes C libraries that make it easy to @@ -356,17 +369,18 @@ Group: Applications/File Requires(pretrans): coreutils Requires(pretrans): findutils Requires: %{name}-utils = %{epoch}:%{version}-%{release} -Requires: rpm-pld-macros-build >= 1.744 Requires: /bin/id Requires: awk Requires: bzip2 Requires: chrpath >= 0.10-4 Requires: cpio +Requires: debugedit Requires: diffutils Requires: elfutils Requires: file >= 4.17 Requires: fileutils Requires: findutils +Requires: rpm-pld-macros-build >= 1.744 %ifarch athlon Requires: gcc >= 3.0.3 %else @@ -431,23 +445,6 @@ Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen. Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM. -%package pythonprov -Summary: Python macros, which simplifies creation of RPM packages with Python software -Summary(pl.UTF-8): Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Pythonie -Group: Applications/File -Requires: %{name} = %{epoch}:%{version}-%{release} -Requires: python3 -Requires: python3-modules -Requires: python3-setuptools - -%description pythonprov -Python macros, which simplifies creation of RPM packages with Python -software. - -%description pythonprov -l pl.UTF-8 -Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w -Pythonie. - %package -n python3-rpm Summary: Python 3 interface to RPM library Summary(pl.UTF-8): Interfejs Pythona 3 do biblioteki RPM-a @@ -533,8 +530,8 @@ This plugin adds support for enforcing and verifying IMA file signatures in an rpm. %description plugin-ima -l pl.UTF-8 -Ta wtyczka dodaje obsługę wymuszania i weryfikacji podpisów plików -IMA w RPM-ie. +Ta wtyczka dodaje obsługę wymuszania i weryfikacji podpisów plików IMA +w RPM-ie. %package plugin-prioreset Summary: Plugin for resetting scriptlet priorities for SysV init @@ -565,6 +562,54 @@ Plugin for SELinux functionality. %description plugin-selinux -l pl.UTF-8 Wtyczka do funkcjonalności SELinux. +%package plugin-fsverity +Summary: Plugin for fsverity file signatures +Summary(pl.UTF-8): Wtyczka do sygnatur plików fsverity +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-fsverity +Plugin for fsverity file signatures. + +%description plugin-fsverity -l pl.UTF-8 +Wtyczka do sygnatur plików fsverity. + +%package plugin-fapolicyd +Summary: Plugin for fapolicyd support +Summary(pl.UTF-8): Wtyczka do obsługi fapolicyd +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-fapolicyd +Plugin for fapolicyd support. + +See https://people.redhat.com/sgrubb/fapolicyd/ for information about +the fapolicyd daemon. + +%description plugin-fapolicyd -l pl.UTF-8 +Wtyczka do obsługi fapolicyd. + +Informacje na temat demona fapolicyd można znaleźć pod adresem +. + +%package plugin-dbus-announce +Summary: Plugin for announcing transactions on the DBUS +Summary(pl.UTF-8): Wtyczka ogłaszająca transakcje przez DBUS +Group: Base +Requires: %{name}-lib = %{epoch}:%{version}-%{release} + +%description plugin-dbus-announce +The plugin announces basic information about rpm transactions to the +system DBUS - like packages installed or removed. Other programs can +subscribe to the signals to get notified when packages on the system +change. + +%description plugin-dbus-announce -l pl.UTF-8 +Ta wtyczka ogłasza przez podstawowe szynę systemową DBUS informacje o +transakcjach RPM-a, takie jak pakiety, które są instalowane lub +usuwane. Inne programy mogą zasubskrybować sygnały powiadamiające o +zmianach w pakietach systemowych. + %package sign Summary: Package signing support Summary(pl.UTF-8): Obsługa podpisywania pakietów @@ -598,10 +643,10 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 %patch6 -p0 %patch7 -p1 -%patch8 -p1 -%patch9 -p1 +#%patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 @@ -619,16 +664,18 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze %patch24 -p1 %patch25 -p1 %patch26 -p1 -%patch27 -p1 %patch28 -p1 -%patch29 -p1 +#%patch29 -p1 %patch30 -p1 %patch31 -p1 %patch32 -p1 -%patch33 -p1 %patch34 -p1 %patch35 -p1 %patch36 -p1 +%patch37 -p1 +%patch38 -p1 +%patch39 -p1 +%patch40 -p1 %{__rm} po/*.gmo @@ -639,8 +686,6 @@ install %{SOURCE15} scripts/perl.prov.in # generate Group translations to *.po awk -f %{SOURCE6} %{SOURCE5} -%{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py - %build %{__libtoolize} %{__aclocal} @@ -660,7 +705,6 @@ awk -f %{SOURCE6} %{SOURCE5} WITH_PERL_VERSION=no \ __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \ __GPG=%{_bindir}/gpg \ - --enable-bdb \ --enable-bdb-ro \ --enable-ndb \ %{!?with_plugins:--disable-plugins} \ @@ -672,8 +716,8 @@ awk -f %{SOURCE6} %{SOURCE5} --with-archive \ --with-audit%{!?with_audit:=no} \ --with-cap \ + --with-fapolicyd \ %{?with_imaevm:--with-imaevm} \ - --with-lua \ %{?with_python3:--enable-python} \ --with-selinux%{!?with_selinux:=no} \ --with-vendor=pld @@ -690,7 +734,7 @@ cd python %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/{rpm,pki/rpm-gpg}} \ - $RPM_BUILD_ROOT{/var/lib/{banner,rpm},/usr/lib/.build-id} + $RPM_BUILD_ROOT/var/lib/{banner,rpm} cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc @@ -768,6 +812,9 @@ cp -p %{SOURCE12} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles cp -p %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles +cp -p %{SOURCE16} $RPM_BUILD_ROOT%{_rpmlibdir}/libtooldeps.sh +cp -p %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/fileattrs/libtool.attr + # move rpm to /bin %{__mv} $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmquery @@ -928,8 +975,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f # valgrind suppression file for rpm %{_rpmlibdir}/rpm.supp -%dir /usr/lib/.build-id - %files base %defattr(644,root,root,755) %dir %{_sysconfdir}/rpm @@ -970,9 +1015,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_bindir}/rpm2cpio %attr(755,root,root) %{_bindir}/rpmgraph %attr(755,root,root) %{_rpmlibdir}/rpm2cpio.sh -%attr(755,root,root) %{_rpmlibdir}/find-debuginfo.sh %attr(755,root,root) %{_rpmlibdir}/tgpg -%attr(755,root,root) %{_rpmlibdir}/debugedit %attr(755,root,root) %{_rpmlibdir}/rpmdeps %{_mandir}/man8/rpm2archive.8* %{_mandir}/man8/rpm2cpio.8* @@ -997,19 +1040,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f # needs hacked pkg-config to return anything %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh %attr(755,root,root) %{_rpmlibdir}/mkinstalldirs - %attr(755,root,root) %{_rpmlibdir}/fontconfig.prov -# must be here for "Requires: rpm-*prov" to work -#%{_rpmlibdir}/macros.d/cmake -#%{_rpmlibdir}/macros.d/gstreamer -#%{_rpmlibdir}/macros.d/libtool -#%{_rpmlibdir}/macros.d/perl -#%{_rpmlibdir}/macros.d/pkgconfig -#%{_rpmlibdir}/macros.d/python -#%{_rpmlibdir}/macros.d/selinux -#%{_rpmlibdir}/macros.d/tcl -#%{_rpmlibdir}/macros.rpmbuild - %attr(755,root,root) %{_rpmlibdir}/check-buildroot %attr(755,root,root) %{_rpmlibdir}/check-prereqs %attr(755,root,root) %{_rpmlibdir}/check-rpaths @@ -1018,7 +1049,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %attr(755,root,root) %{_rpmlibdir}/find-requires %attr(755,root,root) %{_rpmlibdir}/ocamldeps.sh %attr(755,root,root) %{_rpmlibdir}/script.req -%attr(755,root,root) %{_rpmlibdir}/sepdebugcrcfix %dir %{_rpmlibdir}/fileattrs %{_rpmlibdir}/fileattrs/debuginfo.attr @@ -1028,11 +1058,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %{_rpmlibdir}/fileattrs/libtool.attr %{_rpmlibdir}/fileattrs/metainfo.attr %{_rpmlibdir}/fileattrs/ocaml.attr -%{_rpmlibdir}/fileattrs/perl.attr -%{_rpmlibdir}/fileattrs/perllib.attr %{_rpmlibdir}/fileattrs/pkgconfig.attr -%{_rpmlibdir}/fileattrs/python.attr -%{_rpmlibdir}/fileattrs/pythondist.attr %{_rpmlibdir}/fileattrs/script.attr %attr(755,root,root) %{_bindir}/gendiff @@ -1048,12 +1074,10 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %files perlprov %defattr(644,root,root,755) +%{_rpmlibdir}/fileattrs/perl.attr +%{_rpmlibdir}/fileattrs/perllib.attr %attr(755,root,root) %{_rpmlibdir}/perl.* -%files pythonprov -%defattr(644,root,root,755) -%attr(755,root,root) %{_rpmlibdir}/pythondistdeps.py - %if %{with python3} %files -n python3-rpm %defattr(644,root,root,755) @@ -1096,6 +1120,25 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/rpm-plugins/selinux.so %{_mandir}/man8/rpm-plugin-selinux.8* + +%if %{with fsverity} +%files plugin-fsverity +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/fsverity.so +%endif + +%files plugin-fapolicyd +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/fapolicyd.so +%{_mandir}/man8/rpm-plugin-fapolicyd.8* + +%if %{with systemd} +%files plugin-dbus-announce +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rpm-plugins/dbus_announce.so +%{_mandir}/man8/rpm-plugin-dbus-announce.8* +%{_sysconfdir}/dbus-1/system.d/org.rpm.conf +%endif %endif %files sign @@ -1106,5 +1149,5 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f %if %{with apidocs} %files apidocs %defattr(644,root,root,755) -%doc doc/librpm/html/* +%doc docs/librpm/html/* %endif