From 8d07411a9ebe7eba2a25b5db60d26ae0cdf1d4de Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Wed, 17 Feb 2021 13:56:03 -0800 Subject: python3-grpcio-tools: Upgrade to 1.35.0 merge inc file into bb as this is the only consumer now Fix the compiler name logic to match OE, since our compiler name is not a single word but a collection of words Signed-off-by: Khem Raj Acked-by: Trevor Gamblin --- .../python/python-grpcio-tools.inc | 16 ------ ...up.py-Do-not-mix-C-and-C-compiler-options.patch | 58 ++++++++++++++++++++++ .../python/python3-grpcio-tools_1.14.1.bb | 2 - .../python/python3-grpcio-tools_1.35.0.bb | 18 +++++++ 4 files changed, 76 insertions(+), 18 deletions(-) delete mode 100644 meta-python/recipes-devtools/python/python-grpcio-tools.inc create mode 100644 meta-python/recipes-devtools/python/python3-grpcio-tools/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch delete mode 100644 meta-python/recipes-devtools/python/python3-grpcio-tools_1.14.1.bb create mode 100644 meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb diff --git a/meta-python/recipes-devtools/python/python-grpcio-tools.inc b/meta-python/recipes-devtools/python/python-grpcio-tools.inc deleted file mode 100644 index 6675f904c1..0000000000 --- a/meta-python/recipes-devtools/python/python-grpcio-tools.inc +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "Google gRPC tools" -HOMEPAGE = "http://www.grpc.io/" -SECTION = "devel/python" - -DEPENDS_append = " ${PYTHON_PN}-grpcio" -RDEPENDS_${PN} = "${PYTHON_PN}-grpcio" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=7145f7cdd263359b62d342a02f005515" - -inherit pypi - -SRC_URI[md5sum] = "b2fabfb54c7824c1e49a02de2aa6628e" -SRC_URI[sha256sum] = "4ce5aa660d7884f23aac1eafa93b97a4c3e2b512edff871e91fdb6ee86ebd5ea" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta-python/recipes-devtools/python/python3-grpcio-tools/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch b/meta-python/recipes-devtools/python/python3-grpcio-tools/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch new file mode 100644 index 0000000000..aef67b5748 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-grpcio-tools/0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch @@ -0,0 +1,58 @@ +From 9b2f1d400db8b8d0045f5a58a748a2dc52b5c9ef Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 17 Feb 2021 13:38:55 -0800 +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 + +Keep '-std=c++11' to fix native build error +with old gcc (such as gcc 5.4.0 on ubuntu 16.04), for clang +we will remove them through GRPC_PYTHON_CFLAGS at do_compile +in bb recipe. + +While export CC="gcc ", cc_args is None, it will +cause subprocess.Popen always return 1. On centos 8, if you don't +install package libatomic, there will be a native build error +`cannot find /usr/lib64/libatomic.so.1.2.0'. + +Add no harm '-g' to cc_args if cc_args is empty. + +Upstream-Status: Inappropriate [oe specific] + +Signed-off-by: Khem Raj +--- + setup.py | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/setup.py b/setup.py +index a316038..70aa174 100644 +--- a/setup.py ++++ b/setup.py +@@ -76,8 +76,11 @@ def check_linker_need_libatomic(): + """Test if linker on system needs libatomic.""" + code_test = (b'#include \n' + + b'int main() { return std::atomic{}; }') +- cxx = os.environ.get('CXX', 'c++') +- cpp_test = subprocess.Popen([cxx, '-x', 'c++', '-std=c++11', '-'], ++ cxx, cxx_args = os.environ.get('CXX').split(' ', 1) or 'c++' ++ if not cxx_args: ++ cxx_args = "-g" ++ ++ cpp_test = subprocess.Popen([cxx, cxx_args, '-x', 'c++', '-std=c++11', '-'], + stdin=PIPE, + stdout=PIPE, + stderr=PIPE) +@@ -87,7 +90,7 @@ def check_linker_need_libatomic(): + # Double-check to see if -latomic actually can solve the problem. + # https://github.com/grpc/grpc/issues/22491 + cpp_test = subprocess.Popen( +- [cxx, '-x', 'c++', '-std=c++11', '-latomic', '-'], ++ [cxx, cxx_args, '-x', 'c++', '-std=c++11', '-latomic', '-'], + stdin=PIPE, + stdout=PIPE, + stderr=PIPE) +-- +2.30.1 + diff --git a/meta-python/recipes-devtools/python/python3-grpcio-tools_1.14.1.bb b/meta-python/recipes-devtools/python/python3-grpcio-tools_1.14.1.bb deleted file mode 100644 index 2da1a4df03..0000000000 --- a/meta-python/recipes-devtools/python/python3-grpcio-tools_1.14.1.bb +++ /dev/null @@ -1,2 +0,0 @@ -inherit setuptools3 -require python-grpcio-tools.inc diff --git a/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb b/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb new file mode 100644 index 0000000000..12b00cfa3f --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-grpcio-tools_1.35.0.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "Google gRPC tools" +HOMEPAGE = "http://www.grpc.io/" +SECTION = "devel/python" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=7145f7cdd263359b62d342a02f005515" + +inherit pypi setuptools3 + +DEPENDS += "${PYTHON_PN}-grpcio" + +SRC_URI += "file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch" + +SRC_URI[sha256sum] = "9e2a41cba9c5a20ae299d0fdd377fe231434fa04cbfbfb3807293c6ec10b03cf" + +RDEPENDS_${PN} = "${PYTHON_PN}-grpcio" + +BBCLASSEXTEND = "native nativesdk" -- cgit v1.2.3-54-g00ecf