[gmime] Add Vala bindings (based on GObject Introspection)



commit 5f8310cef1088bdeec14e6f1c6aafb4729804ea2
Author: Evan Nemerson <evan coeus-group com>
Date:   Wed Jun 26 15:09:48 2013 -0700

    Add Vala bindings (based on GObject Introspection)

 configure.ac             |    1 +
 gmime/.gitignore         |    2 ++
 gmime/GMime-2.6.metadata |   23 +++++++++++++++++++++++
 gmime/Makefile.am        |   22 ++++++++++++++++++++++
 4 files changed, 48 insertions(+), 0 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 9e80dcb..48079bd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -620,6 +620,7 @@ AC_SUBST(GMIME_CFLAGS)
 AC_SUBST(GMIME_LIBS)
 
 GOBJECT_INTROSPECTION_CHECK([1.30.0])
+VAPIGEN_CHECK
 
 AC_OUTPUT(
 Makefile
diff --git a/gmime/.gitignore b/gmime/.gitignore
index 8e72b43..89ec28f 100644
--- a/gmime/.gitignore
+++ b/gmime/.gitignore
@@ -10,3 +10,5 @@ charset-map
 gen-table
 GMime-2.6.gir
 GMime-2.6.typelib
+gmime-2.6.vapi
+gmime-2.6.deps
diff --git a/gmime/GMime-2.6.metadata b/gmime/GMime-2.6.metadata
new file mode 100644
index 0000000..4f3da25
--- /dev/null
+++ b/gmime/GMime-2.6.metadata
@@ -0,0 +1,23 @@
+InternetAddress
+  .to_string#method name="to_new_string"
+References struct=false
+
+// G-I can't handle non-boxed types
+HeaderIter struct=false
+PartIter struct=false
+Param struct=false
+  .next#method name="get_next" nullable
+
+// G-I doesn't allow non-nullable return values (bug #660879)
+Message
+  .get_mime_part nullable
+Object
+  .get_content_type_parameter nullable
+Parser
+  .construct_message nullable
+
+// G-I doesn't allow non-GObject inheritance
+utils_header_decode_date type="time_t"
+
+// g_mime_utils_header_decode_phrase transfer_ownership="1"
+// g_mime_utils_header_decode_text transfer_ownership="1"
\ No newline at end of file
diff --git a/gmime/Makefile.am b/gmime/Makefile.am
index 1ed5b1d..5184a68 100644
--- a/gmime/Makefile.am
+++ b/gmime/Makefile.am
@@ -194,3 +194,25 @@ typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
 
 CLEANFILES += $(gir_DATA) $(typelib_DATA)
 endif
+
+if ENABLE_VAPIGEN
+-include $(VAPIGEN_MAKEFILE)
+
+gmime-2.6.vapi: GMime-2.6.gir GMime-2.6.metadata
+
+VAPIGEN_VAPIS = gmime-2.6.vapi
+gmime_2_6_vapi_DEPS = gio-2.0
+gmime_2_6_vapi_METADATADIRS = $(srcdir)
+gmime_2_6_vapi_FILES = GMime-2.6.gir
+
+gmime-2.6.deps:
+       $(AM_V_GEN) for pkg in $(gmime_2_6_vapi_DEPS); do \
+               echo $$pkg >> $@; \
+       done
+
+vapidir = $(datadir)/vala/vapi
+vapi_DATA = $(VAPIGEN_VAPIS) $(VAPIGEN_VAPIS:.vapi=.deps)
+
+EXTRA_DIST += GMime-2.6.metadata
+CLEANFILES += $(vapi_DATA)
+endif


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]