commit:     f67bf1186033752144b3bc5c6951100c2749203f
Author:     Huang Rui <vowstar <AT> gmail <DOT> com>
AuthorDate: Tue Mar 26 12:13:42 2024 +0000
Commit:     Rui Huang <vowstar <AT> gmail <DOT> com>
CommitDate: Tue Mar 26 12:15:17 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f67bf118

sys-libs/libnvidia-container: bump to 1.14.6

- Fix misses USE=static-libs and installs '.a' files
- Fix go: command not found, add go as BDEPEND
- Fix doc install
- Respect LDFLAGS and CFLAGS
- Don't strip files
- Fix overwrites CFLAGS/CXXFLAGS or adds uncommon ones

Closes: https://bugs.gentoo.org/783984
Closes: https://bugs.gentoo.org/831703
Closes: https://bugs.gentoo.org/831705
Closes: https://bugs.gentoo.org/831706
Closes: https://bugs.gentoo.org/831707
Closes: https://bugs.gentoo.org/831708
Closes: https://bugs.gentoo.org/907876
Signed-off-by: Huang Rui <vowstar <AT> gmail.com>

 sys-libs/libnvidia-container/Manifest              |   2 +
 .../libnvidia-container-1.14.6-fix-makefile.patch  | 193 +++++++++++++++++++++
 .../libnvidia-container-1.14.6.ebuild              |  96 ++++++++++
 .../libnvidia-container-9999.ebuild                |  78 +++++++--
 sys-libs/libnvidia-container/metadata.xml          |  15 +-
 5 files changed, 361 insertions(+), 23 deletions(-)

diff --git a/sys-libs/libnvidia-container/Manifest 
b/sys-libs/libnvidia-container/Manifest
index d7eafb32e4..58fb13bb41 100644
--- a/sys-libs/libnvidia-container/Manifest
+++ b/sys-libs/libnvidia-container/Manifest
@@ -1,3 +1,5 @@
 DIST libnvidia-container-1.12.1.tar.gz 1545474 BLAKE2B 
2368b344126f5f27c903981b882120de3fcc291612b2f9201b4d41b31883181349d68f0c55ae2acdf2bce68d14b747444c740de8093cb8affeda64be37cdc05f
 SHA512 
b65b62ff40f3cc0cf26acf4baf6775caf8306c060137d6d84fd2568134372a6c9ce22d097160cab5747dd4fd0d5a287507832c0479e88d393cc9d776e0115ca6
 DIST libnvidia-container-1.13.1.tar.gz 1546929 BLAKE2B 
2a2aa36a61b3a35f85186094871fdcc41154b2781e8c129336cba3647f2251d7b82c22bed18f7fef950f7cf2bb2a9cc231a4c1a66d290b069a4149b37d023d04
 SHA512 
9961480bdccb62e008ee4ee50c66eebc9cf86bcee988bd1c97dd8351ee1a223b2532c27323667c391b693f0655c391dc95309a74600220e7d368604ab3e66925
 DIST libnvidia-container-1.13.2.tar.gz 1547034 BLAKE2B 
96a2329da1bbaeb5598fe87e9e4d7ccc01c5b462a7683d0ce872fa44e7aeac7b8c02777d94d5860cac50bec4b75862980ab8be9dfc084ce3ae99c900d4a61ff4
 SHA512 
1fa7d1a74e2ce5f719b5388fc0edf7047d411d2809aecab816b5d23348c8577296faceb9cb4521421f7eb1b87302e2c1bbb51f8cc078e5f6fd4fc159ac2d8ea2
+DIST libnvidia-container-1.14.6.tar.gz 1549174 BLAKE2B 
d3c526d7b04ac9cbc6b6bb63f25d4c5b17571169a6cb1a6ab9f7c1cc322a27e3a853373551682b535146914fd2eca809d02391acb458a874a7e9e5c0fc8bf459
 SHA512 
598f4b2752615bfe44782a60cd2afee769fde496c6bdff613f58c4a3f0b02f8b398b293659cb78a84ff5fbff50892f3cb4b9cd3c6a60d17897fa5e063905a0c5
+DIST libnvidia-container-nvidia-modprobe-550.54.14.tar.gz 47147 BLAKE2B 
7b334877d98d0c75d5750192dea868436938852443ced14e74e59076ed4d8be9e361cdefbe48295d87bb91ac4565152ec3f3233479b3da19bb8baf8e7ef53cd6
 SHA512 
279228aa315ff5fd1a23df23527aff58b2319f11f9fc7d939fa285ea933b4cc6d223451e20ecf7f50baba9f6c9c100e57cb77675d0d17fa77f19d3fea2ccc193

diff --git 
a/sys-libs/libnvidia-container/files/libnvidia-container-1.14.6-fix-makefile.patch
 
b/sys-libs/libnvidia-container/files/libnvidia-container-1.14.6-fix-makefile.patch
new file mode 100644
index 0000000000..9bc12ebf75
--- /dev/null
+++ 
b/sys-libs/libnvidia-container/files/libnvidia-container-1.14.6-fix-makefile.patch
@@ -0,0 +1,193 @@
+# 
https://gitlab.archlinux.org/archlinux/packaging/packages/libnvidia-container/-/blob/main/fix-makefile.patch
+--- a/Makefile
++++ b/Makefile
+@@ -18,8 +18,6 @@
+ ##### Global variables #####
+
+ WITH_NVCGO   ?= yes
+-WITH_LIBELF  ?= no
+-WITH_TIRPC   ?= no
+ WITH_SECCOMP ?= yes
+
+ ##### Global definitions #####
+@@ -27,9 +25,8 @@
+-export prefix      = /usr/local
++export prefix      = /usr
+ export exec_prefix = $(prefix)
+ export bindir      = $(exec_prefix)/bin
+-export libdir      = $(exec_prefix)/lib
++export libdir      = $(exec_prefix)/lib64
+ export docdir      = $(prefix)/share/doc
+-export libdbgdir   = $(prefix)/lib/debug$(libdir)
+ export includedir  = $(prefix)/include
+ export pkgconfdir  = $(libdir)/pkgconfig
+
+@@ -155,17 +152,12 @@
+ LIB_CPPFLAGS       += -DWITH_NVCGO
+ LIB_LDLIBS_SHARED  += -lpthread
+ endif
+-ifeq ($(WITH_LIBELF), yes)
++# Build with system libelf unconditionally
+ LIB_CPPFLAGS       += -DWITH_LIBELF
+ LIB_LDLIBS_SHARED  += -lelf
+-else
+-LIB_LDLIBS_STATIC  += -l:libelf.a
+-endif
+-ifeq ($(WITH_TIRPC), yes)
+-LIB_CPPFLAGS       += -isystem $(DEPS_DIR)$(includedir)/tirpc -DWITH_TIRPC
+-LIB_LDLIBS_STATIC  += -l:libtirpc.a
+-LIB_LDLIBS_SHARED  += -lpthread
+-endif
++# Build with system libtirpc unconditionally
++CPPFLAGS           += -I/usr/include/tirpc
++LIB_LDLIBS_SHARED  += -lpthread -ltirpc
+ ifeq ($(WITH_SECCOMP), yes)
+ LIB_CPPFLAGS       += -DWITH_SECCOMP $(shell pkg-config --cflags libseccomp)
+ LIB_LDLIBS_SHARED  += $(shell pkg-config --libs libseccomp)
+@@ -219,22 +211,14 @@
+ -include $(DEPENDENCIES)
+
+ $(LIB_SHARED): $(LIB_OBJS)
+-      $(MKDIR) -p $(DEBUG_DIR)
+       $(CC) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(LIB_LDFLAGS) $(OUTPUT_OPTION) $^ 
$(LIB_SCRIPT) $(LIB_LDLIBS)
+-      $(OBJCPY) --only-keep-debug $@ $(LIB_SONAME)
+-      $(OBJCPY) --add-gnu-debuglink=$(LIB_SONAME) $@
+-      $(MV) $(LIB_SONAME) $(DEBUG_DIR)
+-      $(STRIP) --strip-unneeded -R .comment $@
+
+ $(LIB_STATIC_OBJ): $(LIB_OBJS)
+       # FIXME Handle user-defined LDFLAGS and LDLIBS
+       $(LD) -d -r --exclude-libs ALL -L$(DEPS_DIR)$(libdir) $(OUTPUT_OPTION) 
$^ $(LIB_LDLIBS_STATIC)
+-      $(OBJCPY) --localize-hidden $@
+-      $(STRIP) --strip-unneeded -R .comment $@
+
+ $(BIN_NAME): $(BIN_OBJS)
+       $(CC) $(BIN_CFLAGS) $(BIN_CPPFLAGS) $(BIN_LDFLAGS) $(OUTPUT_OPTION) $^ 
$(BIN_SCRIPT) $(BIN_LDLIBS)
+-      $(STRIP) --strip-unneeded -R .comment $@
+
+ ##### Public rules #####
+
+@@ -259,15 +243,9 @@
+ ifeq ($(WITH_NVCGO), yes)
+       $(MAKE) -f $(MAKE_DIR)/nvcgo.mk DESTDIR=$(DEPS_DIR) MAJOR=$(MAJOR) 
VERSION=$(VERSION) LIB_NAME=$(LIBGO_NAME) install
+ endif
+-ifeq ($(WITH_LIBELF), no)
+-      $(MAKE) -f $(MAKE_DIR)/elftoolchain.mk DESTDIR=$(DEPS_DIR) install
+-endif
+-ifeq ($(WITH_TIRPC), yes)
+-      $(MAKE) -f $(MAKE_DIR)/libtirpc.mk DESTDIR=$(DEPS_DIR) install
+-endif
+
+ install: all
+-      $(INSTALL) -d -m 755 $(addprefix $(DESTDIR),$(includedir) $(bindir) 
$(libdir) $(docdir) $(libdbgdir) $(pkgconfdir))
++      $(INSTALL) -d -m 755 $(addprefix $(DESTDIR),$(includedir) $(bindir) 
$(libdir) $(pkgconfdir))
+       # Install header files
+       $(INSTALL) -m 644 $(LIB_INCS) $(DESTDIR)$(includedir)
+       # Install library files
+@@ -276,18 +254,18 @@
+       $(LN) -sf $(LIB_SONAME) $(DESTDIR)$(libdir)/$(LIB_SYMLINK)
+ ifeq ($(WITH_NVCGO), yes)
+       $(INSTALL) -m 755 $(DEPS_DIR)$(libdir)/$(LIBGO_SHARED) 
$(DESTDIR)$(libdir)
++      # FIXME: for some reason ldconfig stopped creating this symlink after 
applying Arch Linux LDFLAGS
++      $(LN) -sf $(LIBGO_SHARED) $(DESTDIR)$(libdir)/$(LIBGO_SONAME)
+       $(LN) -sf $(LIBGO_SONAME) $(DESTDIR)$(libdir)/$(LIBGO_SYMLINK)
+ endif
+       $(LDCONFIG) -n $(DESTDIR)$(libdir)
+-      # Install debugging symbols
+-      $(INSTALL) -m 644 $(DEBUG_DIR)/$(LIB_SONAME) $(DESTDIR)$(libdbgdir)
+       # Install configuration files
+       $(MAKE_DIR)/$(LIB_PKGCFG).in "$(strip $(VERSION))" "$(strip 
$(LIB_LDLIBS_SHARED))" > $(DESTDIR)$(pkgconfdir)/$(LIB_PKGCFG)
+       # Install binary files
+       $(INSTALL) -m 755 $(BIN_NAME) $(DESTDIR)$(bindir)
+       # Install documentation files
+-      $(INSTALL) -d -m 755 $(DESTDIR)$(docdir)/$(LIB_NAME)-$(VERSION)
+-      $(INSTALL) -m 644 $(DOC_FILES) 
$(DESTDIR)$(docdir)/$(LIB_NAME)-$(VERSION)
++      # $(INSTALL) -d -m 755 $(DESTDIR)$(docdir)/$(LIB_NAME)-$(VERSION)
++      # $(INSTALL) -m 644 $(DOC_FILES) 
$(DESTDIR)$(docdir)/$(LIB_NAME)-$(VERSION)
+
+ uninstall:
+       # Uninstall header files
+@@ -297,14 +275,12 @@
+ ifeq ($(WITH_NVCGO), yes)
+       $(RM) $(addprefix $(DESTDIR)$(libdir)/,$(LIBGO_SHARED) $(LIBGO_SONAME) 
$(LIBGO_SYMLINK))
+ endif
+-      # Uninstall debugging symbols
+-      $(RM) $(DESTDIR)$(libdbgdir)/$(LIB_SONAME)
+       # Uninstall configuration files
+       $(RM) $(DESTDIR)$(pkgconfdir)/$(LIB_PKGCFG)
+       # Uninstall binary files
+       $(RM) $(DESTDIR)$(bindir)/$(BIN_NAME)
+       # Uninstall documentation files
+-      $(RM) -r $(DESTDIR)$(docdir)/$(LIB_NAME)-$(VERSION)
++      # $(RM) -r $(DESTDIR)$(docdir)/$(LIB_NAME)-$(VERSION)
+
+ dist: DESTDIR:=$(DIST_DIR)/$(LIB_NAME)_$(VERSION)$(addprefix -,$(TAG))
+ dist: install
+@@ -317,12 +293,6 @@
+ ifeq ($(WITH_NVCGO), yes)
+       -$(MAKE) -f $(MAKE_DIR)/nvcgo.mk clean
+ endif
+-ifeq ($(WITH_LIBELF), no)
+-      -$(MAKE) -f $(MAKE_DIR)/elftoolchain.mk clean
+-endif
+-ifeq ($(WITH_TIRPC), yes)
+-      -$(MAKE) -f $(MAKE_DIR)/libtirpc.mk clean
+-endif
+
+ mostlyclean:
+       $(RM) $(LIB_OBJS) $(LIB_STATIC_OBJ) $(BIN_OBJS) $(DEPENDENCIES)
+--- a/mk/nvcgo.mk      2024-02-27 13:34:22.000000000 +0100
++++ b/mk/nvcgo.mk      2024-03-21 12:57:18.094692606 +0100
+@@ -17,7 +17,7 @@
+ ##### Source definitions #####
+
+ PREFIX         := nvcgo
+-SRCS_DIR       := $(DEPS_DIR)/src/$(PREFIX)
++SRCS_DIR       := $(CURDIR)/src/$(PREFIX)
+ VERSION        := $(VERSION)
+
+ ##### Public rules #####
+@@ -25,9 +25,6 @@
+ .PHONY: all install clean
+
+ build:
+-      $(RM) -rf $(SRCS_DIR)
+-      $(CP) -R $(CURDIR)/src/$(PREFIX) $(SRCS_DIR)
+-      $(MAKE) -C $(SRCS_DIR) VERSION=$(VERSION) clean
+       $(MAKE) -C $(SRCS_DIR) VERSION=$(VERSION) build
+
+ install: build
+--- a/mk/nvidia-modprobe.mk
++++ b/mk/nvidia-modprobe.mk
+@@ -25,7 +25,7 @@
+
+ ARFLAGS  := -rU
+ CPPFLAGS := -D_FORTIFY_SOURCE=2 -DNV_LINUX
+-CFLAGS   := -O2 -g -fdata-sections -ffunction-sections -fstack-protector 
-fno-strict-aliasing -fPIC
++CFLAGS   := -O2 -g -fdata-sections -ffunction-sections -fstack-protector 
-fno-strict-aliasing -fPIC $(CFLAGS)
+
+ ##### Private rules #####
+
+--- a/src/nvcgo/Makefile
++++ b/src/nvcgo/Makefile
+@@ -31,15 +31,15 @@
+ HDR_NAME := $(LIB_NAME).h
+ CTYPES_H := ctypes.h
+
+-CGO_CFLAGS  := -std=gnu11 -O2
+-CGO_LDFLAGS := -Wl,--gc-sections -Wl,-s -Wl,-soname,$(LIB_SONAME)
++CGO_CFLAGS  := -std=gnu11 -O2 $(CGO_CFLAGS)
++CGO_LDFLAGS := -Wl,--gc-sections -Wl,-soname,$(LIB_SONAME) $(CGO_LDFLAGS)
+
+ build: $(OBJ_NAME)
+
+ $(OBJ_NAME): $(wildcard $(CURDIR)/*.go) $(wildcard */*.go)
+       export CGO_CFLAGS="$(CGO_CFLAGS)"; \
+-      export CGO_LDFLAGS="$(CGO_LDFLAGS)"; \
++      export CGO_LDFLAGS="-Wl,--gc-sections -Wl,-soname,$(LIB_SONAME) 
$(CGO_LDFLAGS)"; \
+-      $(GO) build -o $(@) -ldflags "-s -w" -buildmode=c-shared .
++      $(GO) build -o $(@) -ldflags "$(GO_LDFLAGS)" -buildmode=c-shared .
+
+ install: $(OBJ_NAME)
+       $(INSTALL) -d -m 755 $(addprefix $(DESTDIR),$(libdir) 
$(includedir)/$(PKG_NAME))
+

diff --git a/sys-libs/libnvidia-container/libnvidia-container-1.14.6.ebuild 
b/sys-libs/libnvidia-container/libnvidia-container-1.14.6.ebuild
new file mode 100644
index 0000000000..2aa3cbf3fb
--- /dev/null
+++ b/sys-libs/libnvidia-container/libnvidia-container-1.14.6.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# 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
+               
https://github.com/NVIDIA/nvidia-modprobe/archive/${NVMODV}.tar.gz -> 
${PN}-nvidia-modprobe-${NVMODV}.tar.gz
+       "
+       S="${WORKDIR}/${PN}-${PV/_rc/-rc.}"
+       NVMODS="${WORKDIR}/nvidia-modprobe-${NVMODV}"
+       KEYWORDS="~amd64"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0/${PV}"
+IUSE="doc static-libs"
+
+RDEPEND="
+       net-libs/libtirpc:=
+       sys-libs/libcap
+       sys-libs/libseccomp
+       virtual/libelf:=
+       x11-drivers/nvidia-drivers
+"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+       dev-build/bmake
+       dev-lang/go
+       net-libs/rpcsvc-proto
+       sys-apps/lsb-release
+       virtual/pkgconfig
+"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.14.6-fix-makefile.patch
+)
+
+DOCS=( COPYING COPYING.LESSER LICENSE NOTICE README.md)
+
+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
+
+       default
+}
+
+src_compile() {
+       export GOPATH="${S}"
+       export GOFLAGS="-mod=vendor"
+       IFS='_' read -r MY_LIB_VERSION MY_LIB_TAG <<< "${PV}"
+       emake \
+               CGO_CFLAGS="${CFLAGS}" \
+               CGO_LDFLAGS="${LDFLAGS}" \
+               GO_LDFLAGS="-compressdwarf=false -linkmode=external" \
+               REVISION="${PV}" \
+               LIB_VERSION="${MY_LIB_VERSION}" \
+               LIB_TAG="${MY_LIB_TAG}"
+}
+
+src_install() {
+       emake \
+               CGO_CFLAGS="${CFLAGS}" \
+               CGO_LDFLAGS="${LDFLAGS}" \
+               GO_LDFLAGS="-compressdwarf=false -linkmode=external" \
+               REVISION="${PV}" \
+               LIB_VERSION="${MY_LIB_VERSION}" \
+               LIB_TAG="${MY_LIB_TAG}" \
+               DESTDIR="${D}" \
+               install
+       # Install docs
+       if use doc ; then
+               einstalldocs # Bug 831705
+       fi
+       # Cleanup static libraries
+       if ! use static-libs ; then
+               find "${ED}" -name '*.a' -delete || die # Bug 783984
+       fi
+}

diff --git a/sys-libs/libnvidia-container/libnvidia-container-9999.ebuild 
b/sys-libs/libnvidia-container/libnvidia-container-9999.ebuild
index 7fab821162..2aa3cbf3fb 100644
--- a/sys-libs/libnvidia-container/libnvidia-container-9999.ebuild
+++ b/sys-libs/libnvidia-container/libnvidia-container-9999.ebuild
@@ -1,8 +1,11 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
+# 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";
 
@@ -12,43 +15,82 @@ if [[ "${PV}" == "9999" ]] ; then
 else
        SRC_URI="
                https://github.com/NVIDIA/${PN}/archive/v${PV/_rc/-rc.}.tar.gz 
-> ${P}.tar.gz
+               
https://github.com/NVIDIA/nvidia-modprobe/archive/${NVMODV}.tar.gz -> 
${PN}-nvidia-modprobe-${NVMODV}.tar.gz
        "
        S="${WORKDIR}/${PN}-${PV/_rc/-rc.}"
+       NVMODS="${WORKDIR}/nvidia-modprobe-${NVMODV}"
        KEYWORDS="~amd64"
 fi
 
 LICENSE="Apache-2.0"
-SLOT="0"
-
+SLOT="0/${PV}"
+IUSE="doc static-libs"
 
 RDEPEND="
-       net-libs/libtirpc
+       net-libs/libtirpc:=
        sys-libs/libcap
        sys-libs/libseccomp
+       virtual/libelf:=
        x11-drivers/nvidia-drivers
 "
 
 DEPEND="${RDEPEND}"
 
 BDEPEND="
+       dev-build/bmake
+       dev-lang/go
        net-libs/rpcsvc-proto
        sys-apps/lsb-release
-       dev-build/bmake
        virtual/pkgconfig
 "
 
 PATCHES=(
-       "${FILESDIR}"/${PN}-1.1.1-add-enum-h.patch
-       "${FILESDIR}"/${PN}-1.1.1-add-sysfs-c.patch
-       "${FILESDIR}"/${PN}-1.1.1-add-sysfs-h.patch
-       "${FILESDIR}"/${PN}-1.1.1-add-utils-c.patch
-       "${FILESDIR}"/${PN}-1.1.1-add-utils-h.patch
-       "${FILESDIR}"/${PN}-1.7.0-fix-git.patch
-       "${FILESDIR}"/${PN}-1.8.0-fix-makefile.patch
-       "${FILESDIR}"/${PN}-1.1.1-fix-nvc.patch
-       "${FILESDIR}"/${PN}-1.3.0-fix-nvc-info.patch
-       "${FILESDIR}"/${PN}-1.3.0-fix-nvc-mount.patch
-       "${FILESDIR}"/${PN}-1.3.0-fix-modprobe-utils-c.patch
-       "${FILESDIR}"/${PN}-1.3.0-fix-modprobe-utils-h.patch
-       "${FILESDIR}"/${PN}-1.8.0-fix-nvcgomk.patch
+       "${FILESDIR}"/${PN}-1.14.6-fix-makefile.patch
 )
+
+DOCS=( COPYING COPYING.LESSER LICENSE NOTICE README.md)
+
+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
+
+       default
+}
+
+src_compile() {
+       export GOPATH="${S}"
+       export GOFLAGS="-mod=vendor"
+       IFS='_' read -r MY_LIB_VERSION MY_LIB_TAG <<< "${PV}"
+       emake \
+               CGO_CFLAGS="${CFLAGS}" \
+               CGO_LDFLAGS="${LDFLAGS}" \
+               GO_LDFLAGS="-compressdwarf=false -linkmode=external" \
+               REVISION="${PV}" \
+               LIB_VERSION="${MY_LIB_VERSION}" \
+               LIB_TAG="${MY_LIB_TAG}"
+}
+
+src_install() {
+       emake \
+               CGO_CFLAGS="${CFLAGS}" \
+               CGO_LDFLAGS="${LDFLAGS}" \
+               GO_LDFLAGS="-compressdwarf=false -linkmode=external" \
+               REVISION="${PV}" \
+               LIB_VERSION="${MY_LIB_VERSION}" \
+               LIB_TAG="${MY_LIB_TAG}" \
+               DESTDIR="${D}" \
+               install
+       # Install docs
+       if use doc ; then
+               einstalldocs # Bug 831705
+       fi
+       # Cleanup static libraries
+       if ! use static-libs ; then
+               find "${ED}" -name '*.a' -delete || die # Bug 783984
+       fi
+}

diff --git a/sys-libs/libnvidia-container/metadata.xml 
b/sys-libs/libnvidia-container/metadata.xml
index a1c24bc30e..02d260f669 100644
--- a/sys-libs/libnvidia-container/metadata.xml
+++ b/sys-libs/libnvidia-container/metadata.xml
@@ -9,10 +9,15 @@
                <remote-id type="github">NVIDIA/libnvidia-container</remote-id>
        </upstream>
        <longdescription lang="en">
-       NVIDIA container runtime library, this repository provides a library 
and a
-       simple CLI utility to automatically configure GNU/Linux containers
-       leveraging NVIDIA hardware.
-       The implementation relies on kernel primitives and is designed to be
-       agnostic of the container runtime.
+               NVIDIA container runtime library, this repository provides a 
library and
+               a simple CLI utility to automatically configure GNU/Linux 
containers
+               leveraging NVIDIA hardware.
+               The implementation relies on kernel primitives and is designed 
to be
+               agnostic of the container runtime.
+       </longdescription>
+       <longdescription lang="zh">
+               NVIDIA容器运行时库,这个仓库提供了一个库和一个简单的命令行工具,用于自动
+               配置利用NVIDIA硬件的GNU/Linux容器。这个实现依赖于内核原语,并旨在与容器
+               运行时无关。
        </longdescription>
 </pkgmetadata>

Reply via email to