%global pkg_name Gtk2 %global pkg_version 1.24993 %global rpm_pkg_version 1.24993 %global rpm_pkg_release 22.n0i.70 #%%global snapshot 0393e6d Summary: Perl interface to the 2.x series of the Gimp Toolkit library Name: perl-%{pkg_name} Version: %{rpm_pkg_version} Release: %{rpm_pkg_release}%{?cpan_version}%{?snapshot:.git%{snapshot}}%{?dist} Group: Development/Libraries License: LGPLv2+ URL: https://metacpan.org/release/%{pkg_name} %if %{?snapshot:1}0 # git clone git://git.gnome.org/perl-Gtk2 # rm -rvf perl-Gtk2/.git* # tar cvJf perl-Gtk2-.tar.xz --remove-files perl-Gtk2 Source0: %{name}-%{snapshot}.tar.xz %else Source0: https://cpan.metacpan.org/authors/id/X/XA/XAOC/%{pkg_name}-%{pkg_version}.tar.gz %endif BuildRequires: rpm-build-reb00t-perl BuildRequires: perl-devel BuildRequires: gtk2-devel BuildRequires: perl(Glib) >= 1.240 BuildRequires: perl(Pango) >= 1.220 BuildRequires: perl(Cairo) >= 1.0 BuildRequires: perl(Cairo::Install::Files) BuildRequires: perl(Glib::Install::Files) BuildRequires: perl(Pango::Install::Files) Requires: perl(Cairo) >= 1.0 Requires: perl(Glib) >= 1.240 Requires: perl(Pango) >= 1.220 %{?perl_default_filter} %global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^perl\\((Glib|Cairo|Pango)\\)$ # # EXTREMELY shallow Fedora manual provides! # Just add whatever the crap they want when building for that distro # %if %{?fedora}0 > 0 # We need to manually generate the Provides here, here's the best way I know of: # for i in `grep -r "PACKAGE = " * | cut -d " " -f 3 | cut -f 1`; do printf "Provides: perl($i)\n" &>>provides.txt; done # cat provides.txt | sort -n | uniq # Be sure to update this list on any upstream change Provides: perl(Gtk2) Provides: perl(Gtk2::AboutDialog) Provides: perl(Gtk2::AccelGroup) Provides: perl(Gtk2::AccelLabel) Provides: perl(Gtk2::AccelMap) Provides: perl(Gtk2::Action) Provides: perl(Gtk2::ActionGroup) Provides: perl(Gtk2::Activatable) Provides: perl(Gtk2::Adjustment) Provides: perl(Gtk2::Alignment) Provides: perl(Gtk2::Arrow) Provides: perl(Gtk2::AspectFrame) Provides: perl(Gtk2::Assistant) Provides: perl(Gtk2::Bin) Provides: perl(Gtk2::BindingSet) Provides: perl(Gtk2::Box) Provides: perl(Gtk2::Buildable) Provides: perl(Gtk2::Builder) Provides: perl(Gtk2::Button) Provides: perl(Gtk2::ButtonBox) Provides: perl(Gtk2::Calendar) Provides: perl(Gtk2::CellEditable) Provides: perl(Gtk2::CellLayout) Provides: perl(Gtk2::CellRenderer) Provides: perl(Gtk2::CellRendererAccel) Provides: perl(Gtk2::CellRendererCombo) Provides: perl(Gtk2::CellRendererPixbuf) Provides: perl(Gtk2::CellRendererProgress) Provides: perl(Gtk2::CellRendererSpin) Provides: perl(Gtk2::CellRendererSpinner) Provides: perl(Gtk2::CellRendererText) Provides: perl(Gtk2::CellRendererToggle) Provides: perl(Gtk2::CellView) Provides: perl(Gtk2::CheckButton) Provides: perl(Gtk2::CheckMenuItem) Provides: perl(Gtk2::Clipboard) Provides: perl(Gtk2::ColorButton) Provides: perl(Gtk2::ColorSelection) Provides: perl(Gtk2::ColorSelectionDialog) Provides: perl(Gtk2::Combo) Provides: perl(Gtk2::ComboBox) Provides: perl(Gtk2::ComboBoxEntry) Provides: perl(Gtk2::Container) Provides: perl(Gtk2::Curve) Provides: perl(Gtk2::Dialog) Provides: perl(Gtk2::Dnd) Provides: perl(Gtk2::DrawingArea) Provides: perl(Gtk2::Editable) Provides: perl(Gtk2::Entry) Provides: perl(Gtk2::EntryBuffer) Provides: perl(Gtk2::EntryCompletion) Provides: perl(Gtk2::EventBox) Provides: perl(Gtk2::Expander) Provides: perl(Gtk2::FileChooser) Provides: perl(Gtk2::FileChooserButton) Provides: perl(Gtk2::FileChooserDialog) Provides: perl(Gtk2::FileChooserWidget) Provides: perl(Gtk2::FileFilter) Provides: perl(Gtk2::FileSelection) Provides: perl(Gtk2::Fixed) Provides: perl(Gtk2::FontButton) Provides: perl(Gtk2::FontSelection) Provides: perl(Gtk2::Frame) Provides: perl(Gtk2::GammaCurve) Provides: perl(Gtk2::GC) Provides: perl(Gtk2::Gdk) Provides: perl(Gtk2::Gdk::Cairo) Provides: perl(Gtk2::Gdk::Color) Provides: perl(Gtk2::Gdk::Cursor) Provides: perl(Gtk2::Gdk::Device) Provides: perl(Gtk2::Gdk::Display) Provides: perl(Gtk2::Gdk::DisplayManager) Provides: perl(Gtk2::Gdk::Dnd) Provides: perl(Gtk2::Gdk::Drawable) Provides: perl(Gtk2::Gdk::Event) Provides: perl(Gtk2::Gdk::GC) Provides: perl(Gtk2::Gdk::Image) Provides: perl(Gtk2::Gdk::Keys) Provides: perl(Gtk2::Gdk::Pango) Provides: perl(Gtk2::Gdk::Pixbuf) Provides: perl(Gtk2::Gdk::PixbufLoader) Provides: perl(Gtk2::Gdk::PixbufSimpleAnim) Provides: perl(Gtk2::Gdk::Pixmap) Provides: perl(Gtk2::Gdk::Property) Provides: perl(Gtk2::Gdk::Region) Provides: perl(Gtk2::Gdk::Rgb) Provides: perl(Gtk2::Gdk::Screen) Provides: perl(Gtk2::Gdk::Selection) Provides: perl(Gtk2::Gdk::Types) Provides: perl(Gtk2::Gdk::Visual) Provides: perl(Gtk2::Gdk::Window) Provides: perl(Gtk2::Gdk::X11) Provides: perl(Gtk2::HandleBox) Provides: perl(Gtk2::HBox) Provides: perl(Gtk2::HButtonBox) Provides: perl(Gtk2::HPaned) Provides: perl(Gtk2::HRuler) Provides: perl(Gtk2::HScale) Provides: perl(Gtk2::HScrollbar) Provides: perl(Gtk2::HSeparator) Provides: perl(Gtk2::HSV) Provides: perl(Gtk2::IconFactory) Provides: perl(Gtk2::IconTheme) Provides: perl(Gtk2::IconView) Provides: perl(Gtk2::Image) Provides: perl(Gtk2::ImageMenuItem) Provides: perl(Gtk2::IMContext) Provides: perl(Gtk2::IMContextSimple) Provides: perl(Gtk2::IMMultiContext) Provides: perl(Gtk2::InfoBar) Provides: perl(Gtk2::InputDialog) Provides: perl(Gtk2::Invisible) Provides: perl(Gtk2::Item) Provides: perl(Gtk2::ItemFactory) Provides: perl(Gtk2::Label) Provides: perl(Gtk2::Layout) Provides: perl(Gtk2::LinkButton) Provides: perl(Gtk2::List) Provides: perl(Gtk2::ListItem) Provides: perl(Gtk2::ListStore) Provides: perl(Gtk2::Menu) Provides: perl(Gtk2::MenuBar) Provides: perl(Gtk2::MenuItem) Provides: perl(Gtk2::MenuShell) Provides: perl(Gtk2::MenuToolButton) Provides: perl(Gtk2::MessageDialog) Provides: perl(Gtk2::Misc) Provides: perl(Gtk2::Notebook) Provides: perl(Gtk2::Object) Provides: perl(Gtk2::OffscreenWindow) Provides: perl(Gtk2::OptionMenu) Provides: perl(Gtk2::Orientable) Provides: perl(Gtk2::PageSetup) Provides: perl(Gtk2::Paned) Provides: perl(Gtk2::PaperSize) Provides: perl(Gtk2::Plug) Provides: perl(Gtk2::PrintContext) Provides: perl(Gtk2::PrintOperation) Provides: perl(Gtk2::PrintOperationPreview) Provides: perl(Gtk2::PrintSettings) Provides: perl(Gtk2::ProgressBar) Provides: perl(Gtk2::RadioAction) Provides: perl(Gtk2::RadioButton) Provides: perl(Gtk2::RadioMenuItem) Provides: perl(Gtk2::RadioToolButton) Provides: perl(Gtk2::Range) Provides: perl(Gtk2::Rc) Provides: perl(Gtk2::RecentAction) Provides: perl(Gtk2::RecentChooser) Provides: perl(Gtk2::RecentChooserDialog) Provides: perl(Gtk2::RecentChooserMenu) Provides: perl(Gtk2::RecentChooserWidget) Provides: perl(Gtk2::RecentFilter) Provides: perl(Gtk2::RecentManager) Provides: perl(Gtk2::Ruler) Provides: perl(Gtk2::Scale) Provides: perl(Gtk2::ScaleButton) Provides: perl(Gtk2::ScrolledWindow) Provides: perl(Gtk2::Selection) Provides: perl(Gtk2::SeparatorMenuItem) Provides: perl(Gtk2::SeparatorToolItem) Provides: perl(Gtk2::Show) Provides: perl(Gtk2::SizeGroup) Provides: perl(Gtk2::Socket) Provides: perl(Gtk2::SpinButton) Provides: perl(Gtk2::Spinner) Provides: perl(Gtk2::Statusbar) Provides: perl(Gtk2::StatusIcon) Provides: perl(Gtk2::Stock) Provides: perl(Gtk2::Style) Provides: perl(Gtk2::Table) Provides: perl(Gtk2::TearoffMenuItem) Provides: perl(Gtk2::TextBuffer) Provides: perl(Gtk2::TextBufferRichText) Provides: perl(Gtk2::TextChildAnchor) Provides: perl(Gtk2::TextIter) Provides: perl(Gtk2::TextMark) Provides: perl(Gtk2::TextTag) Provides: perl(Gtk2::TextTagTable) Provides: perl(Gtk2::TextView) Provides: perl(Gtk2::ToggleAction) Provides: perl(Gtk2::ToggleButton) Provides: perl(Gtk2::ToggleToolButton) Provides: perl(Gtk2::Toolbar) Provides: perl(Gtk2::ToolButton) Provides: perl(Gtk2::ToolItem) Provides: perl(Gtk2::ToolItemGroup) Provides: perl(Gtk2::ToolPalette) Provides: perl(Gtk2::ToolShell) Provides: perl(Gtk2::Tooltip) Provides: perl(Gtk2::Tooltips) Provides: perl(Gtk2::TreeDnd) Provides: perl(Gtk2::TreeModel) Provides: perl(Gtk2::TreeModelFilter) Provides: perl(Gtk2::TreeModelSort) Provides: perl(Gtk2::TreeSelection) Provides: perl(Gtk2::TreeSortable) Provides: perl(Gtk2::TreeStore) Provides: perl(Gtk2::TreeView) Provides: perl(Gtk2::TreeViewColumn) Provides: perl(Gtk2::UIManager) Provides: perl(Gtk2::VBox) Provides: perl(Gtk2::VButtonBox) Provides: perl(Gtk2::Viewport) Provides: perl(Gtk2::VolumeButton) Provides: perl(Gtk2::VPaned) Provides: perl(Gtk2::VRuler) Provides: perl(Gtk2::VScale) Provides: perl(Gtk2::VScrollbar) Provides: perl(Gtk2::VSeparator) Provides: perl(Gtk2::Widget) Provides: perl(Gtk2::Window) %endif %description The Gtk2 module allows a Perl developer to use the Gtk+ graphical user interface library. %package devel Summary: Gtk2 Perl development files Group: Development/Libraries Requires: %{name} = %{version} Requires: gtk2-devel Requires: perl(Cairo::Install::Files) Requires: perl(Glib::Install::Files) Requires: perl(Pango::Install::Files) %description devel Development files useful for building Perl applications depending on Gtk2. %prep %if %{?snapshot:1}0 %setup -q -n %{name} %else %setup -q -n %{pkg_name}-%{pkg_version} %endif %{fix_perl_path examples/ gtk-demo/} %build # gtk2 is not c23 friendly (ref. Fedora spec) export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -std=gnu17" %{perl_build -t} %install %{perl_install} %{fix_man} %files %defattr(-,root,root,-) %doc LICENSE README %{perl_vendorarch}/Gtk2.pm %dir %{perl_vendorarch}/Gtk2 %dir %{perl_vendorarch}/Gtk2/Gdk %{perl_vendorarch}/Gtk2/Gdk/Keysyms.pm %{perl_vendorarch}/Gtk2/Helper.pm %{perl_vendorarch}/Gtk2/Pango.pm %{perl_vendorarch}/Gtk2/SimpleList.pm %{perl_vendorarch}/Gtk2/SimpleMenu.pm %{perl_vendorarch}/auto/Gtk2 %files devel %defattr(-,root,root,-) %doc AUTHORS NEWS TODO %doc examples/ gtk-demo/ %{perl_files} %exclude %{perl_vendorarch}/Gtk2.pm %exclude %{perl_vendorarch}/Gtk2/Gdk/Keysyms.pm %exclude %{perl_vendorarch}/Gtk2/Helper.pm %exclude %{perl_vendorarch}/Gtk2/Pango.pm %exclude %{perl_vendorarch}/Gtk2/SimpleList.pm %exclude %{perl_vendorarch}/Gtk2/SimpleMenu.pm %exclude %{perl_vendorarch}/auto/Gtk2 %changelog * Sat May 10 2025 Marius FERARU - 1.24993-22.n0i.70 - over F42 - use fedora filtering - workaround: enforce -std=gnu17 * Mon Jun 03 2024 Marius FERARU - 1.24993-17.n0i.69 - over rawhide * Thu Apr 25 2024 Marius FERARU - 1.24993-16.n0i.68 - over F40 * Mon Dec 04 2023 Marius FERARU - 1.24993-14.n0i.67 - over F39 * Tue Jun 06 2023 Marius Feraru - 1.24993-12.n0i.66 - over F38 * Tue Nov 15 2022 Marius Feraru - 1.24993-11.n0i.65 - over F37 * Wed Jun 22 2022 Marius Feraru - 1.24993-9.n0i.64 - over F36 * Wed May 04 2022 Marius Feraru - 1.24993-8.n0i.63 - over F35 * Tue Oct 06 2020 Marius Feraru - 1.24993-5.n0i.62 - version 1.24993 * Sun Nov 10 2019 Marius FERARU - 1.24992-11.n0i.61 - override F31 * Wed May 08 2019 Marius FERARU - 1.24992-9.n0i.60 - override Fedora 30 version * Fri Nov 02 2018 Marius FERARU - 1.24992-7.n0i.59 - override Fedora's version * Mon Oct 08 2018 Marius FERARU - 1.24992-6.n0i.58 - override Fedora's version * Fri Dec 08 2017 Marius Feraru - 1.24992-1.n0i.57 - version 1.24992 * Wed Mar 22 2017 Marius Feraru - 1.24991-1.n0i.56 - version 1.24991 * Mon Aug 01 2016 Marius Feraru - 1.2498-2.n0i.55 - Fedora 24 rebuild (perl 5.22.2) - add craptastic manual provides when building for Fedora * Tue Feb 02 2016 Marius Feraru - 1.2498-1.n0i.54 - version 1.2498 * Tue Dec 01 2015 Marius Feraru - 1.2497-1.n0i.53 - version 1.2497 * Thu Nov 12 2015 Marius Feraru - 1.2496-2.n0i.52 - automatic rebuild (perl 5.22.0) * Sun Aug 16 2015 Marius Feraru - 1.2496-1.n0i.51 - version 1.2496 * Mon Jun 22 2015 Marius Feraru - 1.2495-2.n0i.50 - rebuild on F22 * Sat Feb 14 2015 Marius Feraru - 1.2495-1.n0i.49 - version 1.2495 * Wed Jan 21 2015 Marius FERARU - 1.2494-1.n0i.48 - version 1.2494 * Fri Jan 03 2014 Marius FERARU - 1.249-1.n0i.47 - version 1.249 * Tue Oct 01 2013 Marius FERARU - 1.248-1.n0i.46 - version 1.248 * Thu Mar 21 2013 Marius Feraru - 1.247-1.n0i.45 - version 1.247 * Thu Sep 27 2012 Marius FERARU - 1.245-1.n0i.44 - version 1.245 * Sat Jul 28 2012 Marius Feraru - 1.244-2.n0i.43 - automatic rebuild (perl 5.14.2) * Thu May 31 2012 Marius FERARU - 1.244-1.n0i.42 - version 1.244 * Tue Feb 21 2012 Marius FERARU - 1.242-1.n0i.41 - version 1.242 * Mon Nov 21 2011 Marius FERARU - 1.241-1.n0i.40 - version 1.241 * Fri Oct 14 2011 Marius FERARU - 1.240-1.n0i.39 - version 1.240 - moved more files to devel package * Sat Oct 08 2011 Marius FERARU - 1.232-1.n0i.38 - unstable release 1.232 * Wed Aug 03 2011 Marius FERARU - 1.231-1.n0i.37 - unstable release 1.231 * Tue Aug 02 2011 Marius FERARU - 1.231-0.n0i.36.git0393e6d - current git snapshot * Tue Aug 02 2011 Marius FERARU - 1.223-1.n0i.35 - version 1.223 * Sun Apr 25 2010 Marius FERARU - 1.221-1.n0i.34 - version 1.221 * Wed Oct 17 2007 Marius Feraru - 1.161-2.n0i.33 - added more dependencies for devel subpackage * Mon Oct 15 2007 Marius Feraru - 1.161-1.n0i.32 - version 1.161 - split a "devel" subpackage * Tue Sep 18 2007 Marius Feraru - 1.160-1.n0i.31 - version 1.160 - updated License - updated BRs * Sun Aug 12 2007 Marius Feraru - 1.146-1.n0i.30 - version 1.146 * Wed Aug 01 2007 Marius Feraru - 1.145-1.n0i.29 - version 1.145 * Tue Jun 05 2007 Marius Feraru - 1.144-1.n0i.28 - spec file (re)created using N0i::CPAN::RPMizer/1.14.8 - version 1.144 * Wed Jan 24 2007 Marius FERARU - 1.142-1.n0i.27 - version 1.142 - spec file (re)created using N0i::CPAN::RPMizer v1.14.0 * Sun May 28 2006 Marius Feraru - 1.122-1.n0i.26 - version 1.122 * Sun Apr 09 2006 Marius Feraru - 1.121-1.n0i.25 - version 1.121 * Mon Mar 27 2006 Marius Feraru - 1.120-1.n0i.24 - version 1.120 * Sat Mar 04 2006 Marius Feraru - 1.104-1.n0i.23 - version 1.104 * Thu Oct 06 2005 Marius Feraru 1.101-1.n0i.22 - version 1.101 * Tue Sep 06 2005 Marius FERARU 1.100-1.n0i.21 - version 1.100 * Fri Jul 29 2005 Marius FERARU 1.093-1.n0i.20 - version 1.093 (unstable branch) * Thu Jul 28 2005 Marius Feraru 1.083-1.n0i.19 - version 1.083 - spec file (re)created using N0i::CPAN::RPMizer/1.01 - rebuild on perl 5.8.7 * Mon Dec 06 2004 Marius Feraru 1.071-1.n0i.18 - version 1.071 - many spec updates * Fri Apr 30 2004 Marius Feraru 1.042-3.n0i.17 - automatic rebuild * Wed Apr 21 2004 Marius Feraru 1.042-2.n0i.16 - automatic rebuild * Fri Apr 16 2004 Marius FERARU 1.042-1.n0i.15 - version 1.042 * Sat Apr 10 2004 Marius FERARU 1.041-1.n0i.14 - version 1.041 - updated requirements * Tue Mar 23 2004 Cornel Ghiban 1.040-1.n0i.13 - version 1.040 * Fri Mar 19 2004 Cornel Ghiban 1.0391-1.n0i.12 - version 1.0391 * Sat Mar 13 2004 Cornel Ghiban 1.039-1.n0i.11 - version 1.039 * Fri Feb 20 2004 Marius FERARU 1.036-1.n0i.10 - version 1.036 * Fri Feb 13 2004 Marius FERARU 1.035-1.n0i.9 - version 1.035 * Thu Feb 12 2004 Marius FERARU 1.034-1.n0i.8 - version 1.034 * Mon Feb 02 2004 Marius FERARU 1.033-0.n0i.7 - version 1.033 * Thu Jan 29 2004 Marius FERARU 1.021-0.n0i.6 - version 1.021 - spec file (re?)created using N0i::CPAN::RPMizer/2004011001 - SMP build not safe :( - split some stuff into a "devel" package * Thu Sep 25 2003 Marius FERARU 1.00-0.n0i.5.rc2 - version 1.00rc2 * Wed Jul 30 2003 Marius FERARU 0.90-0.n0i.4 - version 0.90 - finally RHL-ified spec file. * Mon Jul 28 2003 Marius FERARU 0.26-0.n0i.3 - version 0.26 - more spec cleanups * Mon Jun 30 2003 Marius FERARU 0.24-1.n0i.2 - small spec cleanups (heh, the autogenerated stuff it's too messy to hassle with it for the moment) - added smp build flags - dropped some useless stuff from the package - dropped weird duplicates * Sun Jun 29 2003 Marius FERARU 0.24-0.n0i.1 - Initial build.