[rt3/f14/master] - Switch to using perl-filters (Work around broken deps caused by rpm dep-tracker changes). - Spec

corsepiu corsepiu at fedoraproject.org
Thu Feb 17 14:36:25 UTC 2011


commit 37e4580456ab9894de19e568f22a7c24c2fcb7f9
Author: Ralf Corsépius <corsepiu at fedoraproject.org>
Date:   Thu Feb 17 15:36:06 2011 +0100

    - Switch to using perl-filters
      (Work around broken deps caused by rpm dep-tracker changes).
    - Spec file overhaul.

 rt3.spec |   83 +++++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 53 insertions(+), 30 deletions(-)
---
diff --git a/rt3.spec b/rt3.spec
index d4790bc..ae1b33d 100644
--- a/rt3.spec
+++ b/rt3.spec
@@ -40,7 +40,7 @@
 
 Name:		rt3
 Version:	3.8.8
-Release:	3%{?dist}
+Release:	4%{?dist}
 Summary:	Request tracker 3
 
 Group:		Applications/Internet
@@ -51,9 +51,9 @@ Source3:	rt3.conf.in
 Source4:	README.fedora.in
 Source5:	rt3.logrotate.in
 
-Patch0:		rt-3.8.8-config.diff
-Patch2:		rt-3.8.8-Makefile.diff
-Patch3:		rt-3.8.6-test-dependencies.diff
+Patch0:		rt-%{version}-config.diff
+Patch2:		rt-%{version}-Makefile.diff
+Patch3:		rt-%{version}-test-dependencies.diff
 
 BuildArch:	noarch
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -170,21 +170,16 @@ Requires(postun): /bin/rm
 # rpm doesn't catch these:
 Requires: perl(Apache::Session)
 Requires: perl(Calendar::Simple)
-Requires: perl(Class::Accessor::Fast)
 Requires: perl(Data::ICal)
 Requires: perl(Data::ICal::Entry::Event)
-Requires: perl(Exception::Class::Base)
 %{?with_gd:Requires: perl(GD::Text)}
 %{?with_gd:Requires: perl(GD::Graph::bars)}
 %{?with_gd:Requires: perl(GD::Graph::pie)}
-Requires: perl(HTTP::Server::Simple::Mason)
-Requires: perl(HTML::Mason::Request)
 Requires: perl(I18N::LangTags::List)
 Requires: perl(Locale::Maketext::Fuzzy)
 Requires: perl(LWP::MediaTypes)
 Requires: perl(mod_perl2)
 Requires: perl(Module::Versions::Report)
-Requires: perl(Net::Server::PreFork)
 Requires: perl(Text::Quoted)
 Requires: perl(Text::WikiFormat)
 Requires: perl(Tree::Simple)
@@ -200,6 +195,50 @@ Provides: perl(RT::Tickets_Overlay_SQL)
 # Split out. Technically, not actually necessary, but ... let's keep it for now.
 Requires: rt3-mailgate
 
+%if 0%{fedora} < 15
+# Automatically added by Fedora >= 15's rpm
+# Missed by Fedora < 15's rpm
+Requires: perl(Class::Accessor::Fast)
+Requires: perl(Exception::Class::Base)
+Requires: perl(Exporter)
+Requires: perl(HTML::Mason::Request)
+Requires: perl(HTTP::Server::Simple::Mason)
+Requires: perl(Net::Server::PreFork)
+Requires: perl(RT::Action)
+Requires: perl(RT::Action::Notify)  
+Requires: perl(RT::Action::SendEmail)  
+Requires: perl(RT::Approval::Rule)     
+Requires: perl(RT::Condition)
+Requires: perl(RT::CustomFieldValues::External)
+Requires: perl(RT::Rule)
+Requires: perl(RT::Search)
+Requires: perl(RT::SharedSetting)
+Requires: perl(RT::Shredder::Exception)
+Requires: perl(RT::Shredder::Plugin::Base)  
+Requires: perl(RT::Shredder::Plugin::Base::Dump)  
+Requires: perl(RT::Shredder::Plugin::Base::Search)  
+Requires: perl(RT::Shredder::Plugin::SQLDump)  
+%endif
+
+# rpm regression
+Provides: config(rt3) = %{version}-%{release}
+Requires: config(rt3) = %{version}-%{release}
+
+%{?filter_setup:
+# Keep SpamAssassin optional
+%filter_from_requires /^perl(Mail::SpamAssassin)/d
+# Keep FCGI optional
+%filter_from_requires /^perl(FCGI::ProcManager)/d
+# Filter bogus requires
+%filter_from_requires /^perl()/d
+# Filter redundant provides
+%filter_from_provides /^perl(RT)$/d
+# Filter bogus provides
+%filter_from_provides /^perl(HTML::Mason/d
+%filter_from_provides /^perl(IO::Handle::CRLF)$/d
+%{?perl_default_filter}
+}
+
 %description
 RT is an enterprise-grade ticketing system which enables a group of people
 to intelligently and efficiently manage tasks, issues, and requests submitted
@@ -251,27 +290,6 @@ rm -rf autom4te.cache config.log config.status
 # Patch backups added by rpm disturb
 find -name '*.orig' -exec rm -f {} \;
 
-cat << \EOF > %{name}-prov
-#!/bin/sh
-%{__perl_provides} $* |\
-    sed -e '/^perl(RT)$/d' \
-    	-e '/^perl(HTML::Mason/d' \
-	-e '/^perl(IO::Handle::CRLF)$/d'
-EOF
-%define __perl_provides %{_builddir}/rt-%{version}/%{name}-prov
-chmod +x %{__perl_provides}
-
-# Filter out a bogus R:perl() rpm adds.
-# Keep SpamAssassin optional
-cat << \EOF > %{name}-req
-#!/bin/sh
-%{__perl_requires} $* |\
-    sed -e '/^perl()/d' \
-	-e '/^perl(Mail::SpamAssassin)$/d'
-EOF
-%define __perl_requires %{_builddir}/rt-%{version}/%{name}-req
-chmod +x %{__perl_requires}
-
 # Propagate rpm's directories to config.layout
 cat << \EOF >> config.layout
 
@@ -457,6 +475,11 @@ fi
 %endif
 
 %changelog
+* Thu Feb 17 2011 Ralf Corsépius <corsepiu at fedoraproject.org> - 3.8.8-4
+- Switch to using perl-filters
+  (Work around broken deps caused by rpm dep-tracker changes).
+- Spec file overhaul.
+
 * Thu Jul 08 2010 Ralf Corsépius <corsepiu at fedoraproject.org> - 3.8.8-3
 - Add COPYING to rt3-mailgate.
 



More information about the perl-devel mailing list