Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Romain Naour <romain.naour@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v4 1/5] package/nvidia-modprobe: new package
Date: Sat, 21 Nov 2020 11:18:58 +0100	[thread overview]
Message-ID: <c39da99f-96c6-66ef-8f49-4655112a5441@gmail.com> (raw)
In-Reply-To: <20201119075328.8599-1-christian@paral.in>

Hello Christian,

Le 19/11/2020 ? 08:53, Christian Stewart a ?crit?:
> nvidia-modprobe package adds a utility and headers for probing the NVIDIA
> hardware at runtime.
> 
> https://github.com/NVIDIA/nvidia-modprobe
> 
> Signed-off-by: Christian Stewart <christian@paral.in>
> ---
>  package/Config.in                            |  1 +
>  package/nvidia-modprobe/Config.in            | 12 ++++++
>  package/nvidia-modprobe/nvidia-modprobe.hash |  3 ++
>  package/nvidia-modprobe/nvidia-modprobe.mk   | 45 ++++++++++++++++++++
>  4 files changed, 61 insertions(+)
>  create mode 100644 package/nvidia-modprobe/Config.in
>  create mode 100644 package/nvidia-modprobe/nvidia-modprobe.hash
>  create mode 100644 package/nvidia-modprobe/nvidia-modprobe.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 016a99ed1a..fa1b5d35e9 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -502,6 +502,7 @@ endmenu
>  	source "package/nanocom/Config.in"
>  	source "package/neard/Config.in"
>  	source "package/nvidia-driver/Config.in"
> +	source "package/nvidia-modprobe/Config.in"
>  	source "package/nvme/Config.in"
>  	source "package/ofono/Config.in"
>  	source "package/on2-8170-modules/Config.in"
> diff --git a/package/nvidia-modprobe/Config.in b/package/nvidia-modprobe/Config.in
> new file mode 100644
> index 0000000000..35953a33d4
> --- /dev/null
> +++ b/package/nvidia-modprobe/Config.in
> @@ -0,0 +1,12 @@
> +config BR2_PACKAGE_NVIDIA_MODPROBE
> +	bool "nvidia-modprobe"
> +	depends on BR2_TOOLCHAIN_HAS_THREADS

glibc toolchains already select BR2_TOOLCHAIN_HAS_THREADS.

> +	depends on BR2_TOOLCHAIN_USES_GLIBC
> +	help
> +	  nvidia-modprobe package adds a utility and headers for
> +	  probing the NVIDIA hardware at runtime.
> +
> +	  https://github.com/NVIDIA/nvidia-modprobe
> +
> +comment "nvidia-modprobe needs a glibc toolchain w/ threads"
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_TOOLCHAN_USES_GLIBC
> diff --git a/package/nvidia-modprobe/nvidia-modprobe.hash b/package/nvidia-modprobe/nvidia-modprobe.hash
> new file mode 100644
> index 0000000000..99908680f0
> --- /dev/null
> +++ b/package/nvidia-modprobe/nvidia-modprobe.hash
> @@ -0,0 +1,3 @@
> +# Locally computed:
> +sha256 396b4102d3075a2dee3024652fae206a1b38ace54b8efb1e2c20757a11ec19f1  nvidia-modprobe-450.57.tar.gz
> +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING
> diff --git a/package/nvidia-modprobe/nvidia-modprobe.mk b/package/nvidia-modprobe/nvidia-modprobe.mk
> new file mode 100644
> index 0000000000..7eeee6716c
> --- /dev/null
> +++ b/package/nvidia-modprobe/nvidia-modprobe.mk
> @@ -0,0 +1,45 @@
> +################################################################################
> +#
> +# nvidia-modprobe
> +#
> +################################################################################
> +
> +NVIDIA_MODPROBE_VERSION = 450.57
> +NVIDIA_MODPROBE_SITE = $(call github,NVIDIA,nvidia-modprobe,$(NVIDIA_MODPROBE_VERSION))
> +NVIDIA_MODPROBE_LICENSE = GPL-2

The license should use identifier like GPL-2.0 or GPL-2.0+.
Here it should be GPL-2.0.

> +NVIDIA_MODPROBE_LICENSE_FILES = COPYING
> +
> +NVIDIA_MODPROBE_DEPENDENCIES = host-pkgconf

Why ? the binary is build by using gcc directly without any build system.

> +NVIDIA_MODPROBE_INSTALL_STAGING = YES
> +
> +define NVIDIA_MODPROBE_BUILD_CMDS
> +	mkdir -p $(@D)/bin
> +	$(TARGET_MAKE_ENV) $(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) \
> +		-I $(@D)/common-utils -I $(@D)/modprobe-utils \
> +		-o $(@D)/bin/nvidia-modprobe \
> +		-DNV_LINUX=true -DPROGRAM_NAME=\"nvidia-modprobe\" \
> +		-DNVIDIA_VERSION=\"$(NVIDIA_MODPROBE_VERSION)\" \
> +		$(@D)/nvidia-modprobe.c $(@D)/modprobe-utils/nvidia-modprobe-utils.c \
> +		$(@D)/modprobe-utils/pci-sysfs.c $(@D)/common-utils/common-utils.c \
> +		$(@D)/common-utils/msg.c $(@D)/common-utils/nvgetopt.c
> +endef

There is a Makefile why not using it ?
Ok it want to install the man pages but it should be easy to fix it.

> +
> +define NVIDIA_MODPROBE_INSTALL_STAGING_CMDS
> +	$(INSTALL) -D -m 644 $(@D)/modprobe-utils/nvidia-modprobe-utils.h \
> +		$(STAGING_DIR)/usr/include/nvidia-modprobe-utils/nvidia-modprobe-utils.h
> +	$(INSTALL) -D -m 644 $(@D)/modprobe-utils/pci-enum.h \
> +		$(STAGING_DIR)/usr/include/nvidia-modprobe-utils/pci-enum.h
> +	$(INSTALL) -D -m 644 $(@D)/common-utils/common-utils.h \
> +		$(STAGING_DIR)/usr/include/nvidia-modprobe-utils/nvidia-common-utils.h
> +	$(INSTALL) -D -m 644 $(@D)/common-utils/msg.h \
> +		$(STAGING_DIR)/usr/include/nvidia-modprobe-utils/msg.h
> +	$(INSTALL) -D -m 644 $(@D)/common-utils/nvgetopt.h \
> +		$(STAGING_DIR)/usr/include/nvidia-modprobe-utils/nvgetopt.h
> +endef

Same, we really don't want to maintain the gcc command line and the list of
installed files. The Makefile must do it for us :)

> +
> +define NVIDIA_MODPROBE_INSTALL_TARGET_CMDS
> +	$(INSTALL) -m 0755 $(@D)/bin/nvidia-modprobe \
> +		$(TARGET_DIR)/usr/bin/nvidia-modprobe
> +endef

Same.

Best regards,
Romain

> +
> +$(eval $(generic-package))
> 

  parent reply	other threads:[~2020-11-21 10:18 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-19  7:53 [Buildroot] [PATCH v4 1/5] package/nvidia-modprobe: new package Christian Stewart
2020-11-19  7:53 ` [Buildroot] [PATCH v4 2/5] package/linux4tegra: " Christian Stewart
2020-11-21 10:40   ` Romain Naour
2020-11-21 20:45     ` Christian Stewart
2020-11-21 23:10       ` Romain Naour
2021-01-11 23:28       ` Arnout Vandecappelle
2021-01-11 23:45   ` Arnout Vandecappelle
2020-11-19  7:53 ` [Buildroot] [PATCH v4 3/5] package/libnvidia-container: " Christian Stewart
2020-11-21 10:55   ` Romain Naour
2020-11-21 20:54     ` Christian Stewart
2020-11-21 23:25       ` Romain Naour
2020-11-25  2:06     ` Christian Stewart
2020-11-19  7:53 ` [Buildroot] [PATCH v4 4/5] board: add nvidia jetson tx2 support Christian Stewart
2020-11-19 13:40   ` Romain Naour
2020-11-21 10:06     ` Romain Naour
2020-11-21 21:12       ` Christian Stewart
2020-11-21 22:12         ` Peter Seiderer
2020-11-21 23:47         ` Romain Naour
2020-11-23 23:07     ` Christian Stewart
2020-11-24 14:46       ` Romain Naour
2020-11-24 16:30         ` Graham Leva
2020-11-25  1:53           ` Christian Stewart
2020-11-26 16:45             ` Graham Leva
2020-11-19  7:53 ` [Buildroot] [PATCH v4 5/5] board: add nvidia jetson nano support Christian Stewart
2020-11-21 11:03   ` Romain Naour
2020-11-21 21:01     ` Christian Stewart
2020-11-21 23:31       ` Romain Naour
2020-11-21 10:18 ` Romain Naour [this message]
2020-11-21 20:32   ` [Buildroot] [PATCH v4 1/5] package/nvidia-modprobe: new package Christian Stewart
2020-11-21 22:49     ` Romain Naour
2021-01-11 23:11       ` Arnout Vandecappelle
2021-01-11 23:20 ` Arnout Vandecappelle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c39da99f-96c6-66ef-8f49-4655112a5441@gmail.com \
    --to=romain.naour@gmail.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox