summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatoro Mahri <matoro_gentoo@matoro.tk>2023-12-15 19:21:31 -0500
committerSam James <sam@gentoo.org>2023-12-16 02:43:10 +0000
commit1aed182daa661b3e80faa5dabe8aa55d742ff2f4 (patch)
tree305d9eeec22f9f7a470e55e3cbe987553082f45d /sys-libs
parentapp-misc/screen: Stabilize 4.9.1 arm64, #920087 (diff)
downloadgentoo-1aed182daa661b3e80faa5dabe8aa55d742ff2f4.tar.gz
gentoo-1aed182daa661b3e80faa5dabe8aa55d742ff2f4.tar.bz2
gentoo-1aed182daa661b3e80faa5dabe8aa55d742ff2f4.zip
sys-libs/libnvme: add ubsan fixes patch
See: https://github.com/linux-nvme/libnvme/pull/732 Bug: https://bugs.gentoo.org/908793 Signed-off-by: Matoro Mahri <matoro_gentoo@matoro.tk> Closes: https://github.com/gentoo/gentoo/pull/34304 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-libs')
-rw-r--r--sys-libs/libnvme/Manifest1
-rw-r--r--sys-libs/libnvme/libnvme-1.6-r2.ebuild84
2 files changed, 85 insertions, 0 deletions
diff --git a/sys-libs/libnvme/Manifest b/sys-libs/libnvme/Manifest
index f48655de8530..92a002d493fe 100644
--- a/sys-libs/libnvme/Manifest
+++ b/sys-libs/libnvme/Manifest
@@ -2,4 +2,5 @@ DIST libnvme-1.2.tar.gz 484397 BLAKE2B ae6b1c3aa8f45594219470059cfc8982674433772
DIST libnvme-1.3.tar.gz 499870 BLAKE2B 5a019c12829890a0fe0b5e6aec5fbd009fc3bd6dfe7e81f61731292f4ea8b03044e7625491479350c399cc8cd5bc023e02cc9e93f1eba38f4c747667e84cfb24 SHA512 c874b29b73e55be842f71e74a226a76fcd50dfa72e2be100f0437bc83e740cd146b6d2f2cdaa940c11c3d8c48ff2c065ac0e8a83d4d0dde743edf4179f328670
DIST libnvme-1.4.tar.gz 506101 BLAKE2B c1496c6258bf20ed4109710b06671fa7f0e27c7649520ad8ccf4021df00fffc45f80fea248d62d2b85eecc8b15b6afaf4a113d96d6737ae6772346c9d0bc1002 SHA512 cc4a0a78083471e912736d76e4faaa5c285e1149029560f212ff06254863e8f21b48fcb1638599bd68efcf888312a248fb748d23776af03574b39fbd9b2a418d
DIST libnvme-1.5.tar.gz 566715 BLAKE2B 2111a6929bc17949f03c39fdb247420bba371641b38e30cc7bc4b61a859471d1bfaa27d0dd3bb41379a3a59bb493ff9ce9006460aaf0b900c7ce40410701c03b SHA512 0a19eca2dd7c48c9da3123767c3c789dfb7528d6f5b2b2dfdc8af7cd64e1d724fb81c6002b9821ce916cc7adb6b5e5e28253f1d73131188b0559c6d276a7d07c
+DIST libnvme-1.6-ubsan.patch.xz 5800 BLAKE2B 8603311c44a475bd09a31a6bebe96f29f2b18b6d0917cb02b680fc20861a71688f1c5b3f618d6f38e7c105c8a00b8818b2ffa67289371fd0ab62354d318bebb9 SHA512 74f1a86c4011ce6650b54ec50422fe98ec64a65b50e3aa6c3d57f3715713f85ef7c84451416bb8d136dff646b3eba00d415208c98a16c562bf5d258d51b0d006
DIST libnvme-1.6.tar.gz 597676 BLAKE2B 8b47b268154574688a909d0664df55eda38d9f133373fabcffe987ede03e0c531f88126e0dc50204d74fb2fa665af6379aa5205757bfc5863926db8402fbab27 SHA512 ae6a95ed75bbdc6f8c5c5608eaad8bcaf60a08348ddff356bd47258da2bd2470bdaa45747cdb7ba24f10db093fc0ab95f8bda076a45cbb87e155e3158ef726f8
diff --git a/sys-libs/libnvme/libnvme-1.6-r2.ebuild b/sys-libs/libnvme/libnvme-1.6-r2.ebuild
new file mode 100644
index 000000000000..1ece765a3cbf
--- /dev/null
+++ b/sys-libs/libnvme/libnvme-1.6-r2.ebuild
@@ -0,0 +1,84 @@
+# 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
+ https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-ubsan.patch.xz"
+
+LICENSE="LGPL-2.1+"
+SLOT="0/1"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~loong ~mips ~ppc ~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
+ "${WORKDIR}"/${P}-ubsan.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
+}