]> git.pld-linux.org Git - packages/rpm.git/blobdiff - rpm.spec
- convert rpmdb only if it actually exists (vserver external pkgmanagement)
[packages/rpm.git] / rpm.spec
index 9ef1becb1c421dddb42243d99347d1ed16febb46..efdb5a17c3d9e483897f419cafe87253ef79156e 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -1,19 +1,9 @@
 #
 # TODO:
-# - check if glob() patch needs resurrecting/rewriting
-# - check if we want shell autodeps: Requires: executable(ln) executable(mv)
-# - %{_arch} = i686 not as used to be i386 (platform file thing?):
-#   5.0.2: rpm -E '%_target_base_arch %_arch'
-#          i386 i686
-#   4.4.9: rpm -E '%_target_base_arch %_arch'
-#          i386 i386
-# - python(abi) cap is not provided automatically because /usr/lib*/libpython2*.so.*
-#   matches ELF first
+# - make key infrastructure code fallback from keyutils to plain mode in case keyctl
+#   returns -ENOSYS
 # - add macros for some ppc, mipsel, alpha and sparc
 #
-# - headerGet() making poldek segfault http://rpm5.org/cvs/tktview?tn=38,1
-# - rpm doesn't exit when no sources/patches available http://rpm5.org/cvs/tktview?tn=40,1
-# - http://rpm5.org/cvs/tktview?tn=41&_submit=Show
 # - when adopting, use 4.5 ticket for checklist: https://bugs.launchpad.net/pld-linux/+bug/262985
 #
 # Conditional build:
 %bcond_without python          # don't build python bindings
 %bcond_without selinux         # build without selinux support
 %bcond_without suggest_tags    # build without Suggest tag (bootstrapping)
-%bcond_without neon            # build with HTTP/WebDAV support (neon library)
+%bcond_with    neon            # build with HTTP/WebDAV support (neon library)
 %bcond_without db              # BerkeleyDB
 %bcond_without sqlite          # build with SQLite support
 %bcond_with    sqlite_dbapi    # default database backend is sqlite
-%bcond_without system_lua              # use system lua
+%bcond_with    system_lua      # use system lua
+%bcond_with    keyutils        # build with keyutils support
 # force_cc             - force using __cc other than "%{_target_cpu}-pld-linux-gcc"
 # force_cxx            - force using __cxx other than "%{_target_cpu}-pld-linux-g++"
 # force_cpp            - force using __cpp other than "%{_target_cpu}-pld-linux-gcc -E"
 ERROR
 %endif
 
+%if %{with sqlite}
+# Error: /lib64/librpmio-5.4.so: undefined symbol: sqlite3_enable_load_extension
+%define                sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo ERROR)
+%endif
+
 # versions of required libraries
+%define                reqdb_pkg       db5.3
 %define                reqdb_ver       5.3
 %define                reqpopt_ver     1.15
 %define                beecrypt_ver    2:4.1.2-4
@@ -55,7 +52,7 @@ Summary(ru.UTF-8):    Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
 Version:       5.4.10
-Release:       0.11
+Release:       33
 License:       LGPL
 Group:         Base
 # http://rpm5.org/files/rpm/rpm-5.4/rpm-5.4.10-0.20120706.src.rpm
@@ -90,6 +87,8 @@ Source22:     rpm.noautoreq
 Source23:      rpm.noautoreqdep
 Source24:      rpm.noautoreqfiles
 Source25:      %{name}-php-requires.php
+Source26:      rpmdb_checkversion.c
+Source27:      macros.lang
 Patch0:                %{name}-branch.patch
 Patch1:                %{name}-man_pl.patch
 Patch2:                %{name}-popt-aliases.patch
@@ -99,41 +98,53 @@ Patch5:             %{name}-perl-req-perlfile.patch
 Patch6:                %{name}-scripts-closefds.patch
 Patch7:                %{name}-php-macros.patch
 Patch8:                %{name}-gettext-in-header.patch
-Patch9:        %{name}-lua.patch
-Patch10:       %{name}-etc_dir.patch
-Patch11:       %{name}-php-deps.patch
-Patch12:       %{name}-glob.patch
-Patch13:       %{name}-notsc.patch
-Patch14:       %{name}-hack-norpmlibdep.patch
-Patch15:       %{name}-epoch0.patch
-Patch16:       %{name}-perl_req-INC_dirs.patch
-Patch17:       %{name}-debuginfo.patch
-Patch18:       vendor-pld.patch
-Patch19:       %{name}-old-fileconflicts-behaviour.patch
-Patch20:       %{name}-javadeps.patch
-Patch21:       %{name}-truncate-cvslog.patch
-Patch22:       %{name}-libtool-deps.patch
-Patch23:       %{name}-mimetype.patch
-Patch24:       %{name}-sparc64.patch
-Patch25:       %{name}-gendiff.patch
-Patch26:       openmp.patch
-Patch27:       %{name}-URPM-build-fix.patch
-Patch28:       %{name}-db5.3.patch
-Patch29:       %{name}-helperEVR-noassert.patch
-Patch30:       %{name}-unglobal.patch
-Patch31:       %{name}-builddir-readlink.patch
-Patch32:       %{name}-changelog_order_check_nonfatal.patch
-Patch33:       %{name}-cleanbody.patch
-Patch34:       %{name}-dirdeps-macro.patch
-Patch35:       %{name}-installbeforeerase.patch
-Patch36:       %{name}-libmagic-locale.patch
-Patch37:       %{name}-namespace-probe.patch
-Patch38:       %{name}-popt-coreutils.patch
-Patch39:       %{name}-postun-nofail.patch
-Patch40:       %{name}-silence-RPM_CHAR_TYPE.patch
-Patch41:       %{name}-fix-missing-types-in-headers.patch
-Patch42:       %{name}-disable-ldconfig-optimization.patch
-Patch43:       %{name}-fix--p-interpreter-and-empty-script.patch
+Patch9:                %{name}-lua.patch
+Patch10:       %{name}-php-deps.patch
+Patch11:       %{name}-notsc.patch
+Patch12:       %{name}-hack-norpmlibdep.patch
+Patch13:       %{name}-dont-copy-descriptive-tags.patch
+Patch14:       %{name}-perl_req-INC_dirs.patch
+Patch15:       %{name}-debuginfo.patch
+Patch16:       vendor-pld.patch
+Patch17:       %{name}-old-fileconflicts-behaviour.patch
+Patch18:       %{name}-javadeps.patch
+Patch19:       %{name}-truncate-cvslog.patch
+Patch20:       %{name}-libtool-deps.patch
+Patch21:       %{name}-mimetype.patch
+Patch22:       %{name}-sparc64.patch
+Patch23:       %{name}-gendiff.patch
+Patch24:       openmp.patch
+Patch25:       %{name}-URPM-build-fix.patch
+Patch26:       %{name}-db5.3.patch
+Patch27:       %{name}-helperEVR-noassert.patch
+Patch28:       %{name}-unglobal.patch
+Patch29:       %{name}-builddir-readlink.patch
+Patch30:       %{name}-changelog_order_check_nonfatal.patch
+Patch31:       %{name}-cleanbody.patch
+Patch32:       %{name}-dirdeps-macro.patch
+Patch33:       %{name}-installbeforeerase.patch
+Patch34:       %{name}-libmagic-locale.patch
+Patch35:       %{name}-namespace-compare.patch
+Patch36:       %{name}-popt-coreutils.patch
+Patch37:       %{name}-postun-nofail.patch
+Patch38:       %{name}-silence-RPM_CHAR_TYPE.patch
+Patch39:       %{name}-fix-missing-types-in-headers.patch
+Patch40:       %{name}-fix--p-interpreter-and-empty-script.patch
+Patch41:       %{name}-db_buffer_small.patch
+Patch42:       %{name}-pattern_Release.patch
+Patch43:       %{name}-fix-___build_pre-macro.patch
+Patch44:       %{name}-missing-patch-file-fails-build.patch
+Patch45:       %{name}-remove-misleading-missing-patch-message.patch
+Patch46:       %{name}-file-magic-can-be-mixed-case.patch
+Patch47:       %{name}-query-always-noisy.patch
+Patch48:       %{name}-verify-ghosts-broken-logic.patch
+Patch49:       %{name}-python-enable-compat-RPMSENSE.patch
+Patch50:       %{name}-dont-treat-gstreamer-modules-as-font.patch
+Patch51:       %{name}-gst-inspect-typo.patch
+Patch52:       %{name}-null-term-ascii-digest.patch
+Patch53:       %{name}-lua-enable-extra-libs.patch
+Patch54:       %{name}-fix-filedigests-verify.patch
+Patch55:       %{name}-disable-hmac-verify.patch
 
 # Patches imported from Mandriva
 
@@ -237,19 +248,31 @@ Patch1037:        rpm-5.4.10-fix-neon-saving-error-pages-as-target-file.patch
 Patch1038:     rpm-5.4.10-support-ignore-arch-and-os-again.patch
 # status: ready for merge
 Patch1039:     rpm-5.4.4-fix-same-package-with-epoch-possible-to-upgrade.patch
+# we want that patch too, a bit of builder infrastructure relies on NOSIGNATURES
+Patch1040:     rpm-5.4.9-support-signatures-and-digest-disablers.patch
+# lack insight on actual functionality, which anyways seems broken, so let's
+# disable it to avoid errors from berkeley db..
+# status: keep locally
+Patch1041:     rpm-5.4.9-disable-l10ndir.patch
+# status: ready for merge
+Patch1042:     rpm-5.4.9-fix-rpm_qa-pattern.patch
 
 URL:           http://rpm5.org/
 BuildRequires: autoconf >= 2.60
 BuildRequires: automake >= 1.4
 BuildRequires: beecrypt-devel >= %{beecrypt_ver}
 BuildRequires: bzip2-devel >= 1.0.2-17
-%{?with_db:BuildRequires:      db-devel >= %{reqdb_ver}}
+%{?with_db:BuildRequires:      %{reqdb_pkg}-devel >= %{reqdb_ver}}
 BuildRequires: elfutils-devel >= 0.108
 #BuildRequires:        gettext-autopoint >= 0.11.4-2
 BuildRequires: gettext-devel >= 0.11.4-2
-BuildRequires: keyutils-devel
+%{?with_keyutils:BuildRequires:        keyutils-devel}
 BuildRequires: libmagic-devel
-%{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
+%if %{with selinux}
+BuildRequires: libselinux-devel >= 2.1.0
+BuildRequires: libsepol-devel >= 2.1.0
+BuildRequires: libsemanage-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
@@ -278,11 +301,15 @@ BuildRequires:    tetex-pdftex
 # Require static library only for static build
 BuildRequires: beecrypt-static >= %{beecrypt_ver}
 BuildRequires: bzip2-static >= 1.0.2-17
-%{?with_db:BuildRequires:      db-static >= %{reqdb_ver}}
+%{?with_db:BuildRequires:      %{reqdb_pkg}-static >= %{reqdb_ver}}
 BuildRequires: elfutils-static
 BuildRequires: glibc-static >= 2.2.94
 BuildRequires: libmagic-static
-%{?with_selinux:BuildRequires: libselinux-static >= 1.18}
+%if %{with selinux}
+BuildRequires: libselinux-static >= 2.1.0
+BuildRequires: libsepol-static >= 2.1.0
+BuildRequires: libsemanage-static >= 2.1.0
+%endif
 BuildRequires: popt-static >= %{reqpopt_ver}
 BuildRequires: zlib-static
 %endif
@@ -301,7 +328,6 @@ Conflicts:  lzma-libs < 4.999.3
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _binary_payload         w9.gzdio
-%define                _noPayloadPrefix        1
 
 # don't require very fresh rpm.macros to build
 %define                __gettextize gettextize --copy --force --intl ; cp -f po/Makevars{.template,}
@@ -395,10 +421,11 @@ Summary:  RPMs library
 Summary(pl.UTF-8):     Biblioteki RPM-a
 Group:         Libraries
 Requires:      beecrypt >= %{beecrypt_ver}
-%{?with_db:Requires:   db >= %{reqdb_ver}}
+%{?with_db:Requires:   %{reqdb_pkg} >= %{reqdb_ver}}
 Requires:      libmagic >= 1.15-2
-%{?with_selinux:Requires:      libselinux >= 1.18}
+%{?with_selinux:Requires:      libselinux >= 2.1.0}
 Requires:      popt >= %{reqpopt_ver}
+%{?with_sqlite:Requires:       sqlite3 >= %{sqlite_build_version}}
 Obsoletes:     rpm-libs
 # avoid SEGV caused by mixed db versions
 Conflicts:     poldek < 0.18.1-16
@@ -421,9 +448,9 @@ Group:              Development/Libraries
 Requires:      %{name}-lib = %{version}-%{release}
 Requires:      beecrypt-devel >= %{beecrypt_ver}
 Requires:      bzip2-devel
-%{?with_db:Requires:   db-devel >= %{reqdb_ver}}
+%{?with_db:Requires:   %{reqdb_pkg}-devel >= %{reqdb_ver}}
 Requires:      elfutils-devel
-Requires:      keyutils-devel
+%{?with_keyutils:Requires:     keyutils-devel}
 Requires:      libmagic-devel
 %{?with_selinux:Requires:      libselinux-devel}
 Requires:      popt-devel >= %{reqpopt_ver}
@@ -485,9 +512,9 @@ Group:              Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
 Requires:      beecrypt-static >= %{beecrypt_ver}
 Requires:      bzip2-static
-%{?with_db:Requires:   db-static >= %{reqdb_ver}}
+%{?with_db:Requires:   %{reqdb_pkg}-static >= %{reqdb_ver}}
 Requires:      elfutils-static
-Requires:      keyutils-static
+%{?with_keyutils:Requires:     keyutils-static}
 Requires:      libmagic-static
 Requires:      popt-static >= %{reqpopt_ver}
 Requires:      zlib-static
@@ -581,7 +608,7 @@ Summary(ru.UTF-8):  Скрипты и утилиты, необходимые дл
 Summary(uk.UTF-8):     Скрипти та утиліти, необхідні для побудови пакетів
 Group:         Applications/File
 Requires(pre): findutils
-Requires:      %{name}-build-macros >= 1.433-2
+Requires:      %{name}-build-macros >= 1.653
 Requires:      %{name}-utils = %{version}-%{release}
 Requires:      /bin/id
 Requires:      awk
@@ -762,30 +789,28 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch7 -p1
 %patch8 -p1
 %{?with_system_lua:%patch9 -p1}
-# CHECK ME - macrofiles: ~/etc could be used
-#%%patch10 -p1
-%patch11 -p1
+%patch10 -p1
 %ifnarch i386 i486
 # enable TSC for capable archs
-%patch13 -p1
+%patch11 -p1
 %endif
-%patch14 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p0
 %patch15 -p1
-%patch16 -p0
+%patch16 -p1
 %patch17 -p1
 %patch18 -p1
 %patch19 -p1
 %patch20 -p1
 %patch21 -p1
+%ifarch sparc64
 %patch22 -p1
-# Maybe, at last we can remove this?
-#patch12 -p1
+%endif
 %patch23 -p1
-%ifarch sparc64
 %patch24 -p1
-%endif
 %patch25 -p1
-%patch26 -p1 -b .wiget
+%patch26 -p1
 %patch27 -p1
 %patch28 -p1
 %patch29 -p1
@@ -803,6 +828,18 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch41 -p1
 %patch42 -p1
 %patch43 -p1
+%patch44 -p1
+%patch45 -p1
+%patch46 -p1
+%patch47 -p1
+%patch48 -p1
+%patch49 -p1
+%patch50 -p1
+%patch51 -p1
+%patch52 -p0
+%patch53 -p1
+%patch54 -p1
+%patch55 -p1
 
 %patch1000 -p1
 %patch1001 -p1
@@ -844,6 +881,9 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch1037 -p1
 %patch1038 -p1
 %patch1039 -p1
+%patch1040 -p1
+%patch1041 -p1
+%patch1042 -p1
 
 install %{SOURCE2} macros/pld.in
 install %{SOURCE8} scripts/php.prov.in
@@ -855,6 +895,8 @@ install %{SOURCE11} scripts/perl.prov.in
 # generate Group translations to *.po
 awk -f %{SOURCE6} %{SOURCE1}
 
+install %{SOURCE26} tools/rpmdb_checkversion.c
+
 %build
 %{__libtoolize}
 #%{__autopoint}
@@ -877,12 +919,15 @@ sed -i \
        CXX="%{__newcxx}" \
        CPP="%{__newcpp}" \
        WITH_PERL_VERSION=no \
+       __GST_INSPECT=%{_bindir}/gst-inspect-1.0 \
        --enable-shared \
        --enable-static \
        %{!?with_apidocs:--without-apidocs} \
        %{?with_python:--with-python=%{py_ver} --with-python-lib-dir=%{py_sitedir}} \
        %{!?with_python:--without-python} \
-       --with%{!?with_selinux:out}-selinux \
+       --with-selinux=%{!?with_selinux:no}%{?with_selinux:external} \
+       --with-sepol=%{!?with_selinux:not}%{?with_selinux:external} \
+       --with-semanage=%{!?with_selinux:no}%{?with_selinux:external} \
        --with-libelf \
        --with-zlib=external \
        --with-bzip2=external \
@@ -897,10 +942,10 @@ sed -i \
        --with-dbapi=%{!?with_sqlite_dbapi:db}%{?with_sqlite_dbapi:sqlite} \
        --with-lua=%{!?with_system_lua:internal}%{?with_system_lua:external} \
        --with-pcre=external \
-       --with-keyutils=none \
+       --with-keyutils=%{?with_keyutils:external}%{!?with_keyutils:no} \
        --with-uuid=%{_libdir}:%{_includedir}/ossp-uuid \
        --without-path-versioned \
-       --with-extra-path-macros='%{_sysconfdir}/rpm/macros.d/*.macros:%{_rpmlibdir}/macros.d/pld:%{_rpmlibdir}/macros.build:~/etc/rpmmacros:~/etc/.rpmmacros:~/.rpmmacros' \
+       --with-extra-path-macros='%{_sysconfdir}/rpm/macros.d/*.macros:%{_rpmlibdir}/macros.d/pld:%{_rpmlibdir}/macros.build:~/etc/.rpmmacros:~/.rpmmacros' \
        --with-bugreport="http://bugs.pld-linux.org/" \
        --with-vendor=pld
 
@@ -911,9 +956,12 @@ sed -i \
 
 %{?with_apidocs:%{__make} apidocs}
 
+%{__cc} %{rpmcflags} tools/rpmdb_checkversion.c -o tools/rpmdb_checkversion -ldb-%{reqdb_ver}
+
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm,/var/lib/banner,/var/cache/hrmib,/etc/pki/rpm-gpg}
+install -d $RPM_BUILD_ROOT{/bin,/%{_lib},/etc/sysconfig,%{_sysconfdir}/rpm} \
+       $RPM_BUILD_ROOT{/var/lib/banner,/var/cache/hrmib,/etc/pki/rpm-gpg}
 
 install %{SOURCE16} $RPM_BUILD_ROOT%{_sysconfdir}/pki/rpm-gpg/PLD-3.0-Th-GPG-key.asc
 
@@ -1056,6 +1104,7 @@ install %{SOURCE15} $RPM_BUILD_ROOT%{_bindir}/banner.sh
 install -d $RPM_BUILD_ROOT%{_sysconfdir}/rpm/sysinfo
 
 install %{SOURCE18} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros
+install %{SOURCE27} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/macros.lang
 install %{SOURCE19} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautocompressdoc
 install %{SOURCE20} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprov
 install %{SOURCE21} $RPM_BUILD_ROOT%{_sysconfdir}/rpm/noautoprovfiles
@@ -1070,6 +1119,13 @@ 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 tools/rpmdb_checkversion $RPM_BUILD_ROOT%{_rpmlibdir}/bin
+
+# create macro loading wrappers for backward compatibility
+for m in gstreamer java mono perl php python; do
+       echo "%%{load:%{_rpmlibdir}/macros.d/$m}" >$RPM_BUILD_ROOT%{_rpmlibdir}/macros.$m
+done
+
 # for rpm -e|-U --repackage
 install -d $RPM_BUILD_ROOT/var/{spool/repackage,lock/rpm}
 touch $RPM_BUILD_ROOT/var/lock/rpm/transaction
@@ -1108,9 +1164,6 @@ cp -a doc/manual manual
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%triggerpostun lib -- %{name}-lib < %{version}
-rm -f /var/lib/rpm/__db*
-
 %pretrans
 # this needs to be a dir
 if [ -f %{_sysconfdir}/rpm/sysinfo ]; then
@@ -1119,6 +1172,25 @@ if [ -f %{_sysconfdir}/rpm/sysinfo ]; then
        mkdir %{_sysconfdir}/rpm/sysinfo
 fi
 
+%posttrans
+if [ -e /var/lib/rpm/Packages ] && [ -x %{_rpmlibdir}/bin/rpmdb_checkversion ] && \
+               ! %{_rpmlibdir}/bin/rpmdb_checkversion -h /var/lib/rpm -d /var/lib/rpm; then
+       if [ ! -e /var/lib/rpm.rpmbackup-%{version}-%{release} ] && [ -x /bin/cp ] && \
+                       /bin/cp -a /var/lib/rpm /var/lib/rpm.rpmbackup-%{version}-%{release}; then
+               echo
+               echo "Backup of the rpm database has been created in /var/lib/rpm.rpmbackup-%{version}-%{release}"
+               echo
+       fi
+       if [ -x %{_rpmlibdir}/bin/dbconvert ]; then
+               if ! %{_rpmlibdir}/bin/dbconvert --rebuilddb; then
+                       echo
+                       echo "rpm database conversion failed!"
+                       echo "You have to run  %{_rpmlibdir}/bin/dbconvert manually"
+                       echo
+               fi
+       fi
+fi
+
 %triggerpostun -- %{name} < 4.4.9-44
 %{_rpmlibdir}/hrmib-cache
 
@@ -1138,6 +1210,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %attr(755,root,root) /bin/rpm
 
 %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/*
@@ -1174,6 +1247,7 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 
 %dir %{_rpmlibdir}/bin
 %attr(755,root,root) %{_rpmlibdir}/bin/dbconvert
+%attr(755,root,root) %{_rpmlibdir}/bin/rpmdb_checkversion
 
 %files base
 %defattr(644,root,root,755)
@@ -1234,7 +1308,17 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %attr(755,root,root) %{_rpmlibdir}/bin/rpmcmp
 %attr(755,root,root) %{_rpmlibdir}/bin/rpmdeps
 %attr(755,root,root) %{_rpmlibdir}/bin/rpmdigest
-%attr(755,root,root) %{_rpmlibdir}/bin/rpmkey
+%if %{with selinux}
+%attr(755,root,root) %{_rpmlibdir}/bin/semodule
+%attr(755,root,root) %{_rpmlibdir}/bin/spooktool
+%endif
+%if %{without system_lua}
+%attr(755,root,root) %{_rpmlibdir}/bin/lua
+%attr(755,root,root) %{_rpmlibdir}/bin/luac
+%attr(755,root,root) %{_rpmlibdir}/bin/rpmlua
+%attr(755,root,root) %{_rpmlibdir}/bin/rpmluac
+%endif
+%{?with_keyutils:%attr(755,root,root) %{_rpmlibdir}/bin/rpmkey}
 %attr(755,root,root) %{_rpmlibdir}/bin/rpmrepo
 %{_mandir}/man8/rpm2cpio.8*
 %{_mandir}/man8/rpmcache.8*
@@ -1333,6 +1417,13 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/macros.d/selinux
 %{_rpmlibdir}/macros.d/tcl
 %{_rpmlibdir}/macros.rpmbuild
+# compat wrappers
+%{_rpmlibdir}/macros.gstreamer
+%{_rpmlibdir}/macros.java
+%{_rpmlibdir}/macros.mono
+%{_rpmlibdir}/macros.perl
+%{_rpmlibdir}/macros.php
+%{_rpmlibdir}/macros.python
 
 %attr(755,root,root) %{_rpmlibdir}/check-multiarch-files
 %attr(755,root,root) %{_rpmlibdir}/gem_helper.rb
This page took 0.179091 seconds and 4 git commands to generate.