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
openSUSE Build Service is sponsored by