[perl-Wx] add explicit provides for stuff in XS/ that is not autodetected

Tom Callaway spot at fedoraproject.org
Tue Feb 8 16:40:59 UTC 2011


commit 8597fbe5f55f45316f0e26295b9ed64416c0b873
Author: Tom "spot" Callaway <tcallawa at redhat.com>
Date:   Tue Feb 8 11:42:00 2011 -0500

    add explicit provides for stuff in XS/ that is not autodetected

 perl-Wx.spec |  193 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 184 insertions(+), 9 deletions(-)
---
diff --git a/perl-Wx.spec b/perl-Wx.spec
index 131c93f..2f68f0b 100644
--- a/perl-Wx.spec
+++ b/perl-Wx.spec
@@ -4,9 +4,13 @@
 #   --with testsuite         - run the test suite (requires X)
 #
 
+# NOTE: On every new version, we need to manually regenerate the list of XS Provides
+# cd Wx-*/XS
+# for i in `grep -r "PACKAGE=" * | cut -d " " -f 2 | sed 's|PACKAGE=|perl(|g' | grep "Wx::" | sort -n`; do printf "Provides: $i)\\n"; done
+
 Name:           perl-Wx
 Version:        0.98
-Release:        2%{?dist}
+Release:        3%{?dist}
 Summary:        Interface to the wxWidgets cross-platform GUI toolkit
 
 Group:          Development/Libraries
@@ -27,6 +31,181 @@ BuildRequires:  perl(Test::Pod)
 BuildRequires:  perl(YAML) >= 0.35
 Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
 
+# Manual provides from XS
+Provides: perl(Wx::AcceleratorEntry)
+Provides: perl(Wx::AcceleratorTable)
+Provides: perl(Wx::AcceleratorTable)
+Provides: perl(Wx::ANIHandler)
+Provides: perl(Wx::App)
+Provides: perl(Wx::_App)
+Provides: perl(Wx::ArtProvider)
+Provides: perl(Wx::Bitmap)
+Provides: perl(Wx::BitmapButton)
+Provides: perl(Wx::BitmapToggleButton)
+Provides: perl(Wx::BMPHandler)
+Provides: perl(Wx::BoxSizer)
+Provides: perl(Wx::BusyCursor)
+Provides: perl(Wx::BusyInfo)
+Provides: perl(Wx::Button)
+Provides: perl(Wx::Caret)
+Provides: perl(Wx::CaretSuspend)
+Provides: perl(Wx::CheckBox)
+Provides: perl(Wx::CheckListBox)
+Provides: perl(Wx::Choice)
+Provides: perl(Wx::ClassInfo)
+Provides: perl(Wx::ClientDC)
+Provides: perl(Wx::Colour)
+Provides: perl(Wx::ColourData)
+Provides: perl(Wx::ColourDatabase)
+Provides: perl(Wx::ColourDialog)
+Provides: perl(Wx::ComboBox)
+Provides: perl(Wx::ConfigBase)
+Provides: perl(Wx::CURHandler)
+Provides: perl(Wx::Cursor)
+Provides: perl(Wx::DC)
+Provides: perl(Wx::DCOverlay)
+Provides: perl(Wx::DirDialog)
+Provides: perl(Wx::EvtHandler)
+Provides: perl(Wx::FileConfig)
+Provides: perl(Wx::FileDialog)
+Provides: perl(Wx::FindDialogEvent)
+Provides: perl(Wx::FindReplaceData)
+Provides: perl(Wx::FindReplaceDialog)
+Provides: perl(Wx::FlexGridSizer)
+Provides: perl(Wx::Font)
+Provides: perl(Wx::FontData)
+Provides: perl(Wx::FontDialog)
+Provides: perl(Wx::FontEnumerator)
+Provides: perl(Wx::FontMapper)
+Provides: perl(Wx::Frame)
+Provides: perl(Wx::Gauge)
+Provides: perl(Wx::GCDC)
+Provides: perl(Wx::GIFHandler)
+Provides: perl(Wx::GraphicsBrush)
+Provides: perl(Wx::GraphicsContext)
+Provides: perl(Wx::GraphicsFont)
+Provides: perl(Wx::GraphicsMatrix)
+Provides: perl(Wx::GraphicsObject)
+Provides: perl(Wx::GraphicsPath)
+Provides: perl(Wx::GraphicsPen)
+Provides: perl(Wx::GridBagSizer)
+Provides: perl(Wx::GridSizer)
+Provides: perl(Wx::ICOHandler)
+Provides: perl(Wx::Icon)
+Provides: perl(Wx::IFFHandler)
+Provides: perl(Wx::Image)
+Provides: perl(Wx::ImageHandler)
+Provides: perl(Wx::ImageList)
+Provides: perl(Wx::IndividualLayoutConstraint)
+Provides: perl(Wx::InputStream)
+Provides: perl(Wx::JPEGHandler)
+Provides: perl(Wx::LanguageInfo)
+Provides: perl(Wx::LayoutConstraints)
+Provides: perl(Wx::ListBox)
+Provides: perl(Wx::ListCtrl)
+Provides: perl(Wx::ListEvent)
+Provides: perl(Wx::ListItem)
+Provides: perl(Wx::ListItemAttr)
+Provides: perl(Wx::ListView)
+Provides: perl(Wx::Locale)
+Provides: perl(Wx::Log)
+Provides: perl(Wx::LogChain)
+Provides: perl(Wx::LogGui)
+Provides: perl(Wx::LogNull)
+Provides: perl(Wx::LogPassThrough)
+Provides: perl(Wx::LogStderr)
+Provides: perl(Wx::LogTextCtrl)
+Provides: perl(Wx::LogWindow)
+Provides: perl(Wx::Mask)
+Provides: perl(Wx::MemoryDC)
+Provides: perl(Wx::Menu)
+Provides: perl(Wx::MenuBar)
+Provides: perl(Wx::MenuItem)
+Provides: perl(Wx::MiniFrame)
+Provides: perl(Wx::MultiChoiceDialog)
+Provides: perl(Wx::NativeFontInfo)
+Provides: perl(Wx::Notebook)
+Provides: perl(Wx::NotebookEvent)
+Provides: perl(Wx::NotebookSizer)
+Provides: perl(Wx::NumberEntryDialog)
+Provides: perl(Wx::OutputStream)
+Provides: perl(Wx::Overlay)
+Provides: perl(Wx::PaintDC)
+Provides: perl(Wx::Palette)
+Provides: perl(Wx::Panel)
+Provides: perl(Wx::PasswordEntryDialog)
+Provides: perl(Wx::PCXHandler)
+Provides: perl(Wx::Pen)
+Provides: perl(Wx::PlArtProvider)
+Provides: perl(Wx::PlLog)
+Provides: perl(Wx::PlLogPassThrough)
+Provides: perl(Wx::PlSizer)
+Provides: perl(Wx::PlValidator)
+Provides: perl(Wx::PNGHandler)
+Provides: perl(Wx::PNMHandler)
+Provides: perl(Wx::Point)
+Provides: perl(Wx::Position)
+Provides: perl(Wx::Process)
+Provides: perl(Wx::ProcessEvent)
+Provides: perl(Wx::ProgressDialog)
+Provides: perl(Wx::RadioBox)
+Provides: perl(Wx::RadioButton)
+Provides: perl(Wx::Rect)
+Provides: perl(Wx::RegConfig)
+Provides: perl(Wx::Region)
+Provides: perl(Wx::SashEvent)
+Provides: perl(Wx::SashWindow)
+Provides: perl(Wx::ScreenDC)
+Provides: perl(Wx::ScrollBar)
+Provides: perl(Wx::ScrolledWindow)
+Provides: perl(Wx::SingleChoiceDialog)
+Provides: perl(Wx::SingleInstanceChecker)
+Provides: perl(Wx::Size)
+Provides: perl(Wx::Sizer)
+Provides: perl(Wx::SizerItem)
+Provides: perl(Wx::Slider)
+Provides: perl(Wx::SpinButton)
+Provides: perl(Wx::SpinCtrl)
+Provides: perl(Wx::SpinEvent)
+Provides: perl(Wx::SplashScreen)
+Provides: perl(Wx::StaticBitmap)
+Provides: perl(Wx::StaticBox)
+Provides: perl(Wx::StaticBoxSizer)
+Provides: perl(Wx::StaticLine)
+Provides: perl(Wx::StaticText)
+Provides: perl(Wx::StatusBar)
+Provides: perl(Wx::StopWatch)
+Provides: perl(Wx::Stream)
+Provides: perl(Wx::SystemOptions)
+Provides: perl(Wx::SystemSettings)
+Provides: perl(Wx::TaskBarIcon)
+Provides: perl(Wx::TaskBarIconEvent)
+Provides: perl(Wx::TextEntryDialog)
+Provides: perl(Wx::TGAHandler)
+Provides: perl(Wx::Thread)
+Provides: perl(Wx::TIFFHandler)
+Provides: perl(Wx::Timer)
+Provides: perl(Wx::TimerEvent)
+Provides: perl(Wx::TipProvider)
+Provides: perl(Wx::ToggleButton)
+Provides: perl(Wx::ToolBar)
+Provides: perl(Wx::ToolBarBase)
+Provides: perl(Wx::ToolBarToolBase)
+Provides: perl(Wx::ToolTip)
+Provides: perl(Wx::TreeCtrl)
+Provides: perl(Wx::TreeEvent)
+Provides: perl(Wx::TreeItemData)
+Provides: perl(Wx::TreeItemId)
+Provides: perl(Wx::Validator)
+Provides: perl(Wx::Wave)
+Provides: perl(Wx::WindowDC)
+Provides: perl(Wx::WindowDisabler)
+Provides: perl(Wx::Wizard)
+Provides: perl(Wx::WizardEvent)
+Provides: perl(Wx::WizardPage)
+Provides: perl(Wx::WizardPageSimple)
+Provides: perl(Wx::XPMHandler)
+
 %description
 The Wx module is a wrapper for the wxWidgets (formerly known as
 wxWindows) GUI toolkit.
@@ -34,7 +213,6 @@ wxWindows) GUI toolkit.
 This module comes with extensive documentation in HTML format;
 you can download it from http://wxperl.sourceforge.net/.
 
-
 %prep
 %setup -q -n Wx-%{version}
 
@@ -48,8 +226,6 @@ find . -type f -name "*.pm" -o -name "*.h" -o -name "*.cpp" |
 %filter_from_provides /perl(Wx)$/d
 %filter_from_provides /perl(MY)$/d
 %filter_from_provides /perl(Parse::Yapp::Driver)/d
-%filter_from_requires /perl(Wx::PlValidator)/d
-%filter_from_requires /perl(Wx::Wx_Exp)$/d
 %filter_provides_in %{_docdir} 
 %filter_requires_in %{_docdir} 
 %filter_setup 
@@ -62,7 +238,6 @@ find . -type f -name "*.pm" -o -name "*.h" -o -name "*.cpp" |
   OPTIMIZE="$RPM_OPT_FLAGS"
 make %{?_smp_mflags}
 
-
 %install
 rm -rf $RPM_BUILD_ROOT
 make install PERL_INSTALL_ROOT=$RPM_BUILD_ROOT
@@ -71,15 +246,12 @@ find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';'
 find $RPM_BUILD_ROOT -depth -type d -exec rmdir {} 2>/dev/null ';'
 chmod -R u+w $RPM_BUILD_ROOT/*
 
-
 %check
 %{?_with_testsuite:make test}
 
-
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-
 %files
 %defattr(-,root,root,-)
 %doc Changes README.txt docs/todo.txt wxpl.ico wxpl.xpm
@@ -90,8 +262,11 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/*.1*
 %{_mandir}/man3/*.3pm*
 
-
 %changelog
+* Tue Feb  8 2011 Tom Callaway <spot at fedoraproject.org> - 0.98-3
+- add explicit provides for the stuff in the XS/ directory that
+  isn't autodetected
+
 * Thu Jan 27 2011 Tom Callaway <spot at fedoraproject.org> - 0.98-2
 - update filtering macros, filter out requires on Wx::PlValidator
 



More information about the perl-devel mailing list