diff --git a/meta-python/recipes-devtools/python/python-grpcio.inc b/meta-python/recipes-devtools/python/python-grpcio.inc index fd341f5de..7d3675c45 100644 --- a/meta-python/recipes-devtools/python/python-grpcio.inc +++ b/meta-python/recipes-devtools/python/python-grpcio.inc @@ -9,6 +9,7 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/python-grpcio:" SRC_URI_append_class-target = " file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch \ file://ppc-boringssl-support.patch \ file://riscv64_support.patch \ + file://gettid.patch \ " RDEPENDS_${PN} = "${PYTHON_PN}-protobuf \ diff --git a/meta-python/recipes-devtools/python/python-grpcio/gettid.patch b/meta-python/recipes-devtools/python/python-grpcio/gettid.patch new file mode 100644 index 000000000..fb15cf7f9 --- /dev/null +++ b/meta-python/recipes-devtools/python/python-grpcio/gettid.patch @@ -0,0 +1,26 @@ +use glibc provided gettid API for glibc 2.30+ + +glibc 2.30 introduced this function see [1] +so it's best to detect it +and provide fallback only if it's not present + +[1] https://sourceware.org/bugzilla/show_bug.cgi?id=6399 + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- a/src/core/lib/gpr/log_linux.cc ++++ b/src/core/lib/gpr/log_linux.cc +@@ -40,7 +40,13 @@ + #include + #include + ++#if defined(__GLIBC__) ++#if !__GLIBC_PREREQ(2,29) + static long gettid(void) { return syscall(__NR_gettid); } ++#endif ++#else ++static long gettid(void) { return syscall(__NR_gettid); } ++#endif + + void gpr_log(const char* file, int line, gpr_log_severity severity, + const char* format, ...) {