]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
macros for %_ver_lt %_ver_ge
[packages/rpm.git] / rpm.spec
index ec53b76289c16a61ab30dd2088d6d37e4064fb48..a5578993abeea03ec28d44c625a7a9233a075b6b 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -4,25 +4,18 @@
 #
 # Conditional build:
 %bcond_without apidocs         # don't generate documentation with doxygen
-%bcond_without python2         # don't build python bindings
 %bcond_without python3         # don't build python bindings
 %bcond_without plugins         # build plugins
 %bcond_without recommends_tags # build without Recommends tag (bootstrapping)
-%bcond_with    db61            # use DB 6.1 instead of 5.3
+%bcond_with    imaevm          # build with IMA/EVM support (requires libimaevm from ima-evm-utils)
 
-# versions of required libraries
-%if %{with db61}
-%define                reqdb_pkg       db6.1
-%define                reqdb_ver       6.1
-%define                reqdb_pkgver    6.1.19
-%else
-%define                reqdb_pkg       db5.3
-%define                reqdb_ver       5.3
-%define                reqdb_pkgver    5.3.28.0
-%endif
-%define                reqpopt_ver     1.15
-%define                openssl_ver     1.1.1d
-%define                sover           9.0.1
+%define                db_ver          5.3.28.0
+%define                popt_ver        1.15
+%define                sover           9.1.0
+
+ %if %{_ver_ge '%{_rpmversion}' '4.12'} && %{_ver_lt '%{_rpmversion}' '5.0'}
+ %define       with_recommends_tags
+ %endif
 
 Summary:       RPM Package Manager
 Summary(de.UTF-8):     RPM Packet-Manager
@@ -32,93 +25,86 @@ Summary(pt_BR.UTF-8):       Gerenciador de pacotes RPM
 Summary(ru.UTF-8):     Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
-Version:       4.15.1
+Version:       4.16.0
 Release:       0.1
+Epoch:         1
 License:       GPL v2 / LGPL v2.1
 Group:         Base
-Source0:       http://ftp.rpm.org/releases/rpm-4.15.x/%{name}-%{version}.tar.bz2
-# Source0-md5: ed72147451a5ed93b2a48e2f8f5413c3
-Source1:       %{name}.groups
-Source2:       macros.pld.in
-Source3:       %{name}-install-tree
-Source4:       %{name}-find-spec-bcond
-Source5:       %{name}-hrmib-cache
+Source0:       http://ftp.rpm.org/releases/rpm-4.16.x/%{name}-%{version}.tar.bz2
+# Source0-md5: 434e166a812e35ef181f6dd176326920
+Source1:       ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
+# Source1-md5: 23914bb49fafe7153cee87126d966461
+Source2:       macros.local
+Source3:       macros.lang
+Source4:       %{name}.sysconfig
+Source5:       %{name}.groups
 Source6:       %{name}-groups-po.awk
-Source7:       %{name}-compress-doc
-Source8:       %{name}-php-provides
-Source9:       %{name}-php-requires
-Source10:      %{name}.sysinfo
-Source11:      perl.prov
-Source12:      %{name}-user_group.sh
-Source13:      %{name}.sysconfig
-Source14:      %{name}-java-requires
+Source7:       %{name}-install-tree
+Source8:       %{name}-hrmib-cache
+Source9:       %{name}-user_group.sh
 # http://svn.pld-linux.org/banner.sh/
-Source15:      banner.sh
-Source16:      ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
-# Source16-md5:        23914bb49fafe7153cee87126d966461
-Source17:      %{name}-mimetypedeps
-Source18:      macros.local
-Source19:      %{name}.noautocompressdoc
-Source20:      %{name}.noautoprov
-Source21:      %{name}.noautoprovfiles
-Source22:      %{name}.noautoreq
-Source24:      %{name}.noautoreqfiles
-Source25:      %{name}-php-requires.php
-Source26:      %{name}db_checkversion.c
-Source27:      macros.lang
-Source28:      %{name}db_reset.c
-Source29:      dbupgrade.sh
-Source30:      rubygems.rb
-Source31:      gem_helper.rb
+Source10:      banner.sh
+Source11:      %{name}.noautoprov
+Source12:      %{name}.noautoprovfiles
+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
 Patch3:                %{name}-perl-req-perlfile.patch
 Patch4:                %{name}-scripts-closefds.patch
-Patch5:                %{name}-php-macros.patch
-Patch6:                %{name}-lua.patch
-Patch7:                %{name}-perl_req-INC_dirs.patch
-Patch8:                %{name}-debuginfo.patch
-Patch9:                %{name}-javadeps.patch
-Patch10:       %{name}-libtool-deps.patch
-Patch11:       %{name}-builddir-readlink.patch
-Patch12:       %{name}-changelog_order_check_nonfatal.patch
-Patch13:       %{name}-postun-nofail.patch
-Patch14:       %{name}-clean-docdir.patch
-Patch15:       %{name}-perl-magic.patch
-Patch16:       %{name}-ignore-missing-macro-files.patch
-Patch17:       x32.patch
-Patch18:       %{name}-fix-compress-doc.patch
-Patch19:       vendor-pld.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
+Patch12:       %{name}-clean-docdir.patch
+Patch13:       %{name}-perl-magic.patch
+Patch14:       %{name}-ignore-missing-macro-files.patch
+Patch15:       x32.patch
+Patch16:       rpm5-db-compat.patch
+Patch17:       python-internal-build.patch
+Patch18:       rpmversion.patch
+Patch19:       pkgconfig.patch
+Patch20:       uname-deps.patch
+Patch21:       aarch64.patch
 URL:           https://rpm.org/
-BuildRequires: %{reqdb_pkg}-devel >= %{reqdb_pkgver}
-BuildRequires: %{reqdb_pkg}-sql-devel >= %{reqdb_pkgver}
+BuildRequires: acl-devel
+BuildRequires: db-devel >= %{db_ver}
 BuildRequires: autoconf >= 2.63
 BuildRequires: automake >= 1.4
 BuildRequires: bzip2-devel >= 1.0.2-17
 BuildRequires: elfutils-devel >= 0.108
 BuildRequires: gettext-tools >= 0.19.2
 BuildRequires: libarchive-devel
+BuildRequires: libcap-devel
 BuildRequires: libmagic-devel
-BuildRequires: openssl-devel >= %{openssl_ver}
+BuildRequires: libgcrypt-devel
 %if %{with plugins}
 BuildRequires: audit-libs-devel
 BuildRequires: dbus-devel
+%{?with_imaevm:BuildRequires:  libimaevm-devel >= 1.0}
 BuildRequires: libselinux-devel >= 2.1.0
 %endif
 # needed only for AM_PROG_CXX used for CXX substitution in rpm.macros
 BuildRequires: libstdc++-devel
 BuildRequires: libtool >= 1:1.4.2-9
-BuildRequires: lua53-devel >= 5.3.5
 BuildRequires: ossp-uuid-devel
 BuildRequires: patch >= 2.2
-BuildRequires: popt-devel >= %{reqpopt_ver}
-%{?with_python2:BuildRequires: python-devel >= 1:2.3}
-%{?with_python3:BuildRequires: python3-devel}
-BuildRequires: python-modules >= 1:2.3
-%if %{with python2} || %{with python3}
+BuildRequires: pkgconfig(lua) >= 5.1
+BuildRequires: popt-devel >= %{popt_ver}
+BuildRequires: python3-modules
+%if %{with python3}
+BuildRequires: python3-devel
 BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.750
 %endif
+BuildRequires: sqlite3-devel >= 3.22.0
 BuildRequires: tcl
 BuildRequires: xz-devel
 BuildRequires: zlib-devel
@@ -130,19 +116,18 @@ BuildRequires:    graphviz
 BuildRequires: tetex-pdftex
 %endif
 Requires(posttrans):   coreutils
-Requires:      %{name}-base = %{version}-%{release}
-Requires:      %{name}-lib = %{version}-%{release}
+Requires:      %{name}-base = %{epoch}:%{version}-%{release}
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
+Requires:      rpm-pld-macros >= 1.744
 Requires:      FHS >= 3.0-2
-Requires:      openssl >= %{openssl_ver}
-Requires:      popt >= %{reqpopt_ver}
+Requires:      libgcrypt
+Requires:      popt >= %{popt_ver}
 %if %{with recommends_tags}
 Recommends:    rpm-plugin-audit
 Recommends:    rpm-plugin-prioreset
 Recommends:    rpm-plugin-syslog
 Recommends:    rpm-plugin-systemd-inhibit
 %endif
-Provides:      rpm-db-ver = %{reqdb_ver}
-Obsoletes:     rpm-getdeps
 Obsoletes:     rpm-utils-perl
 Obsoletes:     rpm-utils-static
 Conflicts:     glibc < 2.2.92
@@ -162,7 +147,6 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                x8664   amd64 ia32e x86_64
 
 %define                _rpmlibdir /usr/lib/rpm
-%define                _noautocompressdoc      RPM-GPG-KEY
 
 %description
 RPM is a powerful package manager, which can be used to build,
@@ -238,11 +222,9 @@ Zawiera on:
 Summary:       RPMs library
 Summary(pl.UTF-8):     Biblioteki RPM-a
 Group:         Libraries
-Requires:      %{reqdb_pkg} >= %{reqdb_pkgver}
-Requires:      %{reqdb_pkg}-sql >= %{reqdb_pkgver}
+Requires:      db >= %{db_ver}
 Requires:      libmagic >= 1.15-2
-Requires:      openssl >= %{openssl_ver}
-Requires:      popt >= %{reqpopt_ver}
+Requires:      popt >= %{popt_ver}
 Obsoletes:     rpm-libs
 # avoid SEGV caused by mixed db versions
 Conflicts:     poldek < 0.18.1-16
@@ -262,18 +244,18 @@ Summary(pt_BR.UTF-8):     Arquivos de inclusão e bibliotecas para programas de mani
 Summary(ru.UTF-8):     Хедеры и библиотеки для программ, работающих с rpm-пакетами
 Summary(uk.UTF-8):     Хедери та бібліотеки для програм, що працюють з пакетами rpm
 Group:         Development/Libraries
-Requires:      %{name}-lib = %{version}-%{release}
-Requires:      %{reqdb_pkg}-devel >= %{reqdb_pkgver}
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 Requires:      bzip2-devel
+Requires:      db-devel >= %{db_ver}
 Requires:      elfutils-devel
 Requires:      libmagic-devel
-Requires:      openssl-devel >= %{openssl_ver}
+Requires:      libgcrypt-devel
 %if %{with selinux}
 Requires:      libselinux-devel
 Requires:      libsemanage-devel
 Requires:      libsepol-devel
 %endif
-Requires:      popt-devel >= %{reqpopt_ver}
+Requires:      popt-devel >= %{popt_ver}
 Requires:      zlib-devel
 
 %description devel
@@ -326,8 +308,8 @@ Summary:    Additional utilities for managing RPM packages and database
 Summary(de.UTF-8):     Zusatzwerkzeuge für Verwaltung RPM-Pakete und Datenbanken
 Summary(pl.UTF-8):     Dodatkowe narzędzia do zarządzania bazą RPM-a i pakietami
 Group:         Applications/File
-Requires:      %{name} = %{version}-%{release}
-Requires:      popt >= %{reqpopt_ver}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      popt >= %{popt_ver}
 %if %{with recommends_tags}
 Recommends:    bzip2
 Recommends:    gzip
@@ -353,8 +335,8 @@ Summary(uk.UTF-8):  Скрипти та утиліти, необхідні для
 Group:         Applications/File
 Requires(pretrans):    coreutils
 Requires(pretrans):    findutils
-Requires:      %{name}-build-macros >= 1.712
-Requires:      %{name}-utils = %{version}-%{release}
+Requires:      %{name}-utils = %{epoch}:%{version}-%{release}
+Requires:      rpm-pld-macros-build >= 1.744
 Requires:      /bin/id
 Requires:      awk
 Requires:      bzip2
@@ -381,7 +363,6 @@ Requires:   tar >= 1:1.22
 Requires:      textutils
 Requires:      which
 Requires:      xz
-Provides:      rpmbuild(monoautodeps)
 Provides:      rpmbuild(noauto) = 3
 %ifarch %{x8664}
 Conflicts:     automake < 1:1.7.9-2
@@ -409,30 +390,12 @@ construir pacotes usando o RPM.
 Різноманітні допоміжні скрипти та утиліти, які використовуються для
 побудови RPM'ів.
 
-%package javaprov
-Summary:       Additional utilities for checking Java provides/requires in RPM packages
-Summary(pl.UTF-8):     Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach RPM
-Group:         Applications/File
-Requires:      %{name} = %{version}-%{release}
-Requires:      file
-Requires:      findutils >= 1:4.2.26
-Requires:      mktemp
-Requires:      unzip
-
-%description javaprov
-Additional utilities for checking Java provides/requires in RPM
-packages.
-
-%description javaprov -l pl.UTF-8
-Dodatkowe narzędzia do sprawdzania zależności kodu w Javie w pakietach
-RPM.
-
 %package perlprov
 Summary:       Additional utilities for checking Perl provides/requires in RPM packages
 Summary(de.UTF-8):     Zusatzwerkzeuge fürs Nachsehen Perl-Abhängigkeiten in RPM-Paketen
 Summary(pl.UTF-8):     Dodatkowe narzędzia do sprawdzenia zależności skryptów Perla w pakietach RPM
 Group:         Applications/File
-Requires:      %{name} = %{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      perl-Encode
 Requires:      perl-devel
 Requires:      perl-modules
@@ -452,10 +415,10 @@ pakietach RPM.
 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} = %{version}-%{release}
-Requires:      python
-Requires:      python-modules
-Requires:      python-setuptools
+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
@@ -465,78 +428,15 @@ software.
 Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
 Pythonie.
 
-%package php-pearprov
-Summary:       Additional utilities for checking PHP PEAR provides/requires in RPM packages
-Summary(pl.UTF-8):     Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM
-Group:         Applications/File
-Requires:      %{name} = %{version}-%{release}
-Requires:      sed >= 4.0
-Suggests:      php-pear-PHP_CompatInfo
-
-%description php-pearprov
-Additional utilities for checking PHP PEAR provides/requires in RPM
-packages.
-
-%description php-pearprov -l pl.UTF-8
-Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w
-pakietach RPM.
-
-%package rubyprov
-Summary:       Ruby tools, which simplify creation of RPM packages with Ruby software
-Summary(pl.UTF-8):     Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w Ruby
-Group:         Applications/File
-Requires:      %{name} = %{version}-%{release}
-Requires:      ruby
-Requires:      ruby-modules
-Requires:      ruby-rubygems
-
-%description rubyprov
-Ruby tools, which simplifies creation of RPM packages with Ruby
-software.
-
-%description rubyprov -l pl.UTF-8
-Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
-Ruby.
-
-%package -n python-rpm
-Summary:       Python interface to RPM library
-Summary(pl.UTF-8):     Pythonowy interfejs do biblioteki RPM-a
-Summary(pt_BR.UTF-8):  Módulo Python para aplicativos que manipulam pacotes RPM
-Group:         Development/Languages/Python
-Requires:      %{name} = %{version}-%{release}
-Requires:      python
-Obsoletes:     rpm-python
-
-%description -n python-rpm
-The python-rpm package contains a module which permits applications
-written in the Python programming language to use the interface
-supplied by RPM (RPM Package Manager) libraries.
-
-This package should be installed if you want to develop Python
-programs that will manipulate RPM packages and databases.
-
-%description -n python-rpm -l pl.UTF-8
-Pakiet python-rpm zawiera moduł, który pozwala aplikacjom napisanym w
-Pythonie na używanie interfejsu dostarczanego przez biblioteki RPM-a.
-
-Pakiet ten powinien zostać zainstalowany, jeśli chcesz pisać w
-Pythonie programy manipulujące pakietami i bazami danych rpm.
-
-%description -n python-rpm -l pt_BR.UTF-8
-O pacote python-rpm contém um módulo que permite que aplicações
-escritas em Python utilizem a interface fornecida pelas bibliotecas
-RPM (RPM Package Manager).
-
-Esse pacote deve ser instalado se você quiser desenvolver programas em
-Python para manipular pacotes e bancos de dados RPM.
-
 %package -n python3-rpm
 Summary:       Python 3 interface to RPM library
 Summary(pl.UTF-8):     Interfejs Pythona 3 do biblioteki RPM-a
 Summary(pt_BR.UTF-8):  Módulo Python 3 para aplicativos que manipulam pacotes RPM
 Group:         Development/Languages/Python
-Requires:      %{name} = %{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      python3
+Obsoletes:     python-rpm < 1:4.16.0
+Obsoletes:     rpm-python
 
 %description -n python3-rpm
 The python3-rpm package contains a module which permits applications
@@ -548,7 +448,8 @@ programs that will manipulate RPM packages and databases.
 
 %description -n python3-rpm -l pl.UTF-8
 Pakiet python3-rpm zawiera moduł, który pozwala aplikacjom napisanym w
-Pythonie 3 na używanie interfejsu dostarczanego przez biblioteki RPM-a.
+Pythonie 3 na używanie interfejsu dostarczanego przez biblioteki
+RPM-a.
 
 Pakiet ten powinien zostać zainstalowany, jeśli chcesz pisać w
 Pythonie 3 programy manipulujące pakietami i bazami danych rpm.
@@ -563,24 +464,24 @@ Python 3 para manipular pacotes e bancos de dados RPM.
 
 %package plugin-audit
 Summary:       Plugin for logging audit events on package operations
-Group:         System/Base
-Requires:      %{name}-lib = %{version}-%{release}
+Group:         Base
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-audit
 Plugin for libaudit support
 
 %package plugin-syslog
 Summary:       Plugin for syslog functionality
-Group:         System/Base
-Requires:      %{name}-lib = %{version}-%{release}
+Group:         Base
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-syslog
 This plugin exports RPM actions to the system log.
 
 %package plugin-systemd-inhibit
 Summary:       Plugin for systemd inhibit functionality
-Group:         System/Base
-Requires:      %{name}-lib = %{version}-%{release}
+Group:         Base
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-systemd-inhibit
 This plugin blocks systemd from entering idle, sleep or shutdown while
@@ -589,7 +490,7 @@ an rpm transaction is running using the systemd-inhibit mechanism.
 %package plugin-ima
 Summary:       Plugin for IMA file signatures
 Group:         Base
-Requires:      %{name}-lib = %{version}-%{release}
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-ima
 This plugin adds support for enforcing and verifying IMA file
@@ -598,7 +499,7 @@ signatures in an rpm.
 %package plugin-prioreset
 Summary:       Plugin for resetting scriptlet priorities for SysV init
 Group:         Base
-Requires:      %{name}-lib = %{version}-%{release}
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 
 %description plugin-prioreset
 This plugin is useful on legacy SysV init systems if you run rpm
@@ -607,12 +508,21 @@ systemd systems.
 
 %package plugin-selinux
 Summary:       Plugin for SELinux functionality
-Requires:      %{name}-lib = %{version}-%{release}
+Group:         Base
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
 Requires:      libselinux >= 2.1.0
 
 %description plugin-selinux
 Plugin for SELinux functionality.
 
+%package sign
+Summary:       Package signing support
+Group:         Base
+Requires:      %{name}-lib = %{epoch}:%{version}-%{release}
+
+%description sign
+This package contains support for digitally signing RPM packages.
+
 %package apidocs
 Summary:       RPM API documentation and guides
 Summary(pl.UTF-8):     Documentacja API RPM-a i przewodniki
@@ -634,9 +544,8 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p0
+%patch6 -p0
+%patch7 -p1
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
@@ -647,25 +556,24 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch15 -p1
 %patch16 -p1
 %patch17 -p1
-#%patch18 -p1
-#%patch19 -p1
+%patch18 -p1
+%patch19 -p1
+%patch20 -p1
+%ifarch aarch64
+%patch21 -p1
+%endif
 
-install %{SOURCE2} pld.in
-install %{SOURCE8} scripts/php.prov.in
-install %{SOURCE9} scripts/php.req.in
-install %{SOURCE11} scripts/perl.prov.in
-cp -p %{SOURCE30} scripts/rubygems.rb
-cp -p %{SOURCE31} scripts/gem_helper.rb
+install %{SOURCE15} scripts/perl.prov.in
 
 %{__mv} -f scripts/perl.req{,.in}
 
 # generate Group translations to *.po
-awk -f %{SOURCE6} %{SOURCE1}
+awk -f %{SOURCE6} %{SOURCE5}
 
-install %{SOURCE26} tools/rpmdb_checkversion.c
-install %{SOURCE28} tools/rpmdb_reset.c
+install %{SOURCE16} tools/rpmdb_checkversion.c
+install %{SOURCE17} tools/rpmdb_reset.c
 
-%{__sed} -i -e '1s,/usr/bin/python,%{__python},' scripts/pythondistdeps.py
+%{__sed} -i -e '1s,/usr/bin/python,%{__python3},' scripts/pythondistdeps.py
 
 %build
 %{__libtoolize}
@@ -681,40 +589,34 @@ sed -i \
        -e 's|@host_os@|%{_target_os}|' \
        macros.in
 
-CPPFLAGS="-I/usr/include/lua53 %{rpmcppflags}"
 %configure \
        WITH_PERL_VERSION=no \
        __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \
        __GPG=%{_bindir}/gpg \
-       %{?with_python3:PYTHON=python3} \
-       %{!?with_python3:%{?with_python2:PYTHON=python2}} \
+%if %{with python3}
+       PYTHON=python3 \
+       --enable-python \
+%endif
        --disable-silent-rules \
        --enable-shared \
        --enable-bdb \
+       --enable-ndb \
+       --enable-sqlite \
        --enable-zstd \
-       --with-crypto=openssl \
        --with-lua \
+       %{?with_imaevm:--with-imaevm} \
        --with-cap \
        --with-acl \
        --with-audit \
        --with-archive \
-%if %{with python2} || %{with python3}
-       --enable-python \
-%endif
        --with-selinux=%{!?with_plugins:no}%{?with_plugins:yes} \
        %{!?with_plugins:--disable-plugins} \
        --with-vendor=pld
 
-#  --enable-ndb (EXPERIMENTAL) enable the new rpm database format
-#  --enable-lmdb=[yes/no/auto] (EXPERIMENTAL) build with LMDB rpm database format support (default=auto)
-#  --with-imaevm           build with imaevm support
-
 %{__make}
 
-%{__cc} %{rpmcflags} -I/usr/include/db%{reqdb_ver} tools/rpmdb_checkversion.c \
-       -o tools/rpmdb_checkversion -ldb-%{reqdb_ver}
-%{__cc} %{rpmcflags} -I/usr/include/db%{reqdb_ver} tools/rpmdb_reset.c \
-       -o tools/rpmdb_reset -ldb-%{reqdb_ver}
+%{__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!"
@@ -725,12 +627,6 @@ if tools/rpmdb_reset -V 2>&1 | grep "t match library version"; then
        exit 1
 fi
 
-%if %{with python2}
-cd python
-%py_build
-cd ..
-%endif
-
 %if %{with python3}
 cd python
 %py3_build
@@ -739,9 +635,9 @@ 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,/var/cache/hrmib}
+       $RPM_BUILD_ROOT{/var/lib/{banner,rpm},/var/cache/hrmib}
 
-cp -p %{SOURCE16} $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
 
 %{__make} install \
        pkgconfigdir=%{_pkgconfigdir} \
@@ -776,7 +672,10 @@ 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
+%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
@@ -788,56 +687,41 @@ rm $RPM_BUILD_ROOT%{_rpmlibdir}/platform/sparc*-linux/macros
 
 %{__rm} $RPM_BUILD_ROOT%{_rpmlibdir}/find-lang.sh
 
-cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
-cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
-cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
-cp -p %{SOURCE12} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
-cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_rpmlibdir}/java-find-requires
-cp -p scripts/php.{prov,req}   $RPM_BUILD_ROOT%{_rpmlibdir}
-cp -p %{SOURCE25} $RPM_BUILD_ROOT%{_rpmlibdir}/php.req.php
-cp -p %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/mimetypedeps.sh
-cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
-cp -p %{SOURCE13} $RPM_BUILD_ROOT/etc/sysconfig/rpm
-
-cp -p %{SOURCE15} $RPM_BUILD_ROOT%{_bindir}/banner.sh
-
-install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
-
-cp -p %{SOURCE18} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros
-cp -p %{SOURCE27} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.lang
-cp -p %{SOURCE19} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc
-cp -p %{SOURCE20} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov
-cp -p %{SOURCE21} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles
-cp -p %{SOURCE22} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreq
-cp -p %{SOURCE24} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoreqfiles
-
-touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Conflictname
-touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Dirnames
-cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Filelinktos
-touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Obsoletename
-touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Providename
-touch $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo/Requirename
+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 %{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 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros
+cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.lang
+cp -p %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov
+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 tools/rpmdb_checkversion $RPM_BUILD_ROOT%{_rpmlibdir}/
 cp -p tools/rpmdb_reset $RPM_BUILD_ROOT%{_rpmlibdir}/
-cp -p %{SOURCE29} $RPM_BUILD_ROOT%{_rpmlibdir}/dbupgrade.sh
+cp -p %{SOURCE18} $RPM_BUILD_ROOT%{_rpmlibdir}/dbupgrade.sh
 
 # move rpm to /bin
-mv $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
+%{__mv} $RPM_BUILD_ROOT%{_bindir}/rpm $RPM_BUILD_ROOT/bin
+ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmquery
+ln -sf /bin/rpm $RPM_BUILD_ROOT%{_bindir}/rpmverify
+
 # move essential libs to /lib (libs that /bin/rpm links to)
 for a in librpm.so librpmbuild.so librpmio.so librpmsign.so; do
        mv -f $RPM_BUILD_ROOT%{_libdir}/${a}.* $RPM_BUILD_ROOT/%{_lib}
        ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/${a}.*.*.*) $RPM_BUILD_ROOT%{_libdir}/${a}
 done
 
-%if %{with python2}
-# Remove anything that rpm make install might put there
-%{__rm} -rf $RPM_BUILD_ROOT%{py_sitedir}
-cd python
-%py_install
-%py_postclean
-cd ..
-%endif
+#./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
 
 %if %{with python3}
 # Remove anything that rpm make install might put there
@@ -857,14 +741,6 @@ cd ..
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%pretrans
-# this needs to be a dir
-if [ -f %{_sysconfdir}/rpm/sysinfo ]; then
-       umask 022
-       mv -f %{_sysconfdir}/rpm/sysinfo{,.rpmsave}
-       mkdir %{_sysconfdir}/rpm/sysinfo
-fi
-
 %posttrans
 if [ -e /var/lib/rpm/Packages ] && \
                ! %{_rpmlibdir}/rpmdb_checkversion -h /var/lib/rpm -d /var/lib/rpm; then
@@ -898,14 +774,19 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 /etc/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
 
 %attr(755,root,root) /bin/rpm
+%attr(755,root,root) %{_bindir}/rpmdb
+%attr(755,root,root) %{_bindir}/rpmkeys
+%attr(755,root,root) %{_bindir}/rpmquery
+%attr(755,root,root) %{_bindir}/rpmverify
 
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/macros.lang
-%dir %{_sysconfdir}/rpm/sysinfo
-# these are ok to be replaced
-%config %verify(not md5 mtime size) %{_sysconfdir}/rpm/sysinfo/*
 
 %{_mandir}/man8/rpm.8*
+%{_mandir}/man8/rpmdb.8*
+%{_mandir}/man8/rpmkeys.8*
+%{_mandir}/man8/rpm-misc.8*
+%{?with_plugins:%{_mandir}/man8/rpm-plugins.8*}
 %lang(fr) %{_mandir}/fr/man8/rpm.8*
 %lang(ja) %{_mandir}/ja/man8/rpm.8*
 %lang(ko) %{_mandir}/ko/man8/rpm.8*
@@ -913,19 +794,17 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %lang(ru) %{_mandir}/ru/man8/rpm.8*
 %lang(sk) %{_mandir}/sk/man8/rpm.8*
 
-#%dir /var/lib/rpm
-#%dir /var/lib/rpm/log
-#%dir /var/lib/rpm/tmp
-#%config(noreplace) %verify(not md5 mtime size) /var/lib/rpm/DB_CONFIG
+%dir /var/lib/rpm
 
 # exported package NVRA (stamped with install tid)
 # net-snmp hrSWInstalledName queries, bash-completions
 %dir /var/cache/hrmib
 
 %{_rpmlibdir}/rpmpopt*
+%{_rpmlibdir}/rpmrc
 %{_rpmlibdir}/macros
 %dir %{_rpmlibdir}/macros.d
-#%{_rpmlibdir}/macros.d/pld
+%dir %{_rpmlibdir}/platform
 %{_rpmlibdir}/platform/noarch-*
 %ifarch %{ix86} %{x8664} x32
 %{_rpmlibdir}/platform/athlon*
@@ -942,6 +821,9 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %ifarch alpha
 %{_rpmlibdir}/platform/alpha*
 %endif
+%ifarch aarch64
+%{_rpmlibdir}/platform/aarch64*
+%endif
 %ifarch ia64
 %{_rpmlibdir}/platform/ia64*
 %endif
@@ -955,11 +837,18 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/platform/sparc*
 %endif
 
+%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
 
 %files base
 %defattr(644,root,root,755)
@@ -999,10 +888,10 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %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}/rpmdb_loadcvt
 %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*
 %{_mandir}/man8/rpmdeps.8*
 %{_mandir}/man8/rpmgraph.8*
@@ -1019,35 +908,35 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rpm/noauto*
 %attr(755,root,root) %{_rpmlibdir}/brp-*
 %attr(755,root,root) %{_rpmlibdir}/check-files
-%attr(755,root,root) %{_rpmlibdir}/compress-doc
-%attr(755,root,root) %{_rpmlibdir}/find-spec-bcond
 %attr(755,root,root) %{_rpmlibdir}/install-build-tree
 %attr(755,root,root) %{_rpmlibdir}/elfdeps
 %attr(755,root,root) %{_rpmlibdir}/libtooldeps.sh
-%attr(755,root,root) %{_rpmlibdir}/mimetypedeps.sh
 # needs hacked pkg-config to return anything
 %attr(755,root,root) %{_rpmlibdir}/pkgconfigdeps.sh
 %attr(755,root,root) %{_rpmlibdir}/mkinstalldirs
-# we always used scripts provided by mono-devel, maybe move them here
-#%attr(755,root,root) %{_rpmlibdir}/mono-find-provides
-#%attr(755,root,root) %{_rpmlibdir}/mono-find-requires
 
 %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/java
 #%{_rpmlibdir}/macros.d/libtool
-#%{_rpmlibdir}/macros.d/mono
 #%{_rpmlibdir}/macros.d/perl
-#%{_rpmlibdir}/macros.d/php
 #%{_rpmlibdir}/macros.d/pkgconfig
 #%{_rpmlibdir}/macros.d/python
-#%{_rpmlibdir}/macros.d/ruby
 #%{_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
+%attr(755,root,root) %{_rpmlibdir}/check-rpaths-worker
+%attr(755,root,root) %{_rpmlibdir}/find-provides
+%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
 %{_rpmlibdir}/fileattrs/desktop.attr
@@ -1058,7 +947,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/fileattrs/ocaml.attr
 %{_rpmlibdir}/fileattrs/perl.attr
 %{_rpmlibdir}/fileattrs/perllib.attr
-%{_rpmlibdir}/fileattrs/php.attr
 %{_rpmlibdir}/fileattrs/pkgconfig.attr
 %{_rpmlibdir}/fileattrs/python.attr
 %{_rpmlibdir}/fileattrs/pythondist.attr
@@ -1075,41 +963,14 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %lang(pl) %{_mandir}/pl/man8/rpmbuild.8*
 %{_mandir}/man8/rpmspec.8*
 
-%files javaprov
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_rpmlibdir}/java-find-requires
-# needs jar (any jdk), jcf-dump (gcc-java) to work
-#%attr(755,root,root) %{_rpmlibdir}/javadeps.sh
-
-%files rubyprov
-%defattr(644,root,root,755)
-#%attr(755,root,root) %{_rpmlibdir}/gem_helper.rb
-#%attr(755,root,root) %{_rpmlibdir}/rubygems.rb
-
 %files perlprov
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_rpmlibdir}/perl.*
 
 %files pythonprov
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_rpmlibdir}/pythondeps.sh
 %attr(755,root,root) %{_rpmlibdir}/pythondistdeps.py
 
-%files php-pearprov
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_rpmlibdir}/php.prov
-%attr(755,root,root) %{_rpmlibdir}/php.req
-%attr(755,root,root) %{_rpmlibdir}/php.req.php
-
-%if %{with python2}
-%files -n python-rpm
-%defattr(644,root,root,755)
-%dir %{py_sitedir}/rpm
-%attr(755,root,root) %{py_sitedir}/rpm/*.so
-%{py_sitedir}/rpm/*.py[co]
-%{py_sitedir}/rpm-%{version}-py*.egg-info
-%endif
-
 %if %{with python3}
 %files -n python3-rpm
 %defattr(644,root,root,755)
@@ -1124,10 +985,12 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %files plugin-audit
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rpm-plugins/audit.so
+%{_mandir}/man8/rpm-plugin-audit.8*
 
 %files plugin-syslog
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rpm-plugins/syslog.so
+%{_mandir}/man8/rpm-plugin-syslog.8*
 
 %files plugin-systemd-inhibit
 %defattr(644,root,root,755)
@@ -1137,48 +1000,26 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %files plugin-ima
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rpm-plugins/ima.so
+%{_mandir}/man8/rpm-plugin-ima.8*
 
 %files plugin-prioreset
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rpm-plugins/prioreset.so
+%{_mandir}/man8/rpm-plugin-prioreset.8*
 
 %files plugin-selinux
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/rpm-plugins/selinux.so
+%{_mandir}/man8/rpm-plugin-selinux.8*
 %endif
 
+%files sign
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/rpmsign
+%{_mandir}/man8/rpmsign.8*
+
 %if %{with apidocs}
 %files apidocs
 %defattr(644,root,root,755)
 %doc doc/librpm/html/*
 %endif
-
-%if 0
-%attr(755,root,root) %{_bindir}/rpmdb
-%attr(755,root,root) %{_bindir}/rpmkeys
-%attr(755,root,root) %{_bindir}/rpmquery
-%attr(755,root,root) %{_bindir}/rpmsign
-%attr(755,root,root) %{_bindir}/rpmverify
-%attr(755,root,root) %{_rpmlibdir}/check-buildroot
-%attr(755,root,root) %{_rpmlibdir}/check-prereqs
-%attr(755,root,root) %{_rpmlibdir}/check-rpaths
-%attr(755,root,root) %{_rpmlibdir}/check-rpaths-worker
-%attr(755,root,root) %{_rpmlibdir}/config.guess
-%attr(755,root,root) %{_rpmlibdir}/config.sub
-%attr(755,root,root) %{_rpmlibdir}/debuginfo.prov
-%attr(755,root,root) %{_rpmlibdir}/desktop-file.prov
-%attr(755,root,root) %{_rpmlibdir}/find-provides
-%attr(755,root,root) %{_rpmlibdir}/find-requires
-%attr(755,root,root) %{_rpmlibdir}/metainfo.prov
-%attr(755,root,root) %{_rpmlibdir}/ocaml-find-provides.sh
-%attr(755,root,root) %{_rpmlibdir}/ocaml-find-requires.sh
-# valgrind suppression file for rpm
-%{_rpmlibdir}/rpm.supp
-%{_rpmlibdir}/rpmrc
-%attr(755,root,root) %{_rpmlibdir}/script.req
-%attr(755,root,root) %{_rpmlibdir}/sepdebugcrcfix
-%{_mandir}/man8/rpm-misc.8*
-%{_mandir}/man8/rpmdb.8*
-%{_mandir}/man8/rpmkeys.8*
-%{_mandir}/man8/rpmsign.8*
-%endif
This page took 0.071821 seconds and 4 git commands to generate.