commit:     779c6817a73d39dd0ac63beb8b5fa944b6c34392
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Fri May 30 14:38:39 2025 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Fri May 30 14:43:43 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=779c6817

sys-libs/liburing: add 2.10

Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 sys-libs/liburing/Manifest             |  1 +
 sys-libs/liburing/liburing-2.10.ebuild | 86 ++++++++++++++++++++++++++++++++++
 2 files changed, 87 insertions(+)

diff --git a/sys-libs/liburing/Manifest b/sys-libs/liburing/Manifest
index 4c72993239b2..e1579ae35894 100644
--- a/sys-libs/liburing/Manifest
+++ b/sys-libs/liburing/Manifest
@@ -1,2 +1,3 @@
+DIST liburing-2.10.tar.gz 428315 BLAKE2B 
f5477f7a1a30202feea3e97f236f6a8a2db59923a0ba9c13dda2cd8de0831bb0979dc6acdef4a2f1797ce2637125def54b9f3d50f14ef01affeed43b089228df
 SHA512 
6fb6e7ce66917d9438095e05916f90d834034ac3f6d6d8b6ee1eadf48ab9e499efa4af489dc72f8acc4a0b018f917ffcb8af4af682b47512566205519dd1f5db
 DIST liburing-2.7.gh.tar.gz 347638 BLAKE2B 
3e281cbf9be72cc8e04b04486df4dd9dd32c95ef9b84f7eae3253eb8e9a4afdaf8048ac359d6d250fecfb0a2bded51e46c1ab073d0e96c4d7d5d1d554d65c2b2
 SHA512 
c65146ee53defba4f9b752674be8489757f60be0855b361c6d1136119c74803351e5ccc8a1890c0777bfe61da4c0fd997230fc8817ff3929a7e2186b389cdc28
 DIST liburing-2.9.tar.gz 407191 BLAKE2B 
7081f9430e9532cad659e24de7ba998ad40f15a3fc3bf08fbe2b30df2bb335d4b06affb98d5667d4f8e6c8bc6e7a98c25caddd57ec5c98940562eb0e7977e54d
 SHA512 
f27233e6128444175b18cd1d45647acdd27b906a8cd561029508710e443b44416b916cad1b2c1217e23d9a5ffb5ba68b119e9c812eae406650fbd10bf26c2fa5

diff --git a/sys-libs/liburing/liburing-2.10.ebuild 
b/sys-libs/liburing/liburing-2.10.ebuild
new file mode 100644
index 000000000000..51789caff4e1
--- /dev/null
+++ b/sys-libs/liburing/liburing-2.10.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-minimal toolchain-funcs
+
+DESCRIPTION="Efficient I/O with io_uring"
+HOMEPAGE="https://github.com/axboe/liburing";
+if [[ "${PV}" == *9999 ]] ; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/axboe/liburing.git";
+else
+       
SRC_URI="https://github.com/axboe/liburing/archive/refs/tags/${P}.tar.gz";
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 
~riscv ~s390 ~sparc ~x86"
+       QA_PKGCONFIG_VERSION=${PV}
+fi
+
+S="${WORKDIR}"/liburing-${P}
+LICENSE="MIT"
+SLOT="0/2" # liburing.so major version
+
+IUSE="examples static-libs test"
+# fsync test hangs forever
+RESTRICT="!test? ( test )"
+
+# At least installed headers need <linux/*>, bug #802516
+DEPEND=">=sys-kernel/linux-headers-5.1"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+       default
+
+       if ! use examples; then
+               sed -e '/examples/d' Makefile -i || die
+       fi
+       if ! use test; then
+               sed -e '/test/d' Makefile -i || die
+       fi
+
+       multilib_copy_sources
+}
+
+multilib_src_configure() {
+       local myconf=(
+               --prefix="${EPREFIX}/usr"
+               --libdir="${EPREFIX}/usr/$(get_libdir)"
+               --libdevdir="${EPREFIX}/usr/$(get_libdir)"
+               --mandir="${EPREFIX}/usr/share/man"
+               --cc="$(tc-getCC)"
+               --cxx="$(tc-getCXX)"
+               --use-libc
+       )
+       # No autotools configure! "econf" will fail.
+       TMPDIR="${T}" ./configure "${myconf[@]}" || die
+}
+
+multilib_src_compile() {
+       emake V=1 AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)"
+}
+
+multilib_src_install_all() {
+       einstalldocs
+
+       if ! use static-libs ; then
+               find "${ED}" -type f -name "*.a" -delete || die
+       fi
+}
+
+multilib_src_test() {
+       local disabled_tests=(
+               accept.c
+               fpos.c
+               io_uring_register.c
+               link-timeout.c
+               read-before-exit.c
+               recv-msgall-stream.c
+       )
+       local disabled_test
+       for disabled_test in "${disabled_tests[@]}"; do
+               sed -i "/\s*${disabled_test}/d" test/Makefile \
+                       || die "Failed to remove ${disabled_test}"
+       done
+
+       emake -C test V=1 runtests
+}

Reply via email to