| 1 | TERMUX_PKG_HOMEPAGE=https://grpc.io/ |
| 2 | TERMUX_PKG_DESCRIPTION="High performance, open source, general RPC framework that puts mobile and HTTP/2 first" |
| 3 | TERMUX_PKG_VERSION=1.4.2 |
| 4 | TERMUX_PKG_SHA256=268481b9cd09aaa0758fcd14236537cbd3ebcd637f43150fdf7937582f2dc4dc |
| 5 | TERMUX_PKG_MAINTAINER="Vishal Biswas @vishalbiswas" |
| 6 | TERMUX_PKG_SRCURL=https://github.com/grpc/grpc/archive/v$TERMUX_PKG_VERSION.tar.gz |
| 7 | TERMUX_PKG_DEPENDS="openssl, protobuf, c-ares" |
| 8 | TERMUX_PKG_FOLDERNAME=grpc-$TERMUX_PKG_VERSION |
| 9 | TERMUX_PKG_HOSTBUILD=true |
| 10 | TERMUX_PKG_KEEP_STATIC_LIBRARIES=true |
| 11 | TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" |
| 12 | -DgRPC_CARES_PROVIDER=package |
| 13 | -DgRPC_PROTOBUF_PROVIDER=package |
| 14 | -DgRPC_SSL_PROVIDER=package |
| 15 | -DgRPC_ZLIB_PROVIDER=package |
| 16 | -D_gRPC_PROTOBUF_PROTOC=$TERMUX_TOPDIR/libprotobuf/host-build/src/protoc |
| 17 | " |
| 18 | |
| 19 | termux_step_host_build () { |
| 20 | termux_setup_cmake |
| 21 | local protoinstall=$TERMUX_TOPDIR/libprotobuf/host-build/install |
| 22 | cmake $TERMUX_PKG_SRCDIR -G "Unix Makefiles" \ |
| 23 | $TERMUX_PKG_EXTRA_CONFIGURE_ARGS \ |
| 24 | -DCMAKE_CXX_FLAGS="-I$protoinstall/include -L$protoinstall/lib" \ |
| 25 | -D_gRPC_PROTOBUF_LIBRARIES="-lprotobuf -lprotoc" |
| 26 | make -j $TERMUX_MAKE_PROCESSES grpc_cpp_plugin |
| 27 | } |
| 28 | |
| 29 | termux_step_pre_configure () { |
| 30 | sed "s|@PATH_TO_PLUGIN@|$TERMUX_PKG_HOSTBUILD_DIR/grpc_cpp_plugin|g" $TERMUX_PKG_BUILDER_DIR/CMakeLists.txt.diff | patch -p1 |
| 31 | |
| 32 | export GRPC_CROSS_COMPILE=true |
| 33 | LDFLAGS="$LDFLAGS -lprotobuf -lprotoc -lcares -llog -lz" |
| 34 | } |