]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
up to 4.16.1.3 (fixes CVE-2021-3421 CVE-2021-20271 CVE-2021-20266)
[packages/rpm.git] / rpm.spec
index c7bef13af7a728bb7b48c7aac45f3f5f74596700..cb94a382e78ea92149021b71880901b9d45badcd 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -3,20 +3,28 @@
 # - when adopting, use 4.5 ticket for checklist: https://bugs.launchpad.net/pld-linux/+bug/262985
 #
 # Conditional build:
 # - when adopting, use 4.5 ticket for checklist: https://bugs.launchpad.net/pld-linux/+bug/262985
 #
 # Conditional build:
-%bcond_without apidocs         # don't generate documentation with doxygen
-%bcond_without python3         # don't build python bindings
-%bcond_without plugins         # build plugins
-%bcond_without recommends_tags # build without Recommends tag (bootstrapping)
-%bcond_with    imaevm          # build with IMA/EVM support (requires libimaevm from ima-evm-utils)
+%bcond_without apidocs         # Doxygen based API documentation
+%bcond_without python3         # Python (3) bindings
+%bcond_without plugins         # plugins (all, including: audit, imaevm, selinux, systemd)
+%bcond_without recommends_tags # use of Recommends tag (disable for bootstrapping)
+%bcond_with    imaevm          # IMA/EVM signing support (requires libimaevm from ima-evm-utils)
+%bcond_without audit           # audit plugin
+%bcond_without selinux         # SELinux plugin
+%bcond_without systemd         # systemd inhibit plugin
 
 %define                db_ver          5.3.28.0
 %define                popt_ver        1.15
 
 %define                db_ver          5.3.28.0
 %define                popt_ver        1.15
-%define                sover           9.1.0
+%define                sover           9.1.3
 
 %if "%{_rpmversion}" >= "4.12" && "%{_rpmversion}" < "5"
 %define        with_recommends_tags    1
 %endif
 
 
 %if "%{_rpmversion}" >= "4.12" && "%{_rpmversion}" < "5"
 %define        with_recommends_tags    1
 %endif
 
+%if %{without plugins}
+%undefine      with_audit
+%undefine      with_selinux
+%undefine      with_systemd
+%endif
 Summary:       RPM Package Manager
 Summary(de.UTF-8):     RPM Packet-Manager
 Summary(es.UTF-8):     Gestor de paquetes RPM
 Summary:       RPM Package Manager
 Summary(de.UTF-8):     RPM Packet-Manager
 Summary(es.UTF-8):     Gestor de paquetes RPM
@@ -25,13 +33,13 @@ Summary(pt_BR.UTF-8):       Gerenciador de pacotes RPM
 Summary(ru.UTF-8):     Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
 Summary(ru.UTF-8):     Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
-Version:       4.16.0
-Release:       0.7
+Version:       4.16.1.3
+Release:       1
 Epoch:         1
 License:       GPL v2 / LGPL v2.1
 Group:         Base
 Source0:       http://ftp.rpm.org/releases/rpm-4.16.x/%{name}-%{version}.tar.bz2
 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: 434e166a812e35ef181f6dd176326920
+# Source0-md5: 576277fafa5d0681a8a92c8716aca5f0
 Source1:       ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
 # Source1-md5: 23914bb49fafe7153cee87126d966461
 Source2:       macros.local
 Source1:       ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
 # Source1-md5: 23914bb49fafe7153cee87126d966461
 Source2:       macros.local
@@ -40,7 +48,6 @@ Source4:      %{name}.sysconfig
 Source5:       %{name}.groups
 Source6:       %{name}-groups-po.awk
 Source7:       %{name}-install-tree
 Source5:       %{name}.groups
 Source6:       %{name}-groups-po.awk
 Source7:       %{name}-install-tree
-Source8:       %{name}-hrmib-cache
 Source9:       %{name}-user_group.sh
 # http://svn.pld-linux.org/banner.sh/
 Source10:      banner.sh
 Source9:       %{name}-user_group.sh
 # http://svn.pld-linux.org/banner.sh/
 Source10:      banner.sh
@@ -49,9 +56,6 @@ Source12:     %{name}.noautoprovfiles
 Source13:      %{name}.noautoreq
 Source14:      %{name}.noautoreqfiles
 Source15:      perl.prov
 Source13:      %{name}.noautoreq
 Source14:      %{name}.noautoreqfiles
 Source15:      perl.prov
-Source16:      %{name}db_checkversion.c
-Source17:      %{name}db_reset.c
-Source18:      dbupgrade.sh
 Patch0:                %{name}-man_pl.patch
 Patch1:                %{name}-popt-aliases.patch
 Patch2:                %{name}-perl-macros.patch
 Patch0:                %{name}-man_pl.patch
 Patch1:                %{name}-popt-aliases.patch
 Patch2:                %{name}-perl-macros.patch
@@ -69,7 +73,7 @@ Patch14:      %{name}-ignore-missing-macro-files.patch
 Patch15:       x32.patch
 Patch16:       rpm5-db-compat.patch
 Patch17:       python-internal-build.patch
 Patch15:       x32.patch
 Patch16:       rpm5-db-compat.patch
 Patch17:       python-internal-build.patch
-Patch18:       rpmversion.patch
+Patch18:       missing-macros.patch
 Patch19:       pkgconfig.patch
 Patch20:       uname-deps.patch
 Patch21:       aarch64.patch
 Patch19:       pkgconfig.patch
 Patch20:       uname-deps.patch
 Patch21:       aarch64.patch
@@ -77,37 +81,48 @@ Patch22:    ix86-platforms.patch
 Patch23:       shortcircuited-deps.patch
 Patch24:       cpuinfo-deps.patch
 Patch25:       rpmio-read-proc-files.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
 URL:           https://rpm.org/
 BuildRequires: acl-devel
 URL:           https://rpm.org/
 BuildRequires: acl-devel
-BuildRequires: db-devel >= %{db_ver}
+%{?with_audit:BuildRequires:   audit-libs-devel}
 BuildRequires: autoconf >= 2.63
 BuildRequires: autoconf >= 2.63
-BuildRequires: automake >= 1.4
+BuildRequires: automake >= 1:1.10
 BuildRequires: bzip2-devel >= 1.0.2-17
 BuildRequires: bzip2-devel >= 1.0.2-17
+BuildRequires: db-devel >= %{db_ver}
+%{?with_systemd:BuildRequires: dbus-devel >= 1.3}
 BuildRequires: elfutils-devel >= 0.108
 BuildRequires: gettext-tools >= 0.19.2
 BuildRequires: libarchive-devel
 BuildRequires: libcap-devel
 BuildRequires: libmagic-devel
 BuildRequires: libgcrypt-devel
 BuildRequires: elfutils-devel >= 0.108
 BuildRequires: gettext-tools >= 0.19.2
 BuildRequires: libarchive-devel
 BuildRequires: libcap-devel
 BuildRequires: libmagic-devel
 BuildRequires: libgcrypt-devel
-%if %{with plugins}
-BuildRequires: audit-libs-devel
-BuildRequires: dbus-devel
+BuildRequires: libgomp-devel >= 6:4.5
 %{?with_imaevm:BuildRequires:  libimaevm-devel >= 1.0}
 %{?with_imaevm:BuildRequires:  libimaevm-devel >= 1.0}
-BuildRequires: libselinux-devel >= 2.1.0
-%endif
+%{?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
 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
 BuildRequires: libstdc++-devel
 BuildRequires: libtool >= 1:1.4.2-9
-BuildRequires: ossp-uuid-devel
+BuildRequires: lua-devel >= 5.2
 BuildRequires: patch >= 2.2
 BuildRequires: patch >= 2.2
-BuildRequires: pkgconfig(lua) >= 5.1
+BuildRequires: pkgconfig
 BuildRequires: popt-devel >= %{popt_ver}
 BuildRequires: popt-devel >= %{popt_ver}
-BuildRequires: python3-modules
+BuildRequires: python3-modules >= 1:3.2
 %if %{with python3}
 %if %{with python3}
-BuildRequires: python3-devel
+BuildRequires: python3-devel >= 1:3.2
 BuildRequires: rpm-pythonprov
 BuildRequires: rpmbuild(macros) >= 1.750
 %endif
 BuildRequires: rpm-pythonprov
 BuildRequires: rpmbuild(macros) >= 1.750
 %endif
+BuildRequires: rpm-build >= 4.6
 BuildRequires: sqlite3-devel >= 3.22.0
 BuildRequires: tcl
 BuildRequires: xz-devel
 BuildRequires: sqlite3-devel >= 3.22.0
 BuildRequires: tcl
 BuildRequires: xz-devel
@@ -132,8 +147,8 @@ Recommends: rpm-plugin-prioreset
 Recommends:    rpm-plugin-syslog
 Recommends:    rpm-plugin-systemd-inhibit
 %endif
 Recommends:    rpm-plugin-syslog
 Recommends:    rpm-plugin-systemd-inhibit
 %endif
-Obsoletes:     rpm-utils-perl
-Obsoletes:     rpm-utils-static
+Obsoletes:     rpm-utils-perl < 1:4.15
+Obsoletes:     rpm-utils-static < 1:4.15
 Conflicts:     glibc < 2.2.92
 # db4.6 poldek needed
 Conflicts:     poldek < 0.21-0.20070703.00.3
 Conflicts:     glibc < 2.2.92
 # db4.6 poldek needed
 Conflicts:     poldek < 0.21-0.20070703.00.3
@@ -206,8 +221,8 @@ Summary:    RPM base package - scripts used by rpm packages themselves
 Summary(pl.UTF-8):     Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
 Group:         Base
 Requires:      filesystem
 Summary(pl.UTF-8):     Podstawowy pakiet RPM - skrypty używane przez same pakiety rpm
 Group:         Base
 Requires:      filesystem
-Obsoletes:     rpm-scripts
-Obsoletes:     vserver-rpm
+Obsoletes:     rpm-scripts < 4.4
+Obsoletes:     vserver-rpm < 1
 
 %description base
 The RPM base package contains scripts used by rpm packages themselves.
 
 %description base
 The RPM base package contains scripts used by rpm packages themselves.
@@ -229,7 +244,8 @@ Group:              Libraries
 Requires:      db >= %{db_ver}
 Requires:      libmagic >= 1.15-2
 Requires:      popt >= %{popt_ver}
 Requires:      db >= %{db_ver}
 Requires:      libmagic >= 1.15-2
 Requires:      popt >= %{popt_ver}
-Obsoletes:     rpm-libs
+Requires:      sqlite3-libs >= 3.22.0
+Obsoletes:     rpm-libs < 4.0.2-4
 # avoid SEGV caused by mixed db versions
 Conflicts:     poldek < 0.18.1-16
 
 # avoid SEGV caused by mixed db versions
 Conflicts:     poldek < 0.18.1-16
 
@@ -440,7 +456,7 @@ Group:              Development/Languages/Python
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      python3
 Obsoletes:     python-rpm < 1:4.16.0
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      python3
 Obsoletes:     python-rpm < 1:4.16.0
-Obsoletes:     rpm-python
+Obsoletes:     rpm-python < 4.0.2-50
 
 %description -n python3-rpm
 The python3-rpm package contains a module which permits applications
 
 %description -n python3-rpm
 The python3-rpm package contains a module which permits applications
@@ -468,31 +484,47 @@ Python 3 para manipular pacotes e bancos de dados RPM.
 
 %package plugin-audit
 Summary:       Plugin for logging audit events on package operations
 
 %package plugin-audit
 Summary:       Plugin for logging audit events on package operations
+Summary(pl.UTF-8):     Wtyczka do logowania zdarzeń audytowych przy operacjach na pakietach
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-audit
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-audit
-Plugin for libaudit support
+Plugin for libaudit support.
+
+%description plugin-audit -l pl.UTF-8
+Wtyczka do obsługi libaudit.
 
 %package plugin-syslog
 Summary:       Plugin for syslog functionality
 
 %package plugin-syslog
 Summary:       Plugin for syslog functionality
+Summary(pl.UTF-8):     Wtyczka do funkcjonalności sysloga
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-syslog
 This plugin exports RPM actions to the system log.
 
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-syslog
 This plugin exports RPM actions to the system log.
 
+%description plugin-syslog -l pl.UTF-8
+Ta wtyczka eksportuje akcje RPM-a do logu systemowego.
+
 %package plugin-systemd-inhibit
 Summary:       Plugin for systemd inhibit functionality
 %package plugin-systemd-inhibit
 Summary:       Plugin for systemd inhibit functionality
+Summary(pl.UTF-8):     Wtyczka do funkcjonalności systemd inhibit
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
+Requires:      dbus >= 1.3
 
 %description plugin-systemd-inhibit
 This plugin blocks systemd from entering idle, sleep or shutdown while
 an rpm transaction is running using the systemd-inhibit mechanism.
 
 
 %description plugin-systemd-inhibit
 This plugin blocks systemd from entering idle, sleep or shutdown while
 an rpm transaction is running using the systemd-inhibit mechanism.
 
+%description plugin-systemd-inhibit -l pl.UTF-8
+Ta wtyczka blokuje systemd przed wejściem w stan bezczynności (idle),
+uśpienia (sleep) lub zamykania (shutdown) podczas trwania transakcji
+RPM-a, korzystając z mechanizmu systemd-inhibit.
+
 %package plugin-ima
 Summary:       Plugin for IMA file signatures
 %package plugin-ima
 Summary:       Plugin for IMA file signatures
+Summary(pl.UTF-8):     Wtyczka do sygnatur plików IMA
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
@@ -500,8 +532,13 @@ Requires:  %{name}-lib = %{epoch}:%{version}-%{release}
 This plugin adds support for enforcing and verifying IMA file
 signatures in an rpm.
 
 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.
+
 %package plugin-prioreset
 Summary:       Plugin for resetting scriptlet priorities for SysV init
 %package plugin-prioreset
 Summary:       Plugin for resetting scriptlet priorities for SysV init
+Summary(pl.UTF-8):     Wtyczka do resetowania priorytetu skryptletów przy inicie SysV
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
@@ -510,8 +547,14 @@ This plugin is useful on legacy SysV init systems if you run rpm
 transactions with nice/ionice priorities. Should not be used on
 systemd systems.
 
 transactions with nice/ionice priorities. Should not be used on
 systemd systems.
 
+%description plugin-prioreset -l pl.UTF-8
+Ta wtyczka jest przydatna w systemach ze starym procesem init w wersji
+SysV, jeżeli transakcje RPM-a są uruchamiane z priorytetami
+nice/ionice. Nie powinna być używana w systemach z systemd.
+
 %package plugin-selinux
 Summary:       Plugin for SELinux functionality
 %package plugin-selinux
 Summary:       Plugin for SELinux functionality
+Summary(pl.UTF-8):     Wtyczka do funkcjonalności SELinux
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 Requires:      libselinux >= 2.1.0
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 Requires:      libselinux >= 2.1.0
@@ -519,14 +562,21 @@ Requires: libselinux >= 2.1.0
 %description plugin-selinux
 Plugin for SELinux functionality.
 
 %description plugin-selinux
 Plugin for SELinux functionality.
 
+%description plugin-selinux -l pl.UTF-8
+Wtyczka do funkcjonalności SELinux.
+
 %package sign
 Summary:       Package signing support
 %package sign
 Summary:       Package signing support
+Summary(pl.UTF-8):     Obsługa podpisywania pakietów
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description sign
 This package contains support for digitally signing RPM packages.
 
 Group:         Base
 Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description sign
 This package contains support for digitally signing RPM packages.
 
+%description sign -l pl.UTF-8
+Ten pakiet zawiera obsługę cyfrowego podpisywania pakietów RPM.
+
 %package apidocs
 Summary:       RPM API documentation and guides
 Summary(pl.UTF-8):     Documentacja API RPM-a i przewodniki
 %package apidocs
 Summary:       RPM API documentation and guides
 Summary(pl.UTF-8):     Documentacja API RPM-a i przewodniki
@@ -568,17 +618,27 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch23 -p1
 %patch24 -p1
 %patch25 -p1
 %patch23 -p1
 %patch24 -p1
 %patch25 -p1
+%patch26 -p1
+%patch27 -p1
+%patch28 -p1
+%patch29 -p1
+%patch30 -p1
+%patch31 -p1
+%patch32 -p1
+%patch33 -p1
+%patch34 -p1
+%patch35 -p1
+%patch36 -p1
+
+%{__rm} po/*.gmo
 
 install %{SOURCE15} scripts/perl.prov.in
 
 
 install %{SOURCE15} scripts/perl.prov.in
 
-%{__mv} -f scripts/perl.req{,.in}
+%{__mv} scripts/perl.req{,.in}
 
 # generate Group translations to *.po
 awk -f %{SOURCE6} %{SOURCE5}
 
 
 # generate Group translations to *.po
 awk -f %{SOURCE6} %{SOURCE5}
 
-install %{SOURCE16} tools/rpmdb_checkversion.c
-install %{SOURCE17} tools/rpmdb_reset.c
-
 %{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py
 
 %build
 %{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py
 
 %build
@@ -589,50 +649,38 @@ install %{SOURCE17} tools/rpmdb_reset.c
 %{__automake}
 
 # rpm checks for CPU type at runtime, but it looks better
 %{__automake}
 
 # rpm checks for CPU type at runtime, but it looks better
-sed -i \
+%{__sed} -i \
        -e 's|@host@|%{_target_cpu}-%{_target_vendor}-%{_target_os}|' \
        -e 's|@host_cpu@|%{_target_cpu}|' \
        -e 's|@host_os@|%{_target_os}|' \
        macros.in
 
 %configure \
        -e 's|@host@|%{_target_cpu}-%{_target_vendor}-%{_target_os}|' \
        -e 's|@host_cpu@|%{_target_cpu}|' \
        -e 's|@host_os@|%{_target_os}|' \
        macros.in
 
 %configure \
+       PYTHON=python3 \
        WITH_PERL_VERSION=no \
        __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \
        __GPG=%{_bindir}/gpg \
        WITH_PERL_VERSION=no \
        __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \
        __GPG=%{_bindir}/gpg \
-%if %{with python3}
-       PYTHON=python3 \
-       --enable-python \
-%endif
-       --disable-silent-rules \
-       --enable-shared \
        --enable-bdb \
        --enable-bdb-ro \
        --enable-ndb \
        --enable-bdb \
        --enable-bdb-ro \
        --enable-ndb \
+       %{!?with_plugins:--disable-plugins} \
+       %{!?with_systemd:--disable-inhibit-plugin} \
+       --disable-silent-rules \
        --enable-sqlite \
        --enable-zstd \
        --enable-sqlite \
        --enable-zstd \
-       --with-lua \
-       %{?with_imaevm:--with-imaevm} \
-       --with-cap \
        --with-acl \
        --with-acl \
-       --with-audit \
        --with-archive \
        --with-archive \
-       --with-selinux=%{!?with_plugins:no}%{?with_plugins:yes} \
-       %{!?with_plugins:--disable-plugins} \
+       --with-audit%{!?with_audit:=no} \
+       --with-cap \
+       %{?with_imaevm:--with-imaevm} \
+       --with-lua \
+       %{?with_python3:--enable-python} \
+       --with-selinux%{!?with_selinux:=no} \
        --with-vendor=pld
 
 %{__make}
 
        --with-vendor=pld
 
 %{__make}
 
-%{__cc} %{rpmcflags} tools/rpmdb_checkversion.c -o tools/rpmdb_checkversion -ldb
-%{__cc} %{rpmcflags} tools/rpmdb_reset.c -o tools/rpmdb_reset -ldb
-
-if tools/rpmdb_checkversion -V 2>&1 | grep "t match library version"; then
-       echo "Error linking rpmdb tools!"
-       exit 1
-fi
-if tools/rpmdb_reset -V 2>&1 | grep "t match library version"; then
-       echo "Error linking rpmdb tools!"
-       exit 1
-fi
+%{__make} -C po update-gmo
 
 %if %{with python3}
 cd python
 
 %if %{with python3}
 cd python
@@ -642,7 +690,7 @@ cd python
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/{rpm,pki/rpm-gpg}} \
 %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},/var/cache/hrmib}
+       $RPM_BUILD_ROOT{/var/lib/{banner,rpm},/usr/lib/.build-id}
 
 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
 
 
 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
 
@@ -652,45 +700,48 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.as
 
 # cleanup
 %ifnarch %{ix86} %{x8664} x32
 
 # cleanup
 %ifnarch %{ix86} %{x8664} x32
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/athlon-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/geode-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i386-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i486-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i586-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i686-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/pentium3-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/pentium4-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/athlon-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/geode-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i386-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i486-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i586-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/i686-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/pentium3-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/pentium4-linux/macros
 %endif
 
 %ifnarch %{x8664} x32
 %endif
 
 %ifnarch %{x8664} x32
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/amd64-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ia32e-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/x32-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/x86_64-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/amd64-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ia32e-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/x32-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/x86_64-linux/macros
 %endif
 
 %ifnarch %{ppc}
 %endif
 
 %ifnarch %{ppc}
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/m68k-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc32dy4-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc64*-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc8260-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc8560-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc*series-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/m68k-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc32dy4-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc64*-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc8260-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc8560-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ppc*series-linux/macros
 %endif
 
 %ifnarch aarch64
 %endif
 
 %ifnarch aarch64
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/aarch64-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/aarch64-linux/macros
 %endif
 
 %endif
 
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/alpha*-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/arm*-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ia64-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/mips*-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/riscv64-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/s390*-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/sh*-linux/macros
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/sparc*-linux/macros
+%ifnarch %{arm}
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/arm*-linux/macros
+%endif
+
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/alpha*-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/ia64-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/mips*-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/riscv64-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/s390*-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/sh*-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/sparc*-linux/macros
 
 cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
 %ifarch x32
 
 cat <<'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/rpm/platform
 %ifarch x32
@@ -706,7 +757,6 @@ install -d $RPM_BUILD_ROOT%{_rpmlibdir}/pld
 
 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
 cp -p %{SOURCE9} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
 
 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
 cp -p %{SOURCE9} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
-cp -p %{SOURCE8} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rpm
 
 cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/banner.sh
 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/rpm
 
 cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/banner.sh
@@ -718,10 +768,6 @@ 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 %{SOURCE13} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq
 cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles
 
-cp -p tools/rpmdb_checkversion $RPM_BUILD_ROOT%{_rpmlibdir}/
-cp -p tools/rpmdb_reset $RPM_BUILD_ROOT%{_rpmlibdir}/
-cp -p %{SOURCE18} $RPM_BUILD_ROOT%{_rpmlibdir}/dbupgrade.sh
-
 # move rpm to /bin
 %{__mv} $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
 ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmquery
 # move rpm to /bin
 %{__mv} $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
 ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmquery
@@ -733,10 +779,16 @@ for a in librpm.so librpmbuild.so librpmio.so librpmsign.so; do
        ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/${a}.*.*.*) $RPM_BUILD_ROOT%{_libdir}/${a}
 done
 
        ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/${a}.*.*.*) $RPM_BUILD_ROOT%{_libdir}/${a}
 done
 
-#./rpmdb --macros=macros --rcfile=rpmrc --dbpath=/home/users/baggins/devel/PLD/rpm/BUILD/rpm-4.15.1/x/ --initdb
-
-# Make sure we have bdb set a default backend
-grep -qE "db_backend[[:blank:]]+bdb" $RPM_BUILD_ROOT%{_rpmlibdir}/macros
+# init an empty database for %ghost'ing for all supported backends
+for be in sqlite bdb ndb; do
+       ./rpmdb \
+               --macros=$RPM_BUILD_ROOT%{_rpmlibdir}/macros \
+               --rcfile=$RPM_BUILD_ROOT%{_rpmlibdir}/rpmrc \
+               --dbpath=${PWD}/${be} \
+               --define "_db_backend ${be}" \
+               --initdb
+       cp -va ${be}/. $RPM_BUILD_ROOT/var/lib/rpm/
+done
 
 %if %{with python3}
 # Remove anything that rpm make install might put there
 
 %if %{with python3}
 # Remove anything that rpm make install might put there
@@ -757,8 +809,7 @@ cd ..
 rm -rf $RPM_BUILD_ROOT
 
 %posttrans
 rm -rf $RPM_BUILD_ROOT
 
 %posttrans
-if [ -e /var/lib/rpm/Packages ] && \
-               ! %{_rpmlibdir}/rpmdb_checkversion -h /var/lib/rpm -d /var/lib/rpm; then
+if [ -e /var/lib/rpm/Packages ]; then
        if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && \
                        /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
                echo
        if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && \
                        /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
                echo
@@ -769,11 +820,25 @@ if [ -e /var/lib/rpm/Packages ] && \
        echo 'If poldek aborts after migration with rpmdb error, this is expected behaviour,'
        echo 'you should ignore it and restart poldek'
        echo
        echo 'If poldek aborts after migration with rpmdb error, this is expected behaviour,'
        echo 'you should ignore it and restart poldek'
        echo
-       %{_rpmlibdir}/dbupgrade.sh
+       %{__rm} -rf /var/lib/rpm/log >/dev/null 2>/dev/null || :
+       %{__rm} -rf /var/lib/rpm/tmp >/dev/null 2>/dev/null || :
+       # Unlock database for rebuild, safe since this is posttrans
+       %{__rm} -f /var/lib/rpm/.rpm.lock >/dev/null 2>/dev/null || :
+       if ! /usr/bin/rpmdb --rebuilddb; then
+               echo
+               echo "rpm database conversion failed!"
+               echo "You have to run '/usr/bin/rpmdb --rebuilddb' manually"
+               echo
+               exit 1
+       fi
 fi
 
 fi
 
-%triggerpostun -- %{name} < 4.4.9-44
-%{_rpmlibdir}/hrmib-cache
+%post
+if [ -d /var/cache/hrmib ]; then
+       %{__rm} -rf /var/cache/hrmib
+       echo "HR-MIB is not supported by this rpm version."
+       echo "/var/cache/hrmib has been removed."
+fi
 
 %post  lib -p /sbin/ldconfig
 %postun lib -p /sbin/ldconfig
 
 %post  lib -p /sbin/ldconfig
 %postun lib -p /sbin/ldconfig
@@ -812,10 +877,8 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %lang(sk) %{_mandir}/sk/man8/rpm.8*
 
 %dir /var/lib/rpm
 %lang(sk) %{_mandir}/sk/man8/rpm.8*
 
 %dir /var/lib/rpm
-
-# exported package NVRA (stamped with install tid)
-# net-snmp hrSWInstalledName queries, bash-completions
-%dir /var/cache/hrmib
+%ghost %config(missingok,noreplace) /var/lib/rpm/*
+%ghost /var/lib/rpm/.*.lock
 
 %{_rpmlibdir}/rpmpopt*
 %{_rpmlibdir}/rpmrc
 
 %{_rpmlibdir}/rpmpopt*
 %{_rpmlibdir}/rpmrc
@@ -841,6 +904,9 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %ifarch aarch64
 %{_rpmlibdir}/platform/aarch64*
 %endif
 %ifarch aarch64
 %{_rpmlibdir}/platform/aarch64*
 %endif
+%ifarch %{arm}
+%{_rpmlibdir}/platform/arm*
+%endif
 %ifarch ia64
 %{_rpmlibdir}/platform/ia64*
 %endif
 %ifarch ia64
 %{_rpmlibdir}/platform/ia64*
 %endif
@@ -856,17 +922,14 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %dir %{_rpmlibdir}/pld
 
 
 %dir %{_rpmlibdir}/pld
 
-%attr(755,root,root) %{_rpmlibdir}/hrmib-cache
-
-%attr(755,root,root) %{_rpmlibdir}/dbupgrade.sh
-%attr(755,root,root) %{_rpmlibdir}/rpmdb_checkversion
-%attr(755,root,root) %{_rpmlibdir}/rpmdb_reset
 %attr(755,root,root) %{_rpmlibdir}/rpmdb_dump
 %attr(755,root,root) %{_rpmlibdir}/rpmdb_load
 
 # valgrind suppression file for rpm
 %{_rpmlibdir}/rpm.supp
 
 %attr(755,root,root) %{_rpmlibdir}/rpmdb_dump
 %attr(755,root,root) %{_rpmlibdir}/rpmdb_load
 
 # valgrind suppression file for rpm
 %{_rpmlibdir}/rpm.supp
 
+%dir /usr/lib/.build-id
+
 %files base
 %defattr(644,root,root,755)
 %dir %{_sysconfdir}/rpm
 %files base
 %defattr(644,root,root,755)
 %dir %{_sysconfdir}/rpm
@@ -894,9 +957,12 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %attr(755,root,root) %{_libdir}/librpmbuild.so
 %attr(755,root,root) %{_libdir}/librpmio.so
 %attr(755,root,root) %{_libdir}/librpmsign.so
 %attr(755,root,root) %{_libdir}/librpmbuild.so
 %attr(755,root,root) %{_libdir}/librpmio.so
 %attr(755,root,root) %{_libdir}/librpmsign.so
-%{_libdir}/librpm*.la
+%{_libdir}/librpm.la
+%{_libdir}/librpmbuild.la
+%{_libdir}/librpmio.la
+%{_libdir}/librpmsign.la
 %{_includedir}/rpm
 %{_includedir}/rpm
-%{_pkgconfigdir}/*.pc
+%{_pkgconfigdir}/rpm.pc
 
 %files utils
 %defattr(644,root,root,755)
 
 %files utils
 %defattr(644,root,root,755)
@@ -1009,10 +1075,12 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %attr(755,root,root) %{_libdir}/rpm-plugins/syslog.so
 %{_mandir}/man8/rpm-plugin-syslog.8*
 
 %attr(755,root,root) %{_libdir}/rpm-plugins/syslog.so
 %{_mandir}/man8/rpm-plugin-syslog.8*
 
+%if %{with systemd}
 %files plugin-systemd-inhibit
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rpm-plugins/systemd_inhibit.so
 %{_mandir}/man8/rpm-plugin-systemd-inhibit.8*
 %files plugin-systemd-inhibit
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rpm-plugins/systemd_inhibit.so
 %{_mandir}/man8/rpm-plugin-systemd-inhibit.8*
+%endif
 
 %files plugin-ima
 %defattr(644,root,root,755)
 
 %files plugin-ima
 %defattr(644,root,root,755)
This page took 0.058248 seconds and 4 git commands to generate.