Use parallel build even for installation, but with less jobs than while compiling
authorRalf Jung <post@ralfj.de>
Wed, 15 May 2013 17:04:38 +0000 (19:04 +0200)
committerRalf Jung <post@ralfj.de>
Wed, 15 May 2013 17:04:38 +0000 (19:04 +0200)
build_system.py

index 4658f4a5fd08fc6a2fe7b352a32e8cb0d0d41da0..c26673dafec37bbac90331e993f96d5417f1cc86 100644 (file)
@@ -1,5 +1,5 @@
 # mass-build - Easily Build Software Involving a Large Amount of Source Repositories
 # mass-build - Easily Build Software Involving a Large Amount of Source Repositories
-# Copyright (C) 2012 Ralf Jung <post@ralfj.de>
+# Copyright (C) 2012-2013 Ralf Jung <post@ralfj.de>
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -69,9 +69,10 @@ class CMake:
                if waitAfterConfig:
                        raw_input('Configuration done. Hit "Enter" to build the project. ')
                # run compilation
                if waitAfterConfig:
                        raw_input('Configuration done. Hit "Enter" to build the project. ')
                # run compilation
-               subprocess.check_call(self.config.get('buildCmdPrefix', []) + ['make', '-j'+str(self.config['jobs'])])
+               jobs = int(self.config['jobs'])
+               subprocess.check_call(self.config.get('buildCmdPrefix', []) + ['make', '-j'+str(jobs)])
                # run installation
                # run installation
-               subprocess.check_call(self.config.get('installCmdPrefix', []) + ['make', 'install'])
+               subprocess.check_call(self.config.get('installCmdPrefix', []) + ['make', 'install', '-j'+str((jobs+1)/2)]) # jobs/2, rounded up
 
 # if auto-debuild is available, provide a wrapper for it
 try:
 
 # if auto-debuild is available, provide a wrapper for it
 try: