gobject-introspection r911 - in trunk: . girepository



Author: walters
Date: Thu Nov 13 19:57:09 2008
New Revision: 911
URL: http://svn.gnome.org/viewvc/gobject-introspection?rev=911&view=rev

Log:
g_irepository_dump implementation

Modified:
   trunk/ChangeLog
   trunk/configure.ac
   trunk/girepository/Makefile.am
   trunk/girepository/girepository.c
   trunk/girepository/girepository.h

Modified: trunk/configure.ac
==============================================================================
--- trunk/configure.ac	(original)
+++ trunk/configure.ac	Thu Nov 13 19:57:09 2008
@@ -107,9 +107,10 @@
 AC_SUBST(GOBJECT_INTROSPECTION_LIBDIR)
 AC_DEFINE_UNQUOTED(GOBJECT_INTROSPECTION_LIBDIR,"$GOBJECT_INTROSPECTION_LIBDIR", [Directory prefix for typelib installation])
 
-PKG_CHECK_MODULES(GOBJECT, [gobject-2.0])
+PKG_CHECK_MODULES(GOBJECT, [gobject-2.0 gio-2.0])
+PKG_CHECK_MODULES(GTHREAD, [gthread-2.0])
 
-PKG_CHECK_MODULES(SCANNER, [gobject-2.0 gthread-2.0])
+PKG_CHECK_MODULES(SCANNER, [gobject-2.0 gthread-2.0 gio-2.0])
 
 dnl libffi
 PKG_CHECK_MODULES(FFI, libffi, have_ffi_pkgconfig=yes, have_ffi_pkgconfig=no)
@@ -149,7 +150,7 @@
 
 AC_CHECK_SIZEOF(time_t, [], [#include <time.h>])
 
-PKG_CHECK_MODULES(GIREPO, [glib-2.0 gobject-2.0 gmodule-2.0])
+PKG_CHECK_MODULES(GIREPO, [glib-2.0 gobject-2.0 gmodule-2.0 gio-2.0])
 
 # if we ever remove manual check for ffi and require .pc file, then 
 # just put libffi in the PKG_CHECK_MODULES(GIREPO) deps

Modified: trunk/girepository/Makefile.am
==============================================================================
--- trunk/girepository/Makefile.am	(original)
+++ trunk/girepository/Makefile.am	Thu Nov 13 19:57:09 2008
@@ -13,9 +13,11 @@
 	gtypelib.h				\
 	gtypelib.c				\
 	ginfo.c					\
-	ginvoke.c				\
 	girffi.c				\
-	girffi.h
+	girffi.h				\
+	gdump.c					\
+	ginvoke.c
+
 libgirepository_la_CPPFLAGS = $(GIREPO_CFLAGS)
 libgirepository_la_LIBADD = $(GIREPO_LIBS)
 libgirepository_la_LDFLAGS = -no-undefined

Modified: trunk/girepository/girepository.c
==============================================================================
--- trunk/girepository/girepository.c	(original)
+++ trunk/girepository/girepository.c	Thu Nov 13 19:57:09 2008
@@ -1145,6 +1145,31 @@
   return ret; 
 }
 
+static gboolean
+g_irepository_introspect_cb (const char *option_name,
+			     const char *value,
+			     gpointer data,
+			     GError **error)
+{
+  return g_irepository_dump (value, error);
+}
+
+static const GOptionEntry introspection_args[] = {
+  { "introspect-dump", 0, G_OPTION_FLAG_HIDDEN, G_OPTION_ARG_CALLBACK,
+    g_irepository_introspect_cb, "Dump introspection information",
+    "infile.txt,outfile.xml" },
+  { NULL }
+};
+
+GOptionGroup *
+g_irepository_get_option_group (void)
+{
+  GOptionGroup *group;
+  group = g_option_group_new ("girepository", "Introspection Options", "Show Introspection Options", NULL, NULL);
+
+  g_option_group_add_entries (group, introspection_args);
+  return group;
+}
 
 GQuark
 g_irepository_error_quark (void)

Modified: trunk/girepository/girepository.h
==============================================================================
--- trunk/girepository/girepository.h	(original)
+++ trunk/girepository/girepository.h	Thu Nov 13 19:57:09 2008
@@ -110,6 +110,10 @@
 const gchar * g_irepository_get_version (GIRepository *repository,
 					 const gchar  *namespace);
 
+GOptionGroup * g_irepository_get_option_group (void);
+
+gboolean       g_irepository_dump  (const char *arg, GError **error);
+
 /* Typelib */
 
 GTypelib *   g_typelib_new_from_memory       (guchar       *memory,



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