---- rpm-4.5/scripts/perl.req 2008-07-09 12:38:31.000000000 +0300
-+++ rpm-4.4.9/scripts/perl.req.in 2008-08-12 23:08:33.518675858 +0300
-@@ -277,20 +277,20 @@
- # $V-style
- if ($ver =~ m/5\.([0-5])(\.([0-9]+))?$/) {
- if (defined $3) {
-- print "perl >= 0:5.00$1_$3\n";
+--- rpm-5.3.1/configure.ac.wiget 2010-05-22 17:15:11.000000000 +0200
++++ rpm-5.3.1/configure.ac 2010-05-30 16:37:59.526924459 +0200
+@@ -1100,7 +1100,7 @@ AC_CONFIG_FILES([ po/Makefile.in
+
+ AC_CONFIG_FILES([Makefile
+ rpmio/Makefile lib/Makefile build/Makefile sign/Makefile
+- po/Makefile.in scripts/Makefile fileattrs/Makefile
++ po/Makefile.in scripts/Makefile scripts/perl.req scripts/perl.prov fileattrs/Makefile
+ misc/Makefile
+ docs/Makefile
+ docs/man/Makefile
+--- rpm-5.3.1/scripts/perl.req.wiget 2008-10-26 10:50:53.000000000 +0100
++++ rpm-5.3.1/scripts/perl.req 2010-05-30 16:35:36.999438206 +0200
+@@ -45,7 +45,11 @@
+
+ if ("@ARGV") {
+ foreach (@ARGV) {
+- process_file($_);
++ if (m=/usr/(sbin|bin|lib|share|X11R6/(lib|bin))/=) {
++ if (! m=(/(doc|man|info|usr/src)/|\.(so|ph|h|html|pod)$)=) {
++ process_file($_);
++ }
++ }
+ }
+ } else {
+
+@@ -53,7 +57,11 @@
+ # contents of the file.
+
+ foreach (<>) {
+- process_file($_);
++ if (m=/usr/(sbin|bin|lib|share|X11R6/(lib|bin))/=) {
++ if (! m=(/(doc|man|info|usr/src)/|\.(so|ph|h|html|pod)$)=) {
++ process_file($_);
++ }
++ }
+ }
+ }
+
+@@ -261,19 +269,41 @@
+
+ $module =~ s/\(\s*\)$//;
+
+- if ( $module =~ m/^v?([0-9._]+)$/ ) {
++ if ( $module =~ m/^(v?)([0-9._]+)$/ ) {
+ # if module is a number then both require and use interpret that
+ # to mean that a particular version of perl is specified
+
+- my $ver = $1;
+- if ($ver =~ /5.00/) {
+- $perlreq{"0:$ver"} = 1;
+- next;
+- }
+- else {
+- $perlreq{"1:$ver"} = 1;
+- next;
+- }
++ my $ver=$2;
++ if (($1 eq 'v') or ($ver =~ /[0-9]+\.[0-9]+\.[0-9]+/)) {
++ # $V-style
++ if ($ver =~ m/5\.([0-5])(\.([0-9]+))?$/) {
++ if (defined $3) {