summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/cmake.bbclass5
-rw-r--r--meta/lib/oe/utils.py11
2 files changed, 10 insertions, 6 deletions
diff --git a/meta/classes/cmake.bbclass b/meta/classes/cmake.bbclass
index a046daa..d91cf20 100644
--- a/meta/classes/cmake.bbclass
+++ b/meta/classes/cmake.bbclass
@@ -63,8 +63,9 @@ OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM_class-native = "BOTH"
63 63
64EXTRA_OECMAKE_append = " ${PACKAGECONFIG_CONFARGS}" 64EXTRA_OECMAKE_append = " ${PACKAGECONFIG_CONFARGS}"
65 65
66EXTRA_OECMAKE_BUILD_prepend_task-compile = "${PARALLEL_MAKE} " 66export CMAKE_BUILD_PARALLEL_LEVEL
67EXTRA_OECMAKE_BUILD_prepend_task-install = "${PARALLEL_MAKEINST} " 67CMAKE_BUILD_PARALLEL_LEVEL_task-compile = "${@oe.utils.parallel_make(d, False)}"
68CMAKE_BUILD_PARALLEL_LEVEL_task-install = "${@oe.utils.parallel_make(d, True)}"
68 69
69OECMAKE_TARGET_COMPILE ?= "all" 70OECMAKE_TARGET_COMPILE ?= "all"
70OECMAKE_TARGET_INSTALL ?= "install" 71OECMAKE_TARGET_INSTALL ?= "install"
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index 652b2be..e350b05 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -169,7 +169,7 @@ def any_distro_features(d, features, truevalue="1", falsevalue=""):
169 """ 169 """
170 return bb.utils.contains_any("DISTRO_FEATURES", features, truevalue, falsevalue, d) 170 return bb.utils.contains_any("DISTRO_FEATURES", features, truevalue, falsevalue, d)
171 171
172def parallel_make(d): 172def parallel_make(d, makeinst=False):
173 """ 173 """
174 Return the integer value for the number of parallel threads to use when 174 Return the integer value for the number of parallel threads to use when
175 building, scraped out of PARALLEL_MAKE. If no parallelization option is 175 building, scraped out of PARALLEL_MAKE. If no parallelization option is
@@ -177,7 +177,10 @@ def parallel_make(d):
177 177
178 e.g. if PARALLEL_MAKE = "-j 10", this will return 10 as an integer. 178 e.g. if PARALLEL_MAKE = "-j 10", this will return 10 as an integer.
179 """ 179 """
180 pm = (d.getVar('PARALLEL_MAKE') or '').split() 180 if makeinst:
181 pm = (d.getVar('PARALLEL_MAKEINST') or '').split()
182 else:
183 pm = (d.getVar('PARALLEL_MAKE') or '').split()
181 # look for '-j' and throw other options (e.g. '-l') away 184 # look for '-j' and throw other options (e.g. '-l') away
182 while pm: 185 while pm:
183 opt = pm.pop(0) 186 opt = pm.pop(0)
@@ -192,7 +195,7 @@ def parallel_make(d):
192 195
193 return None 196 return None
194 197
195def parallel_make_argument(d, fmt, limit=None): 198def parallel_make_argument(d, fmt, limit=None, makeinst=False):
196 """ 199 """
197 Helper utility to construct a parallel make argument from the number of 200 Helper utility to construct a parallel make argument from the number of
198 parallel threads specified in PARALLEL_MAKE. 201 parallel threads specified in PARALLEL_MAKE.
@@ -205,7 +208,7 @@ def parallel_make_argument(d, fmt, limit=None):
205 e.g. if PARALLEL_MAKE = "-j 10", parallel_make_argument(d, "-n %d") will return 208 e.g. if PARALLEL_MAKE = "-j 10", parallel_make_argument(d, "-n %d") will return
206 "-n 10" 209 "-n 10"
207 """ 210 """
208 v = parallel_make(d) 211 v = parallel_make(d, makeinst)
209 if v: 212 if v:
210 if limit: 213 if limit:
211 v = min(limit, v) 214 v = min(limit, v)