package/piglit: new package

Piglit is an open-source test suite for OpenGL implementations.
It's an python3 script based around several tools like glxinfo,
wflinfo, dmesg.

Even though waffle support can be replaced by freeglut,
using pliglit with waffle is recommended since freeglut
will be replaced by waffle.

Add host-python-{mako,numpy,six} dependency since the build system
is checking with the host-python interpreter.

There is no comment about waffle dependency due to too complex
dependencies of waffle.

Signed-off-by: Romain Naour <romain.naour@gmail.com>
[Reworked during the Buildroot summer camp 2019]
Signed-off-by: Romain Naour <romain.naour@smile.fr>
[Arnout: small corrections to license info. It's messy.]
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This commit is contained in:
Romain Naour 2019-08-01 11:21:19 +02:00 committed by Arnout Vandecappelle (Essensium/Mind)
parent 450863097f
commit a2e71ff581
5 changed files with 109 additions and 0 deletions

View file

@ -1951,6 +1951,7 @@ F: package/minetest/
F: package/minetest-game/
F: package/openpowerlink/
F: package/physfs/
F: package/piglit/
F: package/solarus/
F: package/stress-ng/
F: package/supertux/

View file

@ -118,6 +118,7 @@ menu "Debugging, profiling and benchmark"
source "package/oprofile/Config.in"
source "package/pax-utils/Config.in"
source "package/pcm-tools/Config.in"
source "package/piglit/Config.in"
source "package/pv/Config.in"
source "package/racehound/Config.in"
source "package/ramsmp/Config.in"

31
package/piglit/Config.in Normal file
View file

@ -0,0 +1,31 @@
config BR2_PACKAGE_PIGLIT
bool "piglit"
depends on BR2_PACKAGE_PYTHON3 # python3 only script
depends on BR2_PACKAGE_PYTHON_NUMPY_ARCH_SUPPORTS
depends on BR2_PACKAGE_WAFFLE_SUPPORTS_GLX || \
BR2_PACKAGE_WAFFLE_SUPPORTS_WAYLAND || \
BR2_PACKAGE_WAFFLE_SUPPORTS_X11_EGL || \
BR2_PACKAGE_WAFFLE_SUPPORTS_GBM
select BR2_PACKAGE_LIBDRM if BR2_PACKAGE_HAS_LIBGL
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_LIBXKBCOMMON if BR2_PACKAGE_WAYLAND
select BR2_PACKAGE_MESA3D_DEMOS # glxinfo
select BR2_PACKAGE_PYTHON_MAKO
select BR2_PACKAGE_PYTHON_NUMPY
select BR2_PACKAGE_PYTHON_SIX
select BR2_PACKAGE_PYTHON3_BZIP2
select BR2_PACKAGE_PYTHON3_PYEXPAT
select BR2_PACKAGE_PYTHON3_XZ
select BR2_PACKAGE_PYTHON3_ZLIB
select BR2_PACKAGE_UTIL_LINUX # runtime
select BR2_PACKAGE_UTIL_LINUX_BINARIES # requires real dmesg tool
select BR2_PACKAGE_WAFFLE # wflinfo, libwaffle-1
select BR2_PACKAGE_XLIB_LIBX11 if BR2_PACKAGE_XORG7
select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
select BR2_PACKAGE_XORGPROTO if BR2_PACKAGE_XORG7
select BR2_PACKAGE_ZLIB
help
Piglit is an open-source test suite for OpenGL
implementations.
https://piglit.freedesktop.org

View file

@ -0,0 +1,6 @@
# Locally calculated
sha256 4eba46520df1c47b0aea5446c302ff51d52f905a63d1ba29230866fc6c952a2e piglit-ef761094be04d14e258ad7706e7295f80d4411f2.tar.gz
sha256 dcc398730859aee7cc1d6aa57f526f8d181b47bb3a49830e85b5723d5bc2c3bc COPYING
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 licences/GPL-2
sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 licences/GPL-3
sha256 b7993225104d90ddd8024fd838faf300bea5e83d91203eab98e29512acebd69c licences/LGPL-2

70
package/piglit/piglit.mk Normal file
View file

@ -0,0 +1,70 @@
################################################################################
#
# piglit
#
################################################################################
PIGLIT_VERSION = ef761094be04d14e258ad7706e7295f80d4411f2
PIGLIT_SITE = https://gitlab.freedesktop.org/mesa/piglit.git
PIGLIT_SITE_METHOD = git
PIGLIT_LICENSE = MIT (code), \
LGPL-2.0+ (tests/glslparsertest/glsl2/gst-gl-*), \
LGPL-2.1+ (some tests), \
GPL-3.0 (tests/glslparsertest/glsl2/norsetto-*), \
GPL-2.0+ (tests/glslparsertest/glsl2/xreal-*, some other shaders), \
BSD-3-Clause (tests/glslparsertest/shaders/*)
PIGLIT_LICENSE_FILES = COPYING licences/GPL-2 licences/GPL-3 licences/LGPL-2
PIGLIT_DEPENDENCIES = host-pkgconf \
host-python-mako \
host-python-numpy \
host-python-six \
libpng \
python-mako \
python-numpy \
python-six \
waffle \
zlib
PIGLIT_CONF_OPTS += \
-DPIGLIT_USE_WAFFLE=ON \
-DPIGLIT_BUILD_CL_TESTS=OFF \
-DPIGLIT_BUILD_WGL_TESTS=OFF
ifeq ($(BR2_PACKAGE_XORG7),y)
# libxcb for xcb-dri2
PIGLIT_DEPENDENCIES += \
xlib_libX11 \
xlib_libXext \
xorgproto \
$(if $(BR2_PACKAGE_LIBXCB),libxcb)
endif
ifeq ($(BR2_PACKAGE_HAS_LIBGL),y)
PIGLIT_DEPENDENCIES += libgl libdrm
PIGLIT_CONF_OPTS += -DPIGLIT_BUILD_GL_TESTS=ON
else
PIGLIT_CONF_OPTS += -DPIGLIT_BUILD_GL_TESTS=OFF
endif
ifeq ($(BR2_PACKAGE_XORG7)$(BR2_PACKAGE_HAS_LIBGL),yy)
PIGLIT_CONF_OPTS += -DPIGLIT_BUILD_GLX_TESTS=ON
else
PIGLIT_CONF_OPTS += -DPIGLIT_BUILD_GLX_TESTS=OFF
endif
ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y)
PIGLIT_CONF_OPTS += -DPIGLIT_BUILD_GLES1_TESTS=ON \
-DPIGLIT_BUILD_GLES2_TESTS=ON \
-DPIGLIT_BUILD_GLES3_TESTS=ON
else
PIGLIT_CONF_OPTS += -DPIGLIT_BUILD_GLES1_TESTS=OFF \
-DPIGLIT_BUILD_GLES2_TESTS=OFF \
-DPIGLIT_BUILD_GLES3_TESTS=OFF
endif
ifeq ($(BR2_PACKAGE_WAYLAND),y)
PIGLIT_DEPENDENCIES += wayland libxkbcommon
endif
$(eval $(cmake-package))