[glib] glib-compile-schemas: Add a --version option



commit 6338cde7ca249057fcdb32797750ee23c3ed1870
Author: Sam Thursfield <ssssam gmail com>
Date:   Fri Sep 30 22:56:21 2016 +0100

    glib-compile-schemas: Add a --version option
    
    https://bugzilla.gnome.org/show_bug.cgi?id=772269

 docs/reference/gio/glib-compile-schemas.xml |    7 +++++++
 gio/glib-compile-schemas.c                  |    8 ++++++++
 2 files changed, 15 insertions(+), 0 deletions(-)
---
diff --git a/docs/reference/gio/glib-compile-schemas.xml b/docs/reference/gio/glib-compile-schemas.xml
index 24b3bf5..0796bd7 100644
--- a/docs/reference/gio/glib-compile-schemas.xml
+++ b/docs/reference/gio/glib-compile-schemas.xml
@@ -75,6 +75,13 @@ Print help and exit
 </varlistentry>
 
 <varlistentry>
+<term><option>--version</option></term>
+<listitem><para>
+Print program version and exit
+</para></listitem>
+</varlistentry>
+
+<varlistentry>
 <term><option>--targetdir=<replaceable>TARGET</replaceable></option></term>
 <listitem><para>
 Store <filename>gschemas.compiled</filename> in the <replaceable>TARGET</replaceable> directory instead of 
<replaceable>DIRECTORY</replaceable>.
diff --git a/gio/glib-compile-schemas.c b/gio/glib-compile-schemas.c
index 2262a3f..833ae6b 100644
--- a/gio/glib-compile-schemas.c
+++ b/gio/glib-compile-schemas.c
@@ -2025,6 +2025,7 @@ main (int argc, char **argv)
   GDir *dir;
   const gchar *file;
   gchar *srcdir;
+  gboolean show_version_and_exit = FALSE;
   gchar *targetdir = NULL;
   gchar *target;
   gboolean dry_run = FALSE;
@@ -2033,6 +2034,7 @@ main (int argc, char **argv)
   gchar **override_files = NULL;
   GOptionContext *context;
   GOptionEntry entries[] = {
+    { "version", 0, 0, G_OPTION_ARG_NONE, &show_version_and_exit, N_("Show program version and exit"), NULL 
},
     { "targetdir", 0, 0, G_OPTION_ARG_FILENAME, &targetdir, N_("where to store the gschemas.compiled file"), 
N_("DIRECTORY") },
     { "strict", 0, 0, G_OPTION_ARG_NONE, &strict, N_("Abort on any errors in schemas"), NULL },
     { "dry-run", 0, 0, G_OPTION_ARG_NONE, &dry_run, N_("Do not write the gschema.compiled file"), NULL },
@@ -2079,6 +2081,12 @@ main (int argc, char **argv)
 
   g_option_context_free (context);
 
+  if (show_version_and_exit)
+    {
+      g_print (PACKAGE_VERSION "\n");
+      return 0;
+    }
+
   if (!schema_files && argc != 2)
     {
       fprintf (stderr, _("You should give exactly one directory name\n"));


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