diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/Manifest b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/Manifest index 7831fcbaf7..d66e68308c 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/Manifest +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/Manifest @@ -1,3 +1,4 @@ DIST libnvme-1.11.1.gh.tar.gz 740327 BLAKE2B eb9a731ce4886e7a76170d4be916e850548710dbbc135bbe94c5ff0c2f3da5e2cb162a6c8ea857d6b9b609ffafba34487cd3419fc4981e9e549419c2bb757568 SHA512 8720f2907a3d13af44fb3deec883cd6eb247d5861c4459b5fe0e67ff9ecfb565462a5faf39d43e08b5284f3e8ca8e72d41b333984beaa45d3287b1a258f3e59d DIST libnvme-1.12.gh.tar.gz 775030 BLAKE2B b6c9da012c39ec0b5ce671f498fd55b904ea9f0c34f8358eed166e08f9ef12c760707aa693a0123267cfb256812650f0afb5d017f4c8a940b61e18f9998d8b9e SHA512 6681f476c36d077d1481336ca66327cfed9b910e75309334a1eb1fa8ccfba7982d96c7b3ae5d587f306923247a716c5d70f4b71c26716e6be6020b470f9c1077 DIST libnvme-1.13.gh.tar.gz 776674 BLAKE2B a0b9190a2350e28ccbe4bed69eb23140bf6863688c977a023333309cdcca8398d6c024197429454c003ebbc642d492f88737d27cea368345768cf181fad8ce8d SHA512 7c56cb4a531c77e7024126c3dde4ffe629944be93a3102b09bc7a16031bdd64dac5cb19834c586609c5e3c186f805532d739f960abc4ba22114f36c6bc710264 +DIST libnvme-1.14.gh.tar.gz 805970 BLAKE2B a7d4acd4f28d2bca223fc788962fc62ab31e2f60010bd05254c44e3c59a60e42ecfe25c6aea13ac99341695340084d3c3034d8a3f822df7c51551c839d41fe95 SHA512 96a1bbd6cea1e77381254e242e781b023416abfbf44c82a0aa6eb0b316b30316d32d0b91f441089a317cbae5b511f6b3eaab570624cbda2178f9dce4cb5dd288 diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/files/libnvme-1.14-remove-glibc-include.patch b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/files/libnvme-1.14-remove-glibc-include.patch new file mode 100644 index 0000000000..725bb8237e --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/files/libnvme-1.14-remove-glibc-include.patch @@ -0,0 +1,29 @@ +https://bugs.gentoo.org/956710 +https://github.com/linux-nvme/libnvme/pull/1016 +https://github.com/linux-nvme/libnvme/commit/9b3ab852075f6da64648145b2d2e56e34354bf45 + +From 9b3ab852075f6da64648145b2d2e56e34354bf45 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Daniel=20N=C3=A9ri?= +Date: Fri, 23 May 2025 12:36:44 +0200 +Subject: [PATCH] examples: remove unnecessary include of +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The header files are GNU libc specific, and should not be +used directly from application code. This one in particular is already +included by on glibc. + +Fixes build on musl. + +Signed-off-by: Daniel Néri +--- a/examples/mi-mctp-csi-test.c ++++ b/examples/mi-mctp-csi-test.c +@@ -21,7 +21,6 @@ + + #include + #include +-#include + + void fhexdump(FILE *fp, const unsigned char *buf, int len) + { diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.12-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.12-r1.ebuild index a1110a4048..1692114985 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.12-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.12-r1.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://github.com/linux-nvme/libnvme/archive/refs/tags/v${PV}.tar.gz - LICENSE="LGPL-2.1+" SLOT="0/1" KEYWORDS="~alpha amd64 arm arm64 ~loong ~mips ppc ppc64 ~riscv ~sparc x86" -IUSE="dbus +json keyutils python ssl test uring" +IUSE="dbus io-uring +json keyutils python ssl test" RESTRICT="!test? ( test )" REQUIRED_USE=" @@ -26,7 +26,7 @@ DEPEND=" dbus? ( sys-apps/dbus:= ) python? ( ${PYTHON_DEPS} ) ssl? ( >=dev-libs/openssl-1.1:= ) - uring? ( sys-libs/liburing:= ) + io-uring? ( sys-libs/liburing:= ) " RDEPEND=" ${DEPEND} @@ -43,7 +43,7 @@ src_configure() { $(meson_feature dbus libdbus) $(meson_feature keyutils) $(meson_feature ssl openssl) - $(meson_feature uring liburing) + $(meson_feature io-uring liburing) ) meson_src_configure } diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.13-r1.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.13-r1.ebuild index 67d9327c43..74e5be635b 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.13-r1.ebuild +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.13-r1.ebuild @@ -13,7 +13,7 @@ SRC_URI="https://github.com/linux-nvme/libnvme/archive/refs/tags/v${PV}.tar.gz - LICENSE="LGPL-2.1+" SLOT="0/1" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" -IUSE="dbus +json keyutils python ssl test uring" +IUSE="dbus io-uring +json keyutils python ssl test" RESTRICT="!test? ( test )" REQUIRED_USE=" @@ -26,7 +26,7 @@ DEPEND=" dbus? ( sys-apps/dbus:= ) python? ( ${PYTHON_DEPS} ) ssl? ( >=dev-libs/openssl-1.1:= ) - uring? ( sys-libs/liburing:= ) + io-uring? ( sys-libs/liburing:= ) " RDEPEND=" ${DEPEND} @@ -43,7 +43,7 @@ src_configure() { $(meson_feature dbus libdbus) $(meson_feature keyutils) $(meson_feature ssl openssl) - $(meson_feature uring liburing) + $(meson_feature io-uring liburing) ) meson_src_configure } diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.14.ebuild b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.14.ebuild new file mode 100644 index 0000000000..582ed5b198 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/libnvme-1.14.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..14} ) +DISTUTILS_OPTIONAL=1 +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=meson-python +inherit distutils-r1 meson + +DESCRIPTION="C Library for NVM Express on Linux" +HOMEPAGE="https://github.com/linux-nvme/libnvme" +SRC_URI="https://github.com/linux-nvme/libnvme/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="LGPL-2.1+" +SLOT="0/1" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="dbus io-uring +json keyutils python ssl test" +RESTRICT="!test? ( test )" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) +" + +DEPEND=" + json? ( dev-libs/json-c:= ) + keyutils? ( sys-apps/keyutils:= ) + dbus? ( sys-apps/dbus:= ) + python? ( ${PYTHON_DEPS} ) + ssl? ( >=dev-libs/openssl-1.1:= ) + io-uring? ( sys-libs/liburing:= ) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + python? ( + ${DISTUTILS_DEPS} + dev-lang/swig + dev-python/meson-python[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest + +PATCHES=( + "${FILESDIR}"/libnvme-1.14-remove-glibc-include.patch +) + +src_prepare() { + default + use python && distutils-r1_src_prepare +} + +src_configure() { + local emesonargs=( + -Dpython=disabled + $(meson_use test tests) + $(meson_feature json json-c) + $(meson_feature dbus libdbus) + $(meson_feature keyutils) + $(meson_feature ssl openssl) + $(meson_feature io-uring liburing) + ) + meson_src_configure + use python && distutils-r1_src_configure +} + +python_compile() { + local emesonargs=( + -Dpython=enabled + ) + meson_src_configure --reconfigure + distutils-r1_python_compile +} + +src_compile() { + meson_src_compile + + use python && distutils-r1_src_compile +} + +src_test() { + meson_src_test + use python && distutils-r1_src_test +} + +python_test() { + local -A test_args=( + ["test-nbft.py"]="--filename=${S}/libnvme/tests/NBFT" + ) + pushd "${BUILD_DIR}" >/dev/null || die + local testfile + for testfile in "${S}"/libnvme/tests/*.py; do + PYTHONPATH="${BUILD_DIR}" "${EPYTHON}" "${testfile}" \ + ${test_args[${testfile##*/}]} \ + || die "test ${testfile##*/} failed with ${EPYTHON}" + done + popd >/dev/null || die +} + +src_install() { + meson_src_install + use python && distutils-r1_src_install +} diff --git a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/metadata.xml b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/metadata.xml index 5b2185449d..b8882391c6 100644 --- a/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/sys-libs/libnvme/metadata.xml @@ -9,7 +9,6 @@ Support JSON output via dev-libs/json-c Add support for sys-apps/keyutils UUID support via sys-apps/util-linux - uring support via sys-libs/liburing linux-nvme/libnvme