File gmime.spec of Package gmime
%define realname gmime
%define srcext tar.xz
%if 0%{?suse_version} >= 1230 || 0%{?rhel} >= 7
%define realver 2.6.20
%define maj_ver 2.6
%define api_ver 2_6
%define so_ver 0
%else
%define realver 2.4.33
%define maj_ver 2.4
%define api_ver 2_4
%define so_ver 2
%endif
# turn off the generation of debuginfo rpm (RH9) ??
%global debug_package %{nil}
# Common info
Name: %{realname}
Version: %{realver}
Release: %{?extraver:0.}1%{?dist}
License: LGPL-2.1+
Group: System/Libraries
URL: http://spruce.sourceforge.net/gmime/
Summary: Powerful MIME utility library
# Build-time parameters
BuildRequires: xz
BuildRequires: pkg-config >= 0.9.0
%if 0%{?suse_version} >= 1230 || 0%{?rhel} >= 7
BuildRequires: pkgconfig(glib-2.0) >= 2.18.0
BuildRequires: gpgme-devel
BuildRequires: libgpg-error-devel
%else
BuildRequires: pkgconfig(glib-2.0) >= 2.12.0
%endif
BuildRequires: pkgconfig(gmodule-2.0)
BuildRequires: pkgconfig(gmodule-no-export-2.0)
BuildRequires: pkgconfig(gobject-2.0)
BuildRequires: pkgconfig(gthread-2.0)
BuildRequires: pkgconfig(gio-2.0)
BuildRequires: zlib-devel
BuildRoot: %{_tmppath}/%{name}-root
Source: https://download.gnome.org/sources/gmime/%{maj_ver}/%{realname}-%{realver}%{?extraver}.%{srcext}
%description
GMime is a powerful MIME (Multipurpose Internet Mail Extension) utility library.
It is meant for creating, editing, and parsing MIME messages and structures.
# Create subpackage with new name
%package -n lib%{name}-%{api_ver}-%{so_ver}
Group: System/Libraries
Summary: Powerful MIME utility library
Provides: lib%{name} = %{version}
%description -n lib%{name}-%{api_ver}-%{so_ver}
GMime is a powerful MIME (Multipurpose Internet Mail Extension) utility library.
It is meant for creating, editing, and parsing MIME messages and structures.
%package devel
Group: Development/Languages/C and C++
Summary: Development files for %{name}
Requires: lib%{name}-%{api_ver}-%{so_ver} = %{version}
Provides: lib%{name}-devel
%if 0%{?suse_version} >= 1230 || 0%{?rhel} >= 7
Requires: gpgme-devel
%endif
%description devel
Development files for %{name}
# Preparation step (unpackung and patching if necessary)
%prep
%setup -q -n %{realname}-%{realver}%{?extraver}
%build
%configure \
--disable-static \
CPPFLAGS="-UDISABLE_GLIB_DEPRECATIONS" \
CFLAGS="%{optflags} %{?gcc_lto}" \
CXXFLAGS="%{optflags} %{?gcc_lto}" \
LDFLAGS="-Wl,--as-needed -Wl,--strip-all %{?gcc_lto}"
%{__make} %{?_smp_mflags}
%install
%{__make} install DESTDIR=%{buildroot}
%clean
[ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
%files -n lib%{name}-%{api_ver}-%{so_ver}
%defattr(-,root,root)
%doc AUTHORS COPYING README
%{_libdir}/lib%{name}-%{maj_ver}.so.%{?so_ver}*
# Development stuff
%files devel
%defattr(-,root,root)
%{_libdir}/pkgconfig/%{name}-%{maj_ver}.pc
%dir %{_includedir}/%{name}-%{maj_ver}/%{name}
%dir %{_includedir}/%{name}-%{maj_ver}
%{_includedir}/%{name}-%{maj_ver}/%{name}/*.h
%{_libdir}/lib%{name}-%{maj_ver}.so
%exclude %{_libdir}/*.la
%dir %{_datadir}/gtk-doc/html/%{name}-%{maj_ver}
%dir %{_datadir}/gtk-doc/html
%dir %{_datadir}/gtk-doc
%docdir %{_datadir}/gtk-doc/html/%{name}-%{maj_ver}
%doc %{_datadir}/gtk-doc/html/%{name}-%{maj_ver}/*
%post -n lib%{name}-%{api_ver}-%{so_ver} -p /sbin/ldconfig
%postun -n lib%{name}-%{api_ver}-%{so_ver} -p /sbin/ldconfig
%changelog