diff mbox series

igt-gpu-tools: add new package

Message ID 20181204022701.28095-1-gael.portay@collabora.com
State Changes Requested
Headers show
Series igt-gpu-tools: add new package | expand

Commit Message

Gaël PORTAY Dec. 4, 2018, 2:27 a.m. UTC
Signed-off-by: Gaël PORTAY <gael.portay@collabora.com>
---
 DEVELOPERS                               |  1 +
 package/Config.in                        |  1 +
 package/igt-gpu-tools/Config.in          | 27 ++++++++++++++++++++++++
 package/igt-gpu-tools/igt-gpu-tools.hash |  5 +++++
 package/igt-gpu-tools/igt-gpu-tools.mk   | 16 ++++++++++++++
 5 files changed, 50 insertions(+)
 create mode 100644 package/igt-gpu-tools/Config.in
 create mode 100644 package/igt-gpu-tools/igt-gpu-tools.hash
 create mode 100644 package/igt-gpu-tools/igt-gpu-tools.mk

Comments

Gaël PORTAY Dec. 4, 2018, 10:14 a.m. UTC | #1
All,

I am responding to myself :/

On Mon, Dec 03, 2018 at 09:27:01PM -0500, Gaël PORTAY wrote:
> diff --git a/package/igt-gpu-tools/Config.in b/package/igt-gpu-tools/Config.in
> new file mode 100644
> index 0000000000..73e217e93c
> --- /dev/null
> +++ b/package/igt-gpu-tools/Config.in
> @@ -0,0 +1,27 @@
> +config BR2_PACKAGE_IGT_GPU_TOOLS
> +	bool "igt-gpu-tools"
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm libunwind
> +	depends on !BR2_STATIC_LIBS # kmod libunwind
> +	depends on BR2_USE_MMU # procps-ng
> +	depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps-ng
> +	depends on BR2_PACKAGE_HAS_OPENSSL
> +	depends on BR2_PACKAGE_HAS_UDEV
> +	depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS # libunwind
> +	select BR2_PACKAGE_CAIRO
> +	select BR2_PACKAGE_CAIRO_PNG
> +	select BR2_PACKAGE_KMOD
> +	select BR2_PACKAGE_LIBDRM

select BR2_PACKAGE_LIBGLIB2 appears to be missing here.

> +	select BR2_PACKAGE_LIBUNWIND
> +	select BR2_PACKAGE_LIBPCIACCESS

The two selects above are not properly alphabetically sorted.

> +	select BR2_PACKAGE_PIXMAN
> +	select BR2_PACKAGE_PROCPS_NG
> +	select BR2_PACKAGE_ZLIB
> +	help
> +	  IGT GPU Tools is a collection of tools for development and
> +	  testing of the DRM drivers.
> +
> +	  https://cgit.freedesktop.org/drm/igt-gpu-tools/
> +
> +comment "igt-gpu-tools needs udev /dev management and openssl library"
> +        depends on !BR2_PACKAGE_IGT_GPU_TOOLS
> +        depends on !BR2_PACKAGE_HAS_UDEV || !BR2_PACKAGE_HAS_OPENSSL

Regards,
Gael
Arnout Vandecappelle Aug. 2, 2019, 9:50 a.m. UTC | #2
Hi Gaël,

 Sorry it took so long to get feedback on this...

On 04/12/2018 03:27, Gaël PORTAY wrote:
[snip]
> +config BR2_PACKAGE_IGT_GPU_TOOLS
> +	bool "igt-gpu-tools"
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm libunwind

 Please separate with commas: libdrm, libglib2, libunwind

> +	depends on !BR2_STATIC_LIBS # kmod libunwind

 BR2_STATIC_LIBS sorts before BR2_TOOLCHAIN_HAS_THREADS :-)

 You'll also need to add:

depends on BR2_USE_WCHAR # libglib2 -> gettext

 However, the README says that libglib2 is optional (only for chamelium support,
whatever that may be).

> +	depends on BR2_USE_MMU # procps-ng

 This is considered an arch dependency so it should be first.

> +	depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps-ng

 We use select for that instead of depends. Cfr. tovid.

> +	depends on BR2_PACKAGE_HAS_OPENSSL

 It is possible to select openssl because there's a choice for libopenssl/libressl.

> +	depends on BR2_PACKAGE_HAS_UDEV

 It is strange that you have this dependency here, but not in .mk. Could you
explain that in the commit message? Or maybe add "# runtime" here? Or add the
dependency in .mk, of course :-)


> +	depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS # libunwind

 This is also an arch dependency so should be first.

> +	select BR2_PACKAGE_CAIRO
> +	select BR2_PACKAGE_CAIRO_PNG
> +	select BR2_PACKAGE_KMOD
> +	select BR2_PACKAGE_LIBDRM
> +	select BR2_PACKAGE_LIBUNWIND
> +	select BR2_PACKAGE_LIBPCIACCESS
> +	select BR2_PACKAGE_PIXMAN
> +	select BR2_PACKAGE_PROCPS_NG
> +	select BR2_PACKAGE_ZLIB
> +	help
> +	  IGT GPU Tools is a collection of tools for development and
> +	  testing of the DRM drivers.
> +
> +	  https://cgit.freedesktop.org/drm/igt-gpu-tools/

 This is now https://gitlab.freedesktop.org/drm/igt-gpu-tools

> +
> +comment "igt-gpu-tools needs udev /dev management and openssl library"
> +        depends on !BR2_PACKAGE_IGT_GPU_TOOLS
> +        depends on !BR2_PACKAGE_HAS_UDEV || !BR2_PACKAGE_HAS_OPENSSL

 This is completely wrong. It should be

comment "igt-gpu-tools needs udev /dev management and a toolchain w/ threads,
wchar, dynamic library"
	depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS
	depends on BR2_USE_MMU
	depends on !BR2_PACKAGE_HAS_UDEV || BR2_STATIC_LIBS || \
		!BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
	

> +IGT_GPU_TOOLS_VERSION = 1.23

 There's a 1.24 now (not surprising, when we wait 9 months to look at this patch :-)

> +IGT_GPU_TOOLS_SITE = https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/archive/igt-gpu-tools-$(IGT_GPU_TOOLS_VERSION)

 So you did know about the gitlab site!

 Note that this will be the first package that uses the auto-archive feature of
gitlab. Let's see how that goes...

 Oh, I would also add

IGT_GPU_TOOLS_SOURCE = igt-gpu-tools-$(IGT_GPU_TOOLS_VERSION).tar.bz2

which should be a bit smaller.



> +IGT_GPU_TOOLS_LICENSE = MIT
> +IGT_GPU_TOOLS_LICENSE_FILES = COPYING
> +IGT_GPU_TOOLS_INSTALL_STAGING = YES

 Why install in staging?

> +IGT_GPU_TOOLS_DEPENDENCIES = host-pkgconf cairo kmod libdrm libopenssl libglib2 libpciaccess libunwind pixman procps-ng zlib

 Does it really need libopenssl and not libressl?

 If yes, you should select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL.


 Obviously, I've marked this patch as Changes Requested :-)

 Thanks!

 Regards,
 Arnout


> +IGT_GPU_TOOLS_CONF_OPTS += -Dbuild_docs=false
> +
> +$(eval $(meson-package))
>
Gaël PORTAY Aug. 13, 2019, 12:51 p.m. UTC | #3
Hi Arnout,

On Fri, Aug 02, 2019 at 11:50:16AM +0200, Arnout Vandecappelle wrote:
>  Hi Gaël,
> 
>  Sorry it took so long to get feedback on this...
> 
> On 04/12/2018 03:27, Gaël PORTAY wrote:
> [snip]
> > +config BR2_PACKAGE_IGT_GPU_TOOLS
> > +	bool "igt-gpu-tools"
> > +	depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm libunwind
> 
>  Please separate with commas: libdrm, libglib2, libunwind
> 
> > +	depends on !BR2_STATIC_LIBS # kmod libunwind
> 
>  BR2_STATIC_LIBS sorts before BR2_TOOLCHAIN_HAS_THREADS :-)
> 
>  You'll also need to add:
> 
> depends on BR2_USE_WCHAR # libglib2 -> gettext
> 
>  However, the README says that libglib2 is optional (only for chamelium support,
> whatever that may be).
> 
> > +	depends on BR2_USE_MMU # procps-ng
> 
>  This is considered an arch dependency so it should be first.
> 
> > +	depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps-ng
> 
>  We use select for that instead of depends. Cfr. tovid.
> 
> > +	depends on BR2_PACKAGE_HAS_OPENSSL
> 
>  It is possible to select openssl because there's a choice for libopenssl/libressl.
> 
> > +	depends on BR2_PACKAGE_HAS_UDEV
> 
>  It is strange that you have this dependency here, but not in .mk. Could you
> explain that in the commit message? Or maybe add "# runtime" here? Or add the
> dependency in .mk, of course :-)
> 
> 
> > +	depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS # libunwind
> 
>  This is also an arch dependency so should be first.
> 
> > +	select BR2_PACKAGE_CAIRO
> > +	select BR2_PACKAGE_CAIRO_PNG
> > +	select BR2_PACKAGE_KMOD
> > +	select BR2_PACKAGE_LIBDRM
> > +	select BR2_PACKAGE_LIBUNWIND
> > +	select BR2_PACKAGE_LIBPCIACCESS
> > +	select BR2_PACKAGE_PIXMAN
> > +	select BR2_PACKAGE_PROCPS_NG
> > +	select BR2_PACKAGE_ZLIB
> > +	help
> > +	  IGT GPU Tools is a collection of tools for development and
> > +	  testing of the DRM drivers.
> > +
> > +	  https://cgit.freedesktop.org/drm/igt-gpu-tools/
> 
>  This is now https://gitlab.freedesktop.org/drm/igt-gpu-tools
> 
> > +
> > +comment "igt-gpu-tools needs udev /dev management and openssl library"
> > +        depends on !BR2_PACKAGE_IGT_GPU_TOOLS
> > +        depends on !BR2_PACKAGE_HAS_UDEV || !BR2_PACKAGE_HAS_OPENSSL
> 
>  This is completely wrong. It should be
> 
> comment "igt-gpu-tools needs udev /dev management and a toolchain w/ threads,
> wchar, dynamic library"
> 	depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS
> 	depends on BR2_USE_MMU
> 	depends on !BR2_PACKAGE_HAS_UDEV || BR2_STATIC_LIBS || \
> 		!BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
> 	
> 
> > +IGT_GPU_TOOLS_VERSION = 1.23
> 
>  There's a 1.24 now (not surprising, when we wait 9 months to look at this patch :-)
> 
> > +IGT_GPU_TOOLS_SITE = https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/archive/igt-gpu-tools-$(IGT_GPU_TOOLS_VERSION)
> 
>  So you did know about the gitlab site!
> 
>  Note that this will be the first package that uses the auto-archive feature of
> gitlab. Let's see how that goes...
> 
>  Oh, I would also add
> 
> IGT_GPU_TOOLS_SOURCE = igt-gpu-tools-$(IGT_GPU_TOOLS_VERSION).tar.bz2
> 
> which should be a bit smaller.
> 
> 
> 
> > +IGT_GPU_TOOLS_LICENSE = MIT
> > +IGT_GPU_TOOLS_LICENSE_FILES = COPYING
> > +IGT_GPU_TOOLS_INSTALL_STAGING = YES
> 
>  Why install in staging?
> 
> > +IGT_GPU_TOOLS_DEPENDENCIES = host-pkgconf cairo kmod libdrm libopenssl libglib2 libpciaccess libunwind pixman procps-ng zlib
> 
>  Does it really need libopenssl and not libressl?
> 
>  If yes, you should select BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL.
> 
> 
>  Obviously, I've marked this patch as Changes Requested :-)
> 
>  Thanks!
> 
>  Regards,
>  Arnout
> 
> 
> > +IGT_GPU_TOOLS_CONF_OPTS += -Dbuild_docs=false
> > +
> > +$(eval $(meson-package))
> > 
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

Thanks for you review. I will address them ASAP.

Regards,
Gael
diff mbox series

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index 53467da489..c9189bf771 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -846,6 +846,7 @@  F:	package/upx/
 F:	package/zxing-cpp/
 
 N:	Gaël Portay <gael.portay@savoirfairelinux.com>
+F:	package/igt-gpu-tools/
 F:	package/qt5/qt5virtualkeyboard/
 F:	package/qt5/qt5webengine/
 F:	package/qt5/qt5webkit/
diff --git a/package/Config.in b/package/Config.in
index b60e7700ad..11f7e0c950 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1241,6 +1241,7 @@  menu "Graphics"
 	source "package/gtkmm3/Config.in"
 	source "package/gtksourceview/Config.in"
 	source "package/harfbuzz/Config.in"
+	source "package/igt-gpu-tools/Config.in"
 	source "package/ijs/Config.in"
 	source "package/imlib2/Config.in"
 	source "package/irrlicht/Config.in"
diff --git a/package/igt-gpu-tools/Config.in b/package/igt-gpu-tools/Config.in
new file mode 100644
index 0000000000..73e217e93c
--- /dev/null
+++ b/package/igt-gpu-tools/Config.in
@@ -0,0 +1,27 @@ 
+config BR2_PACKAGE_IGT_GPU_TOOLS
+	bool "igt-gpu-tools"
+	depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm libunwind
+	depends on !BR2_STATIC_LIBS # kmod libunwind
+	depends on BR2_USE_MMU # procps-ng
+	depends on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS # procps-ng
+	depends on BR2_PACKAGE_HAS_OPENSSL
+	depends on BR2_PACKAGE_HAS_UDEV
+	depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS # libunwind
+	select BR2_PACKAGE_CAIRO
+	select BR2_PACKAGE_CAIRO_PNG
+	select BR2_PACKAGE_KMOD
+	select BR2_PACKAGE_LIBDRM
+	select BR2_PACKAGE_LIBUNWIND
+	select BR2_PACKAGE_LIBPCIACCESS
+	select BR2_PACKAGE_PIXMAN
+	select BR2_PACKAGE_PROCPS_NG
+	select BR2_PACKAGE_ZLIB
+	help
+	  IGT GPU Tools is a collection of tools for development and
+	  testing of the DRM drivers.
+
+	  https://cgit.freedesktop.org/drm/igt-gpu-tools/
+
+comment "igt-gpu-tools needs udev /dev management and openssl library"
+        depends on !BR2_PACKAGE_IGT_GPU_TOOLS
+        depends on !BR2_PACKAGE_HAS_UDEV || !BR2_PACKAGE_HAS_OPENSSL
diff --git a/package/igt-gpu-tools/igt-gpu-tools.hash b/package/igt-gpu-tools/igt-gpu-tools.hash
new file mode 100644
index 0000000000..ce27785256
--- /dev/null
+++ b/package/igt-gpu-tools/igt-gpu-tools.hash
@@ -0,0 +1,5 @@ 
+# Locally calculated from download
+sha256 df862d0053930f284a28906986f788fb28ee83216d14cf79265e190fcd97d17c  igt-gpu-tools-1.23.tar.gz
+
+# Hash for license file:
+sha256 8aa4d63ef4c018d0dd0e81cef38444eefea9ea11fe7dc488d0e48092bedfaa9a  COPYING
diff --git a/package/igt-gpu-tools/igt-gpu-tools.mk b/package/igt-gpu-tools/igt-gpu-tools.mk
new file mode 100644
index 0000000000..fbd18b2d77
--- /dev/null
+++ b/package/igt-gpu-tools/igt-gpu-tools.mk
@@ -0,0 +1,16 @@ 
+################################################################################
+#
+# igt-gpu-tools 
+#
+################################################################################
+
+IGT_GPU_TOOLS_VERSION = 1.23
+IGT_GPU_TOOLS_SITE = https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/archive/igt-gpu-tools-$(IGT_GPU_TOOLS_VERSION)
+IGT_GPU_TOOLS_LICENSE = MIT
+IGT_GPU_TOOLS_LICENSE_FILES = COPYING
+IGT_GPU_TOOLS_INSTALL_STAGING = YES
+IGT_GPU_TOOLS_DEPENDENCIES = host-pkgconf cairo kmod libdrm libopenssl libglib2 libpciaccess libunwind pixman procps-ng zlib
+
+IGT_GPU_TOOLS_CONF_OPTS += -Dbuild_docs=false
+
+$(eval $(meson-package))