summaryrefslogtreecommitdiff
path: root/sys-libs/liburing
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-12-19 19:54:34 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-12-19 19:54:34 +0000
commit3f0a9aff8dc766c410952343d02561aab3eda2b9 (patch)
tree34f459712fafc5ecade61e0db6b3013cb387827c /sys-libs/liburing
parent00ac4b34406552b4fbca786be59b2983b7f58669 (diff)
gentoo auto-resync : 19:12:2023 - 19:54:34
Diffstat (limited to 'sys-libs/liburing')
-rw-r--r--sys-libs/liburing/Manifest2
-rw-r--r--sys-libs/liburing/files/liburing-2.5-print-libgcc-file-name.patch43
-rw-r--r--sys-libs/liburing/liburing-2.5-r2.ebuild88
3 files changed, 133 insertions, 0 deletions
diff --git a/sys-libs/liburing/Manifest b/sys-libs/liburing/Manifest
index 8197ad183659..384b76ff565d 100644
--- a/sys-libs/liburing/Manifest
+++ b/sys-libs/liburing/Manifest
@@ -3,6 +3,7 @@ AUX liburing-2.1-gnu_source-musl-cpuset.patch 1483 BLAKE2B 4df57662e282404557954
AUX liburing-2.3-liburing.map-Export-io_uring_-enable_rings-register_.patch 1233 BLAKE2B 86113d0201afc1860d240f585a392dd45ea8a1b45adbae96c2a87d18f8540bae96a6a5efc6e8a971aa1535034a859a99c75ea6e43c0744967707aebcc93e08c0 SHA512 7110eae38e18e710522211a9ab8b5a0879107dc236553b139d460a0068e44def9e28357c615665920dd86e0b70d552daeb09b677ca460adc3eb352fffe61be73
AUX liburing-2.3-remove-error-from-error_h-for-portability.patch 4160 BLAKE2B 0262d1eb46b9df94cd98df5fab24b88dd15e5e4c2d6095b3d85e308ead3f171d7960cf5046823d44ec62529e7b9c0e83260f87a41ec3a66316f29782c31ff28d SHA512 35194720209c36dfb42413441b598543f5b9691c36614a4bb7fdbf6e151fa31bced5ecf389fd50290d69746b299ae9978d102a47f0c303ca33a07a91e7bddf1b
AUX liburing-2.5-lld-17.patch 944 BLAKE2B 4369d02ca7599b28e33aee7639600546f2b1e37bc806b8d3810102915b75d81c36ee089eacd9c899299e6f71c82076688e7e66ff9014b646a565b2567a947e37 SHA512 3c7fa358837e81a791576ee1e392f947f9153cb62de3b53e5b063f5c745b477ba6754dcf7785903372e91fb8d475a46b43cc787edb66996d79c0d7fd97186687
+AUX liburing-2.5-print-libgcc-file-name.patch 1900 BLAKE2B 9f4c75b8281d83cdd6b95b14b26be86a6d448562006691cd394947046ab00920ff0775ca4e7a1b8f9645135f6a9ccc4e9e73237cf8004433058d9ba95b001359 SHA512 bdc7d2bed2e331d2712d021f99b7a2f96b76ea6b6716a9d1b4a7fc1bf49eb94bb88e5d8ad392b083842517df0e9933ddd96a3bbd78198fb67c1a8d7e81f3acd5
DIST liburing-2.1.tar.bz2 120806 BLAKE2B 3a09d1504150ed1c111f064187d868fd86ec7c3dbf661f73999f7fbb9c945b528f7ab2e0cfff5d270a1a977f04deedc7c790b6df8708ef2884fbf28c1a9ffd1b SHA512 a658454869b01752b5e499c4f0b50c342a8ff63b3dd1a473a96f9fad03f22a6e4d2354b0e658a4e7e50ea27440a84ee274856b3687803583bc80cb4bc45aec71
DIST liburing-2.2.tar.bz2 172733 BLAKE2B 19ae8a356e4fdc296bfb3ff121b777bd7c970388b31686aac5c531508e807360d58220bc27f9c62c55bd76ca687013acfceb3fa8a2162b615561f637cc50ffe1 SHA512 55b935a90c108be54393a5ab341b56e40ad8d506360fe15b3dcde5ee263356f11080f8614efdc4253f6318ea35d808ec47a9dbfc6b9f6cc2e04f7f1a75c3f621
DIST liburing-2.3.tar.bz2 197929 BLAKE2B 94ae2a79522fbac13c071ad752f5cbfae3e3b3dd6b35da24e5c756ba47a7b304e5bcb18391ca23fc2edafeb2dbcdcf143fd2cda71656396ac34248159a964fb7 SHA512 341aa13d3b560617f3710291945ec2fe35d828e0b67ee3a97555fd4eb3d2042a7f9e722080d8ebb45aa74a2ca4ef58db1e8a10c351e951a604da007ba69d2738
@@ -13,6 +14,7 @@ EBUILD liburing-2.2.ebuild 1574 BLAKE2B 78ebce489d9b427f0832118b0e752cc8cb033a7b
EBUILD liburing-2.3-r4.ebuild 2142 BLAKE2B 22748487fd62608752ef8e0dda645e74c948d664818e8f755449bc53c4213f15ba83f00d4aebded5cf82da62e0f5989f4b7de18afc992ba6f3b1c4b9bb4952bf SHA512 7364fd68ba42e0eb970f52f6bb4fefa26a029378164c283ac88b251ccaab5c242c3c4cea5f0f1449bcb2f6a9eb0ba73ac477ee4f5b819f311cc78ad946c38220
EBUILD liburing-2.4.ebuild 1896 BLAKE2B 443616eb7133f1887f69373deefc21af17dea96774a15457f906fe269f3e2c6f1bac9b929cc68684d3a3326f46fd10f1fca8efb2ef2f5c43e320a111c34346c8 SHA512 20253472f8bd1fb541cac0f21aaec4d6b3f1106ff9e61bc82370d7f6d65388739dc4246b53c6171156647b70af6c11d88d6993160e8d8088f0cce648156055ee
EBUILD liburing-2.5-r1.ebuild 1942 BLAKE2B ec2f6c263f5770db1f90e51795cdd33f878e70ece7956c040e74276899697068518df4f038986576dc369f0b960732eb0505e391e3a889ba3d5c37f2ee40cbf2 SHA512 7ac2c344a40f294a9821b94a68a476f5dc8609f694d5a27821e6ee0d5cc1d8c2607532eee38eb64502695a6c17ee5fed2f6acd2d3b0c20396db84ec3cca7a1a4
+EBUILD liburing-2.5-r2.ebuild 1991 BLAKE2B cfd589c1ed94c76f62b9b4e49fcd80da683f734cd54efe6c33c7717a07202f7b0c1e8b82691ccca52d3c3ce7f33c92040aa5c7008fdccdcd85fcd669bf86c4ec SHA512 f78dfa16671f8a168de24f596b67f2efd0ba7a5f131c907c63e226e7d72ffe9464ac04c8804cf047e1b63147fbdb566a4e75d6f9a9d7a1f722c1d406b5d0e6d1
EBUILD liburing-2.5.ebuild 1896 BLAKE2B 443616eb7133f1887f69373deefc21af17dea96774a15457f906fe269f3e2c6f1bac9b929cc68684d3a3326f46fd10f1fca8efb2ef2f5c43e320a111c34346c8 SHA512 20253472f8bd1fb541cac0f21aaec4d6b3f1106ff9e61bc82370d7f6d65388739dc4246b53c6171156647b70af6c11d88d6993160e8d8088f0cce648156055ee
EBUILD liburing-9999.ebuild 1896 BLAKE2B 443616eb7133f1887f69373deefc21af17dea96774a15457f906fe269f3e2c6f1bac9b929cc68684d3a3326f46fd10f1fca8efb2ef2f5c43e320a111c34346c8 SHA512 20253472f8bd1fb541cac0f21aaec4d6b3f1106ff9e61bc82370d7f6d65388739dc4246b53c6171156647b70af6c11d88d6993160e8d8088f0cce648156055ee
MISC metadata.xml 326 BLAKE2B 7c133a6dbb4ab4b537c0741ec9f3cd525c0803040950ee93e4c1cbc848c7618074471cc1a18ca07d6963c06252c83b66df0811ebae4c0cf9d7782f66ca5aa14a SHA512 1aacf941a9fa57429468fdfc8f546f559c5d483988ba5c6b0f4ed0fe5913f85d218b2a9eec83bae1d11a71eed36a37e76ccedc192697fbe9763fd0b09b2dcfd7
diff --git a/sys-libs/liburing/files/liburing-2.5-print-libgcc-file-name.patch b/sys-libs/liburing/files/liburing-2.5-print-libgcc-file-name.patch
new file mode 100644
index 000000000000..bedc6897b901
--- /dev/null
+++ b/sys-libs/liburing/files/liburing-2.5-print-libgcc-file-name.patch
@@ -0,0 +1,43 @@
+From https://github.com/axboe/liburing/commit/09b8ded9686f33f1044ad8c612f2281b865cd314 Mon Sep 17 00:00:00 2001
+From: Violet Purcell <vimproved@inventati.org>
+Date: Sat, 16 Dec 2023 16:17:09 -0500
+Subject: [PATCH] Link against libgcc based on output of
+ -print-libgcc-file-name
+
+GCC and clang have the -print-libgcc-file-name option to automatically
+print out the correct compiler runtime library to link to. This can be
+helpful in case the runtime library is named something other than libgcc
+(i.e. on a system where only LLVM's compiler-rt is used), or if libgcc
+is in a non-standard directory. If the option fails for whatever reason,
+fall back to using "-lgcc".
+
+Signed-off-by: Violet Purcell <vimproved@inventati.org>
+--- a/configure
++++ b/configure
+@@ -202,6 +202,15 @@ print_and_output_mak "relativelibdir" "$relativelibdir"
+ print_and_output_mak "mandir" "$mandir"
+ print_and_output_mak "datadir" "$datadir"
+
++####################################################
++# Check for correct compiler runtime library to link with
++libgcc_link_flag="-lgcc"
++if $cc -print-libgcc-file-name >/dev/null 2>&1; then
++ libgcc_link_flag="$($cc $CFLAGS $LDFLAGS -print-libgcc-file-name)"
++fi
++print_and_output_mak "libgcc_link_flag" "$libgcc_link_flag"
++####################################################
++
+ ##########################################
+ # check for compiler -Wstringop-overflow
+ stringop_overflow="no"
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -47,7 +47,7 @@ ifeq ($(CONFIG_NOLIBC),y)
+ liburing_srcs += nolibc.c
+ override CFLAGS += -nostdlib -nodefaultlibs -ffreestanding -fno-builtin -fno-stack-protector
+ override CPPFLAGS += -nostdlib -nodefaultlibs -ffreestanding -fno-builtin -fno-stack-protector
+- override LINK_FLAGS += -nostdlib -nodefaultlibs -lgcc
++ override LINK_FLAGS += -nostdlib -nodefaultlibs $(libgcc_link_flag)
+ endif
+
+ override CPPFLAGS += -MT "$@" -MMD -MP -MF "$@.d"
diff --git a/sys-libs/liburing/liburing-2.5-r2.ebuild b/sys-libs/liburing/liburing-2.5-r2.ebuild
new file mode 100644
index 000000000000..29f679d0a2da
--- /dev/null
+++ b/sys-libs/liburing/liburing-2.5-r2.ebuild
@@ -0,0 +1,88 @@
+# 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 ~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}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-lld-17.patch
+ "${FILESDIR}"/${P}-print-libgcc-file-name.patch
+)
+
+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)"
+ )
+ # 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
+}