1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
33 fuchsia-zircon-sys-0.3.3
54 percent-encoding-1.0.1
80 unicode-normalization-0.1.12
88 wasm-bindgen-backend-0.2.59
89 wasm-bindgen-macro-0.2.59
90 wasm-bindgen-macro-support-0.2.59
91 wasm-bindgen-shared-0.2.59
92 wasm-bindgen-webidl-0.2.59
97 winapi-i686-pc-windows-gnu-0.4.0
99 winapi-x86_64-pc-windows-gnu-0.4.0
103 inherit cargo cmake-utils flag-o-matic multilib-minimal rust-toolchain
105 DESCRIPTION="Implementation of the QUIC transport protocol and HTTP/3"
106 HOMEPAGE="https://github.com/cloudflare/quiche"
108 if [[ ${PV} == *9999 ]] ; then
109 EGIT_REPO_URI="https://github.com/cloudflare/${PN}.git"
113 SRC_URI="$(cargo_crate_uris ${CRATES})"
114 KEYWORDS="~amd64 ~arm64 ~x86"
115 S="${WORKDIR}/${P//_/-}"
118 LICENSE="|| ( Apache-2.0 Boost-1.0 )
119 || ( Apache-2.0 MIT )
120 || ( Apache-2.0-with-LLVM-exceptions Apache-2.0 MIT )
129 DOCS=( CODEOWNERS COPYING README.md )
132 >=virtual/rust-1.39.0[${MULTILIB_USEDEP}]
140 CMAKE_USE_DIR="${S}/deps/boringssl"
143 if [[ "${PV}" == *9999* ]]; then
145 cargo_live_src_unpack
148 tar -xf "${DISTDIR}/${P//_/-}.crate" -C "${WORKDIR}" || die
154 cmake-utils_src_prepare
155 multilib_copy_sources
158 multilib_src_configure() {
162 -DBUILD_SHARED_LIBS=OFF
164 BUILD_DIR="${BUILD_DIR}/deps/boringssl/build" cmake-utils_src_configure
167 multilib_src_compile() {
168 BUILD_DIR="${BUILD_DIR}/deps/boringssl/build" cmake-utils_src_compile bssl
169 QUICHE_BSSL_PATH="${BUILD_DIR}/deps/boringssl" cargo_src_compile --features pkg-config-meta --target="$(rust_abi)"
172 multilib_src_test() {
173 QUICHE_BSSL_PATH="${BUILD_DIR}/deps/boringssl" cargo_src_test --target="$(rust_abi)"
176 multilib_src_install() {
177 sed -i -e "s:libdir=.\+:libdir=${EPREFIX}/usr/$(get_libdir):" -e "s:includedir=.\+:includedir=${EPREFIX}/usr/include:" target/release/quiche.pc || die
178 insinto "/usr/$(get_libdir)/pkgconfig"
179 doins target/release/quiche.pc
180 doheader -r include/*
181 dolib.so "target/$(rust_abi)/release/libquiche.so"