56 lines
1.8 KiB
Diff
56 lines
1.8 KiB
Diff
From 2f1c716ffef351a56aa5bd0a26c3dd1e34d3283a Mon Sep 17 00:00:00 2001
|
|
From: Andreas Schneider <asn@samba.org>
|
|
Date: Thu, 6 Sep 2018 12:40:10 +0200
|
|
Subject: [PATCH] wafsamba: Deal with make -j<num>
|
|
|
|
Currently only make -j works for parallel builds and make -j4 results in
|
|
no parallel jobs at all.
|
|
|
|
BUG: https://bugzilla.samba.org/show_bug.cgi?id=13606
|
|
|
|
Signed-off-by: Andreas Schneider <asn@samba.org>
|
|
Reviewed-by: Alexander Bokovoy <ab@samba.org>
|
|
---
|
|
buildtools/wafsamba/samba_utils.py | 9 +++++++--
|
|
1 file changed, 7 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/buildtools/wafsamba/samba_utils.py b/buildtools/wafsamba/samba_utils.py
|
|
index 30e99432d1b..fd61b8425d8 100644
|
|
--- a/buildtools/wafsamba/samba_utils.py
|
|
+++ b/buildtools/wafsamba/samba_utils.py
|
|
@@ -448,6 +448,7 @@ def CHECK_MAKEFLAGS(bld):
|
|
if makeflags is None:
|
|
return
|
|
jobs_set = False
|
|
+ jobs = None
|
|
# we need to use shlex.split to cope with the escaping of spaces
|
|
# in makeflags
|
|
for opt in shlex.split(makeflags):
|
|
@@ -470,17 +471,21 @@ def CHECK_MAKEFLAGS(bld):
|
|
setattr(Options.options, opt[0:loc], opt[loc+1:])
|
|
elif opt[0] != '-':
|
|
for v in opt:
|
|
- if v == 'j':
|
|
+ if re.search(r'j[0-9]*$', v):
|
|
jobs_set = True
|
|
+ jobs = opt.strip('j')
|
|
elif v == 'k':
|
|
Options.options.keep = True
|
|
- elif opt == '-j':
|
|
+ elif re.search(r'-j[0-9]*$', opt):
|
|
jobs_set = True
|
|
+ jobs = opt.strip('-j')
|
|
elif opt == '-k':
|
|
Options.options.keep = True
|
|
if not jobs_set:
|
|
# default to one job
|
|
Options.options.jobs = 1
|
|
+ elif jobs_set and jobs:
|
|
+ Options.options.jobs = int(jobs)
|
|
|
|
Build.BuildContext.CHECK_MAKEFLAGS = CHECK_MAKEFLAGS
|
|
|
|
--
|
|
2.18.0
|
|
|