diff options
author | Khem Raj <raj.khem@gmail.com> | 2020-02-12 18:12:28 -0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2020-02-13 14:07:47 -0800 |
commit | 115144fce9d97143bcb77ee4bdab5b19e61f6f82 (patch) | |
tree | 38c854368c417f720a33f65fa11d6927992a971c /meta-python/recipes-devtools/python/python3-grpcio | |
parent | 0b7e50f7be5d639250f05a694272977216e7f7dd (diff) | |
download | meta-openembedded-contrib-115144fce9d97143bcb77ee4bdab5b19e61f6f82.tar.gz |
python3-grpcio: Upgrade to 1.27.1
Merge inc file into bb, there are no other users of it
Delete gettid patch, fixed differenty upstream
Add code to use cross compiler in setup.py
Define GRPC_PYTHON_DISABLE_LIBC_COMPATIBILITY so it does not use
SYS_clock_gettime syscalls since it does not work when 64bit time_t is
used on 32bit arches
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-python/recipes-devtools/python/python3-grpcio')
3 files changed, 97 insertions, 0 deletions
diff --git a/meta-python/recipes-devtools/python/python3-grpcio/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch b/meta-python/recipes-devtools/python/python3-grpcio/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch new file mode 100644 index 0000000000..131daace06 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-grpcio/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch @@ -0,0 +1,64 @@ +From b02be74a2eff8abc612ef84f30e0fbce6a7f65f5 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Fri, 4 Aug 2017 09:04:07 -0700 +Subject: [PATCH] setup.py: Do not mix C and C++ compiler options + +EXTRA_ENV_COMPILE_ARGS is used both with CC and CXX +so using -std=c++11 or -std=gnu99 together will cause +build time errors espcially with clang + +error: invalid argument '-std=gnu99' not allowed with 'C++' + +gcc7 ( defaults are -std=gnu11 and -std=gnu++14 ) + as well clang default to these standards mode or newer +anyway + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/setup.py ++++ b/setup.py +@@ -144,9 +144,10 @@ ENABLE_DOCUMENTATION_BUILD = os.environ. + + def check_linker_need_libatomic(): + """Test if linker on system needs libatomic.""" ++ compiler, cc_args = os.environ.get('CC').split(' ', 1) or 'cc' + code_test = (b'#include <atomic>\n' + + b'int main() { return std::atomic<int64_t>{}; }') +- cc_test = subprocess.Popen(['cc', '-x', 'c++', '-std=c++11', '-'], ++ cc_test = subprocess.Popen([compiler, cc_args, '-x', 'c++', '-std=c++11', '-'], + stdin=PIPE, + stdout=PIPE, + stderr=PIPE) +@@ -163,7 +164,7 @@ def check_linker_need_libatomic(): + EXTRA_ENV_COMPILE_ARGS = os.environ.get('GRPC_PYTHON_CFLAGS', None) + EXTRA_ENV_LINK_ARGS = os.environ.get('GRPC_PYTHON_LDFLAGS', None) + if EXTRA_ENV_COMPILE_ARGS is None: +- EXTRA_ENV_COMPILE_ARGS = ' -std=c++11' ++ EXTRA_ENV_COMPILE_ARGS = ' ' + if 'win32' in sys.platform: + if sys.version_info < (3, 5): + EXTRA_ENV_COMPILE_ARGS += ' -D_hypot=hypot' +@@ -180,7 +181,7 @@ if EXTRA_ENV_COMPILE_ARGS is None: + # available dynamically + EXTRA_ENV_COMPILE_ARGS += ' /MT' + elif "linux" in sys.platform: +- EXTRA_ENV_COMPILE_ARGS += ' -std=gnu99 -fvisibility=hidden -fno-wrapv -fno-exceptions' ++ EXTRA_ENV_COMPILE_ARGS += ' -fvisibility=hidden -fno-wrapv -fno-exceptions' + elif "darwin" in sys.platform: + EXTRA_ENV_COMPILE_ARGS += ' -stdlib=libc++ -fvisibility=hidden -fno-wrapv -fno-exceptions' + +--- a/src/python/grpcio/commands.py ++++ b/src/python/grpcio/commands.py +@@ -216,7 +216,8 @@ class BuildExt(build_ext.build_ext): + when invoked in C mode. GCC is okay with this, while clang is not. + """ + # TODO(lidiz) Remove the generated a.out for success tests. +- cc_test = subprocess.Popen(['cc', '-x', 'c', '-std=c++11', '-'], ++ compiler, cc_args = os.environ.get('CC').split(' ', 1) or 'cc' ++ cc_test = subprocess.Popen([compiler, cc_args, '-x', 'c', '-std=c++11', '-'], + stdin=subprocess.PIPE, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE) diff --git a/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch b/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch new file mode 100644 index 0000000000..8ac2aef8c4 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-grpcio/ppc-boringssl-support.patch @@ -0,0 +1,17 @@ +Let boringSSL compile on ppc32 bit + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- a/third_party/boringssl/include/openssl/base.h ++++ b/third_party/boringssl/include/openssl/base.h +@@ -99,6 +99,9 @@ extern "C" { + #elif (defined(__PPC64__) || defined(__powerpc64__)) && defined(_LITTLE_ENDIAN) + #define OPENSSL_64_BIT + #define OPENSSL_PPC64LE ++#elif (defined(__PPC__) || defined(__powerpc__)) ++#define OPENSSL_32_BIT ++#define OPENSSL_PPC + #elif defined(__mips__) && !defined(__LP64__) + #define OPENSSL_32_BIT + #define OPENSSL_MIPS diff --git a/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch b/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch new file mode 100644 index 0000000000..b55d50bde5 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-grpcio/riscv64_support.patch @@ -0,0 +1,16 @@ +Add RISC-V 64bit support + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- a/third_party/boringssl/include/openssl/base.h ++++ b/third_party/boringssl/include/openssl/base.h +@@ -108,6 +108,9 @@ extern "C" { + #elif defined(__mips__) && defined(__LP64__) + #define OPENSSL_64_BIT + #define OPENSSL_MIPS64 ++#elif defined(__riscv) && defined(__riscv_xlen) ++#define OPENSSL_64_BIT ++#define OPENSSL_RISCV64 + #elif defined(__pnacl__) + #define OPENSSL_32_BIT + #define OPENSSL_PNACL |