[jhbuild] Don't install when 'jhbuild make uninstall' (GNOME bug 675416)



commit 7056e5f55f3f3c08d55be217e920d3648880c71b
Author: Craig Keogh <cskeogh adam com au>
Date:   Thu Jun 7 17:19:24 2012 +0930

    Don't install when 'jhbuild make uninstall' (GNOME bug 675416)

 jhbuild/commands/make.py      |    3 +++
 jhbuild/config.py             |    4 ++--
 jhbuild/defaults.jhbuildrc    |    1 +
 jhbuild/modtypes/autotools.py |    3 +++
 4 files changed, 9 insertions(+), 2 deletions(-)
---
diff --git a/jhbuild/commands/make.py b/jhbuild/commands/make.py
index 222c7ed..968d024 100644
--- a/jhbuild/commands/make.py
+++ b/jhbuild/commands/make.py
@@ -63,6 +63,9 @@ class cmd_make(Command):
 
         makeargs = config.makeargs
         for arg in args:
+            # if uninstalling, skip install.
+            if arg == 'uninstall' or arg.startswith('uninstall-'):
+                config.noinstall = True
             # pipes.quote (and really, trying to safely quote shell arguments) is
             # broken, but executing commands as strings is pervasive throughout
             # jhbuild...this is a hack that will probably live until someone just
diff --git a/jhbuild/config.py b/jhbuild/config.py
index b977523..3f082dd 100644
--- a/jhbuild/config.py
+++ b/jhbuild/config.py
@@ -45,8 +45,8 @@ _known_keys = [ 'moduleset', 'modules', 'skip', 'tags', 'prefix',
                 'autogenargs', 'makeargs', 'nice_build', 'jobs',
                 'installprog', 'repos', 'branches', 'noxvfb', 'xvfbargs',
                 'builddir_pattern', 'module_autogenargs', 'module_makeargs',
-                'interact', 'buildscript', 'nonetwork',
-                'nobuild', 'makeclean', 'makecheck', 'module_makecheck',
+                'interact', 'buildscript', 'nonetwork', 'nobuild',
+                'noinstall', 'makeclean', 'makecheck', 'module_makecheck',
                 'use_lib64', 'tinderbox_outputdir', 'sticky_date',
                 'tarballdir', 'pretty_print', 'svn_program', 'makedist',
                 'makedistcheck', 'nonotify', 'notrayicon', 'cvs_program',
diff --git a/jhbuild/defaults.jhbuildrc b/jhbuild/defaults.jhbuildrc
index f96a8c1..6df6238 100644
--- a/jhbuild/defaults.jhbuildrc
+++ b/jhbuild/defaults.jhbuildrc
@@ -88,6 +88,7 @@ module_nopoison = {}
 # control parts of the build process
 nonetwork     = False  # never touch the network
 nobuild       = False  # don't actually build the packages
+noinstall     = False  # don't install the packages
 makeclean     = False  # run make clean before building
 makecheck     = False  # run make check after building
 makedist      = False  # run make dist after building
diff --git a/jhbuild/modtypes/autotools.py b/jhbuild/modtypes/autotools.py
index 3e5a51b..df8ab0d 100644
--- a/jhbuild/modtypes/autotools.py
+++ b/jhbuild/modtypes/autotools.py
@@ -298,6 +298,9 @@ class AutogenModule(Package, DownloadableModule):
 
     do_install.depends = [PHASE_BUILD]
 
+    def skip_install(self, buildscript, last_phase):
+        return self.config.noinstall
+
     def do_distclean(self, buildscript):
         buildscript.set_action(_('Distcleaning'), self)
         makeargs = self._get_makeargs(buildscript)



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