@@ -2387,6 +2387,7 @@ menu "System tools"
source "package/numactl/Config.in"
source "package/nut/Config.in"
source "package/nvidia-container-runtime/Config.in"
+ source "package/nvidia-container-toolkit/Config.in"
source "package/openrc/Config.in"
source "package/openvmtools/Config.in"
source "package/pamtester/Config.in"
new file mode 100644
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_NVIDIA_CONTAINER_TOOLKIT
+ bool "nvidia-container-toolkit"
+ depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
+ depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on BR2_TOOLCHAIN_USES_GLIBC # fexecve
+ select BR2_PACKAGE_LIBNVIDIA_CONTAINER
+ select BR2_PACKAGE_NVIDIA_CONTAINER_RUNTIME
+ help
+ NVIDIA Container Toolkit is a OCI-spec hook for
+ support for mounting GPUs into containers.
+
+ https://github.com/NVIDIA/nvidia-container-toolkit
+
+comment "nvidia-container-toolkit needs a glibc toolchain w/ threads"
+ depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS && \
+ BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
+ depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAN_USES_GLIBC
new file mode 100644
@@ -0,0 +1,3 @@
+# Locally computed
+sha256 f386cba53b818e557583a18e7d84a6772d2eb1fa32778854557f7a210f44153e nvidia-container-toolkit-1.2.1.tar.gz
+sha256 552a739c3b25792263f731542238b92f6f8d07e9a488eae27e6c4690038a8243 LICENSE
new file mode 100644
@@ -0,0 +1,30 @@
+################################################################################
+#
+# nvidia-container-toolkit
+#
+################################################################################
+
+NVIDIA_CONTAINER_TOOLKIT_VERSION = 1.2.1
+NVIDIA_CONTAINER_TOOLKIT_SITE = $(call github,NVIDIA,nvidia-container-toolkit,v$(NVIDIA_CONTAINER_TOOLKIT_VERSION))
+
+NVIDIA_CONTAINER_TOOLKIT_LICENSE = Apache-2.0
+NVIDIA_CONTAINER_TOOLKIT_LICENSE_FILES = LICENSE
+
+NVIDIA_CONTAINER_TOOLKIT_DEPENDENCIES = nvidia-container-runtime libnvidia-container
+
+NVIDIA_CONTAINER_TOOLKIT_BUILD_TARGETS = github.com/NVIDIA/container-toolkit/pkg
+NVIDIA_CONTAINER_TOOLKIT_BIN_NAME = nvidia-container-toolkit
+NVIDIA_CONTAINER_TOOLKIT_TAGS = cgo static_build
+
+define NVIDIA_CONTAINER_TOOLKIT_INSTALL_SUPPORT
+ ln -fs /usr/bin/$(NVIDIA_CONTAINER_TOOLKIT_BIN_NAME) \
+ $(TARGET_DIR)/usr/bin/nvidia-container-runtime-hook
+ $(INSTALL) -D -m 644 $(@D)/oci-nvidia-hook.json \
+ $(TARGET_DIR)/usr/share/containers/oci/hooks.d/oci-nvidia-hook.json
+ $(INSTALL) -D -m 755 $(@D)/oci-nvidia-hook \
+ $(TARGET_DIR)/usr/libexec/oci/hooks.d/oci-nvidia-hook
+endef
+
+NVIDIA_CONTAINER_TOOLKIT_POST_INSTALL_TARGET_HOOKS += NVIDIA_CONTAINER_TOOLKIT_INSTALL_SUPPORT
+
+$(eval $(golang-package))
NVIDIA Container Toolkit is a OCI-spec hook for support for mounting GPUs into containers. https://github.com/NVIDIA/nvidia-container-toolkit Signed-off-by: Christian Stewart <christian@paral.in> v2: - cjs: bump version from 1.2.0 -> 1.2.1 --- package/Config.in | 1 + package/nvidia-container-toolkit/Config.in | 18 +++++++++++ .../nvidia-container-toolkit.hash | 3 ++ .../nvidia-container-toolkit.mk | 30 +++++++++++++++++++ 4 files changed, 52 insertions(+) create mode 100644 package/nvidia-container-toolkit/Config.in create mode 100644 package/nvidia-container-toolkit/nvidia-container-toolkit.hash create mode 100644 package/nvidia-container-toolkit/nvidia-container-toolkit.mk