sys-libs/liburing: Sync with Gentoo

It's from Gentoo commit 1320964c26461872836cfa4c950686c568507b00.
This commit is contained in:
Flatcar Buildbot 2024-08-26 07:20:37 +00:00 committed by Krzesimir Nowak
parent 91d287c8dc
commit 1bee02563a
2 changed files with 85 additions and 0 deletions

View File

@ -2,3 +2,4 @@ DIST liburing-2.2.tar.bz2 172733 BLAKE2B 19ae8a356e4fdc296bfb3ff121b777bd7c97038
DIST liburing-2.3.tar.bz2 197929 BLAKE2B 94ae2a79522fbac13c071ad752f5cbfae3e3b3dd6b35da24e5c756ba47a7b304e5bcb18391ca23fc2edafeb2dbcdcf143fd2cda71656396ac34248159a964fb7 SHA512 341aa13d3b560617f3710291945ec2fe35d828e0b67ee3a97555fd4eb3d2042a7f9e722080d8ebb45aa74a2ca4ef58db1e8a10c351e951a604da007ba69d2738
DIST liburing-2.5.tar.bz2 217397 BLAKE2B cb5d0a61bc8ce5a92a1b581c5411938146a84c365598454ac8bac7ba0d7429e20a5a608cb725619cbf8b77570b2d638fc347fd9ee9cb1456361957a2a4d6e6d6 SHA512 cba62acde52c07185ade0ac0fee6bf3845f5677d061b52d179c6341a62f8581d4f8920fc09d27a3723bc3832bc84dd5475d173427ee5d8a063d079b07af96416
DIST liburing-2.6.tar.bz2 244371 BLAKE2B f0e05a5a82592ed45c7c7f12b437d17655989102961c3d349d18d993f21cf0f1a6eb2aa7ad863a579428a1546c307924bf368e10af96045fd40a02fd5bd5843e SHA512 bf07cc0e67498ba64d888d1a113f7c8bea3feaed6f05ce69c99a1dec9506e553a1695ab4e1ecfa86f0ba1af699769557291d5c6b125b9bf59a1452f69eac0613
DIST liburing-2.7.tar.bz2 252289 BLAKE2B dc04745d2eda04d7009a532fc77566804c34b77dcef512f17ef424e22bc1e1a31ba87c2a841bb5574b11c494641a3128005d6dfccf2b87d6c3888fe5cd887996 SHA512 ec6cf69cae2e7e448e9e338bcd616bf27522f6f0e4768bf80d246d6df8610df3accaddae1c135c31bca7814bc3b8214854c40b3f7137163c0950605c716793f1

View File

@ -0,0 +1,84 @@
# Copyright 1999-2024 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://git.kernel.dk/cgit/${PN}/snapshot/${P}.tar.bz2"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
QA_PKGCONFIG_VERSION=${PV}
fi
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
}