X-Git-Url: http://git.pld-linux.org/?p=packages%2Frpm.git;a=blobdiff_plain;f=rpm-perl-macros.patch;h=d5c6c5fec1084e651ee772879a6d116efc68facb;hp=a0df76109c4c3ae457f6a2d271e472cc5cc2fd97;hb=7d12560fd069642deb3d3a719ba6b44159768e79;hpb=aa0b51b8f9be738d155b8d6565b87e86df6660fa diff --git a/rpm-perl-macros.patch b/rpm-perl-macros.patch index a0df761..d5c6c5f 100644 --- a/rpm-perl-macros.patch +++ b/rpm-perl-macros.patch @@ -1,18 +1,21 @@ ---- rpm-4.1/scripts/Makefile.am.wiget Thu Aug 22 19:31:42 2002 -+++ rpm-4.1/scripts/Makefile.am Wed Sep 18 23:52:19 2002 -@@ -31,4 +31,5 @@ - magic.prov magic.req perl.prov perl.req rpmdiff rpmdiff.cgi \ - rpm.daily rpm.log rpm.xinetd rpm2cpio.sh \ - sql.prov sql.req tcl.req tgpg trpm u_pkg.sh \ -+ find-perl-requires find-perl-provides \ - vpkg-provides.sh vpkg-provides2.sh ---- rpm-4.1/scripts/perl.req.wiget Mon Jun 3 22:56:33 2002 -+++ rpm-4.1/scripts/perl.req Wed Sep 18 23:50:15 2002 +--- 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 + doc/Makefile + python/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 @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!@__PERL@ - # RPM (and it's source code) is covered under two separate licenses. + # RPM (and its source code) is covered under two separate licenses. @@ -41,7 +41,11 @@ @@ -26,10 +29,10 @@ + } } } else { - -@@ -49,14 +53,22 @@ + +@@ -49,7 +53,11 @@ if ("@ARGV") { # contents of the file. - + foreach (<>) { - process_file($_); + if (m=/usr/(sbin|bin|lib|share|X11R6/(lib|bin))/=) { @@ -40,25 +43,65 @@ } } +@@ -215,19 +223,41 @@ sub process_file { - foreach $module (sort keys %require) { - if (length($require{$module}) == 0) { -- print "perl($module)\n"; -+ if ($module =~ /^[0-9._]+$/) { -+ print "perl >= $module\n"; -+ } else { -+ print "perl($module)\n"; -+ } - } else { + $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 - # I am not using rpm3.0 so I do not want spaces arround my -@@ -209,7 +221,31 @@ - # will be included with the name sys/systeminfo.ph so only use the +- 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) { ++ print "perl-base >= 0:5.00$1_$3\n"; ++ } else { ++ print "perl-base >= 0:5.00$1\n"; ++ } ++ } else { ++ print "perl-base >= 1:$ver\n"; ++ } ++ } else { ++ # $]-style ++ if ($ver =~ m/5\.(00[0-5])_?([0-9]+)?$/) { ++ if (defined $2) { ++ print "perl-base >= 0:5.$1_$2\n"; ++ } else { ++ print "perl-base >= 0:5.$1\n"; ++ } ++ } else { ++ # expand to M.NNN_nnn form ++ $ver =~ s/^([0-9])$/$1./; ++ $ver =~ s/^([0-9]\.[0-9]{0,5}|[0-9]\.[0-9]{3}_[0-9]{0,2})$/${1}000000/; ++ $ver =~ s/^([0-9]\.[0-9]{3})_?([0-9]{3})0*$/$1_$2/; ++ # match trimming leading 0s ++ $ver =~ m/^([0-9])\.0*([1-9][0-9]*|0)_0*([1-9][0-9]*|0)$/; ++ print "perl-base >= 1:$1.$2.$3\n"; ++ } ++ } ++ next; + + }; + +@@ -244,7 +274,31 @@ sub process_file { + # will be included with the name sys/systeminfo.ph so only use the # basename of *.ph files -- ($module =~ m/\.ph$/) && next; +- ($module =~ m/\.ph$/) && next; + # ($module =~ m/\.ph$/) && ($module =~ s!.*/!!g ); -+ ++ + # there is no need to generate dependencies for ph, pl or test files + # so let's just skip them. + @@ -83,30 +126,5 @@ + + $module =~ s/\(\s*\)$//; - $require{$module}=$version; - $line{$module}=$_; ---- rpm-4.1/configure.ac.wiget Thu Aug 22 19:01:34 2002 -+++ rpm-4.1/configure.ac Wed Sep 18 23:50:46 2002 -@@ -1194,6 +1194,7 @@ - AC_CONFIG_SUBDIRS(popt beecrypt zlib libelf db3) - - AC_OUTPUT([ Doxyfile Makefile rpmrc macros platform rpmpopt rpm.spec -+ macros.perl scripts/perl.req scripts/perl.prov - rpmio/Makefile rpmdb/Makefile lib/Makefile build/Makefile - scripts/Makefile scripts/brp-redhat - scripts/macros.perl scripts/macros.php scripts/macros.python ---- rpm-4.1/macros.in.wiget Sun Sep 1 00:30:19 2002 -+++ rpm-4.1/macros.in Wed Sep 18 23:50:46 2002 -@@ -1012,8 +1012,10 @@ - # %dir %{perl_sitearch}/auto/Image - # - %requires_eq() %(LC_ALL="C" echo '%*' | xargs -r rpm -q --qf 'Requires: %%{name} = %%{epoch}:%%{version}\\n' | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not") --%perl_sitearch %(eval "`perl -V:installsitearch`"; echo $installsitearch) --%perl_archlib %(eval "`perl -V:installarchlib`"; echo $installarchlib) -+# -+# NOTE: %{perl_sitearch}, %{perl_archlib} and %{perl_sitelib} macros -+# has been moved to macros.perl (see info in this file for details). -+# - - #------------------------------------------------------------------------------ - # arch macro for all Intel i?86 compatibile processors + # use base|parent qw(Foo) dependencies + if ($statement eq "use" && ($module eq "base" || $module eq "parent")) {