rpm/rpm-5.4.7-kmod-dependencies.patch
2012-08-01 14:59:23 +04:00

66 lines
2.9 KiB
Diff

--- rpm-5.4.7/lib/rpmfc.c.kmod~ 2012-03-16 16:34:04.640654829 +0100
+++ rpm-5.4.7/lib/rpmfc.c 2012-03-16 16:34:04.644654834 +0100
@@ -981,6 +981,19 @@ static int rpmfcSCRIPT(rpmfc fc)
xx = rpmfcHelper(fc, 'P', "gstreamer");
/* XXX: currently of no use, but for the sake of consistency... */
xx = rpmfcHelper(fc, 'R', "gstreamer");
+#if defined(RPM_VENDOR_MANDRIVA)
+ } else
+ if ((fc->fcolor->vals[fc->ix] & RPMFC_MODULE)) {
+ miRE mire = mireNew(RPMMIRE_REGEX, RPMTAG_FILEPATHS);
+ if (!mireRegcomp(mire, "^.*((/lib/modules/|/var/lib/dkms/).*\\.ko(\\.gz|\\.xz)?|(/var/lib/dkms-binary/[^/]+/[^/]+|/usr/src)/[^/]+/dkms.conf)$"))
+ if (mireRegexec(mire, fc->fn[fc->ix], (size_t) 0) >= 0) {
+ fc->fcolor->vals[fc->ix] |= (RPMFC_MODULE|RPMFC_SCRIPT);
+ xx = rpmfcHelper(fc, 'P', "kernel");
+ /* XXX: currently of no use, but for the sake of consistency... */
+ xx = rpmfcHelper(fc, 'R', "kernel");
+ }
+ mire = mireFree(mire);
+#endif
}
/*@-observertrans@*/
@@ -1188,6 +1201,14 @@ assert(fc->fn != NULL);
else if (!strncmp(fn, "/gstreamer", sizeof("/gstreamer")-1) &&
fc->fcolor->vals[fc->ix] & RPMFC_LIBRARY)
fc->fcolor->vals[fc->ix] |= (RPMFC_MODULE|RPMFC_SCRIPT);
+#if defined(RPM_VENDOR_MANDRIVA)
+ } else {
+ miRE mire = mireNew(RPMMIRE_REGEX, RPMTAG_FILEPATHS);
+ if (!mireRegcomp(mire, "^.*((/lib/modules/|/var/lib/dkms/).*\\.ko(\\.gz|\\.xz)?|(/var/lib/dkms-binary/[^/]+/[^/]+|/usr/src)/[^/]+/dkms.conf)$"))
+ if (mireRegexec(mire, fc->fn[fc->ix], (size_t) 0) >= 0)
+ fc->fcolor->vals[fc->ix] |= (RPMFC_MODULE|RPMFC_SCRIPT);
+ mire = mireFree(mire);
+#endif
}
}
--- rpm-5.4.7/macros/kernel.in.kmod~ 2011-04-10 12:54:18.000000000 +0200
+++ rpm-5.4.7/macros/kernel.in 2012-03-16 16:37:04.277948160 +0100
@@ -2,11 +2,11 @@
# To make use of these macros insert the following line into your spec file:
# %{load:%{_usrlibrpm}/macros.d/kernel}
-%__modinfo @__MODINFO
+%__modinfo @__MODINFO@
# Path to scripts to autogenerate gstreamer package dependencies,
#
-# Note: Used if _use_internal_dependency_generator is non-zero. The
+# Note: Used iff _use_internal_dependency_generator is non-zero. The
# helpers are also used by %{_rpmhome}/rpmdeps {--provides|--requires}.
%__kernel_provides %{_rpmhome}/kmod-deps.sh --provides --modinfo %__modinfo
#%__kernel_requires %{_rpmhome}/kmod-deps.sh --requires --modinfo %__modinfo
--- rpm-5.4.7/macros/macros.in.kmod~ 2012-03-16 16:34:04.614654786 +0100
+++ rpm-5.4.7/macros/macros.in 2012-03-16 16:34:04.645654836 +0100
@@ -981,6 +981,10 @@ $_arbitrary_tags_tests Foo:Bar
%{load:%{_usrlibrpm}/macros.d/haskell}
#------------------------------------------------------------------------
+# kmod(...) configuration.
+%{load:%{_usrlibrpm}/macros.d/kernel}
+
+#------------------------------------------------------------------------
# perl(...) configuration
%{load:%{_usrlibrpm}/macros.d/perl}