[Rpm-maint] [Patch 14/19] Filter out incorrect perl(main) provides.

Paul Nasrat pnasrat at redhat.com
Fri Feb 9 11:48:58 UTC 2007


This patch ensures the perl provides mechanisms do not emit perl(main)
(rh#177960).

--- rpm-4.4.2/scripts/perl.prov.main	2006-01-18 11:32:28.000000000 -0500
+++ rpm-4.4.2/scripts/perl.prov	2006-01-18 11:32:44.000000000 -0500
@@ -121,13 +121,17 @@
     }
 
     # not everyone puts the package name of the file as the first
-    # package name so we report all namespaces as if they were
-    # provided packages (really ugly).
+    # package name so we report all namespaces except some common
+    # false positives as if they were provided packages (really ugly).
 
     if (m/^\s*package\s+([_:a-zA-Z0-9]+)\s*;/) {
       $package=$1;
       undef $version;
-      $require{$package}=undef;
+      if ($package eq 'main') {
+        undef $package;
+      } else {
+        $require{$package}=undef;
+      }
     }
 
     # after we found the package name take the first assignment to
--- rpm-4.4.2/scripts/perldeps.pl.main	2006-01-18 11:32:37.000000000 -0500
+++ rpm-4.4.2/scripts/perldeps.pl	2006-01-18 11:32:44.000000000 -0500
@@ -150,6 +150,10 @@
   return if(exists($self->{'provides_check'}->{$params{'-provide'}}));
 
   #
+  # Skip some common false positives
+  return if $params{'-provide'} eq 'main';
+
+  #
   # Created dependency object
   my $dep = new Dependency "provide", $params{-provide};
   $dep->filename($params{-filename});





More information about the Rpm-maint mailing list