mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-01-01 13:58:06 +00:00
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>
54 lines
1.8 KiB
Clojure
54 lines
1.8 KiB
Clojure
DESCRIPTION = "Google gRPC"
|
|
HOMEPAGE = "http://www.grpc.io/"
|
|
SECTION = "devel/python"
|
|
LICENSE = "Apache-2.0 & BSD-3-Clause"
|
|
LIC_FILES_CHKSUM = "file://LICENSE;md5=731e401b36f8077ae0c134b59be5c906"
|
|
|
|
DEPENDS += "python3-protobuf"
|
|
|
|
SRC_URI += "file://0001-Include-missing-cstdint-header.patch \
|
|
file://abseil-ppc-fixes.patch \
|
|
file://0001-zlib-Include-unistd.h-for-open-close-C-APIs.patch \
|
|
file://0001-crypto-use-_Generic-only-if-defined-__cplusplus.patch;patchdir=third_party/boringssl-with-bazel/src/ \
|
|
file://0001-target.h-define-proper-macro-for-ppc-ppc64.patch \
|
|
file://0001-PR-1644-unscaledcycleclock-remove-RISC-V-support.patch \
|
|
file://CVE-2024-11407.patch \
|
|
"
|
|
SRC_URI[sha256sum] = "c77618071d96b7a8be2c10701a98537823b9c65ba256c0b9067e0594cdbd954d"
|
|
|
|
RDEPENDS:${PN} = "python3-protobuf"
|
|
|
|
inherit setuptools3
|
|
inherit pypi
|
|
|
|
CFLAGS:append:libc-musl = " -D_LARGEFILE64_SOURCE"
|
|
|
|
export GRPC_PYTHON_DISABLE_LIBC_COMPATIBILITY = "1"
|
|
|
|
BORING_SSL_PLATFORM:arm = "linux-arm"
|
|
BORING_SSL_PLATFORM:x86-64 = "linux-x86_64"
|
|
BORING_SSL_PLATFORM:aarch64 = "linux-aarch64"
|
|
BORING_SSL_PLATFORM ?= "unsupported"
|
|
export GRPC_BORING_SSL_PLATFORM = "${BORING_SSL_PLATFORM}"
|
|
export GRPC_BUILD_OVERRIDE_BORING_SSL_ASM_PLATFORM = "${BORING_SSL_PLATFORM}"
|
|
|
|
BORING_SSL:arm = "1"
|
|
BORING_SSL:x86-64 = "1"
|
|
BORING_SSL:aarch64 = "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}"
|
|
|
|
CLEANBROKEN = "1"
|
|
|
|
BBCLASSEXTEND = "native nativesdk"
|
|
|
|
CCACHE_DISABLE = "1"
|