net-libs/ngtcp2: Implementation of the IETF QUIC Protocol
authorCraig Andrews <candrews@gentoo.org>
Fri, 13 Sep 2019 15:53:06 +0000 (11:53 -0400)
committerCraig Andrews <candrews@gentoo.org>
Fri, 13 Sep 2019 20:38:05 +0000 (16:38 -0400)
Closes: https://bugs.gentoo.org/694306
Package-Manager: Portage-2.3.76, Repoman-2.3.17
Signed-off-by: Craig Andrews <candrews@gentoo.org>
net-libs/ngtcp2/Manifest [new file with mode: 0644]
net-libs/ngtcp2/metadata.xml [new file with mode: 0644]
net-libs/ngtcp2/ngtcp2-0_pre20190912.ebuild [new file with mode: 0644]
net-libs/ngtcp2/ngtcp2-9999.ebuild [new file with mode: 0644]
profiles/base/package.use.mask

diff --git a/net-libs/ngtcp2/Manifest b/net-libs/ngtcp2/Manifest
new file mode 100644 (file)
index 0000000..736d30a
--- /dev/null
@@ -0,0 +1 @@
+DIST ngtcp2-0_pre20190912.tar.gz 302984 BLAKE2B 906b248b0c19395288ed2c5ad55c8d42a9df9d76458104785c1013b9ebfaf1b92a4b87ced8755377fcb627018cf8854be0e4687e4c8a23ae994e5a21f466f739 SHA512 91b93575143960af421e8bd37d686602905fa3093750cfbbe3af1b20d743318281d22162676dc451562768ca08b6d0767b1dc28f3f8f6733235ebd76015a05bb
diff --git a/net-libs/ngtcp2/metadata.xml b/net-libs/ngtcp2/metadata.xml
new file mode 100644 (file)
index 0000000..d47d5fa
--- /dev/null
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+       <maintainer type="person">
+               <email>candrews@integralblue.com</email>
+               <name>Craig Andrews</name>
+       </maintainer>
+       <upstream>
+               <remote-id type="github">ngtcp2/ngtcp2</remote-id>
+       </upstream>
+</pkgmetadata>
diff --git a/net-libs/ngtcp2/ngtcp2-0_pre20190912.ebuild b/net-libs/ngtcp2/ngtcp2-0_pre20190912.ebuild
new file mode 100644 (file)
index 0000000..a660182
--- /dev/null
@@ -0,0 +1,42 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-multilib
+
+if [[ ${PV} == 9999 ]] ; then
+       EGIT_REPO_URI="https://github.com/ngtcp2/ngtcp2.git"
+       inherit autotools git-r3
+else
+       GIT_COMMIT="5122d9e5e1e91c718ebc3933252ee42522c6e942"
+       SRC_URI="https://github.com/ngtcp2/ngtcp2/archive/${GIT_COMMIT}.tar.gz -> ${P}.tar.gz"
+       S="${WORKDIR}/${PN}-${GIT_COMMIT}"
+       KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="Implementation of the IETF QUIC Protocol"
+HOMEPAGE="https://github.com/ngtcp2/ngtcp2/"
+
+LICENSE="MIT"
+SLOT="0/0"
+IUSE="ssl test"
+
+BDEPEND="virtual/pkgconfig"
+DEPEND="ssl? ( >=dev-libs/openssl-1.1.1:0= )
+       test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )"
+RDEPEND=""
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_DISABLE_FIND_PACKAGE_OpenSSL=$(usex !ssl)
+               -DCMAKE_DISABLE_FIND_PACKAGE_Libev=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_Libnghttp3=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_CUnit=$(usex !test)
+       )
+       cmake-utils_src_configure
+}
+
+multilib_src_test() {
+       cmake-utils_src_make check
+}
diff --git a/net-libs/ngtcp2/ngtcp2-9999.ebuild b/net-libs/ngtcp2/ngtcp2-9999.ebuild
new file mode 100644 (file)
index 0000000..32d61da
--- /dev/null
@@ -0,0 +1,40 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake-multilib
+
+if [[ ${PV} == 9999 ]] ; then
+       EGIT_REPO_URI="https://github.com/ngtcp2/ngtcp2.git"
+       inherit autotools git-r3
+else
+       SRC_URI="https://github.com/ngtcp2/ngtcp2/releases/download/v${PV}/${P}.tar.xz"
+       KEYWORDS="~amd64"
+fi
+
+DESCRIPTION="Implementation of the IETF QUIC Protocol"
+HOMEPAGE="https://github.com/ngtcp2/ngtcp2/"
+
+LICENSE="MIT"
+SLOT="0/0"
+IUSE="ssl test"
+
+BDEPEND="virtual/pkgconfig"
+DEPEND="ssl? ( >=dev-libs/openssl-1.1.1:0= )
+       test? ( >=dev-util/cunit-2.1[${MULTILIB_USEDEP}] )"
+RDEPEND=""
+
+multilib_src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_DISABLE_FIND_PACKAGE_OpenSSL=$(usex !ssl)
+               -DCMAKE_DISABLE_FIND_PACKAGE_Libev=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_Libnghttp3=ON
+               -DCMAKE_DISABLE_FIND_PACKAGE_CUnit=$(usex !test)
+       )
+       cmake-utils_src_configure
+}
+
+multilib_src_test() {
+       cmake-utils_src_make check
+}
index 83f2781aa51a5f16f93ca15da20cbb7e3a737762..bb2dc3c56112d722dc2fee434489b3cc53da3a13 100644 (file)
@@ -7,6 +7,11 @@
 # This file is only for generic masks. For arch-specific masks (i.e.
 # mask everywhere, unmask on arch/*) use arch/base.
 
+# Craig Andrews <candrews@gentoo.org> (2019-09-12)
+# OpenSSL (as of version 1.1.1) doesn't have APIs for QUIC support
+# see https://github.com/openssl/openssl/pull/8797
+net-libs/ngtcp2 ssl
+
 # Michał Górny <mgorny@gentoo.org> (2019-09-08)
 # LLVM 5 is being removed.
 ~dev-ada/gps-2018 gnat_2017