From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 971F2138334 for ; Sat, 30 Nov 2019 04:27:19 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id A2F16E088C; Sat, 30 Nov 2019 04:27:17 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 7A69BE088C for ; Sat, 30 Nov 2019 04:27:17 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id ED35A34D5B6 for ; Sat, 30 Nov 2019 04:27:15 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 96FC0824 for ; Sat, 30 Nov 2019 04:27:13 +0000 (UTC) From: "Craig Andrews" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Craig Andrews" Message-ID: <1575088025.281acf551568db9d5fe62051b5d3b445f7ca38c9.candrews@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/quiche/ X-VCS-Repository: repo/gentoo X-VCS-Files: net-libs/quiche/quiche-0.1.0-r1.ebuild net-libs/quiche/quiche-9999.ebuild X-VCS-Directories: net-libs/quiche/ X-VCS-Committer: candrews X-VCS-Committer-Name: Craig Andrews X-VCS-Revision: 281acf551568db9d5fe62051b5d3b445f7ca38c9 X-VCS-Branch: master Date: Sat, 30 Nov 2019 04:27:13 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: f52552d0-855d-4f3b-b6c2-2ba3a0bf064e X-Archives-Hash: 5e1c5acc7ebd3033a9f7b8a79a384dfa commit: 281acf551568db9d5fe62051b5d3b445f7ca38c9 Author: Craig Andrews gentoo org> AuthorDate: Sat Nov 30 04:23:44 2019 +0000 Commit: Craig Andrews gentoo org> CommitDate: Sat Nov 30 04:27:05 2019 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=281acf55 net-libs/quiche: Fix multilib * Depend on multilib rust, doesn't support rust-bin, see: https://bugs.gentoo.org/701362 * Pass --target to cargo * Build boringssl separately because cargo doesn't cross compile correctly, see: https://github.com/cloudflare/quiche/issues/277 Closes: https://bugs.gentoo.org/701346 Package-Manager: Portage-2.3.80, Repoman-2.3.19 Signed-off-by: Craig Andrews gentoo.org> .../{quiche-9999.ebuild => quiche-0.1.0-r1.ebuild} | 55 +++++++++++++--------- net-libs/quiche/quiche-9999.ebuild | 25 +++++++--- 2 files changed, 53 insertions(+), 27 deletions(-) diff --git a/net-libs/quiche/quiche-9999.ebuild b/net-libs/quiche/quiche-0.1.0-r1.ebuild similarity index 73% copy from net-libs/quiche/quiche-9999.ebuild copy to net-libs/quiche/quiche-0.1.0-r1.ebuild index 3fad3c0e9a3..53701ea9f16 100644 --- a/net-libs/quiche/quiche-9999.ebuild +++ b/net-libs/quiche/quiche-0.1.0-r1.ebuild @@ -8,15 +8,15 @@ aho-corasick-0.7.6 arrayvec-0.4.11 atty-0.2.13 autocfg-0.1.6 -backtrace-0.3.37 +backtrace-0.3.38 backtrace-sys-0.1.31 -bitflags-1.1.0 +bitflags-1.2.0 bstr-0.2.8 bumpalo-2.6.0 byteorder-1.3.2 cast-0.2.2 cc-1.0.45 -cfg-if-0.1.9 +cfg-if-0.1.10 clap-2.33.0 cmake-0.1.42 criterion-0.3.0 @@ -28,7 +28,7 @@ crossbeam-utils-0.6.6 csv-1.1.1 csv-core-0.1.6 docopt-1.1.0 -either-1.5.2 +either-1.5.3 env_logger-0.6.2 failure-0.1.5 failure_derive-0.1.5 @@ -41,7 +41,7 @@ idna-0.1.5 iovec-0.1.2 itertools-0.8.0 itoa-0.4.4 -js-sys-0.3.27 +js-sys-0.3.28 kernel32-sys-0.2.2 lazy_static-1.4.0 libc-0.2.62 @@ -58,7 +58,7 @@ num-traits-0.2.8 num_cpus-1.10.1 percent-encoding-1.0.1 proc-macro2-0.4.30 -proc-macro2-1.0.3 +proc-macro2-1.0.4 quick-error-1.2.2 quote-0.6.13 quote-1.0.2 @@ -78,8 +78,8 @@ same-file-1.0.5 scopeguard-1.0.0 semver-0.9.0 semver-parser-0.7.0 -serde-1.0.100 -serde_derive-1.0.100 +serde-1.0.101 +serde_derive-1.0.101 serde_json-1.0.40 slab-0.4.2 smallvec-0.6.10 @@ -104,13 +104,13 @@ url-1.7.2 version_check-0.1.5 walkdir-2.2.9 wasi-0.7.0 -wasm-bindgen-0.2.50 -wasm-bindgen-backend-0.2.50 -wasm-bindgen-macro-0.2.50 -wasm-bindgen-macro-support-0.2.50 -wasm-bindgen-shared-0.2.50 -wasm-bindgen-webidl-0.2.50 -web-sys-0.3.27 +wasm-bindgen-0.2.51 +wasm-bindgen-backend-0.2.51 +wasm-bindgen-macro-0.2.51 +wasm-bindgen-macro-support-0.2.51 +wasm-bindgen-shared-0.2.51 +wasm-bindgen-webidl-0.2.51 +web-sys-0.3.28 weedle-0.10.0 winapi-0.2.8 winapi-0.3.8 @@ -122,7 +122,7 @@ wincolor-1.0.2 ws2_32-sys-0.2.1 " -inherit cargo multilib-minimal +inherit cargo cmake-utils flag-o-matic multilib-minimal rust-toolchain DESCRIPTION="Implementation of the QUIC transport protocol and HTTP/3" HOMEPAGE="https://github.com/cloudflare/quiche" @@ -133,7 +133,7 @@ if [[ ${PV} == *9999 ]] ; then else CRATES+=" ${P//_/-}" SRC_URI="$(cargo_crate_uris ${CRATES})" - KEYWORDS="~amd64" + KEYWORDS="~amd64 ~arm64" S="${WORKDIR}/${P//_/-}" fi @@ -151,13 +151,15 @@ IUSE="" DOCS=( CODEOWNERS COPYING README.md ) BDEPEND=" - >=virtual/rust-1.39.0 + >=dev-lang/rust-1.38.0[${MULTILIB_USEDEP}] dev-util/cmake dev-lang/go " DEPEND="" RDEPEND="" +CMAKE_USE_DIR="${S}/deps/boringssl" + src_unpack() { if [[ "${PV}" == *9999* ]]; then git-r3_src_unpack @@ -170,15 +172,26 @@ src_unpack() { src_prepare(){ default + cmake-utils_src_prepare multilib_copy_sources } +multilib_src_configure(){ + append-flags "-fPIC" + local mycmakeargs=( + -DOPENSSL_NO_ASM=ON + -DBUILD_SHARED_LIBS=OFF + ) + BUILD_DIR="${BUILD_DIR}/deps/boringssl/build" cmake-utils_src_configure +} + multilib_src_compile(){ - cargo_src_compile --features pkg-config-meta + BUILD_DIR="${BUILD_DIR}/deps/boringssl/build" cmake-utils_src_compile bssl + QUICHE_BSSL_PATH="${BUILD_DIR}/deps/boringssl" cargo_src_compile --features pkg-config-meta --target="$(rust_abi)" } multilib_src_test(){ - cargo_src_test + QUICHE_BSSL_PATH="${BUILD_DIR}/deps/boringssl" cargo_src_test --target="$(rust_abi)" } multilib_src_install() { @@ -186,5 +199,5 @@ multilib_src_install() { insinto "/usr/$(get_libdir)/pkgconfig" doins target/release/quiche.pc doheader -r include/* - dolib.so target/release/libquiche.so + dolib.so "target/$(rust_abi)/release/libquiche.so" } diff --git a/net-libs/quiche/quiche-9999.ebuild b/net-libs/quiche/quiche-9999.ebuild index 3fad3c0e9a3..9c8f1748e85 100644 --- a/net-libs/quiche/quiche-9999.ebuild +++ b/net-libs/quiche/quiche-9999.ebuild @@ -122,7 +122,7 @@ wincolor-1.0.2 ws2_32-sys-0.2.1 " -inherit cargo multilib-minimal +inherit cargo cmake-utils flag-o-matic multilib-minimal rust-toolchain DESCRIPTION="Implementation of the QUIC transport protocol and HTTP/3" HOMEPAGE="https://github.com/cloudflare/quiche" @@ -133,7 +133,7 @@ if [[ ${PV} == *9999 ]] ; then else CRATES+=" ${P//_/-}" SRC_URI="$(cargo_crate_uris ${CRATES})" - KEYWORDS="~amd64" + KEYWORDS="~amd64 ~arm64" S="${WORKDIR}/${P//_/-}" fi @@ -151,13 +151,15 @@ IUSE="" DOCS=( CODEOWNERS COPYING README.md ) BDEPEND=" - >=virtual/rust-1.39.0 + >=dev-lang/rust-1.38.0[${MULTILIB_USEDEP}] dev-util/cmake dev-lang/go " DEPEND="" RDEPEND="" +CMAKE_USE_DIR="${S}/deps/boringssl" + src_unpack() { if [[ "${PV}" == *9999* ]]; then git-r3_src_unpack @@ -170,15 +172,26 @@ src_unpack() { src_prepare(){ default + cmake-utils_src_prepare multilib_copy_sources } +multilib_src_configure(){ + append-flags "-fPIC" + local mycmakeargs=( + -DOPENSSL_NO_ASM=ON + -DBUILD_SHARED_LIBS=OFF + ) + BUILD_DIR="${BUILD_DIR}/deps/boringssl/build" cmake-utils_src_configure +} + multilib_src_compile(){ - cargo_src_compile --features pkg-config-meta + BUILD_DIR="${BUILD_DIR}/deps/boringssl/build" cmake-utils_src_compile bssl + QUICHE_BSSL_PATH="${BUILD_DIR}/deps/boringssl" cargo_src_compile --features pkg-config-meta --target="$(rust_abi)" } multilib_src_test(){ - cargo_src_test + QUICHE_BSSL_PATH="${BUILD_DIR}/deps/boringssl" cargo_src_test --target="$(rust_abi)" } multilib_src_install() { @@ -186,5 +199,5 @@ multilib_src_install() { insinto "/usr/$(get_libdir)/pkgconfig" doins target/release/quiche.pc doheader -r include/* - dolib.so target/release/libquiche.so + dolib.so "target/$(rust_abi)/release/libquiche.so" }