Blob Blame History Raw
%global apiver 3.0
# first two digits of version
%define release_version %(echo %{version} | awk -F. '{print $1"."$2}')

Name:           gtkmm30
Version:        2.99.3
Release:        3%{?dist}
Summary:        C++ interface for the GTK+ library

Group:          System Environment/Libraries
License:        LGPLv2+
URL:            http://www.gtkmm.org/
Source0:        http://ftp.gnome.org/pub/GNOME/sources/gtkmm/%{release_version}/gtkmm-%{version}.tar.bz2
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:  atkmm-devel
BuildRequires:  cairomm-devel
BuildRequires:  glibmm24-devel
BuildRequires:  gtk3-devel
BuildRequires:  pangomm-devel

%description
gtkmm is the official C++ interface for the popular GUI library GTK+.
Highlights include type safe callbacks, and a comprehensive set of
widgets that are easily extensible via inheritance.


%package        devel
Summary:        Development files for %{name}
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
Requires:       atkmm-devel
Requires:       cairomm-devel
Requires:       glibmm24-devel
Requires:       gtk3-devel
Requires:       pangomm-devel

%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.


%package        doc
Summary:        API documentation for %{name}
Group:          Documentation
BuildArch:      noarch
Requires:       %{name} = %{version}-%{release}

%description    doc
This package contains the full API documentation for %{name}.


%prep
%setup -q -n gtkmm-%{version}

# Copy demos before build to avoid including built binaries in -doc package
mkdir -p _docs
cp -a demos/ _docs/


%build
%configure --disable-static

# fix lib64 rpaths
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool

# avoid unused direct dependencies
sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool

make %{?_smp_mflags}


%install
rm -rf $RPM_BUILD_ROOT docs-to-include
make install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'

# Fix documentation installation, put everything under gtk-doc
mkdir -p $RPM_BUILD_ROOT%{_datadir}/gtk-doc/html/gtkmm-%{apiver}
mv $RPM_BUILD_ROOT%{_docdir}/gtkmm-%{apiver}/* $RPM_BUILD_ROOT%{_datadir}/gtk-doc/html/gtkmm-%{apiver}/
mv $RPM_BUILD_ROOT%{_datadir}/devhelp/books/gtkmm-%{apiver}/*.devhelp2 $RPM_BUILD_ROOT%{_datadir}/gtk-doc/html/gtkmm-%{apiver}
# Fix devhelp broken base tag
sed -i 's:base="[^\"]*":base="%{_datadir}/gtk-doc/html/gtkmm-%{apiver}/reference/html":' $RPM_BUILD_ROOT%{_datadir}/gtk-doc/html/gtkmm-%{apiver}/*.devhelp2


%check
make check %{?_smp_mflags}


%clean
rm -rf $RPM_BUILD_ROOT


%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig


%files
%defattr(-,root,root,-)
%doc AUTHORS COPYING NEWS README
%{_libdir}/*.so.*


%files devel
%defattr(-,root,root,-)
%{_includedir}/gtkmm-%{apiver}/
%{_includedir}/gdkmm-%{apiver}/
%{_libdir}/*.so
%{_libdir}/gtkmm-%{apiver}/
%{_libdir}/gdkmm-%{apiver}/
%{_libdir}/pkgconfig/*.pc


%files doc
%defattr(-,root,root,-)
%{_datadir}/gtk-doc/
%doc _docs/*


%changelog
* Fri Feb 11 2011 Matthias Clasen <mclasen@redhat.com> - 2.99.3-3
- Rebuild against newer gtk

* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.99.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Thu Feb 03 2011 Kalev Lember <kalev@smartlink.ee> - 2.99.3-1
- Update to 2.99.3

* Thu Jan 13 2011 Kalev Lember <kalev@smartlink.ee> - 2.99.1-1
- Update to 2.99.1

* Fri Dec 03 2010 Kalev Lember <kalev@smartlink.ee> - 2.91.5.1-1
- Update to 2.91.5.1

* Tue Nov 02 2010 Kalev Lember <kalev@smartlink.ee> - 2.91.3-1
- Update to 2.91.3

* Mon Nov 01 2010 Kalev Lember <kalev@smartlink.ee> - 2.91.2-1
- Update to 2.91.2
- Removed no-application.patch as we now have new enough glibmm

* Sun Oct 03 2010 Kalev Lember <kalev@smartlink.ee> - 2.91.0-1
- Update to 2.91.0

* Wed Sep 29 2010 Tom "spot" Callaway <tcallawa@redhat.com> - 2.90.7-1
- 2.90.7
- no more "application" support in glib

* Wed Sep 29 2010 jkeating - 2.90.5-3
- Rebuilt for gcc bug 634757

* Tue Sep 14 2010 Kalev Lember <kalev@smartlink.ee> - 2.90.5-2
- Co-own /usr/share/gtk-doc/ directory (#604169)

* Wed Jul 14 2010 Kalev Lember <kalev@smartlink.ee> - 2.90.5-1
- Update to 2.90.5

* Wed Jul 07 2010 Kalev Lember <kalev@smartlink.ee> - 2.90.4.0-3
- Avoid putting built demos in /usr/share (#608326)
- Moved demos to -doc package

* Tue Jul 06 2010 Kalev Lember <kalev@smartlink.ee> - 2.90.4.0-2
- Review fixes (#608326)
- Fixed lib64 rpaths
- Added %%check section
- Use %%define instead of %%global to set release_version macro, as the latter
  seems to confuse rpmlint
- Replaced hardcoded /usr/share with %%_datadir macro
- Updated description

* Mon Jul 05 2010 Kalev Lember <kalev@smartlink.ee> - 2.90.4.0-1
- Update to 2.90.4.0

* Sat Jun 26 2010 Kalev Lember <kalev@smartlink.ee> - 2.90.3.1-1
- Initial gtkmm30 spec based on gtkmm24 spec