Author: glen                         Date: Sun Feb 24 16:43:09 2008 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- modules version provides is now automatic
- install shortcuts

---- Files affected:
SPECS:
   perl.spec (1.385 -> 1.386) 

---- Diffs:

================================================================
Index: SPECS/perl.spec
diff -u SPECS/perl.spec:1.385 SPECS/perl.spec:1.386
--- SPECS/perl.spec:1.385       Sun Feb 24 17:35:44 2008
+++ SPECS/perl.spec     Sun Feb 24 17:43:04 2008
@@ -36,6 +36,9 @@
 %define                perl_vendorlib  %{_datadir}/perl5/vendor_perl
 %define                perl_vendorarch 
%{_libdir}/perl5/vendor_perl/%{abi}/%{_target_platform}%{perlthread}
 
+# extract module version from source
+%define                perl_modversion()       %(awk -vp=%1 '$1 == p{m=$1; 
gsub(/::/, "-", m); printf("perl-%s = %s\\n", m, $3)}END{if (!m) printf("# 
Error looking up [%s]\\n", p)}'  %{SOURCE3})
+
 %define                rel     2.2
 Summary:       Practical Extraction and Report Language (Perl)
 Summary(cs.UTF-8):     Programovací jazyk Perl
@@ -69,6 +72,7 @@
 Source1:       
http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
 # Source1-md5: de47d7893f49ad7f41ba69c78511c0db
 Source2:       %{name}.prov
+Source3:       %{name}-modules
 Patch0:                %{name}_581-noroot_install.patch
 Patch1:                %{name}_581-INC.patch
 Patch2:                %{name}_580-errno_h-parsing.patch
@@ -291,14 +295,14 @@
 Requires:      %{name}-libs = %{epoch}:%{version}-%{release}
 Requires:      perl-dirs(%{_target_cpu})
 Provides:      perl(largefiles)
-Provides:      perl-File-Compare = 1.1005
-Provides:      perl-File-Spec = 3.2501
-Provides:      perl-File-Temp = 0.18
-Provides:      perl-IO = 1.23_01
-Provides:      perl-PerlIO-via-QuotedPrint = 0.06
-Provides:      perl-Safe = 2.12
-Provides:      perl-Socket = 1.78
-Provides:      perl-Tie-File = 0.97
+Provides:      %perl_modversion File::Compare
+Provides:      %perl_modversion File::Spec
+Provides:      %perl_modversion File::Temp
+Provides:      %perl_modversion IO
+Provides:      %perl_modversion PerlIO::via::QuotedPrint
+Provides:      %perl_modversion Safe
+Provides:      %perl_modversion Socket
+Provides:      %perl_modversion Tie::File
 Conflicts:     perl < 1:5.8.0
 
 %description base
@@ -336,12 +340,12 @@
 Requires:      %{name}-base = %{epoch}:%{version}-%{release}
 Requires:      %{name}-modules = %{epoch}:%{version}-%{release}
 Requires:      %{name}-tools-pod = %{epoch}:%{version}-%{release}
-Provides:      perl-CPAN = 1.9205
-Provides:      perl-Devel-DProf = 20050603.00
-Provides:      perl-Devel-PPPort = 3.13
-Provides:      perl-Devel-Peek = 1.03
-Provides:      perl-ExtUtils-Embed = 1.27
-Provides:      perl-ExtUtils-MakeMaker = 6.42
+Provides:      %perl_modversion CPAN
+Provides:      %perl_modversion Devel::DProf
+Provides:      %perl_modversion Devel::PPPort
+Provides:      %perl_modversion Devel::Peek
+Provides:      %perl_modversion ExtUtils::Embed
+Provides:      %perl_modversion ExtUtils::MakeMaker
 Obsoletes:     perl-lib-devel
 
 %description devel
@@ -384,43 +388,43 @@
 Summary(pl.UTF-8):     Moduły z podstawowej dystrybucji Perla
 Group:         Libraries
 Requires:      %{name}-base = %{epoch}:%{version}-%{release}
-Provides:      perl-Attribute-Handlers = 0.79
-Provides:      perl-CGI = 3.29
-Provides:      perl-Class-ISA = 0.33
-Provides:      perl-Digest = 1.15
-Provides:      perl-Digest-MD5 = 2.36_01
-Provides:      perl-Filter-Simple = 0.82
-Provides:      perl-FindBin = 1.49
-#Provides:     perl-Hash-Utils = 0.05  Data::Util is missing
-Provides:      perl-I18N-LangTags = 0.35
-Provides:      perl-IPC-SysV = 1.05
-Provides:      perl-Locale-Codes = 2.07
-Provides:      perl-Locale-Maketext = 1.12
-Provides:      perl-MIME-Base64 = 3.07_01
-Provides:      perl-Math-BigInt = 1.88
-Provides:      perl-Math-BigRat = 0.21
-Provides:      perl-Math-Trig = 1.04
-Provides:      perl-Memoize = 1.01_02
-Provides:      perl-NEXT = 0.60_01
-Provides:      perl-Pod-LaTeX = 0.58
-Provides:      perl-Pod-Parser = 1.35
-Provides:      perl-Scalar-List-Utils = 1.19
-Provides:      perl-Storable = 2.18
-Provides:      perl-Term-ANSIColor = 1.12
-Provides:      perl-Term-Cap = 1.12
-Provides:      perl-Test = 1.25
-Provides:      perl-Test-Harness = 2.64
-Provides:      perl-Test-Simple = 0.72
-Provides:      perl-Text-Balanced = 1.95
-Provides:      perl-Text-ParseWords = 3.26
-Provides:      perl-Text-Soundex = 3.03
+Provides:      %perl_modversion Attribute::Handlers
+Provides:      %perl_modversion CGI
+Provides:      %perl_modversion Class::ISA
+Provides:      %perl_modversion Digest
+Provides:      %perl_modversion Digest::MD5
+Provides:      %perl_modversion Filter::Simple
+Provides:      %perl_modversion FindBin
+#Provides:     %%perl_modversion Hash::Utils Data::Util is missing
+Provides:      %perl_modversion I18N::LangTags
+Provides:      %perl_modversion IPC::SysV
+#Provides:     %%perl_modversion Locale::Codes
+Provides:      %perl_modversion Locale::Maketext
+Provides:      %perl_modversion MIME::Base64
+Provides:      %perl_modversion Math::BigInt
+Provides:      %perl_modversion Math::BigRat
+Provides:      %perl_modversion Math::Trig
+Provides:      %perl_modversion Memoize
+Provides:      %perl_modversion NEXT
+Provides:      %perl_modversion Pod::LaTeX
+Provides:      %perl_modversion Pod::Parser
+#Provides:     %%perl_modversion Scalar::List::Utils
+Provides:      %perl_modversion Storable
+Provides:      %perl_modversion Term::ANSIColor
+Provides:      %perl_modversion Term::Cap
+Provides:      %perl_modversion Test
+Provides:      %perl_modversion Test::Harness
+Provides:      %perl_modversion Test::Simple
+Provides:      %perl_modversion Text::Balanced
+Provides:      %perl_modversion Text::ParseWords
+Provides:      %perl_modversion Text::Soundex
 # XXX: I'm not sure what to do with this one...
-#Provides:     perl-Text-Tabs+Wrap = 2005.0824(01)
-Provides:      perl-Time-HiRes = 1.9711
-Provides:      perl-UNIVERSAL = 1.04
-Provides:      perl-Unicode-Collate = 0.52
-Provides:      perl-Unicode-Normalize = 1.02
-Provides:      perl-libnet = 1.22
+#Provides:     %%perl_modversion Text::Tabs+Wrap 2005.0824(01)
+Provides:      %perl_modversion Time::HiRes
+Provides:      %perl_modversion UNIVERSAL
+Provides:      %perl_modversion Unicode::Collate
+Provides:      %perl_modversion Unicode::Normalize
+Provides:      %perl_modversion libnet
 Obsoletes:     perl-Encode-compat
 Obsoletes:     perl-lib
 
@@ -641,6 +645,7 @@
 %patch8 -p1
 
 %build
+
 unset LD_SYMBOLIC_FUNCTIONS || :
 sh Configure \
        -des \
@@ -721,12 +726,18 @@
 #%{?with_tests:%{__make} minitest}
 
 %install
-rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_mandir}/{ja,ko,zh_CN,zh_TW}/man1
+if [ ! -f makeinstall.stamp -o ! -d $RPM_BUILD_ROOT ]; then
+       rm -rf makeinstall.stamp installed.stamp $RPM_BUILD_ROOT
+
+       %{__make} install \
+               DESTDIR=$RPM_BUILD_ROOT
+       touch makeinstall.stamp
+fi
+
+if [ ! -f installed.stamp ]; then
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
 %{?with_microperl:install microperl $RPM_BUILD_ROOT%{_bindir}}
+install -d $RPM_BUILD_ROOT%{_mandir}/{ja,ko,zh_CN,zh_TW}/man1
 
 ## use symlinks instead of hardlinks
 %{__ln_s} -f perl%{version}    $RPM_BUILD_ROOT%{_bindir}/perl
@@ -831,6 +842,37 @@
 
 rm -rf $RPM_BUILD_ROOT%{_mandir}/README.perl-non-english-man-pages
 
+       touch installed.stamp
+fi
+
+# update and check perl-modules file
+echo '# Module versions from Perl %{version} distribution.' > perl-modules
+for m in $(awk '!/^#/ && !/^$/{print $1}' %{SOURCE3}); do
+       case $m in
+       Devel::DProf)
+#              + perl -ilib -MDevel::DProf -e print 'Devel-DProf = 
',$Devel::DProf::VERSION
+#              DProf: run perl with -d to use DProf.
+#              Compilation failed in require.
+#              BEGIN failed--compilation aborted.
+               v=$(%{__perl} -e 'do "Devel/DProf.pm"; print 
$Devel::DProf::VERSION')
+               ;;
+       libnet)
+               v=$(awk '/^libnet /{print $2; exit}' lib/Net/Changes)
+               ;;
+       *)
+               v=$(%{__perl} -M$m -e "print \$$m::VERSION" )
+               ;;
+       esac
+       echo "$m = $v" >> perl-modules
+done
+
+egrep -v '^([  ]*$|[;#])' %{SOURCE3} > .mods1
+egrep -v '^([  ]*$|[;#])' perl-modules > .mods2
+if ! cmp -s .mods1 .mods2; then
+       : %{SOURCE3} outdated with $(pwd)/perl-modules
+       exit 1
+fi
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -1450,6 +1492,10 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.386  2008-02-24 16:43:04  glen
+- modules version provides is now automatic
+- install shortcuts
+
 Revision 1.385  2008-02-24 16:35:44  glen
 - leave comment with --as-needed strip
 - pass arguments properly in runperl
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SPECS/perl.spec?r1=1.385&r2=1.386&f=u

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to