commit: 20b0c0e48341104d7d96a4bd5a8cecdff1239c04 Author: Z. Liu <zhixu.liu <AT> gmail <DOT> com> AuthorDate: Fri Nov 21 14:29:40 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Thu Dec 4 01:21:41 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20b0c0e4
sys-libs/libnvidia-container: bump to v1.18.0 Bug: https://bugs.gentoo.org/966241 Signed-off-by: Z. Liu <zhixu.liu <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/44715 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-libs/libnvidia-container/Manifest | 1 + .../libnvidia-container-1.18.0.ebuild | 131 +++++++++++++++++++++ 2 files changed, 132 insertions(+) diff --git a/sys-libs/libnvidia-container/Manifest b/sys-libs/libnvidia-container/Manifest index a2780875181c..9fa48fb9e38d 100644 --- a/sys-libs/libnvidia-container/Manifest +++ b/sys-libs/libnvidia-container/Manifest @@ -4,4 +4,5 @@ DIST libnvidia-container-1.17.4.tar.gz 1612093 BLAKE2B 225b0ffb31fca19f8b2996fb6 DIST libnvidia-container-1.17.5.tar.gz 1612083 BLAKE2B eecefbd6dfdcee5053656cd5961dc9ce6ff6d292f9bd7a46366a65ec4877008094e9af862dbcfc35b99743fd4b66ec4c513e3023480dc7038fba2c47593b446a SHA512 79080dc1cce853c37ddd7d5e9e09a5670884f8cf9f0e070d3e7bb1c921a14ba1defb28ec0c14829d1f848ab0aa5b16ccb0d7d9a0ceda068c1bb0c0f2420c3c3f DIST libnvidia-container-1.17.6.tar.gz 1612141 BLAKE2B 98840080c08767bcc4aa3179a9f29969060972458d04a31e3224e6592f657614d465fcc0aef79a7379b050f20e09d6acdac5291f2d6a836d723a02bc0d87fc2f SHA512 f97046a8c1b857756d6d54968ed7036a53adce7fd54dff7f103308bd89835ea9afa62c0a3770f1b665ff0f1a45d2bfe8ef95f53c7b211b915d707659cd111c73 DIST libnvidia-container-1.17.8.tar.gz 1616106 BLAKE2B 4e741ced6fe47ecc9c15359be337db740e94bccb06aa30a210ec143fd86a66ba9eb99a93604a16c7e2d74894ad0fd17ec4a6553af5d282c4613066cc0a26e770 SHA512 727f66bcb7396110c056e483abc5d2ba38381feaf0d47b4b40159933ccc65e76d4b33d7bb32b1ec87851c802d1823165f50f289d92f748f7f50f6896fe2bd10e +DIST libnvidia-container-1.18.0.tar.gz 1616152 BLAKE2B 86316e79209733be795b16570460fe2bd90f16b8279c990ae7c562495cc163ab2220f731205efd467884580aa04446a3ed266a2bd4a08bb5fa7ce09cf110f37c SHA512 230b6d3b0a29a54796cebdc212b4cb4b2249d8bb370e97778be88093b6d36153d1325a5755ef69d5b856cfc6b9a904e30d39466d86efd3369b2c838fa57cd7e9 DIST libnvidia-container-nvidia-modprobe-550.54.14.tar.gz 47147 BLAKE2B 7b334877d98d0c75d5750192dea868436938852443ced14e74e59076ed4d8be9e361cdefbe48295d87bb91ac4565152ec3f3233479b3da19bb8baf8e7ef53cd6 SHA512 279228aa315ff5fd1a23df23527aff58b2319f11f9fc7d939fa285ea933b4cc6d223451e20ecf7f50baba9f6c9c100e57cb77675d0d17fa77f19d3fea2ccc193 diff --git a/sys-libs/libnvidia-container/libnvidia-container-1.18.0.ebuild b/sys-libs/libnvidia-container/libnvidia-container-1.18.0.ebuild new file mode 100644 index 000000000000..5d4b6cda8900 --- /dev/null +++ b/sys-libs/libnvidia-container/libnvidia-container-1.18.0.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# check the VERSION in libnvidia-container/mk/nvidia-modprobe.mk +NVMODV="550.54.14" + +DESCRIPTION="NVIDIA container runtime library" +HOMEPAGE="https://github.com/NVIDIA/libnvidia-container" + +if [[ "${PV}" == "9999" ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/NVIDIA/${PN}.git" +else + SRC_URI=" + https://github.com/NVIDIA/${PN}/archive/v${PV/_rc/-rc.}.tar.gz -> ${P}.tar.gz + " + S="${WORKDIR}/${PN}-${PV/_rc/-rc.}" + KEYWORDS="~amd64" +fi +NVMODS="${WORKDIR}/nvidia-modprobe-${NVMODV}" +SRC_URI+=" + https://github.com/NVIDIA/nvidia-modprobe/archive/${NVMODV}.tar.gz -> ${PN}-nvidia-modprobe-${NVMODV}.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0/${PV}" +IUSE="+seccomp static-libs" + +# libtirpc +# NOTE It seams that library also has optional support for net-libs/libtirpc, but I didn't +# manage to build without it, probably the support for that build-roted away. +DEPEND=" + net-libs/libtirpc:= + sys-libs/libcap + virtual/libelf:= + seccomp? ( sys-libs/libseccomp ) +" + +RDEPEND="${DEPEND} + elibc_glibc? ( x11-drivers/nvidia-drivers ) +" + +BDEPEND=" + dev-lang/go + net-libs/rpcsvc-proto + sys-apps/lsb-release + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}/${PN}-1.17.0-fix-makefile-r1.patch" +) + +DOCS=( NOTICE README.md ) + +src_unpack() { + default_src_unpack + if [[ "${PV}" == "9999" ]] ; then + git-r3_src_unpack + fi +} + +src_prepare() { + # nvidia-modprobe patching based on libnvidia-container/mk/nvidia-modprobe.mk + mkdir -p "${S}"/deps/src/nvidia-modprobe-"${NVMODV}" || die + cp -r "${NVMODS}"/modprobe-utils/ "${S}"/deps/src/nvidia-modprobe-"${NVMODV}"/ || die + touch "${S}/deps/src/nvidia-modprobe-${NVMODV}/.download_stamp" || die + pushd "${S}/deps/src/nvidia-modprobe-${NVMODV}" || die + eapply -p1 "${S}"/mk/nvidia-modprobe.patch + popd || die + + if ! tc-is-gcc; then + ewarn "libnvidia-container must be built with gcc because of option \"-fplan9-extensions\"!" + ewarn "Ignoring CC=$(tc-getCC) and forcing ${CHOST}-gcc" + export CC=${CHOST}-gcc AR=${CHOST}-gcc-ar + tc-is-gcc || die "tc-is-gcc failed in spite of CC=${CC}" + fi + + default +} + +src_configure() { + export GOPATH="${S}" + export GOFLAGS="-mod=vendor" + export CFLAGS="${CFLAGS}" + export LDFLAGS="${LDFLAGS}" + export CGO_CFLAGS="${CGO_CFLAGS:-$CFLAGS}" + export CGO_LDFLAGS="${CGO_LDFLAGS:-$LDFLAGS}" + + tc-export LD OBJCOPY PKG_CONFIG + + # we could also set GO compiller, but it currently defaults to gccgo, but as for now I believe + # most users will prefer dev-lang/go and they usually don't define GO="go" their make.conf either. + # tc-export GO + + my_makeopts=( + prefix="${EPREFIX}/usr" + libdir="${EPREFIX}/usr/$(get_libdir)" + GO_LDFLAGS="-compressdwarf=false -linkmode=external" + WITH_SECCOMP="$(usex seccomp)" + ) + # WITH_TIRPC="$(usex libtirpc)" + + if [[ "${PV}" != "9999" ]] ; then + IFS='_' read -r MY_LIB_VERSION MY_LIB_TAG <<< "${PV}" + + my_makeopts=( "${my_makeopts[@]}" + REVISION="${PV}" + LIB_VERSION="${MY_LIB_VERSION}" + LIB_TAG="${MY_LIB_TAG}" + ) + fi +} + +src_compile() { + emake "${my_makeopts[@]}" +} + +src_install() { + emake "${my_makeopts[@]}" DESTDIR="${D}" install + # Install docs + einstalldocs # Bug 831705 + # Cleanup static libraries + if ! use static-libs ; then + find "${ED}" -name '*.a' -delete || die # Bug 783984 + fi +}
