* [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/
@ 2021-10-20 1:51 Sam James
0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2021-10-20 1:51 UTC (permalink / raw
To: gentoo-commits
commit: 2ef2c4badbd29b3ae21c7f0615fb95af0068a74c
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 9 05:09:41 2021 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Oct 20 01:45:35 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ef2c4ba
sys-libs/liburing: fix build on arm
Closes: https://bugs.gentoo.org/816798
Signed-off-by: Sam James <sam <AT> gentoo.org>
Closes: https://github.com/gentoo/gentoo/pull/22523
.../liburing/files/liburing-2.1-arm-syscall.patch | 54 ++++++++++++++++++++++
sys-libs/liburing/liburing-2.1.ebuild | 5 ++
2 files changed, 59 insertions(+)
diff --git a/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
new file mode 100644
index 00000000000..a652b052148
--- /dev/null
+++ b/sys-libs/liburing/files/liburing-2.1-arm-syscall.patch
@@ -0,0 +1,54 @@
+https://github.com/axboe/liburing/commit/cb350a8989adbd65db574325d9a86d5437d800da
+https://bugs.gentoo.org/816798
+
+From cb350a8989adbd65db574325d9a86d5437d800da Mon Sep 17 00:00:00 2001
+From: Guillem Jover <guillem@hadrons.org>
+Date: Mon, 13 Sep 2021 23:56:08 +0200
+Subject: [PATCH] test: Use syscall wrappers instead of using syscall(2)
+ directly
+
+Some of these syscalls have different entry points depending on the
+architecture. Use the wrappers to avoid having to reimplement them
+portably.
+
+Fixes build failures on Debian armel and armhf builds.
+
+Signed-off-by: Guillem Jover <guillem@hadrons.org>
+--- a/test/sqpoll-cancel-hang.c
++++ b/test/sqpoll-cancel-hang.c
+@@ -4,7 +4,6 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <sys/mman.h>
+-#include <sys/syscall.h>
+ #include <sys/wait.h>
+ #include <time.h>
+ #include <unistd.h>
+@@ -29,8 +28,6 @@ static uint64_t current_time_ms(void)
+
+ #define IORING_OFF_SQES 0x10000000ULL
+
+-#define sys_io_uring_setup 425
+-
+ static void kill_and_wait(int pid, int* status)
+ {
+ kill(-pid, SIGKILL);
+@@ -53,7 +50,7 @@ a5)
+ void* vma2 = (void*)a3;
+ void** ring_ptr_out = (void**)a4;
+ void** sqes_ptr_out = (void**)a5;
+- uint32_t fd_io_uring = syscall(sys_io_uring_setup, entries, setup_params);
++ uint32_t fd_io_uring = __sys_io_uring_setup(entries, setup_params);
+ uint32_t sq_ring_sz = setup_params->sq_off.array +
+ setup_params->sq_entries * sizeof(uint32_t);
+ uint32_t cq_ring_sz = setup_params->cq_off.cqes +
+@@ -135,7 +132,7 @@ void trigger_bug(void)
+ }
+ int main(void)
+ {
+- syscall(__NR_mmap, 0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
++ mmap((void *)0x20000000ul, 0x1000000ul, 7ul, 0x32ul, -1, 0ul);
+ int pid = fork();
+ if (pid < 0)
+ exit(1);
+
diff --git a/sys-libs/liburing/liburing-2.1.ebuild b/sys-libs/liburing/liburing-2.1.ebuild
index 6d65622e2a7..dd13ba0d9ab 100644
--- a/sys-libs/liburing/liburing-2.1.ebuild
+++ b/sys-libs/liburing/liburing-2.1.ebuild
@@ -21,6 +21,11 @@ IUSE="static-libs"
# fsync test hangs forever
RESTRICT="test"
+PATCHES=(
+ # Upstream, bug #816798
+ "${FILESDIR}"/${P}-arm-syscall.patch
+)
+
src_prepare() {
default
multilib_copy_sources
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/
@ 2021-12-01 20:05 Lars Wendler
0 siblings, 0 replies; 5+ messages in thread
From: Lars Wendler @ 2021-12-01 20:05 UTC (permalink / raw
To: gentoo-commits
commit: f61cf5a67bb91c9aaee1354331ed68578295c212
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 1 20:03:40 2021 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Dec 1 20:05:44 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f61cf5a6
sys-libs/liburing: Removed old
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
sys-libs/liburing/Manifest | 2 -
.../files/liburing-0.7-ucontext_h-detection.patch | 72 ----------------------
.../liburing/files/liburing-2.0-spec_version.patch | 29 ---------
sys-libs/liburing/liburing-0.7-r1.ebuild | 59 ------------------
sys-libs/liburing/liburing-2.0-r1.ebuild | 59 ------------------
5 files changed, 221 deletions(-)
diff --git a/sys-libs/liburing/Manifest b/sys-libs/liburing/Manifest
index 274dba180608..397baaaf055a 100644
--- a/sys-libs/liburing/Manifest
+++ b/sys-libs/liburing/Manifest
@@ -1,3 +1 @@
-DIST liburing-0.7.tar.bz2 86386 BLAKE2B a4fa00cc8e384f9909f3c628d479774beaffd5ab09c9f321ef22bfbabd273e4c8d4dbb30a3280633e89e1a79e893348e68f0aa2f3b1b4deda56759f77d9b1875 SHA512 9a23bc08e0fa59273264295859dddbe3276b2911df6d937b3c6f7647a250a3175222b5f051f3094efc98e48cacd242511327c5c5b895ebde10c8c87929ba4328
-DIST liburing-2.0.tar.bz2 109066 BLAKE2B e2be57f66d2a40650c74502bef55e646986443450b2cdf4d2b5247a3fa099178ae19e61a20e4452dc723351053b613a96743f1268004939da9fddd8f38df3fa5 SHA512 a0da3472eb876c9cfbe56abe14b4d926e4d1c362ee9c4f38eec4c4ab01edab6d76651ffe2afe5cac8589caadc02517950974332eb7990f8bcc9f4f4800b66e33
DIST liburing-2.1.tar.bz2 120806 BLAKE2B 3a09d1504150ed1c111f064187d868fd86ec7c3dbf661f73999f7fbb9c945b528f7ab2e0cfff5d270a1a977f04deedc7c790b6df8708ef2884fbf28c1a9ffd1b SHA512 a658454869b01752b5e499c4f0b50c342a8ff63b3dd1a473a96f9fad03f22a6e4d2354b0e658a4e7e50ea27440a84ee274856b3687803583bc80cb4bc45aec71
diff --git a/sys-libs/liburing/files/liburing-0.7-ucontext_h-detection.patch b/sys-libs/liburing/files/liburing-0.7-ucontext_h-detection.patch
deleted file mode 100644
index 24b847d919df..000000000000
--- a/sys-libs/liburing/files/liburing-0.7-ucontext_h-detection.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-From 1cf969dfcba797a02d74540965677b92d3884cfa Mon Sep 17 00:00:00 2001
-From: Simon Zeni <simon@bl4ckb0ne.ca>
-Date: Tue, 27 Oct 2020 22:31:21 -0400
-Subject: [PATCH] examples: disable ucontext-cp if ucontext.h is not available
-
-The header file `ucontext.h` is not available on musl based distros. The
-example `ucontext-cp` is not built if `configure` fails to locate the
-header.
-
-Signed-off-by: Simon Zeni <simon@bl4ckb0ne.ca>
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
----
- configure | 21 +++++++++++++++++++++
- examples/Makefile | 6 +++++-
- 2 files changed, 26 insertions(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index c911f59..3b96cde 100755
---- a/configure
-+++ b/configure
-@@ -287,6 +287,24 @@ if compile_prog_cxx "" "" "C++"; then
- fi
- print_config "C++" "$has_cxx"
-
-+##########################################
-+# check for ucontext support
-+has_ucontext="no"
-+cat > $TMPC << EOF
-+#include <ucontext.h>
-+int main(int argc, char **argv)
-+{
-+ ucontext_t ctx;
-+ getcontext(&ctx);
-+ return 0;
-+}
-+EOF
-+if compile_prog "" "" "has_ucontext"; then
-+ has_ucontext="yes"
-+fi
-+print_config "has_ucontext" "$has_ucontext"
-+
-+
- #############################################################################
-
- if test "$__kernel_rwf_t" = "yes"; then
-@@ -304,6 +322,9 @@ fi
- if test "$has_cxx" = "yes"; then
- output_sym "CONFIG_HAVE_CXX"
- fi
-+if test "$has_ucontext" = "yes"; then
-+ output_sym "CONFIG_HAVE_UCONTEXT"
-+fi
-
- echo "CC=$cc" >> $config_host_mak
- print_config "CC" "$cc"
-diff --git a/examples/Makefile b/examples/Makefile
-index 0eec627..60c1b71 100644
---- a/examples/Makefile
-+++ b/examples/Makefile
-@@ -10,7 +10,11 @@ ifneq ($(MAKECMDGOALS),clean)
- include ../config-host.mak
- endif
-
--all_targets += io_uring-test io_uring-cp link-cp ucontext-cp
-+all_targets += io_uring-test io_uring-cp link-cp
-+
-+ifdef CONFIG_HAVE_UCONTEXT
-+all_targets += ucontext-cp
-+endif
-
- all: $(all_targets)
-
diff --git a/sys-libs/liburing/files/liburing-2.0-spec_version.patch b/sys-libs/liburing/files/liburing-2.0-spec_version.patch
deleted file mode 100644
index fab05916c366..000000000000
--- a/sys-libs/liburing/files/liburing-2.0-spec_version.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1815337f7dbb530ae3e3bc1175d8da214cf76eb5 Mon Sep 17 00:00:00 2001
-From: Stefan Hajnoczi <stefanha@redhat.com>
-Date: Tue, 9 Mar 2021 14:19:12 +0000
-Subject: [PATCH] spec: bump version to 2.0
-
-The shared library is now liburing.so.2 but the pkgconfig and rpm files
-still say 0.7. Existing binaries link against liburing.so.1 and will not
-automatically pick up the new liburing.so.2 shared library.
-
-Update the version number in liburing.spec so
-
-Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-Link: https://lore.kernel.org/r/20210309141913.262131-2-stefanha@redhat.com
-Signed-off-by: Jens Axboe <axboe@kernel.dk>
----
- liburing.spec | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/liburing.spec b/liburing.spec
-index fa4d9704..8607074c 100644
---- a/liburing.spec
-+++ b/liburing.spec
-@@ -1,5 +1,5 @@
- Name: liburing
--Version: 0.7
-+Version: 2.0
- Release: 1%{?dist}
- Summary: Linux-native io_uring I/O access library
- License: (GPLv2 with exceptions and LGPLv2+) or MIT
diff --git a/sys-libs/liburing/liburing-0.7-r1.ebuild b/sys-libs/liburing/liburing-0.7-r1.ebuild
deleted file mode 100644
index 715212503eba..000000000000
--- a/sys-libs/liburing/liburing-0.7-r1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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 ppc ppc64 sparc x86"
-fi
-LICENSE="MIT"
-SLOT="0/1.0.7" # liburing.so version
-
-IUSE="static-libs"
-# fsync test hangs forever
-RESTRICT="test"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.7-ucontext_h-detection.patch
-)
-
-src_prepare() {
- default
- 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)"
- )
- # No autotools configure! "econf" will fail.
- TMPDIR="${T}" ./configure "${myconf[@]}"
-}
-
-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() {
- emake V=1 runtests
-}
diff --git a/sys-libs/liburing/liburing-2.0-r1.ebuild b/sys-libs/liburing/liburing-2.0-r1.ebuild
deleted file mode 100644
index 652b4092a8b2..000000000000
--- a/sys-libs/liburing/liburing-2.0-r1.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-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 ~ppc ~ppc64 ~riscv ~sparc ~x86"
-fi
-LICENSE="MIT"
-SLOT="0/2.0.0" # liburing.so version
-
-IUSE="static-libs"
-# fsync test hangs forever
-RESTRICT="test"
-
-PATCHES=(
- "${FILESDIR}/${P}-spec_version.patch" #809095
-)
-
-src_prepare() {
- default
- 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)"
- )
- # No autotools configure! "econf" will fail.
- TMPDIR="${T}" ./configure "${myconf[@]}"
-}
-
-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() {
- emake V=1 runtests
-}
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/
@ 2022-03-14 15:56 Sam James
0 siblings, 0 replies; 5+ messages in thread
From: Sam James @ 2022-03-14 15:56 UTC (permalink / raw
To: gentoo-commits
commit: 698d55e8b06ab74f0fd034aacc933d9a52284839
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 14 15:24:07 2022 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 14 15:56:28 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=698d55e8
sys-libs/liburing: backport upstream musl patch
Needs a revbump as it affects installed header.
Closes: https://bugs.gentoo.org/829293
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../liburing-2.1-gnu_source-musl-cpuset.patch | 42 +++++++++++++
sys-libs/liburing/liburing-2.1-r2.ebuild | 69 ++++++++++++++++++++++
2 files changed, 111 insertions(+)
diff --git a/sys-libs/liburing/files/liburing-2.1-gnu_source-musl-cpuset.patch b/sys-libs/liburing/files/liburing-2.1-gnu_source-musl-cpuset.patch
new file mode 100644
index 000000000000..b6486f8b140a
--- /dev/null
+++ b/sys-libs/liburing/files/liburing-2.1-gnu_source-musl-cpuset.patch
@@ -0,0 +1,42 @@
+https://github.com/axboe/liburing/commit/c34070e08199491fe9653617364f4aea9b9b22be
+
+From: Sam James <sam@gentoo.org>
+Date: Mon, 14 Mar 2022 14:18:55 +0000
+Subject: [PATCH] liburing.h: define GNU_SOURCE for cpu_set_t
+
+On musl, cpu_set_t is only exposed if GNU_SOURCE is defined. While in
+the liburing build system, this is set (43b7ec8d17888df0debccda27dd58f4d1b90245e),
+it can't be guaranteed that folks including the header externally will set
+that macro.
+
+Noticed while investigating a build failure for glusterfs on a musl
+system:
+```
+configure:17701: checking for liburing.h
+configure:17701: x86_64-gentoo-linux-musl-gcc -c -pipe -march=native -fno-diagnostics-color -O2 conftest.c >&5
+In file included from conftest.c:105:
+/usr/include/liburing.h:162:39: error: unknown type name 'cpu_set_t'
+ 162 | const cpu_set_t *mask);
+ | ^~~~~~~~~
+configure:17701: $? = 1
+```
+
+Just like _XOPEN_SOURCE, set if needed.
+
+Bug: https://bugs.gentoo.org/829293
+Bug: https://github.com/axboe/liburing/issues/422
+See: 43b7ec8d17888df0debccda27dd58f4d1b90245e
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/src/include/liburing.h
++++ b/src/include/liburing.h
+@@ -6,6 +6,10 @@
+ #define _XOPEN_SOURCE 500 /* Required for glibc to expose sigset_t */
+ #endif
+
++#ifndef _GNU_SOURCE
++#define _GNU_SOURCE /* Required for musl to expose cpu_set_t */
++#endif
++
+ #include <sys/socket.h>
+ #include <sys/stat.h>
+ #include <sys/uio.h>
diff --git a/sys-libs/liburing/liburing-2.1-r2.ebuild b/sys-libs/liburing/liburing-2.1-r2.ebuild
new file mode 100644
index 000000000000..40852f3d1247
--- /dev/null
+++ b/sys-libs/liburing/liburing-2.1-r2.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2022 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 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+LICENSE="MIT"
+SLOT="0/2" # liburing.so major version
+
+IUSE="static-libs"
+# fsync test hangs forever
+RESTRICT="test"
+
+PATCHES=(
+ # Upstream, bug #816798
+ "${FILESDIR}"/${P}-arm-syscall.patch
+ # Upstream, bug #829293
+ "${FILESDIR}"/${P}-gnu_source-musl-cpuset.patch
+)
+
+src_prepare() {
+ default
+
+ if [[ "${PV}" != *9999 ]] ; then
+ # Make sure pkgconfig files contain the correct version
+ # bug #809095 and #833895
+ sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || 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)"
+ )
+ # No autotools configure! "econf" will fail.
+ TMPDIR="${T}" ./configure "${myconf[@]}"
+}
+
+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() {
+ emake V=1 runtests
+}
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/
@ 2023-01-22 8:48 Florian Schmaus
0 siblings, 0 replies; 5+ messages in thread
From: Florian Schmaus @ 2023-01-22 8:48 UTC (permalink / raw
To: gentoo-commits
commit: 29d4d06ff10f171a8766c326abcc0d5dad8b1eb8
Author: Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 22 08:48:20 2023 +0000
Commit: Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Sun Jan 22 08:48:28 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29d4d06f
sys-libs/liburing: backport patch to export symbols
Closes: https://bugs.gentoo.org/891633
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>
...p-Export-io_uring_-enable_rings-register_.patch | 35 +++++++++++
sys-libs/liburing/liburing-2.3-r1.ebuild | 72 ++++++++++++++++++++++
2 files changed, 107 insertions(+)
diff --git a/sys-libs/liburing/files/liburing-2.3-liburing.map-Export-io_uring_-enable_rings-register_.patch b/sys-libs/liburing/files/liburing-2.3-liburing.map-Export-io_uring_-enable_rings-register_.patch
new file mode 100644
index 000000000000..8ea4c4df2b8a
--- /dev/null
+++ b/sys-libs/liburing/files/liburing-2.3-liburing.map-Export-io_uring_-enable_rings-register_.patch
@@ -0,0 +1,35 @@
+From 19424b0baa5999918701e1972b901b0937331581 Mon Sep 17 00:00:00 2001
+From: Ammar Faizi <ammarfaizi2@gnuweeb.org>
+Date: Sat, 14 Jan 2023 10:54:05 +0700
+Subject: [PATCH] liburing.map: Export
+ `io_uring_{enable_rings,register_restrictions}`
+
+When adding these two functions, Stefano didn't add
+io_uring_enable_rings() and io_uring_register_restrictions() to
+liburing.map. It causes a linking problem. Add them to liburing.map.
+
+This issue hits liburing 2.0 to 2.3.
+
+[flow: backport to liburing 2.3]
+
+Closes: https://github.com/axboe/liburing/pull/774
+Fixes: https://github.com/axboe/liburing/issues/773
+Fixes: https://github.com/facebook/folly/issues/1908
+Fixes: d2654b1ac886 ("Add helper to enable rings")
+Fixes: 25cf9b968a27 ("Add helper to register restrictions")
+Cc: Dylan Yudaken <dylany@meta.com>
+Cc: Stefano Garzarella <sgarzare@redhat.com>
+Signed-off-by: Ammar Faizi <ammarfaizi2@gnuweeb.org>
+Link: https://lore.kernel.org/r/20230114035405.429608-1-ammar.faizi@intel.com
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+--- a/src/liburing.map
++++ b/src/liburing.map
+@@ -68,2 +68,5 @@ LIBURING_2.3 {
+ io_uring_submit_and_get_events;
++
++ io_uring_enable_rings;
++ io_uring_register_restrictions;
+ } LIBURING_2.3;
+--
+2.39.1
+
diff --git a/sys-libs/liburing/liburing-2.3-r1.ebuild b/sys-libs/liburing/liburing-2.3-r1.ebuild
new file mode 100644
index 000000000000..5a407a2b025e
--- /dev/null
+++ b/sys-libs/liburing/liburing-2.3-r1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2023 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 ~sparc ~x86"
+fi
+LICENSE="MIT"
+SLOT="0/2" # liburing.so major version
+
+IUSE="static-libs"
+# fsync test hangs forever
+RESTRICT="test"
+
+# At least installed headers need <linux/*>, bug #802516
+DEPEND=">=sys-kernel/linux-headers-5.1"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ # https://bugs.gentoo.org/891633
+ "${FILESDIR}/${PN}-2.3-liburing.map-Export-io_uring_-enable_rings-register_.patch"
+)
+
+src_prepare() {
+ default
+
+ if [[ "${PV}" != *9999 ]] ; then
+ # Make sure pkgconfig files contain the correct version
+ # bug #809095 and #833895
+ sed -i "/^Version:/s@[[:digit:]\.]\+@${PV}@" ${PN}.spec || 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)"
+ )
+ # 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() {
+ emake V=1 runtests
+}
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/
@ 2023-02-14 9:58 Florian Schmaus
0 siblings, 0 replies; 5+ messages in thread
From: Florian Schmaus @ 2023-02-14 9:58 UTC (permalink / raw
To: gentoo-commits
commit: c105442f99954cd2d818739435cd87afbf6d6cf3
Author: Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 14 09:54:25 2023 +0000
Commit: Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Tue Feb 14 09:54:48 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c105442f
sys-libs/liburing: remove remaining usage of error.h in test code
Bug: https://bugs.gentoo.org/888956
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>
...iburing-2.3-remove-error-from-error_h-for-portability.patch | 10 ++++++++++
.../{liburing-2.3-r3.ebuild => liburing-2.3-r4.ebuild} | 0
2 files changed, 10 insertions(+)
diff --git a/sys-libs/liburing/files/liburing-2.3-remove-error-from-error_h-for-portability.patch b/sys-libs/liburing/files/liburing-2.3-remove-error-from-error_h-for-portability.patch
index 6af48d08aab0..0f2933a10bb4 100644
--- a/sys-libs/liburing/files/liburing-2.3-remove-error-from-error_h-for-portability.patch
+++ b/sys-libs/liburing/files/liburing-2.3-remove-error-from-error_h-for-portability.patch
@@ -74,6 +74,16 @@ Signed-off-by: Steffen Winter <steffen.winter@proton.me>
#include <sys/eventfd.h>
#include <signal.h>
#include <poll.h>
+--- a/test/send-zerocopy.c
++++ b/test/send-zerocopy.c
+@@ -4,7 +4,6 @@
+ #include <stdint.h>
+ #include <assert.h>
+ #include <errno.h>
+-#include <error.h>
+ #include <limits.h>
+ #include <fcntl.h>
+ #include <unistd.h>
--- a/test/single-issuer.c
+++ b/test/single-issuer.c
@@ -5,7 +5,6 @@
diff --git a/sys-libs/liburing/liburing-2.3-r3.ebuild b/sys-libs/liburing/liburing-2.3-r4.ebuild
similarity index 100%
rename from sys-libs/liburing/liburing-2.3-r3.ebuild
rename to sys-libs/liburing/liburing-2.3-r4.ebuild
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-02-14 9:58 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-12-01 20:05 [gentoo-commits] repo/gentoo:master commit in: sys-libs/liburing/, sys-libs/liburing/files/ Lars Wendler
-- strict thread matches above, loose matches on Subject: below --
2023-02-14 9:58 Florian Schmaus
2023-01-22 8:48 Florian Schmaus
2022-03-14 15:56 Sam James
2021-10-20 1:51 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox