File gmime.spec of Package gmime

#
# spec file for package gmime (Version 2.2.25)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           gmime
BuildRequires:  glib-sharp2 glib2-devel gtk-doc gtk-sharp2 gtk-sharp2-gapi mono-devel zlib-devel
Version:        2.2.25
Release:        1
Url:            http://spruce.sourceforge.net/gmime/
Group:          Productivity/Networking/Email/Utilities
License:        LGPLv2.1+ ; Public Domain, Freeware ; MIT License (or similar)
Summary:        MIME Library Utilities
Source:         %{name}-%{version}.tar.bz2
# PATCH-FIX-OPENSUSE gmime-no-off_t.patch bnc344662 bgo501830
Patch2:         gmime-no-off_t.patch
Patch3:         gmime-monoreq.patch
Patch4:         gmime-gacutil-bootstrap.patch
# PATCH-FIX-UPSTREAM gmime-CVE-2010-0409.patch bnc576923 CVE-2010-0409 sbrabec@suse.cz -- Fixed to prevent possible buffer overflows.
Patch5:         gmime-CVE-2010-0409.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Requires:       libgmime-2_0-3 = %{version}

%description
GMime is a set of utilities for parsing and creating messages using the
Multipurpose Internet Mail Extension (MIME).



Authors:
--------
    Jeffrey Stedfast <fejj@gnome.org>

%package -n libgmime-2_0-3
License:        LGPLv2.1+ ; Public Domain, Freeware ; MIT License (or similar)
Group:          Development/Libraries/C and C++
Summary:        MIME Library

%description -n libgmime-2_0-3
GMime is a set of utilities for parsing and creating messages using the
Multipurpose Internet Mail Extension (MIME).



Authors:
--------
    Jeffrey Stedfast <fejj@gnome.org>

%package sharp
License:        LGPLv2.1+ ; Public Domain, Freeware ; MIT License (or similar)
Group:          Development/Libraries/Other
Summary:        MIME Library Mono Bindings
Requires:       libgmime-2_0-3 = %{version} gtk-sharp2 glib-sharp2

%description sharp
GMime is a set of utilities for parsing and creating messages using the
Multipurpose Internet Mail Extension (MIME).



Authors:
--------
    Jeffrey Stedfast <fejj@gnome.org>

%package devel
License:        LGPLv2.1+ ; Public Domain, Freeware ; MIT License (or similar)
Group:          Development/Libraries/C and C++
Summary:        MIME Library
Requires:       libgmime-2_0-3 = %{version} glib2-devel zlib-devel glibc-devel

%description devel
GMime is a set of utilities for parsing and creating messages using the
Multi-purpose Internet Mail Extension (MIME).



Authors:
--------
    Jeffrey Stedfast <fejj@ximian.com>

%package doc
License:        LGPLv2.1+ ; Public Domain, Freeware ; MIT License (or similar)
Group:          Development/Libraries/C and C++
Summary:        MIME Library documentation

%description doc
GMime is a set of utilities for parsing and creating messages using the
Multipurpose Internet Mail Extension (MIME).

This package contains additional documentation for the main package.



Authors:
--------
    Jeffrey Stedfast <fejj@ximian.com>

%define __find_requires env sh -c 'filelist=($(cat)) && { printf "%s\\n" "${filelist[@]}" | /usr/lib/rpm/find-requires | grep -v "no package provides" ; } '

%prep
%setup -q
# Replace all occurrences of variable sized off_t by goffset:
sed -i "s/off_t/goffset/g;s/OFF_T/G_GINT64_FORMAT/g" */*.[ch]
mv mono/GMime.metadata.in mono/GMime.metadata
# api file is not regenerated during build. Fix it now:
# (And current gtk# does not support goffset yet. If it will not in
# future, change goffset to long in the metadata.)
sed -i s/off_t/long/g mono/gmime-api.raw
# And finally fix all remaining problems related to off_t:
%patch2
# fix requires for sharp bindings (GMIME_VERSION != SONAME_VERSION)
%patch3
%patch4
%patch5 -p1

%build
cp /usr/share/gettext/config.rpath .
autoreconf -f -i
%configure\
	--disable-static\
	--enable-rfc2047-workarounds\
	--enable-gtk-doc
make %{?jobs:-j%jobs}

%install
%makeinstall GACUTIL_FLAGS="/package gtk-sharp /root -bootstrap $RPM_BUILD_ROOT%{_prefix}/lib"
# rename to prevent conflict with uu* utils from sharutils
mv $RPM_BUILD_ROOT%{_bindir}/uuencode $RPM_BUILD_ROOT%{_bindir}/gmime-uuencode
mv $RPM_BUILD_ROOT%{_bindir}/uudecode $RPM_BUILD_ROOT%{_bindir}/gmime-uudecode
for FILE in COPYING ; do
    MD5SUM=$(md5sum $FILE | sed 's/ .*//')
    if test -f /usr/share/doc/licenses/md5/$MD5SUM ; then
        ln -sf /usr/share/doc/licenses/md5/$MD5SUM $FILE
    fi
done
# Obsolete GNOME1 gnome-config style:
rm $RPM_BUILD_ROOT%{_libdir}/*Conf.sh

%clean
rm -rf $RPM_BUILD_ROOT

%post -n libgmime-2_0-3 -p /sbin/ldconfig

%postun -n libgmime-2_0-3 -p /sbin/ldconfig

%files
%defattr (-, root, root)
# NEWS is empty
%doc AUTHORS COPYING ChangeLog PORTING README TODO
%exclude %{_bindir}/gmime-config
%{_bindir}/*

%files -n libgmime-2_0-3
%defattr (-, root, root)
%{_libdir}/*.so.*

%files sharp
%defattr (-, root, root)
%dir %{_prefix}/lib/mono/gmime-sharp
%dir %{_prefix}/lib/mono/gac/gmime-sharp
%dir %{_prefix}/lib/mono/gac/gmime-sharp/2.2.0.0__677013d4cb5910f0
%{_prefix}/lib/mono/gmime-sharp/gmime-sharp.dll
%{_prefix}/lib/mono/gac/gmime-sharp/2.2.0.0__677013d4cb5910f0/gmime-sharp.dll
%{_prefix}/lib/mono/gac/gmime-sharp/2.2.0.0__677013d4cb5910f0/gmime-sharp.dll.config
# devel files:
%{_datadir}/gapi-2.0/gmime-api.xml
%{_libdir}/pkgconfig/gmime-sharp.pc

%files devel
%defattr (-, root, root)
%{_bindir}/gmime-config
%{_includedir}/gmime-2.0
%{_libdir}/*.*a
%{_libdir}/*.so
%{_libdir}/pkgconfig/gmime-2.0.pc

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

%changelog
openSUSE Build Service is sponsored by