blob: cc8c975c82be946edc2be9027eaf4daaf7a59ceb [file] [log] [blame]
# Copyright 2017 The Chromium OS Authors. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=5
PYTHON_COMPAT=( python2_7 python3_{4,5} )
inherit python-r1 toolchain-funcs multilib flag-o-matic
DESCRIPTION="Modern open source high performance RPC framework"
HOMEPAGE="http://www.grpc.io"
SRC_URI="https://github.com/grpc/grpc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="*"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="
>=dev-libs/openssl-1.0.2
>=dev-libs/protobuf-3:=
net-dns/c-ares
sys-libs/zlib"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}/0001-${P}-Fix-incorrect-sonames-and-library-path.patch"
"${FILESDIR}/0002-${P}-Fix-cross-compiling.patch"
"${FILESDIR}/0003-${P}-Fix-unsecure-.pc-files.patch"
"${FILESDIR}/0004-${P}-Support-vsock.patch"
"${FILESDIR}/0005-${P}-Don-t-run-ldconfig.patch"
"${FILESDIR}/0006-${P}-unused-variable.patch"
)
src_prepare() {
epatch "${PATCHES[@]}"
}
src_compile() {
tc-export CC CXX PKG_CONFIG
# Add "-Wno-sign-conversion" to CFLAGS, until
# https://github.com/grpc/grpc/issues/13597 gets fixed.
append-flags -Wno-sign-conversion
emake \
V=1 \
prefix=/usr \
AR="$(tc-getAR)" \
AROPTS="rcs" \
CFLAGS="${CFLAGS}" \
LD="${CC}" \
LDXX="${CXX}" \
STRIP=true \
HOST_CC="$(tc-getBUILD_CC)" \
HOST_CXX="$(tc-getBUILD_CXX)" \
HOST_LD="$(tc-getBUILD_CC)" \
HOST_LDXX="$(tc-getBUILD_CXX)" \
HOST_AR="$(tc-getBUILD_AR)"
}
src_install() {
emake \
prefix="${D}"/usr \
INSTALL_LIBDIR="$(get_libdir)" \
STRIP=true \
install
}