]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- added dir-macros-relative patch (hardcode base dir macros, derived as relative...
[packages/rpm.git] / rpm.spec
index 78ca4472e555004cc6b0a261dd9802ba8886dd07..f4a423631f1244cfd52895a9c41eac260e6606e0 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:
-%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                sover           9.1.2
+%define                sover           9.1.3
 
 %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
@@ -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
-Version:       4.16.1.2
-Release:       8
+Version:       4.16.1.3
+Release:       5
 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-md5: 576277fafa5d0681a8a92c8716aca5f0
 Source1:       ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
 # Source1-md5: 23914bb49fafe7153cee87126d966461
 Source2:       macros.local
@@ -53,6 +61,7 @@ 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
@@ -68,7 +77,7 @@ 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
@@ -86,34 +95,35 @@ Patch35:    pl-po.patch
 Patch36:       build-locale.patch
 URL:           https://rpm.org/
 BuildRequires: acl-devel
-BuildRequires: db-devel >= %{db_ver}
+%{?with_audit:BuildRequires:   audit-libs-devel}
 BuildRequires: autoconf >= 2.63
-BuildRequires: automake >= 1.4
+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
 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}
-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
+BuildRequires: lua-devel >= 5.2
 BuildRequires: patch >= 2.2
-BuildRequires: pkgconfig(lua) >= 5.1
+BuildRequires: pkgconfig
 BuildRequires: popt-devel >= %{popt_ver}
-BuildRequires: python3-modules
+BuildRequires: python3-modules >= 1:3.2
 %if %{with python3}
-BuildRequires: python3-devel
+BuildRequires: python3-devel >= 1:3.2
 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
@@ -128,7 +138,7 @@ 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:      rpm-pld-macros >= 2.002
 Requires:      FHS >= 3.0-2
 Requires:      libgcrypt
 Requires:      popt >= %{popt_ver}
@@ -235,6 +245,7 @@ Group:              Libraries
 Requires:      db >= %{db_ver}
 Requires:      libmagic >= 1.15-2
 Requires:      popt >= %{popt_ver}
+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
@@ -501,6 +512,7 @@ Summary:    Plugin for systemd inhibit functionality
 Summary(pl.UTF-8):     Wtyczka do funkcjonalności systemd inhibit
 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
@@ -587,6 +599,7 @@ 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
@@ -623,7 +636,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 
 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}
@@ -638,35 +651,33 @@ awk -f %{SOURCE6} %{SOURCE5}
 %{__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 \
+       PYTHON=python3 \
        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 \
+       %{!?with_plugins:--disable-plugins} \
+       %{!?with_systemd:--disable-inhibit-plugin} \
+       --disable-silent-rules \
        --enable-sqlite \
        --enable-zstd \
-       --with-lua \
-       %{?with_imaevm:--with-imaevm} \
-       --with-cap \
        --with-acl \
-       --with-audit \
        --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}
@@ -691,48 +702,48 @@ cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.as
 
 # 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
-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}
-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
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/aarch64-linux/macros
+%{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/platform/aarch64-linux/macros
 %endif
 
 %ifnarch %{arm}
-rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/arm*-linux/macros
+%{__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
+%{__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
@@ -948,9 +959,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
-%{_libdir}/librpm*.la
+%{_libdir}/librpm.la
+%{_libdir}/librpmbuild.la
+%{_libdir}/librpmio.la
+%{_libdir}/librpmsign.la
 %{_includedir}/rpm
-%{_pkgconfigdir}/*.pc
+%{_pkgconfigdir}/rpm.pc
 
 %files utils
 %defattr(644,root,root,755)
@@ -1063,10 +1077,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*
 
+%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*
+%endif
 
 %files plugin-ima
 %defattr(644,root,root,755)
This page took 0.049428 seconds and 4 git commands to generate.