commit:     11c3ec43c781c83c1e699437f834869f4f8fc33d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 21 20:29:03 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Oct 21 20:29:03 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=11c3ec43

sys-libs/libnvme: backport lld-17 fix

Closes: https://bugs.gentoo.org/914635
Thanks-to: Alfred Wingate <parona <AT> protonmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-libs/libnvme/files/libnvme-1.6-lld-17.patch | 26 ++++++++
 sys-libs/libnvme/libnvme-1.6-r1.ebuild          | 82 +++++++++++++++++++++++++
 2 files changed, 108 insertions(+)

diff --git a/sys-libs/libnvme/files/libnvme-1.6-lld-17.patch 
b/sys-libs/libnvme/files/libnvme-1.6-lld-17.patch
new file mode 100644
index 000000000000..c64b4a80cbfb
--- /dev/null
+++ b/sys-libs/libnvme/files/libnvme-1.6-lld-17.patch
@@ -0,0 +1,26 @@
+https://github.com/linux-nvme/libnvme/pull/725
+
+From a5cc9074765bf400336f78a05c8374b9788ad670 Mon Sep 17 00:00:00 2001
+From: Alfred Wingate <par...@protonmail.com>
+Date: Tue, 10 Oct 2023 04:22:48 +0300
+Subject: [PATCH] build: remove symbol which doesn't exist in libnvme-mi.so
+
+* Added in bb70b874dac13a15c37ce1dd1de866d6a5dd428d, but was never used.
+
+Signed-off-by: Alfred Wingate <par...@protonmail.com>
+---
+ src/libnvme-mi.map | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/libnvme-mi.map b/src/libnvme-mi.map
+index f1ce7125..41e81106 100644
+--- a/src/libnvme-mi.map
++++ b/src/libnvme-mi.map
+@@ -49,7 +49,6 @@ LIBNVME_MI_1_1 {
+               nvme_mi_admin_security_send;
+               nvme_mi_admin_security_recv;
+               nvme_mi_endpoint_desc;
+-              nvme_mi_root_close;
+               nvme_mi_first_endpoint;
+               nvme_mi_next_endpoint;
+               nvme_mi_first_ctrl;

diff --git a/sys-libs/libnvme/libnvme-1.6-r1.ebuild 
b/sys-libs/libnvme/libnvme-1.6-r1.ebuild
new file mode 100644
index 000000000000..6539b980d776
--- /dev/null
+++ b/sys-libs/libnvme/libnvme-1.6-r1.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit python-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}.tar.gz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/1"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+IUSE="dbus +json keyutils python ssl test +uuid"
+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:= )
+       uuid? ( sys-apps/util-linux:= )
+"
+RDEPEND="
+       ${DEPEND}
+"
+BDEPEND="
+       dev-lang/swig
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.6-musl.patch
+       "${FILESDIR}"/${P}-lld-17.patch
+)
+
+src_configure() {
+       local emesonargs=(
+               -Dpython=false
+               $(meson_use test tests)
+               $(meson_feature json json-c)
+               $(meson_feature dbus libdbus)
+               $(meson_feature keyutils)
+               $(meson_feature ssl openssl)
+               $(meson_feature python)
+       )
+       meson_src_configure
+}
+
+python_compile() {
+       local emesonargs=(
+               -Dpython=enabled
+       )
+       meson_src_configure --reconfigure
+       meson_src_compile
+}
+
+src_compile() {
+       meson_src_compile
+
+       if use python; then
+               python_copy_sources
+               python_foreach_impl python_compile
+       fi
+}
+
+python_install() {
+       meson_src_install
+       use python && python_optimize
+}
+
+src_install() {
+       use python && python_foreach_impl python_install
+
+       meson_src_install
+}

Reply via email to