From patchwork Thu Feb 20 20:11:48 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vincent Fazio X-Patchwork-Id: 1241639 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.136; helo=silver.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=xes-inc.com Received: from silver.osuosl.org (smtp3.osuosl.org [140.211.166.136]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 48Nm2j6HMmz9sRR for ; Fri, 21 Feb 2020 07:11:57 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by silver.osuosl.org (Postfix) with ESMTP id 92CC920347; Thu, 20 Feb 2020 20:11:55 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from silver.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id URKc+jyNJ74z; Thu, 20 Feb 2020 20:11:53 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by silver.osuosl.org (Postfix) with ESMTP id 90FFC2038B; Thu, 20 Feb 2020 20:11:53 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id A1BF41BF380 for ; Thu, 20 Feb 2020 20:11:52 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 9E66387632 for ; Thu, 20 Feb 2020 20:11:52 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xJzhqUqd-S4N for ; Thu, 20 Feb 2020 20:11:51 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail.xes-mad.com (xes-mad.com [162.248.234.2]) by whitealder.osuosl.org (Postfix) with ESMTPS id BA5B5875B6 for ; Thu, 20 Feb 2020 20:11:51 +0000 (UTC) Received: from vfazio1.xes-mad.com (vfazio1.xes-mad.com [10.52.16.140]) by mail.xes-mad.com (Postfix) with ESMTP id DA3BD2026B; Thu, 20 Feb 2020 14:11:50 -0600 (CST) From: Vincent Fazio To: buildroot@buildroot.org Date: Thu, 20 Feb 2020 14:11:48 -0600 Message-Id: <20200220201149.7426-1-vfazio@xes-inc.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [Buildroot] [PATCH v2 1/2] package/nvidia-driver: fixup libraries according to README X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: "Yann E . MORIN" , Vincent Fazio Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Create a symlink for libglx.so and drop libnvidia-wfb.so (aka libwfb.so) since all selectable xserver versions in Buildroot provide their own. VDPAU libraries should be installed into /usr/lib/vdpau/ https://download.nvidia.com/XFree86/Linux-x86_64/390.67/README/installedcomponents.html Also, allow specifying target subdirectory per library and respect it in the install loop. Signed-off-by: Vincent Fazio --- Depends on http://patchwork.ozlabs.org/patch/1181847/ package/nvidia-driver/nvidia-driver.mk | 57 ++++++++++++++++---------- 1 file changed, 35 insertions(+), 22 deletions(-) diff --git a/package/nvidia-driver/nvidia-driver.mk b/package/nvidia-driver/nvidia-driver.mk index baf2ba2be5..0ac8d2a5fb 100644 --- a/package/nvidia-driver/nvidia-driver.mk +++ b/package/nvidia-driver/nvidia-driver.mk @@ -62,7 +62,7 @@ NVIDIA_DRIVER_LIBS_MISC = \ libnvidia-glcore.so.$(NVIDIA_DRIVER_VERSION) \ libnvidia-glsi.so.$(NVIDIA_DRIVER_VERSION) \ tls/libnvidia-tls.so.$(NVIDIA_DRIVER_VERSION) \ - libvdpau_nvidia.so.$(NVIDIA_DRIVER_VERSION) \ + libvdpau_nvidia.so.$(NVIDIA_DRIVER_VERSION):vdpau/ \ libnvidia-ml.so.$(NVIDIA_DRIVER_VERSION) NVIDIA_DRIVER_LIBS += \ @@ -92,10 +92,9 @@ NVIDIA_DRIVER_LIBS += \ endif # We refer to the destination path; the origin file has no directory component -NVIDIA_DRIVER_X_MODS = \ - drivers/nvidia_drv.so \ - extensions/libglx.so.$(NVIDIA_DRIVER_VERSION) \ - libnvidia-wfb.so.$(NVIDIA_DRIVER_VERSION) +NVIDIA_DRIVER_LIBS += \ + nvidia_drv.so:xorg/modules/drivers/ \ + libglx.so.$(NVIDIA_DRIVER_VERSION):xorg/modules/extensions/ endif # X drivers @@ -154,24 +153,31 @@ define NVIDIA_DRIVER_EXTRACT_CMDS endef # Helper to install libraries -# $1: destination directory (target or staging) +# $1: library name +# $2: target directory # # For all libraries, we install them and create a symlink using # their SONAME, so we can link to them at runtime; we also create # the no-version symlink, so we can link to them at build time. +define NVIDIA_DRIVER_INSTALL_LIB + $(INSTALL) -D -m 0644 $(@D)/$(1) $(2)$(notdir $(1)) + libsoname="$$( $(TARGET_READELF) -d "$(@D)/$(1)" \ + |sed -r -e '/.*\(SONAME\).*\[(.*)\]$$/!d; s//\1/;' )"; \ + if [ -n "$${libsoname}" -a "$${libsoname}" != "$(notdir $(1))" ]; then \ + ln -sf $(notdir $(1)) $(2)$${libsoname}; \ + fi + baseso=$(firstword $(subst .,$(space),$(notdir $(1)))).so; \ + if [ -n "$${baseso}" -a "$${baseso}" != "$(notdir $(1))" ]; then \ + ln -sf $(notdir $(1)) $(2)$${baseso}; \ + fi +endef + +# Helper to install libraries +# $1: destination directory (target or staging) define NVIDIA_DRIVER_INSTALL_LIBS - $(foreach lib,$(NVIDIA_DRIVER_LIBS),\ - $(INSTALL) -D -m 0644 $(@D)/$(lib) $(1)/usr/lib/$(notdir $(lib)) - libsoname="$$( $(TARGET_READELF) -d "$(@D)/$(lib)" \ - |sed -r -e '/.*\(SONAME\).*\[(.*)\]$$/!d; s//\1/;' )"; \ - if [ -n "$${libsoname}" -a "$${libsoname}" != "$(notdir $(lib))" ]; then \ - ln -sf $(notdir $(lib)) \ - $(1)/usr/lib/$${libsoname}; \ - fi - baseso=$(firstword $(subst .,$(space),$(notdir $(lib)))).so; \ - if [ -n "$${baseso}" -a "$${baseso}" != "$(notdir $(lib))" ]; then \ - ln -sf $(notdir $(lib)) $(1)/usr/lib/$${baseso}; \ - fi + $(foreach lib,$(NVIDIA_DRIVER_LIBS), + $(call NVIDIA_DRIVER_INSTALL_LIB,$(shell echo $(lib) | awk -F":" '{print $$1}'), \ + $(1)/usr/lib/$(shell echo $(lib) | awk -F":" '{print $$2}')) ) endef @@ -181,18 +187,25 @@ define NVIDIA_DRIVER_INSTALL_STAGING_CMDS $(NVIDIA_DRIVER_INSTALL_GL_DEV) endef +define NVIDIA_DRIVER_SYMLINK_LIBGLX + # libglx needs a symlink according to the driver README. It has no SONAME + ln -sf libglx.so.$(NVIDIA_DRIVER_VERSION) \ + $(TARGET_DIR)/usr/lib/xorg/modules/extensions/libglx.so +endef + # For target, install libraries and X.org modules define NVIDIA_DRIVER_INSTALL_TARGET_CMDS $(call NVIDIA_DRIVER_INSTALL_LIBS,$(TARGET_DIR)) - $(foreach m,$(NVIDIA_DRIVER_X_MODS), \ - $(INSTALL) -D -m 0644 $(@D)/$(notdir $(m)) \ - $(TARGET_DIR)/usr/lib/xorg/modules/$(m) - ) $(foreach p,$(NVIDIA_DRIVER_PROGS), \ $(INSTALL) -D -m 0755 $(@D)/$(p) \ $(TARGET_DIR)/usr/bin/$(p) ) + $(NVIDIA_DRIVER_SYMLINK_LIBGLX) $(NVIDIA_DRIVER_INSTALL_KERNEL_MODULE) endef +# Due to a conflict with xserver_xorg-server, this needs to be performed when +# finalizing the target filesystem to make sure this version is used. +NVIDIA_DRIVER_TARGET_FINALIZE_HOOKS += NVIDIA_DRIVER_SYMLINK_LIBGLX + $(eval $(generic-package)) From patchwork Thu Feb 20 20:11:49 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vincent Fazio X-Patchwork-Id: 1241640 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=xes-inc.com Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 48Nm2p08RNz9sRR for ; Fri, 21 Feb 2020 07:12:02 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 26EE8875B6; Thu, 20 Feb 2020 20:11:59 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Nspt3F7bXshP; Thu, 20 Feb 2020 20:11:56 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id C0A928763B; Thu, 20 Feb 2020 20:11:56 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by ash.osuosl.org (Postfix) with ESMTP id 31DBD1BF380 for ; Thu, 20 Feb 2020 20:11:55 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 2F129861C5 for ; Thu, 20 Feb 2020 20:11:55 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6c3y8u2542Sb for ; Thu, 20 Feb 2020 20:11:54 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail.xes-mad.com (xes-mad.com [162.248.234.2]) by fraxinus.osuosl.org (Postfix) with ESMTPS id B533D86144 for ; Thu, 20 Feb 2020 20:11:54 +0000 (UTC) Received: from vfazio1.xes-mad.com (vfazio1.xes-mad.com [10.52.16.140]) by mail.xes-mad.com (Postfix) with ESMTP id 33DF42026B; Thu, 20 Feb 2020 14:11:54 -0600 (CST) From: Vincent Fazio To: buildroot@buildroot.org Date: Thu, 20 Feb 2020 14:11:49 -0600 Message-Id: <20200220201149.7426-2-vfazio@xes-inc.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200220201149.7426-1-vfazio@xes-inc.com> References: <20200220201149.7426-1-vfazio@xes-inc.com> MIME-Version: 1.0 Subject: [Buildroot] [PATCH v2 2/2] package/nvidia-driver: bump version to 390.132 X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Vincent Fazio , "Yann E . MORIN" , Zach Vargas Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" From: Zach Vargas Support Linux kernel 5.4. Change the 64-bit download to exclude 32-bit compatibility libs. Signed-off-by: Zach Vargas [vfazio: 64-bit package change] Signed-off-by: Vincent Fazio --- Depends on http://patchwork.ozlabs.org/patch/1181847/ package/nvidia-driver/nvidia-driver.hash | 4 ++-- package/nvidia-driver/nvidia-driver.mk | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package/nvidia-driver/nvidia-driver.hash b/package/nvidia-driver/nvidia-driver.hash index 79ac052610..7f2248d0f9 100644 --- a/package/nvidia-driver/nvidia-driver.hash +++ b/package/nvidia-driver/nvidia-driver.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 6f4af70ee3d03ed31c497a5d555164c56057b53ecedfc0d2c8de4b0b90728805 NVIDIA-Linux-x86-390.67.run -sha256 6df2ca1a7420b6751bcaf257d321b14f4e5f7ca54d77a43514912a3792ece65a NVIDIA-Linux-x86_64-390.67.run +sha256 51adb28f0ed4548f35a88a93ad6767ebd807fa14f418bf5e51a6d63a3ff7f275 NVIDIA-Linux-x86-390.132.run +sha256 b6b4b8af37e78e026c9ebdf4a5c64ea412dfcb710931dd028c22dac228de659d NVIDIA-Linux-x86_64-390.132-no-compat32.run sha256 bd28b0c5aeeb00eb11d3ec6f6f3449d4b3a40100914258332734a53527997526 LICENSE diff --git a/package/nvidia-driver/nvidia-driver.mk b/package/nvidia-driver/nvidia-driver.mk index 0ac8d2a5fb..75041ecb46 100644 --- a/package/nvidia-driver/nvidia-driver.mk +++ b/package/nvidia-driver/nvidia-driver.mk @@ -4,10 +4,10 @@ # ################################################################################ -NVIDIA_DRIVER_VERSION = 390.67 +NVIDIA_DRIVER_VERSION = 390.132 NVIDIA_DRIVER_SUFFIX = $(if $(BR2_x86_64),_64) NVIDIA_DRIVER_SITE = http://download.nvidia.com/XFree86/Linux-x86$(NVIDIA_DRIVER_SUFFIX)/$(NVIDIA_DRIVER_VERSION) -NVIDIA_DRIVER_SOURCE = NVIDIA-Linux-x86$(NVIDIA_DRIVER_SUFFIX)-$(NVIDIA_DRIVER_VERSION).run +NVIDIA_DRIVER_SOURCE = NVIDIA-Linux-x86$(NVIDIA_DRIVER_SUFFIX)-$(NVIDIA_DRIVER_VERSION)$(if $(BR2_x86_64),-no-compat32).run NVIDIA_DRIVER_LICENSE = NVIDIA Software License NVIDIA_DRIVER_LICENSE_FILES = LICENSE NVIDIA_DRIVER_REDISTRIBUTE = NO