commit:     96b7067ea4ea8da43b0883a44c1a5deb824d1808
Author:     Takuya Wakazono <pastalian46 <AT> gmail <DOT> com>
AuthorDate: Sun Feb  2 08:27:44 2025 +0000
Commit:     David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Feb  2 08:27:44 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=96b7067e

dev-libs/lsquic: add 4.0.12

Closes: https://bugs.gentoo.org/945037
Signed-off-by: Takuya Wakazono <pastalian46 <AT> gmail.com>

 dev-libs/lsquic/Manifest               |  1 +
 dev-libs/lsquic/files/lsquic-c23.patch | 17 +++++++++++
 dev-libs/lsquic/lsquic-4.0.12.ebuild   | 54 ++++++++++++++++++++++++++++++++++
 3 files changed, 72 insertions(+)

diff --git a/dev-libs/lsquic/Manifest b/dev-libs/lsquic/Manifest
index e65bbcc47..99de68bfe 100644
--- a/dev-libs/lsquic/Manifest
+++ b/dev-libs/lsquic/Manifest
@@ -1,3 +1,4 @@
 DIST boringssl-9fc1c.tar.gz 35071632 BLAKE2B 
b90468dcf260915189f614bf83717e34e7905e83086322b78ad19d77f7fe24f6c2f739c634f67de1ef09d5de23e966fc20e2214d9ef7843dbf32ede968d08f93
 SHA512 
cbc3ca154a6abe53e3c4f46bdd0205195d7120efced061558c05e8a8ae5ba5aee2b4c9eb5fe4c590d87ede11ff8f2e45b06e37595359a300447ed3dc9390f500
 DIST boringssl-fips-20230428.tar.gz 32288205 BLAKE2B 
50588024cfd985b23be6f780197d092beae4b97bb2b5e01a6aca1477b0f5f0ffd0b6ac9558bd42fb5b4de4898a8987326afbe28422bb6dafbfc2104660958a83
 SHA512 
afdf94a4bbf4e92082ddcdb798c7b13e489f63ad50d9a79ee0f7222c0c830dd75a313cb8e3220816f1dc6872fe7493522938797c18c728e41a7c8f77bd597fc1
+DIST lsquic-4.0.12.tar.gz 1928464 BLAKE2B 
c60e752dbd59eaf22b4a993fb6a1917b8a59ae07ee5873f41248698af84fd1cff450e8b32bc038ac48569f5d2a71932b2daf516c3917d509b438d20df0de40ab
 SHA512 
08d8a2afc9449e99cfca1e0bc8d034020a8887c5db865652ce6e8a17dc7aef3b01ac6dca4f41040daf41dde7498fe028c79e8c17a8bad2855f20c067d3d87b12
 DIST lsquic-4.0.8.tar.gz 1928212 BLAKE2B 
4a4011fe86183ae0ac34f92a4695d18a8d635330e638038d7a78e9b04ebf49de657c666f523f4967163f81c77f033d856712bb04efc1c50fa8f50040d066a585
 SHA512 
45789e2024b60dbb2593b8708067b3aa833f818228c8b1d37840b6c8cb968d446cb74b5c9ace4a805b9dd5e91b5ad22fbf07e832b15b8f7ae480cfaafd67601b

diff --git a/dev-libs/lsquic/files/lsquic-c23.patch 
b/dev-libs/lsquic/files/lsquic-c23.patch
new file mode 100644
index 000000000..02b6a4c18
--- /dev/null
+++ b/dev-libs/lsquic/files/lsquic-c23.patch
@@ -0,0 +1,17 @@
+https://bugs.gentoo.org/945037
+https://github.com/litespeedtech/lsquic/pull/528/
+Remove unused function parameter for C23 compatibility
+
+In C23, `void foo()` is equivalent to `void foo(void)`, which causes a
+conflicting type error for lsquic_data_in_error_new.
+--- a/src/liblsquic/lsquic_di_error.c
++++ b/src/liblsquic/lsquic_di_error.c
+@@ -21,7 +21,7 @@ static const struct data_in *error_data_in_ptr;
+ 
+ 
+ struct data_in *
+-lsquic_data_in_error_new (struct lsquic_conn_public *conn_pub)
++lsquic_data_in_error_new ()
+ {
+     return (struct data_in *) error_data_in_ptr;
+ }

diff --git a/dev-libs/lsquic/lsquic-4.0.12.ebuild 
b/dev-libs/lsquic/lsquic-4.0.12.ebuild
new file mode 100644
index 000000000..7163e9ef5
--- /dev/null
+++ b/dev-libs/lsquic/lsquic-4.0.12.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+BORINGSSL_COMMIT="9fc1c33e9c21439ce5f87855a6591a9324e569fd"
+
+DESCRIPTION="LiteSpeed QUIC (LSQUIC) Library"
+HOMEPAGE="https://github.com/litespeedtech/lsquic/";
+SRC_URI="
+       https://github.com/litespeedtech/lsquic/archive/refs/tags/v${PV}.tar.gz 
-> ${P}.tar.gz
+       https://github.com/google/boringssl/archive/${BORINGSSL_COMMIT}.tar.gz 
-> boringssl-9fc1c.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+IUSE="static-libs test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       dev-lang/go
+       dev-libs/ls-qpack:=[static-libs=]
+       dev-libs/ls-hpack:=[static-libs=]
+"
+RDEPEND="
+       ${DEPEND}
+       sys-libs/zlib
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-disable-build-deps-libs.patch
+       "${FILESDIR}"/${PN}-link-boringssl-static-libs-9fc1c.patch
+       "${FILESDIR}"/${PN}-disable-override-flags.patch
+       "${FILESDIR}"/${PN}-disable-boring-override-flags.patch
+       "${FILESDIR}"/${PN}-c23.patch
+)
+
+src_unpack() {
+       unpack ${P}.tar.gz
+       unpack boringssl-9fc1c.tar.gz
+       mv boringssl-${BORINGSSL_COMMIT} "${S}"/src/liblsquic/boringssl || die
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DLSQUIC_SHARED_LIB=$(usex !static-libs)
+               -DLSQUIC_TESTS=$(usex test)
+       )
+       cmake_src_configure
+}

Reply via email to