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 +}
