diff --git a/rpm-4.11.1-kmod-find-provides.patch b/rpm-4.11.1-kmod-find-provides.patch new file mode 100644 index 0000000..e96399b --- /dev/null +++ b/rpm-4.11.1-kmod-find-provides.patch @@ -0,0 +1,59 @@ +diff -Nur rpm-4.11.1/fileattrs/kmod.attr rpm-4.11.1.new/fileattrs/kmod.attr +--- rpm-4.11.1/fileattrs/kmod.attr 1969-12-31 19:00:00.000000000 -0500 ++++ rpm-4.11.1.new/fileattrs/kmod.attr 2013-10-31 16:33:57.919845171 -0400 +@@ -0,0 +1,2 @@ ++%__kmod_provides %{_rpmconfigdir}/kmod.prov ++%__kmod_path ^/lib/modules/.*$ +diff -Nur rpm-4.11.1/fileattrs/Makefile.am rpm-4.11.1.new/fileattrs/Makefile.am +--- rpm-4.11.1/fileattrs/Makefile.am 2012-11-18 03:21:06.000000000 -0500 ++++ rpm-4.11.1.new/fileattrs/Makefile.am 2013-10-31 16:35:16.443641444 -0400 +@@ -6,6 +6,6 @@ + + fattrs_DATA = \ + desktop.attr elf.attr font.attr libtool.attr perl.attr perllib.attr \ +- pkgconfig.attr python.attr ocaml.attr script.attr mono.attr ++ pkgconfig.attr python.attr ocaml.attr script.attr mono.attr kmod.attr + + EXTRA_DIST = $(fattrs_DATA) +diff -Nur rpm-4.11.1/scripts/kmod.prov rpm-4.11.1.new/scripts/kmod.prov +--- rpm-4.11.1/scripts/kmod.prov 1969-12-31 19:00:00.000000000 -0500 ++++ rpm-4.11.1.new/scripts/kmod.prov 2013-10-31 16:33:57.919845171 -0400 +@@ -0,0 +1,17 @@ ++#!/bin/sh +x ++ ++IFS=$'\n' ++ ++for i in $(grep -E '(/lib/modules/.*\.ko|/lib/modules/.*/modules.builtin)'); ++do ++ kmod=$(basename $i); ++ ++ if [ $kmod == "modules.builtin" ]; then ++ for j in $(cat $i); do ++ j=$(basename $j); ++ echo "kmod($j)" ++ done ++ else ++ echo "kmod($kmod)" ++ fi ++done +diff -Nur rpm-4.11.1/scripts/Makefile.am rpm-4.11.1.new/scripts/Makefile.am +--- rpm-4.11.1/scripts/Makefile.am 2012-11-18 03:21:06.000000000 -0500 ++++ rpm-4.11.1.new/scripts/Makefile.am 2013-10-31 16:35:53.990543808 -0400 +@@ -20,7 +20,7 @@ + ocaml-find-requires.sh ocaml-find-provides.sh \ + pkgconfigdeps.sh libtooldeps.sh \ + fontconfig.prov desktop-file.prov script.req \ +- macros.perl macros.php macros.python ++ macros.perl macros.php macros.python kmod.prov + + rpmconfig_SCRIPTS = \ + brp-compress brp-python-bytecompile brp-java-gcjcompile \ +@@ -34,7 +34,7 @@ + pkgconfigdeps.sh libtooldeps.sh \ + ocaml-find-requires.sh ocaml-find-provides.sh \ + fontconfig.prov desktop-file.prov script.req \ +- rpmdb_loadcvt rpm2cpio.sh tcl.req tgpg ++ rpmdb_loadcvt rpm2cpio.sh tcl.req tgpg kmod.prov + + rpmconfig_DATA = \ + rpm.daily rpm.log rpm.supp \ diff --git a/rpm.spec b/rpm.spec index abf729d..4aeb671 100644 --- a/rpm.spec +++ b/rpm.spec @@ -21,7 +21,7 @@ Summary: The RPM package management system Name: rpm Version: %{rpmver} -Release: %{?snapver:0.%{snapver}.}10%{?dist} +Release: %{?snapver:0.%{snapver}.}11%{?dist} Group: System Environment/Base Url: http://www.rpm.org/ Source0: http://rpm.org/releases/rpm-4.11.x/%{name}-%{srcver}.tar.bz2 @@ -44,6 +44,8 @@ Patch4: rpm-4.8.1-use-gpg2.patch Patch5: rpm-4.9.90-armhfp.patch #conditionally applied patch for arm hardware floating point Patch6: rpm-4.9.0-armhfp-logic.patch +# Generate kmod(basename.ko) provides for kernel +Patch7: rpm-4.11.1-kmod-find-provides.patch # Patches already in upstream # Filter soname dependencies by name @@ -253,6 +255,7 @@ packages on a system. %patch2 -p1 -b .fedora-specspo %patch3 -p1 -b .no-man-dirs %patch4 -p1 -b .use-gpg2 +%patch7 -p1 -b .kmod-provides %patch100 -p1 -b .filter-soname-deps %patch101 -p1 -b .instprefix @@ -519,6 +522,9 @@ exit 0 %doc COPYING doc/librpm/html/* %changelog +* Tue Dec 03 2013 Panu Matilainen - 4.11.1-11 +- generate kmod(module.ko) provides for kernel (#1025513) + * Mon Nov 18 2013 Panu Matilainen - 4.11.1-10 - python 3 string and file compatibility fixes