[gnome-builder/wip/libide] libide: add autotools helper to bootstrap a project



commit 81a7c78d36ec9aba39e17f40c65191d051a40168
Author: Christian Hergert <christian hergert me>
Date:   Sun Mar 1 17:58:08 2015 -0800

    libide: add autotools helper to bootstrap a project
    
    This will only perform the autogen and configure steps.

 libide/autotools/ide-autotools-build-task.c |   15 +++++++++++++++
 1 files changed, 15 insertions(+), 0 deletions(-)
---
diff --git a/libide/autotools/ide-autotools-build-task.c b/libide/autotools/ide-autotools-build-task.c
index c7e7243..6c9056c 100644
--- a/libide/autotools/ide-autotools-build-task.c
+++ b/libide/autotools/ide-autotools-build-task.c
@@ -44,6 +44,7 @@ typedef struct
   gchar **make_targets;
   guint   require_autogen : 1;
   guint   require_configure : 1;
+  guint   bootstrap_only : 1;
 } WorkerState;
 
 typedef gboolean (*WorkStep) (GTask                 *task,
@@ -552,6 +553,14 @@ worker_state_new (IdeAutotoolsBuildTask *self)
   state->require_configure = priv->require_configure;
   state->make_targets = (gchar **)g_ptr_array_free (make_targets, FALSE);
 
+  if (g_key_file_get_boolean (priv->config, "autotools", "bootstrap-only", NULL))
+    {
+      state->require_autogen = TRUE;
+      state->require_configure = TRUE;
+      state->bootstrap_only = TRUE;
+      g_clear_pointer (&state->make_targets, (GDestroyNotify)g_strfreev);
+    }
+
   return state;
 }
 
@@ -849,6 +858,12 @@ step_configure (GTask                 *task,
       return FALSE;
     }
 
+  if (state->bootstrap_only)
+    {
+      g_task_return_boolean (task, TRUE);
+      return FALSE;
+    }
+
   return TRUE;
 }
 


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