commit: 93b7e48c33e2c39fbd7961a0566707b4c0294d92 Author: Huang Rui <vowstar <AT> gmail <DOT> com> AuthorDate: Tue Jan 6 05:02:12 2026 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Thu Jan 15 21:00:12 2026 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=93b7e48c
sys-libs/libnvidia-container: add 1.18.1 Signed-off-by: Huang Rui <vowstar <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/45268 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-libs/libnvidia-container/Manifest | 1 + .../libnvidia-container-1.18.1.ebuild | 131 +++++++++++++++++++++ 2 files changed, 132 insertions(+) diff --git a/sys-libs/libnvidia-container/Manifest b/sys-libs/libnvidia-container/Manifest index 686c37b2f468..f8b4e9482293 100644 --- a/sys-libs/libnvidia-container/Manifest +++ b/sys-libs/libnvidia-container/Manifest @@ -1,3 +1,4 @@ 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-1.18.1.tar.gz 1616164 BLAKE2B dd0243934475b13a24ed74f7dc1113ca657cc910c4d4ddb08d2d04f580191468673f572815212c99a5e7334380996adb38317349ced06c075583c54b5fb9c3a7 SHA512 0f8f7c2a7f61ee6396972c42b5ec7fa014ff93d66343c4d7064ff5aab0958a8e18e1cbbc64cdd2607ea0f60de8c7416b003081a34a109299dec8b0b63981360d 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.1.ebuild b/sys-libs/libnvidia-container/libnvidia-container-1.18.1.ebuild new file mode 100644 index 000000000000..c028c4f78683 --- /dev/null +++ b/sys-libs/libnvidia-container/libnvidia-container-1.18.1.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2026 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 +}
