mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-22 13:33:32 -04:00
sys-libs/libnvidia-container: treeclean, promoted to ::gentoo
Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo@sysrq.in>
This commit is contained in:
@@ -1,3 +0,0 @@
|
|||||||
DIST libnvidia-container-1.16.1.tar.gz 1610619 BLAKE2B dc490c1bcd891119841bb5c1aa0c1977f0f326118f7bc86adbab6a0053f52950e4ced5a4b025d6b557c1526e3125aa69ac47c10c621993becc5c40b13d6990c5 SHA512 b304c284c5ab0c3544362307dc16ffcca8d34497e4356a520dc6da81a86a62b2a262b528cba559bb0d7a3addf018c3b50b6cb78669c82c1b4acae159e5922548
|
|
||||||
DIST libnvidia-container-1.17.0.tar.gz 1611953 BLAKE2B 7e0506b77790b4e079285990dec3486a8c0b482c9e9864dea1257b6250dc5371f6f3f2d8cd78ec4d73b09e45a7ac4cf31f8d03b64b96507319d433797aa5c435 SHA512 cdb3dba9033414211d5d41c623ef71cd7296be4e8f87a03afcb557fb27c3fa2212c55479cd3235f935426ca7b48e9d616753cbd9b85d38f7e8d1fa5208cc9419
|
|
||||||
DIST libnvidia-container-nvidia-modprobe-550.54.14.tar.gz 47147 BLAKE2B 7b334877d98d0c75d5750192dea868436938852443ced14e74e59076ed4d8be9e361cdefbe48295d87bb91ac4565152ec3f3233479b3da19bb8baf8e7ef53cd6 SHA512 279228aa315ff5fd1a23df23527aff58b2319f11f9fc7d939fa285ea933b4cc6d223451e20ecf7f50baba9f6c9c100e57cb77675d0d17fa77f19d3fea2ccc193
|
|
||||||
@@ -1,193 +0,0 @@
|
|||||||
# 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))
|
|
||||||
|
|
||||||
@@ -1,220 +0,0 @@
|
|||||||
Base on The patch from Arch[1] but better suited to Gentoo needs.
|
|
||||||
|
|
||||||
[1]: https://gitlab.archlinux.org/archlinux/packaging/packages/libnvidia-container/-/blob/main/fix-makefile.patch
|
|
||||||
diff --git a/Makefile b/Makefile
|
|
||||||
index 6fb6976..c6f26d3 100644
|
|
||||||
--- a/Makefile
|
|
||||||
+++ b/Makefile
|
|
||||||
@@ -18,18 +18,16 @@
|
|
||||||
##### Global variables #####
|
|
||||||
|
|
||||||
WITH_NVCGO ?= yes
|
|
||||||
-WITH_LIBELF ?= no
|
|
||||||
-WITH_TIRPC ?= no
|
|
||||||
+WITH_TIRPC ?= yes
|
|
||||||
WITH_SECCOMP ?= yes
|
|
||||||
|
|
||||||
##### Global definitions #####
|
|
||||||
|
|
||||||
-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
|
|
||||||
|
|
||||||
@@ -158,20 +156,17 @@ ifeq ($(WITH_NVCGO), yes)
|
|
||||||
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
|
|
||||||
+LIB_CPPFLAGS += -isystem $(includedir)/tirpc -DWITH_TIRPC
|
|
||||||
+# dynamically link with system tirpc
|
|
||||||
+LIB_LDLIBS_SHARED += -lpthread -ltirpc
|
|
||||||
endif
|
|
||||||
ifeq ($(WITH_SECCOMP), yes)
|
|
||||||
-LIB_CPPFLAGS += -DWITH_SECCOMP $(shell pkg-config --cflags libseccomp)
|
|
||||||
-LIB_LDLIBS_SHARED += $(shell pkg-config --libs libseccomp)
|
|
||||||
+LIB_CPPFLAGS += -DWITH_SECCOMP $(shell $(PKG_CONFIG) --cflags libseccomp)
|
|
||||||
+LIB_LDLIBS_SHARED += $(shell $(PKG_CONFIG) --libs libseccomp)
|
|
||||||
endif
|
|
||||||
LIB_CPPFLAGS += $(CPPFLAGS)
|
|
||||||
LIB_CFLAGS += $(CFLAGS)
|
|
||||||
@@ -222,22 +217,14 @@ $(BIN_OBJS): %.o: %.c | shared
|
|
||||||
-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 #####
|
|
||||||
|
|
||||||
@@ -262,15 +249,9 @@ deps: $(LIB_RPC_SRCS) $(BUILD_DEFS)
|
|
||||||
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
|
|
||||||
@@ -279,18 +260,18 @@ install: all
|
|
||||||
$(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
|
|
||||||
@@ -300,14 +281,12 @@ uninstall:
|
|
||||||
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
|
|
||||||
@@ -320,12 +299,6 @@ depsclean:
|
|
||||||
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)
|
|
||||||
diff --git a/mk/common.mk b/mk/common.mk
|
|
||||||
index f6d5fbf..594ec08 100644
|
|
||||||
--- a/mk/common.mk
|
|
||||||
+++ b/mk/common.mk
|
|
||||||
@@ -19,6 +19,7 @@ RPCGEN ?= rpcgen
|
|
||||||
BMAKE ?= MAKEFLAGS= bmake
|
|
||||||
DOCKER ?= docker
|
|
||||||
PATCH ?= patch
|
|
||||||
+PKG_CONFIG ?= pkg-config
|
|
||||||
|
|
||||||
UID := $(shell id -u)
|
|
||||||
GID := $(shell id -g)
|
|
||||||
diff --git a/mk/nvcgo.mk b/mk/nvcgo.mk
|
|
||||||
index 0060f0e..877a72b 100644
|
|
||||||
--- a/mk/nvcgo.mk
|
|
||||||
+++ b/mk/nvcgo.mk
|
|
||||||
@@ -17,7 +17,7 @@ include $(MAKE_DIR)/common.mk
|
|
||||||
##### Source definitions #####
|
|
||||||
|
|
||||||
PREFIX := nvcgo
|
|
||||||
-SRCS_DIR := $(DEPS_DIR)/src/$(PREFIX)
|
|
||||||
+SRCS_DIR := $(CURDIR)/src/$(PREFIX)
|
|
||||||
VERSION := $(VERSION)
|
|
||||||
|
|
||||||
##### Public rules #####
|
|
||||||
@@ -25,9 +25,6 @@ VERSION := $(VERSION)
|
|
||||||
.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
|
|
||||||
diff --git a/mk/nvidia-modprobe.mk b/mk/nvidia-modprobe.mk
|
|
||||||
index 3406222..339275f 100644
|
|
||||||
--- a/mk/nvidia-modprobe.mk
|
|
||||||
+++ b/mk/nvidia-modprobe.mk
|
|
||||||
@@ -25,7 +25,7 @@ PATCH_FILE := $(MAKE_DIR)/nvidia-modprobe.patch
|
|
||||||
|
|
||||||
ARFLAGS := -rU
|
|
||||||
CPPFLAGS := -D_FORTIFY_SOURCE=2 -DNV_LINUX
|
|
||||||
-CFLAGS := -O2 -g -fdata-sections -ffunction-sections -fstack-protector -fno-strict-aliasing -fPIC
|
|
||||||
+CFLAGS := -fdata-sections -ffunction-sections -fstack-protector -fno-strict-aliasing -fPIC $(CFLAGS)
|
|
||||||
|
|
||||||
##### Private rules #####
|
|
||||||
|
|
||||||
diff --git a/src/nvcgo/Makefile b/src/nvcgo/Makefile
|
|
||||||
index eaee95a..7d5bd74 100644
|
|
||||||
--- a/src/nvcgo/Makefile
|
|
||||||
+++ b/src/nvcgo/Makefile
|
|
||||||
@@ -31,15 +31,15 @@ OBJ_NAME := $(LIB_NAME).so
|
|
||||||
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 $(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)"; \
|
|
||||||
- $(GO) build -o $(@) -ldflags "-s -w" -buildmode=c-shared .
|
|
||||||
+ export CGO_LDFLAGS="-Wl,--gc-sections -Wl,-soname,$(LIB_SONAME) $(CGO_LDFLAGS)"; \
|
|
||||||
+ $(GO) build -o $(@) -ldflags "$(GO_LDFLAGS)" -buildmode=c-shared .
|
|
||||||
|
|
||||||
install: $(OBJ_NAME)
|
|
||||||
$(INSTALL) -d -m 755 $(addprefix $(DESTDIR),$(libdir) $(includedir)/$(PKG_NAME))
|
|
||||||
@@ -1,105 +0,0 @@
|
|||||||
# 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
|
|
||||||
"
|
|
||||||
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="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_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
|
|
||||||
|
|
||||||
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
|
|
||||||
}
|
|
||||||
@@ -1,123 +0,0 @@
|
|||||||
# Copyright 1999-2024 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}
|
|
||||||
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
|
|
||||||
|
|
||||||
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 CC 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
|
|
||||||
}
|
|
||||||
@@ -1,123 +0,0 @@
|
|||||||
# Copyright 1999-2024 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}
|
|
||||||
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
|
|
||||||
|
|
||||||
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 CC 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
|
|
||||||
}
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
|
|
||||||
<pkgmetadata>
|
|
||||||
<maintainer type="person">
|
|
||||||
<email>vowstar@gmail.com</email>
|
|
||||||
<name>Huang Rui</name>
|
|
||||||
</maintainer>
|
|
||||||
<upstream>
|
|
||||||
<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.
|
|
||||||
</longdescription>
|
|
||||||
<longdescription lang="zh">
|
|
||||||
NVIDIA容器运行时库,这个仓库提供了一个库和一个简单的命令行工具,用于自动
|
|
||||||
配置利用NVIDIA硬件的GNU/Linux容器。这个实现依赖于内核原语,并旨在与容器
|
|
||||||
运行时无关。
|
|
||||||
</longdescription>
|
|
||||||
</pkgmetadata>
|
|
||||||
Reference in New Issue
Block a user