mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-04-17 22:48:28 +00:00
python3-grpcio(-tools): fix build concurrency issue
Set GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS to limit spawned compiler
processes. Without this it uses all available CPUs (via
multiprocessing.cpu_count()) and can exhaust build host since there are
lot of files to compile (e.g. with 128 cores it manages to spawn 128 gcc
processes)
Note that this is a general problem for all setuptools based builds with
build_ext compilation which can either compile with 1 thread or
cpu_count threads. grpcio hot-patches setuptools and allows to set
specific build concurrency value.
(From master rev: fe582374d3)
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
This commit is contained in:
committed by
Armin Kuster
parent
fedd8cf51d
commit
7842d4eb45
@@ -14,4 +14,8 @@ SRC_URI[sha256sum] = "a016cfc21e0d91b3b036d3d4f968d1fdea865dfa03524cb1fbeca84719
|
||||
|
||||
RDEPENDS:${PN} = "${PYTHON_PN}-grpcio"
|
||||
|
||||
do_compile:prepend() {
|
||||
export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS="${@oe.utils.parallel_make(d, False)}"
|
||||
}
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
@@ -35,6 +35,10 @@ BORING_SSL:arm = "1"
|
||||
BORING_SSL ?= "0"
|
||||
export GRPC_BUILD_WITH_BORING_SSL_ASM = "${BORING_SSL}"
|
||||
|
||||
do_compile:prepend() {
|
||||
export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS="${@oe.utils.parallel_make(d, False)}"
|
||||
}
|
||||
|
||||
GRPC_CFLAGS ?= ""
|
||||
GRPC_CFLAGS:append:toolchain-clang = " -fvisibility=hidden -fno-wrapv -fno-exceptions"
|
||||
export GRPC_PYTHON_CFLAGS = "${GRPC_CFLAGS}"
|
||||
|
||||
Reference in New Issue
Block a user