Hello community, here is the log from the commit of package gmime checked in at Wed Sep 26 15:06:18 CEST 2007. -------- --- GNOME/gmime/gmime.changes 2007-08-08 12:28:25.000000000 +0200 +++ /mounts/work_src_done/STABLE/STABLE/gmime/gmime.changes 2007-09-25 23:11:57.320462000 +0200 @@ -1,0 +2,6 @@ +Tue Sep 25 23:11:02 CEST 2007 - joeshaw@suse.de + +- Add a patch to fix the Mono bindings when GMime is built with + large file support. (bnc #327589) + +------------------------------------------------------------------- New: ---- gmime-mono-largefile-support.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gmime.spec ++++++ --- /var/tmp/diff_new_pack.b11215/_old 2007-09-26 15:05:49.000000000 +0200 +++ /var/tmp/diff_new_pack.b11215/_new 2007-09-26 15:05:49.000000000 +0200 @@ -13,12 +13,13 @@ Name: gmime BuildRequires: glib-sharp2 glib2-devel gtk-doc gtk-sharp2 gtk-sharp2-gapi mono-devel zlib-devel Version: 2.2.10 -Release: 5 -URL: http://spruce.sourceforge.net/gmime/ +Release: 34 +Url: http://spruce.sourceforge.net/gmime/ Group: Productivity/Networking/Email/Utilities License: GPL v2 or later, LGPL v2 or later Summary: MIME Library Utilities Source: %{name}-%{version}.tar.bz2 +Patch1: gmime-mono-largefile-support.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Requires: libgmime-2_0-2 = %{version} @@ -95,6 +96,7 @@ %prep %setup -q +%patch1 -p0 %build cp /usr/share/gettext/config.rpath . @@ -158,8 +160,10 @@ %files doc %defattr (-, root, root) %{_datadir}/gtk-doc/html/* - %changelog +* Tue Sep 25 2007 - joeshaw@suse.de +- Add a patch to fix the Mono bindings when GMime is built with + large file support. (bnc #327589) * Wed Aug 08 2007 - sbrabec@suse.cz - Fixed dependencies to allow to install more instances of library. * Wed Aug 08 2007 - ro@suse.de ++++++ gmime-mono-largefile-support.patch ++++++ Index: configure.in =================================================================== --- configure.in.orig +++ configure.in @@ -332,6 +332,7 @@ if test "x$enable_largefile" != "xno"; t else GMIME_CFLAGS="" fi +AM_CONDITIONAL(ENABLE_LARGEFILE, test "x$largefile64_source" = "xyes") dnl Check type sizes CFLAGS_save="$CFLAGS" Index: mono/GMime.metadata.in =================================================================== --- /dev/null +++ mono/GMime.metadata.in @@ -0,0 +1,92 @@ +<?xml version="1.0"?> +<metadata> + <!-- Rename some items --> + <attr path="/api/namespace/enum/member[@cname='GMIME_BEST_ENCODING_7BIT']" name="name">SevenBit</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_BEST_ENCODING_8BIT']" name="name">EightBit</attr> + + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_DEFAULT']" name="name">Default</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_7BIT']" name="name">SevenBit</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_8BIT']" name="name">EightBit</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_BINARY']" name="name">Binary</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_BASE64']" name="name">Base64</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_QUOTEDPRINTABLE']" name="name">QuotedPrintable</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_UUENCODE']" name="name">Uuencode</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_PART_NUM_ENCODINGS']" name="hidden">1</attr> + + <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_BASE64_ENC']" name="name">Base64Encode</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_BASE64_DEC']" name="name">Base64Decode</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_QP_ENC']" name="name">QpEncode</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_QP_DEC']" name="name">QpDecode</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_UU_ENC']" name="name">Uuencode</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_UU_DEC']" name="name">Uudecode</attr> + + <attr path="/api/namespace/enum/member[@cname='GMIME_STREAM_SEEK_SET']" name="value">0</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_STREAM_SEEK_CUR']" name="value">1</attr> + <attr path="/api/namespace/enum/member[@cname='GMIME_STREAM_SEEK_END']" name="value">2</attr> + + <attr path="/api/namespace/class[@name='Utils']/method[@name='8BitHeaderDecode']" name="name">EightBitHeaderDecode</attr> + <attr path="/api/namespace/class[@name='Utils']/method[@name='8BitHeaderEncode']" name="name">EightBitHeaderEncode</attr> + <attr path="/api/namespace/class[@name='Utils']/method[@name='8BitHeaderEncodePhrase']" name="name">EightBitHeaderEncodePhrase</attr> + + <attr path="/api/namespace/object[@cname='GMimeDisposition']/method[@name='Get']" name="name">GetDisposition</attr> + <attr path="/api/namespace/object[@cname='GMimeDisposition']/method[@name='Set']" name="name">SetDisposition</attr> + + <attr path="/api/namespace/object[@cname='GMimeDataWrapper']/method[@name='GetStream']" name="name">GetGMimeStream</attr> + <attr path="/api/namespace/object[@cname='GMimeDataWrapper']/method[@name='SetStream']" name="name">SetGMimeStream</attr> + + <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_filter']" name="name">ApplyFilter</attr> + <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_filter']/*/*[@name='outlen']" name="name">foo</attr> + <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_filter']/*/*[@type='char**']" name="pass_as">out</attr> + <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_complete']/*/*[@name='outlen']" name="name">foo</attr> + <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_complete']/*/*[@type='char**']" name="pass_as">out</attr> + <attr path="/api/namespace/object[@cname='GMimeMultipart']/method[@name='Foreach']" name="name">ForeachPart</attr> + <attr path="/api/namespace/object[@cname='GMimeStream']/method[@name='Length']" name="name">GetLength</attr> + + <!-- We need to remap off_t conditionally. For 64-bit systems or 32-bit + systems without large file support, "long" is the right thing here, and + the generator will map it to an IntPtr for marshaling. However, if + large file support is enabled on 32-bit systems, off_t must be mapped to + "gint64" and marshaled as a C# "long". See Makefile.am for the actual + replacement. --> + + <attr path="/api/namespace/*/field[@type='off_t']" name="type">@off_t_type@</attr> + <attr path="/api/namespace/*/*/return-type[@type='off_t']" name="type">@off_t_type@</attr> + <attr path="/api/namespace/*/*/parameter[@type='off_t']" name="type">@off_t_type@</attr> + <attr path="/api/namespace/*/*/*/parameter[@type='off_t']" name="type">@off_t_type@</attr> + + <!-- We want to be able to get at the type and subtype fields of this + structure, so don't mark it as opaque. --> + <attr path="/api/namespace/struct[@cname='GMimeContentType']" name="opaque">false</attr> + + <!-- The generator irritating always converts a method named GetType to a + GType property regardless of whether or not it's actually a glib type + So rename this one --> + <attr path="/api/namespace/struct[@cname='InternetAddress']/method[@cname='internet_address_get_type']" name="name">GetAddressType</attr> + + <!-- Certain things take const unsigned char *, which the generator doesn't deal with nicely. --> + <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned']" name="name">str</attr> + <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned']" name="type">const-char*</attr> + <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned-char*']" name="name">str</attr> + <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned-char*']" name="type">const-char*</attr> + + <!-- Hide some problematic and nonsensical elements --> + <attr path="/api/namespace/struct[@cname='GMimeHeader']/method[@name='SetRaw']" name="hidden">1</attr> + <attr path="/api/namespace/object[@cname='GMimeMessage']/method[@name='GetDate']/*/*[@name='date']" name="hidden">1</attr> + <attr path="/api/namespace/object[@cname='GMimeMessage']/method[@name='WriteToStream']" name="hidden">1</attr> + <attr path="/api/namespace/object[@cname='GMimeStream']/method[@name='Read']" name="hidden">1</attr> + <attr path="/api/namespace/object[@cname='GMimeStreamMem']/constructor[@cname='g_mime_stream_mem_new_with_byte_array']" name="hidden">1</attr> + <attr path="/api/namespace/object[@cname='GMimeStreamFile']" name="hidden">1</attr> + + <!-- We implement this class by hand, hide it. --> + <attr path="/api/namespace/struct[@cname='InternetAddressList']" name="hidden">1</attr> + + <!-- Some functions return new objects with owned refs --> + <attr path="/api/namespace/object[@cname='GMimeDataWrapper']/method[@name='GetGMimeStream']/return-type" name="owned">true</attr> + <attr path="/api/namespace/object[@cname='GMimeMessagePart']/method[@name='GetMessage']/return-type" name="owned">true</attr> + <attr path="/api/namespace/object[@cname='GMimeMessage']/method[@name='GetMimePart']/return-type" name="owned">true</attr> + <attr path="/api/namespace/object[@cname='GMimeMultipart']/method[@name='GetPart']/return-type" name="owned">true</attr> + <attr path="/api/namespace/object[@cname='GMimeMultipart']/method[@name='GetSubpartFromContentId']/return-type" name="owned">true</attr> + <attr path="/api/namespace/object[@cname='GMimeParser']/method[@name='ConstructPart']/return-type" name="owned">true</attr> + <attr path="/api/namespace/object[@cname='GMimeParser']/method[@name='ConstructMessage']/return-type" name="owned">true</attr> + <attr path="/api/namespace/object[@cname='GMimePart']/method[@name='GetContentObject']/return-type" name="owned">true</attr> +</metadata> Index: mono/Makefile.am =================================================================== --- mono/Makefile.am.orig +++ mono/Makefile.am @@ -1,6 +1,7 @@ API=gmime-api.xml RAW_API = gmime-api.raw METADATA = GMime.metadata +METADATA_IN = $(METADATA).in ASSEMBLY_NAME = gmime-sharp references = $(GTK_SHARP_LIBS) SOURCES_XML = sources.xml @@ -11,7 +12,7 @@ ASSEMBLY = $(ASSEMBLY_NAME).dll gapidir = $(datadir)/gapi-2.0 noinst_DATA = $(ASSEMBLY) $(ASSEMBLY).config gapi_DATA = $(API) -CLEANFILES = $(ASSEMBLY) generated-stamp generated/*.cs $(API) +CLEANFILES = $(ASSEMBLY) generated-stamp generated/*.cs $(API) $(METADATA) DISTCLEANFILES = $(ASSEMBLY).config AssemblyInfo.cs pkgconfigdir = $(libdir)/pkgconfig @@ -40,16 +41,25 @@ EXTRA_DIST = \ $(ASSEMBLY_NAME).pub \ AssemblyInfo.cs.in \ $(RAW_API) \ - $(METADATA) \ + $(METADATA_IN) \ $(customs) \ $(sources) \ $(SOURCES_XML) \ gmime-sharp.pc.in -$(API): $(srcdir)/$(RAW_API) $(srcdir)/$(METADATA) +if ENABLE_LARGEFILE +off_t_type=gint64 +else +off_t_type=long +endif + +$(METADATA): $(srcdir)/$(METADATA_IN) + sed -e 's|\@off_t_type\@|$(off_t_type)|g' < $(srcdir)/$(METADATA_IN) > $@ + +$(API): $(srcdir)/$(RAW_API) $(METADATA) cp $(srcdir)/$(RAW_API) $(API) chmod u+w $(API) - $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA) + $(GAPI_FIXUP) --api=$(API) --metadata=$(METADATA) generated-stamp: $(API) $(build_customs) rm -f generated/* && \ Index: mono/GMime.metadata =================================================================== --- mono/GMime.metadata +++ /dev/null @@ -1,85 +0,0 @@ -<?xml version="1.0"?> -<metadata> - <!-- Rename some items --> - <attr path="/api/namespace/enum/member[@cname='GMIME_BEST_ENCODING_7BIT']" name="name">SevenBit</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_BEST_ENCODING_8BIT']" name="name">EightBit</attr> - - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_DEFAULT']" name="name">Default</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_7BIT']" name="name">SevenBit</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_8BIT']" name="name">EightBit</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_BINARY']" name="name">Binary</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_BASE64']" name="name">Base64</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_QUOTEDPRINTABLE']" name="name">QuotedPrintable</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_ENCODING_UUENCODE']" name="name">Uuencode</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_PART_NUM_ENCODINGS']" name="hidden">1</attr> - - <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_BASE64_ENC']" name="name">Base64Encode</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_BASE64_DEC']" name="name">Base64Decode</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_QP_ENC']" name="name">QpEncode</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_QP_DEC']" name="name">QpDecode</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_UU_ENC']" name="name">Uuencode</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_FILTER_BASIC_UU_DEC']" name="name">Uudecode</attr> - - <attr path="/api/namespace/enum/member[@cname='GMIME_STREAM_SEEK_SET']" name="value">0</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_STREAM_SEEK_CUR']" name="value">1</attr> - <attr path="/api/namespace/enum/member[@cname='GMIME_STREAM_SEEK_END']" name="value">2</attr> - - <attr path="/api/namespace/class[@name='Utils']/method[@name='8BitHeaderDecode']" name="name">EightBitHeaderDecode</attr> - <attr path="/api/namespace/class[@name='Utils']/method[@name='8BitHeaderEncode']" name="name">EightBitHeaderEncode</attr> - <attr path="/api/namespace/class[@name='Utils']/method[@name='8BitHeaderEncodePhrase']" name="name">EightBitHeaderEncodePhrase</attr> - - <attr path="/api/namespace/object[@cname='GMimeDisposition']/method[@name='Get']" name="name">GetDisposition</attr> - <attr path="/api/namespace/object[@cname='GMimeDisposition']/method[@name='Set']" name="name">SetDisposition</attr> - - <attr path="/api/namespace/object[@cname='GMimeDataWrapper']/method[@name='GetStream']" name="name">GetGMimeStream</attr> - <attr path="/api/namespace/object[@cname='GMimeDataWrapper']/method[@name='SetStream']" name="name">SetGMimeStream</attr> - - <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_filter']" name="name">ApplyFilter</attr> - <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_filter']/*/*[@name='outlen']" name="name">foo</attr> - <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_filter']/*/*[@type='char**']" name="pass_as">out</attr> - <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_complete']/*/*[@name='outlen']" name="name">foo</attr> - <attr path="/api/namespace/object[@cname='GMimeFilter']/method[@cname='g_mime_filter_complete']/*/*[@type='char**']" name="pass_as">out</attr> - <attr path="/api/namespace/object[@cname='GMimeMultipart']/method[@name='Foreach']" name="name">ForeachPart</attr> - <attr path="/api/namespace/object[@cname='GMimeStream']/method[@name='Length']" name="name">GetLength</attr> - - <!-- gtk-sharp incorrectly aliases off_t to size_t, when it's really - a long --> - <attr path="/api/namespace/*/method/return-type[@type='off_t']" name="type">long</attr> - <attr path="/api/namespace/*/*/*/parameter[@type='off_t']" name="type">long</attr> - - <!-- We want to be able to get at the type and subtype fields of this - structure, so don't mark it as opaque. --> - <attr path="/api/namespace/struct[@cname='GMimeContentType']" name="opaque">false</attr> - - <!-- The generator irritating always converts a method named GetType to a - GType property regardless of whether or not it's actually a glib type - So rename this one --> - <attr path="/api/namespace/struct[@cname='InternetAddress']/method[@cname='internet_address_get_type']" name="name">GetAddressType</attr> - - <!-- Certain things take const unsigned char *, which the generator doesn't deal with nicely. --> - <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned']" name="name">str</attr> - <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned']" name="type">const-char*</attr> - <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned-char*']" name="name">str</attr> - <attr path="/api/namespace/class[@name='Utils']/*/*/parameter[@type='const-unsigned-char*']" name="type">const-char*</attr> - - <!-- Hide some problematic and nonsensical elements --> - <attr path="/api/namespace/struct[@cname='GMimeHeader']/method[@name='SetRaw']" name="hidden">1</attr> - <attr path="/api/namespace/object[@cname='GMimeMessage']/method[@name='GetDate']/*/*[@name='date']" name="hidden">1</attr> - <attr path="/api/namespace/object[@cname='GMimeMessage']/method[@name='WriteToStream']" name="hidden">1</attr> - <attr path="/api/namespace/object[@cname='GMimeStream']/method[@name='Read']" name="hidden">1</attr> - <attr path="/api/namespace/object[@cname='GMimeStreamMem']/constructor[@cname='g_mime_stream_mem_new_with_byte_array']" name="hidden">1</attr> - <attr path="/api/namespace/object[@cname='GMimeStreamFile']" name="hidden">1</attr> - - <!-- We implement this class by hand, hide it. --> - <attr path="/api/namespace/struct[@cname='InternetAddressList']" name="hidden">1</attr> - - <!-- Some functions return new objects with owned refs --> - <attr path="/api/namespace/object[@cname='GMimeDataWrapper']/method[@name='GetGMimeStream']/return-type" name="owned">true</attr> - <attr path="/api/namespace/object[@cname='GMimeMessagePart']/method[@name='GetMessage']/return-type" name="owned">true</attr> - <attr path="/api/namespace/object[@cname='GMimeMessage']/method[@name='GetMimePart']/return-type" name="owned">true</attr> - <attr path="/api/namespace/object[@cname='GMimeMultipart']/method[@name='GetPart']/return-type" name="owned">true</attr> - <attr path="/api/namespace/object[@cname='GMimeMultipart']/method[@name='GetSubpartFromContentId']/return-type" name="owned">true</attr> - <attr path="/api/namespace/object[@cname='GMimeParser']/method[@name='ConstructPart']/return-type" name="owned">true</attr> - <attr path="/api/namespace/object[@cname='GMimeParser']/method[@name='ConstructMessage']/return-type" name="owned">true</attr> - <attr path="/api/namespace/object[@cname='GMimePart']/method[@name='GetContentObject']/return-type" name="owned">true</attr> -</metadata> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@Hilbert.suse.de