public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/proj/guru:dev commit in: net-libs/picotls/files/, net-libs/picotls/
@ 2022-09-03  4:33 Aisha Tammy
  0 siblings, 0 replies; only message in thread
From: Aisha Tammy @ 2022-09-03  4:33 UTC (permalink / raw
  To: gentoo-commits

commit:     35d4b669edb6a86c9288f043e579003cd353a314
Author:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
AuthorDate: Sat Sep  3 04:33:13 2022 +0000
Commit:     Aisha Tammy <gentoo <AT> aisha <DOT> cc>
CommitDate: Sat Sep  3 04:33:28 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=35d4b669

net-libs/picotls: new package, add 0_pre20220721, 9999

Signed-off-by: Aisha Tammy <gentoo <AT> aisha.cc>

 net-libs/picotls/Manifest                          |  2 +
 .../files/picotls-0_pre20220721-disable-e2e.patch  | 22 ++++++++
 net-libs/picotls/metadata.xml                      | 11 ++++
 net-libs/picotls/picotls-0_pre20220721.ebuild      | 59 ++++++++++++++++++++++
 net-libs/picotls/picotls-9999.ebuild               | 59 ++++++++++++++++++++++
 5 files changed, 153 insertions(+)

diff --git a/net-libs/picotls/Manifest b/net-libs/picotls/Manifest
new file mode 100644
index 000000000..ff48e25db
--- /dev/null
+++ b/net-libs/picotls/Manifest
@@ -0,0 +1,2 @@
+DIST picotls-0_pre20220721-test.tar.gz 1564 BLAKE2B 1241a705efbdfdc470f5673ead6abb19c61f09524591c1be582dc03a9cc2e20f71a864a1af9bd0f8c0466ee8c731f8c7c5fdada3ef39fb7efb26e54249a47f69 SHA512 96e4c937b22da29ff60ea693fed73209e43dc05c399b6e819279da60d481fe75d4064b854b2a13b67991f085a434d6e812f0bee65546282b0fc81d11a0a38fa5
+DIST picotls-0_pre20220721.tar.gz 589468 BLAKE2B f3c11599b8f943b58b41a040904091094a694ba402703e2e831ac5a7d2f7609ec842462df2de6ddafd0acf62ada63e4aa88eb51a6e4260783dc41885d607e3b0 SHA512 af476ae078d6122f5bcac75e921229808b850c2d0706b09ac7d9bea50998a61b20243c1b547f151a42a0ccabdca04aa00b6c918275cc2f8fcf15a3710d5c805c

diff --git a/net-libs/picotls/files/picotls-0_pre20220721-disable-e2e.patch b/net-libs/picotls/files/picotls-0_pre20220721-disable-e2e.patch
new file mode 100644
index 000000000..b8f6744f1
--- /dev/null
+++ b/net-libs/picotls/files/picotls-0_pre20220721-disable-e2e.patch
@@ -0,0 +1,22 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a309d7b..3160e89 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -31,7 +31,7 @@ IF (WITH_FUSION)
+     MESSAGE(STATUS "Enabling 'fusion' AES-GCM engine")
+ ENDIF ()
+ 
+-SET(CMAKE_C_FLAGS "-std=c99 -Wall -O2 -g ${CC_WARNING_FLAGS} ${CMAKE_C_FLAGS}")
++SET(CMAKE_C_FLAGS "-std=c99 -Wall -g ${CC_WARNING_FLAGS} ${CMAKE_C_FLAGS}")
+ INCLUDE_DIRECTORIES(
+     deps/cifra/src/ext
+     deps/cifra/src
+@@ -178,7 +178,7 @@ IF (NOT WITH_FUSION)
+     SET_TARGET_PROPERTIES(ptlsbench PROPERTIES EXCLUDE_FROM_ALL 1)
+ ENDIF ()
+ 
+-ADD_CUSTOM_TARGET(check env BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} prove --exec '' -v ${CMAKE_CURRENT_BINARY_DIR}/*.t t/*.t WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${TEST_EXES} cli)
++ADD_CUSTOM_TARGET(check env BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} prove --exec '' -v ${CMAKE_CURRENT_BINARY_DIR}/*.t WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${TEST_EXES} cli)
+ 
+ IF (CMAKE_SYSTEM_NAME STREQUAL "Linux")
+      SET(CMAKE_C_FLAGS "-D_GNU_SOURCE -pthread ${CMAKE_C_FLAGS}")

diff --git a/net-libs/picotls/metadata.xml b/net-libs/picotls/metadata.xml
new file mode 100644
index 000000000..5737fc3ce
--- /dev/null
+++ b/net-libs/picotls/metadata.xml
@@ -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>gentoo@aisha.cc</email>
+        <name>Aisha Tammy</name>
+    </maintainer>
+    <use>
+        <flag name="fusion">"fusion" AES-GCM engine, optimized for QUIC and other protocols that use short AEAD blocks</flag>
+    </use>
+</pkgmetadata>

diff --git a/net-libs/picotls/picotls-0_pre20220721.ebuild b/net-libs/picotls/picotls-0_pre20220721.ebuild
new file mode 100644
index 000000000..93feeeea7
--- /dev/null
+++ b/net-libs/picotls/picotls-0_pre20220721.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="TLS 1.3 implementation in C"
+HOMEPAGE="https://github.com/h2o/picotls"
+
+if [[ ${PV} == 9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/h2o/picotls"
+else
+	PTLS_COMMIT="7970614ad049d194fe1691bdf0cc66c6930a3a2f"
+	PTLS_TEST_COMMIT="f390562fd4d6919807441721ec05b08f6d8c8d9c"
+	SRC_URI="
+		https://github.com/h2o/picotls/archive/${PTLS_COMMIT}.tar.gz -> ${P}.tar.gz
+		https://github.com/h2o/picotest/archive/${PTLS_TEST_COMMIT}.tar.gz -> ${P}-test.tar.gz
+	"
+	KEYWORDS="~amd64"
+	S="${WORKDIR}/picotls-${PTLS_COMMIT}"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+PTLS_FLAGS_X86_RAW=( avx2 aes pclmul )
+PTLS_FLAGS=( "${PTLS_FLAGS_X86_RAW[@]/#/cpu_flags_x86_}" )
+IUSE="fusion test ${PTLS_FLAGS[@]}"
+REQUIRED_USE="fusion? ( ${PTLS_FLAGS[@]} )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+	app-arch/brotli
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-0_pre20220721-disable-e2e.patch" )
+
+src_prepare() {
+	if [[ -d "${WORKDIR}/picotest-${PTLS_TEST_COMMIT}" ]] ; then
+		rmdir "${S}/deps/picotest" || die
+		mv "${WORKDIR}/picotest-${PTLS_TEST_COMMIT}/" "${S}/deps/picotest" || die
+	fi
+	cmake_src_prepare
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DWITH_DTRACE=OFF
+		-DWITH_FUSION=$(usex fusion ON OFF)
+	)
+	cmake_src_configure
+}
+
+src_test() {
+	cmake_build check
+}

diff --git a/net-libs/picotls/picotls-9999.ebuild b/net-libs/picotls/picotls-9999.ebuild
new file mode 100644
index 000000000..93feeeea7
--- /dev/null
+++ b/net-libs/picotls/picotls-9999.ebuild
@@ -0,0 +1,59 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="TLS 1.3 implementation in C"
+HOMEPAGE="https://github.com/h2o/picotls"
+
+if [[ ${PV} == 9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/h2o/picotls"
+else
+	PTLS_COMMIT="7970614ad049d194fe1691bdf0cc66c6930a3a2f"
+	PTLS_TEST_COMMIT="f390562fd4d6919807441721ec05b08f6d8c8d9c"
+	SRC_URI="
+		https://github.com/h2o/picotls/archive/${PTLS_COMMIT}.tar.gz -> ${P}.tar.gz
+		https://github.com/h2o/picotest/archive/${PTLS_TEST_COMMIT}.tar.gz -> ${P}-test.tar.gz
+	"
+	KEYWORDS="~amd64"
+	S="${WORKDIR}/picotls-${PTLS_COMMIT}"
+fi
+
+LICENSE="MIT"
+SLOT="0"
+
+PTLS_FLAGS_X86_RAW=( avx2 aes pclmul )
+PTLS_FLAGS=( "${PTLS_FLAGS_X86_RAW[@]/#/cpu_flags_x86_}" )
+IUSE="fusion test ${PTLS_FLAGS[@]}"
+REQUIRED_USE="fusion? ( ${PTLS_FLAGS[@]} )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+	app-arch/brotli
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-0_pre20220721-disable-e2e.patch" )
+
+src_prepare() {
+	if [[ -d "${WORKDIR}/picotest-${PTLS_TEST_COMMIT}" ]] ; then
+		rmdir "${S}/deps/picotest" || die
+		mv "${WORKDIR}/picotest-${PTLS_TEST_COMMIT}/" "${S}/deps/picotest" || die
+	fi
+	cmake_src_prepare
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DWITH_DTRACE=OFF
+		-DWITH_FUSION=$(usex fusion ON OFF)
+	)
+	cmake_src_configure
+}
+
+src_test() {
+	cmake_build check
+}


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2022-09-03  4:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-09-03  4:33 [gentoo-commits] repo/proj/guru:dev commit in: net-libs/picotls/files/, net-libs/picotls/ Aisha Tammy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox