diff options
Diffstat (limited to 'abs/core/nvidia-390xx-settings')
-rw-r--r-- | abs/core/nvidia-390xx-settings/PKGBUILD | 64 | ||||
-rw-r--r-- | abs/core/nvidia-390xx-settings/libxnvctrl_so.patch | 67 |
2 files changed, 131 insertions, 0 deletions
diff --git a/abs/core/nvidia-390xx-settings/PKGBUILD b/abs/core/nvidia-390xx-settings/PKGBUILD new file mode 100644 index 0000000..1d76904 --- /dev/null +++ b/abs/core/nvidia-390xx-settings/PKGBUILD @@ -0,0 +1,64 @@ +# Maintainer: Sven-Hendrik Haase <svenstaro@gmail.com> + +pkgbase=nvidia-390xx-settings +pkgname=('nvidia-390xx-settings' 'libxnvctrl-390xx') +pkgver=390.116 +pkgrel=1 +pkgdesc='Tool for configuring the NVIDIA graphics driver, 390xx legacy branch' +url='https://github.com/NVIDIA/nvidia-settings' +arch=('x86_64') +license=('GPL2') +makedepends=('git' 'inetutils' 'gtk2' 'jansson' 'gtk3' 'libxv' 'libvdpau' 'nvidia-390xx-utils' 'libxext') +options=('staticlibs') +source=(nvidia-settings-${pkgver}.tar.gz::https://github.com/NVIDIA/nvidia-settings/archive/${pkgver}.tar.gz + libxnvctrl_so.patch) +sha512sums=('81d15c4e969b8d5cc02749e9fa32d6ab75f2bccfcfd1d2d74dca4954384df730e50f774c7df45ae915fc64bb7369f438fab2d4d695044e0ba1d6d5db44875751' + 'f69f5dc84fe624579a3c9ce877f4ae4e34c2184877576afbea07b8abdd7ff01e470517f2b77cd11a904518cbcb83fb388ca1d08888006f0ef2854723920c9cf8') + +prepare() { + export PREFIX=/usr + export NV_USE_BUNDLED_LIBJANSSON=0 + cd nvidia-settings-${pkgver} + patch -p1 < "${srcdir}/libxnvctrl_so.patch" +} + +build() { + cd nvidia-settings-${pkgver} + make + make -C src/libXNVCtrl +} + +package_nvidia-390xx-settings() { + depends=('jansson' 'gtk3' 'libxv' 'libvdpau' 'nvidia-390xx-utils' 'libxnvctrl-390xx') + conflicts=('nvidia-settings') + provides=('nvidia-settings') + + cd nvidia-settings-${pkgver} + make DESTDIR="${pkgdir}" install + + install -D -m644 doc/nvidia-settings.desktop "${pkgdir}/usr/share/applications/nvidia-settings.desktop" + install -D -m644 doc/nvidia-settings.png "${pkgdir}/usr/share/pixmaps/nvidia-settings.png" + sed -e 's:__UTILS_PATH__:/usr/bin:' -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' -i "${pkgdir}/usr/share/applications/nvidia-settings.desktop" + + rm "$pkgdir/usr/lib/libnvidia-gtk2.so.$pkgver" +} + +package_libxnvctrl-390xx() { + depends=('libxext') + conflicts=('libxnvctrl') + provides=('libxnvctrl') + pkgdesc='NVIDIA NV-CONTROL X extension, 390xx legacy branch' + + cd nvidia-settings-${pkgver} + install -Dm 644 doc/{NV-CONTROL-API.txt,FRAMELOCK.txt} -t "${pkgdir}/usr/share/doc/${pkgname}" + install -Dm 644 samples/{Makefile,README,*.c,*.h,*.mk} -t "${pkgdir}/usr/share/doc/${pkgname}/samples" + + cd src/libXNVCtrl + install -Dm 644 *.h -t "${pkgdir}/usr/include/NVCtrl" + install -Dm 644 libXNVCtrl.a -t "${pkgdir}/usr/lib" + install -Dm 755 libXNVCtrl.so.0.0.0 -t "${pkgdir}/usr/lib" + ln -s libXNVCtrl.so.0.0.0 "${pkgdir}/usr/lib/libXNVCtrl.so.0" + ln -s libXNVCtrl.so.0 "${pkgdir}/usr/lib/libXNVCtrl.so" +} + +# vim: ts=2 sw=2 et: diff --git a/abs/core/nvidia-390xx-settings/libxnvctrl_so.patch b/abs/core/nvidia-390xx-settings/libxnvctrl_so.patch new file mode 100644 index 0000000..724064e --- /dev/null +++ b/abs/core/nvidia-390xx-settings/libxnvctrl_so.patch @@ -0,0 +1,67 @@ +--- a/src/Makefile ++++ b/src/Makefile +@@ -106,6 +106,8 @@ + XNVCTRL_DIR ?= libXNVCtrl + XNVCTRL_MAKEFILE ?= Makefile + XNVCTRL_ARCHIVE ?= $(XNVCTRL_DIR)/libXNVCtrl.a ++XNVCTRL_SHARED ?= $(XNVCTRL_DIR)/libXNVCtrl.so.0 ++XNVCTRL_LIB ?= $(XNVCTRL_SHARED) + XCONFIG_PARSER_DIR ?= XF86Config-parser + COMMON_UTILS_DIR ?= common-utils + COMMON_UNIX_DIR ?= common-unix +@@ -280,15 +282,18 @@ + $(MKDIR) $(BINDIR) + $(INSTALL) $(INSTALL_BIN_ARGS) $< $(BINDIR)/$(notdir $<) + ++$(XNVCTRL_ARCHIVE) $(XNVCTRL_SHARED): ++ $(MAKE) -C $(XNVCTRL_DIR) ++ + $(eval $(call DEBUG_INFO_RULES, $(NVIDIA_SETTINGS))) +-$(NVIDIA_SETTINGS).unstripped: $(OBJS) $(XNVCTRL_ARCHIVE) ++$(NVIDIA_SETTINGS).unstripped: $(OBJS) $(XNVCTRL_LIB) + $(call quiet_cmd,LINK) $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) \ +- -rdynamic -o $@ $(OBJS) $(XNVCTRL_ARCHIVE) $(LIBS) ++ -rdynamic -o $@ $(OBJS) $(XNVCTRL_LIB) $(LIBS) + + $(eval $(call DEBUG_INFO_RULES, $(GTK2LIB))) + $(GTK2LIB).unstripped: $(GTK2_OBJS) $(XCP_OBJS) $(IMAGE_OBJS) $(VERSION_MK) + $(call quiet_cmd,LINK) -shared $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) \ +- $(XNVCTRL_ARCHIVE) $(LIBS) $(GTK2_LIBS) \ ++ $(XNVCTRL_LIB) $(LIBS) $(GTK2_LIBS) \ + -Wl,--unresolved-symbols=ignore-all -o $@ \ + -Wl,-soname -Wl,$(GTK2LIB_SONAME) \ + $(GTK2_OBJS) $(XCP_OBJS) +@@ -297,7 +302,7 @@ + $(eval $(call DEBUG_INFO_RULES, $(GTK3LIB))) + $(GTK3LIB).unstripped: $(GTK3_OBJS) $(XCP_OBJS) $(VERSION_MK) + $(call quiet_cmd,LINK) -shared $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) \ +- $(XNVCTRL_ARCHIVE) $(LIBS) $(GTK3_LIBS) \ ++ $(XNVCTRL_LIB) $(LIBS) $(GTK3_LIBS) \ + -Wl,--unresolved-symbols=ignore-all -o $@ \ + -Wl,-soname -Wl,$(GTK3LIB_SONAME) \ + $(GTK3_OBJS) $(XCP_OBJS) +--- a/src/libXNVCtrl/Makefile ++++ b/src/libXNVCtrl/Makefile +@@ -55,10 +55,17 @@ + .PHONY: clean + + all: $(LIBXNVCTRL) ++all: libXNVCtrl.so + + $(LIBXNVCTRL) : $(OBJS) + $(AR) ru $@ $(OBJS) + ++libXNVCtrl.so: $(OBJS) ++ $(RM) $@ $@.* ++ $(CC) -shared -Wl,-soname=$@.0 -o $@.0.0.0 $(LDFLAGS) $^ -lXext -lX11 ++ ln -s $@.0.0.0 $@.0 ++ ln -s $@.0 $@ ++ + # define the rule to build each object file + $(foreach src,$(SRC),$(eval $(call DEFINE_OBJECT_RULE,TARGET,$(src)))) + +@@ -68,3 +75,4 @@ + clean: + rm -rf $(LIBXNVCTRL) *~ $(STAMP_C) \ + $(OUTPUTDIR)/*.o $(OUTPUTDIR)/*.d ++ rm -f libXNVCtrl.so libXNVCtrl.so.* |