diff --git a/community/grpc/PKGBUILD b/community/grpc/PKGBUILD deleted file mode 100644 index dd1dab17f..000000000 --- a/community/grpc/PKGBUILD +++ /dev/null @@ -1,184 +0,0 @@ -# Maintainer: Massimiliano Torromeo -# Contributor: Aleksey Filippov -# Contributor: Victor Aurélio Santos - -# ALARM: Kevin Mihelich -# - explicitly link v5/v6 with libatomic - -pkgbase='grpc' -pkgname=('grpc' 'python-grpcio' 'php-grpc' 'php7-grpc' 'grpc-cli') -pkgver=1.43.2 -_gtestver=c9ccac7cb7345901884aabf5d1a786cfa6e2f397 -pkgrel=1 -pkgdesc="High performance, open source, general RPC framework that puts mobile and HTTP/2 first." -arch=('x86_64') -url='https://grpc.io' -license=('BSD') -makedepends=('re2' 're2c' 'protobuf' 'php' 'php7' 'c-ares' 'openssl' 'chrpath' 'cython' - 'cmake' 'benchmark' 'python-setuptools' 'abseil-cpp' 'ninja') -checkdepends=('python-six') -source=("https://github.com/grpc/grpc/archive/v$pkgver/$pkgbase-$pkgver.tar.gz" - "https://github.com/google/googletest/archive/$_gtestver/googletest-$_gtestver.tar.gz" - "python-grpcio-use-system-abseil.patch") -sha256sums=('b74ce7d26fe187970d1d8e2c06a5d3391122f7bc1fdce569aff5e435fb8fe780' - '443d383db648ebb8e391382c0ab63263b7091d03197f304390baac10f178a468' - '3cfb289266f9d2697b917e4400f18a6592f95a99e658e401c1332870b219358b') - -prepare() { - cd "$srcdir/$pkgbase-$pkgver" - patch -Np1 -i ../python-grpcio-use-system-abseil.patch - - ln -sf "$srcdir/googletest-$_gtestver/"{googlemock,googletest} \ - third_party/googletest - - cp -a src/php{,7} - - if [[ $CARCH == "armv6h" || $CARCH == "arm" ]]; then - sed -i -e "s/set(_gRPC_ALLTARGETS_LIBRARIES \${CMAKE_DL_LIBS} rt m pthread)/set(_gRPC_ALLTARGETS_LIBRARIES \${CMAKE_DL_LIBS} atomic rt m pthread)/g" CMakeLists.txt - fi - - cmake -Bbuild \ - -DCMAKE_BUILD_TYPE=None \ - -DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG" \ - -DgRPC_INSTALL=ON \ - -DBUILD_SHARED_LIBS=ON \ - -DCMAKE_CXX_STANDARD=17 \ - -DCMAKE_SKIP_INSTALL_RPATH=ON \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DgRPC_BUILD_TESTS=ON \ - -DgRPC_BUILD_CODEGEN=ON \ - -DgRPC_BUILD_CSHARP_EXT=ON \ - -DgRPC_BACKWARDS_COMPATIBILITY_MODE=OFF \ - -DgRPC_ZLIB_PROVIDER='package' \ - -DgRPC_CARES_PROVIDER='package' \ - -DgRPC_RE2_PROVIDER='package' \ - -DgRPC_SSL_PROVIDER='package' \ - -DgRPC_PROTOBUF_PROVIDER='package' \ - -DgRPC_PROTOBUF_PACKAGE_TYPE='MODULE' \ - -DgRPC_BENCHMARK_PROVIDER:STRING='package' \ - -DgRPC_ABSL_PROVIDER:STRING='package' \ - -DgRPC_USE_PROTO_LITE=OFF \ - -DgRPC_BUILD_GRPC_CPP_PLUGIN=ON \ - -DgRPC_BUILD_GRPC_CSHARP_PLUGIN=ON \ - -DgRPC_BUILD_GRPC_NODE_PLUGIN=ON \ - -DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=ON \ - -DgRPC_BUILD_GRPC_PHP_PLUGIN=ON \ - -DgRPC_BUILD_GRPC_PYTHON_PLUGIN=ON \ - -DgRPC_BUILD_GRPC_RUBY_PLUGIN=ON \ - -GNinja -} - -build() { - cd "$srcdir/$pkgbase-$pkgver/build" - - cmake --build . - export LDFLAGS="$LDFLAGS -L$PWD" - - # PHP - cd "$srcdir/$pkgbase-$pkgver/src/php/ext/$pkgbase" - phpize - ./configure --enable-grpc="$srcdir/$pkgbase-$pkgver" - make - - # PHP7 - cd "$srcdir/$pkgbase-$pkgver/src/php7/ext/$pkgbase" - phpize7 - ./configure --enable-grpc="$srcdir/$pkgbase-$pkgver" - make - - # Python - cd "$srcdir/$pkgbase-$pkgver" - GRPC_PYTHON_CFLAGS="-fvisibility=hidden -fno-wrapv -fno-exceptions $(pkg-config --cflags protobuf) -std=c++17" \ - GRPC_PYTHON_LDFLAGS="$(pkg-config --libs protobuf)" \ - GRPC_PYTHON_BUILD_WITH_CYTHON=1 \ - GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=1 \ - GRPC_PYTHON_BUILD_SYSTEM_ZLIB=1 \ - GRPC_PYTHON_BUILD_SYSTEM_CARES=1 \ - GRPC_PYTHON_BUILD_SYSTEM_RE2=1 \ - GRPC_PYTHON_BUILD_SYSTEM_ABSL=1 \ - GRPC_BUILD_WITH_BORING_SSL_ASM=0 \ - python setup.py build -} - -check() { - cd "$srcdir/$pkgbase-$pkgver" - local _pyver=$(python -c "import sys; print('{0}.{1}'.format(*sys.version_info[:2]))") - PYTHONPATH="python_build/lib.linux-$CARCH-$_pyver" python -c 'import grpc' -} - -package_grpc() { - depends=('c-ares' 'protobuf' 'openssl' 're2' 'abseil-cpp') - provides=( - 'libupb.so' - 'libgrpcpp_channelz.so' - 'libgrpc_unsecure.so' - 'libgrpc_plugin_support.so' - 'libgrpc.so' - 'libgrpc++_unsecure.so' - 'libgrpc++_reflection.so' - 'libgrpc++_error_details.so' - 'libgrpc++_alts.so' - 'libgrpc++.so' - 'libgpr.so' - 'libaddress_sorting.so' - ) - - cd "$srcdir/$pkgbase-$pkgver/build" - DESTDIR="$pkgdir" cmake --install . - install -Dm644 ../LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE -} - -package_python-grpcio() { - pkgdesc='Python language bindings for grpc, remote procedure call (RPC) framework' - depends=('c-ares' 'python' 'python-six' 're2' 'abseil-cpp') - - cd "$srcdir/$pkgbase-$pkgver" - python setup.py install -O1 --skip-build --root="$pkgdir" - install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE -} - -package_php-grpc() { - pkgdesc='gRPC module for PHP' - depends=('grpc' 'php') - backup=('etc/php/conf.d/grpc.ini') - - # Install PHP extension. - cd "$srcdir/$pkgbase-$pkgver/src/php/ext/$pkgbase" - make install "INSTALL_ROOT=$pkgdir" - install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE - - # Remove RPATH - chrpath -d "$pkgdir/usr/lib/php/modules/grpc.so" - - echo ';extension=grpc.so' >grpc.ini - install -Dm644 grpc.ini "$pkgdir/etc/php/conf.d/grpc.ini" -} - -package_php7-grpc() { - pkgdesc='gRPC module for PHP' - depends=('grpc' 'php7') - backup=('etc/php7/conf.d/grpc.ini') - - # Install PHP extension. - cd "$srcdir/$pkgbase-$pkgver/src/php7/ext/$pkgbase" - make install "INSTALL_ROOT=$pkgdir" - install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE - - # Remove RPATH - chrpath -d "$pkgdir/usr/lib/php7/modules/grpc.so" - - echo ';extension=grpc.so' >grpc.ini - install -Dm644 grpc.ini "$pkgdir/etc/php7/conf.d/grpc.ini" -} - -package_grpc-cli() { - pkgdesc='gRPC protocol buffers cli' - depends=('grpc') - - cd "$srcdir/$pkgbase-$pkgver" - install -dm0755 "$pkgdir/usr/lib" - cp -a build/libgrpc++_test_config.so* "$pkgdir/usr/lib/" - - install -Dm0755 build/grpc_cli "$pkgdir/usr/bin/grpc_cli" - install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE -} diff --git a/community/grpc/python-grpcio-use-system-abseil.patch b/community/grpc/python-grpcio-use-system-abseil.patch deleted file mode 100644 index 0c8388d29..000000000 --- a/community/grpc/python-grpcio-use-system-abseil.patch +++ /dev/null @@ -1,46 +0,0 @@ -diff --git a/setup.py b/setup.py -index 4d34c43..5826663 100644 ---- a/setup.py -+++ b/setup.py -@@ -29,6 +29,7 @@ from distutils import extension as _extension - from distutils import util - import os - import os.path -+import pathlib - import platform - import re - import shlex -@@ -155,6 +156,11 @@ BUILD_WITH_SYSTEM_CARES = _env_bool_value('GRPC_PYTHON_BUILD_SYSTEM_CARES', - # runtime, the shared library must be installed - BUILD_WITH_SYSTEM_RE2 = _env_bool_value('GRPC_PYTHON_BUILD_SYSTEM_RE2', 'False') - -+# Export this variable to use the system installation of abseil. You need to -+# have the header files installed (in /usr/include/absl) and during -+# runtime, the shared library must be installed -+BUILD_WITH_SYSTEM_ABSL = os.environ.get('GRPC_PYTHON_BUILD_SYSTEM_ABSL', False) -+ - # Export this variable to force building the python extension with a statically linked libstdc++. - # At least on linux, this is normally not needed as we can build manylinux-compatible wheels on linux just fine - # without statically linking libstdc++ (which leads to a slight increase in the wheel size). -@@ -297,6 +303,10 @@ if BUILD_WITH_SYSTEM_RE2: - CORE_C_FILES = filter(lambda x: 'third_party/re2' not in x, CORE_C_FILES) - RE2_INCLUDE = (os.path.join('/usr', 'include', 're2'),) - -+if BUILD_WITH_SYSTEM_ABSL: -+ CORE_C_FILES = filter(lambda x: 'third_party/abseil-cpp' not in x, CORE_C_FILES) -+ ABSL_INCLUDE = (os.path.join('/usr', 'include'),) -+ - EXTENSION_INCLUDE_DIRECTORIES = ((PYTHON_STEM,) + CORE_INCLUDE + ABSL_INCLUDE + - ADDRESS_SORTING_INCLUDE + CARES_INCLUDE + - RE2_INCLUDE + SSL_INCLUDE + UPB_INCLUDE + -@@ -326,6 +336,10 @@ if BUILD_WITH_SYSTEM_CARES: - EXTENSION_LIBRARIES += ('cares',) - if BUILD_WITH_SYSTEM_RE2: - EXTENSION_LIBRARIES += ('re2',) -+if BUILD_WITH_SYSTEM_ABSL: -+ EXTENSION_LIBRARIES += tuple( -+ lib.stem[3:] for lib in pathlib.Path('/usr').glob('lib*/libabsl_*.so') -+ ) - - DEFINE_MACROS = (('_WIN32_WINNT', 0x600),) - asm_files = []