summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs/liburing/liburing-9999.ebuild')
-rw-r--r--sys-libs/liburing/liburing-9999.ebuild42
1 files changed, 35 insertions, 7 deletions
diff --git a/sys-libs/liburing/liburing-9999.ebuild b/sys-libs/liburing/liburing-9999.ebuild
index 6d65622e2a7a..ecb77ed5b823 100644
--- a/sys-libs/liburing/liburing-9999.ebuild
+++ b/sys-libs/liburing/liburing-9999.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit multilib-minimal toolchain-funcs
@@ -12,17 +12,30 @@ if [[ "${PV}" == *9999 ]] ; then
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 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+ 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="static-libs"
+IUSE="examples static-libs test"
# fsync test hangs forever
-RESTRICT="test"
+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
}
@@ -33,9 +46,10 @@ multilib_src_configure() {
--libdevdir="${EPREFIX}/usr/$(get_libdir)"
--mandir="${EPREFIX}/usr/share/man"
--cc="$(tc-getCC)"
+ --cxx="$(tc-getCXX)"
)
# No autotools configure! "econf" will fail.
- TMPDIR="${T}" ./configure "${myconf[@]}"
+ TMPDIR="${T}" ./configure "${myconf[@]}" || die
}
multilib_src_compile() {
@@ -51,5 +65,19 @@ multilib_src_install_all() {
}
multilib_src_test() {
- emake V=1 runtests
+ 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
}