blob: 31954aa8b6045cee0d8973b57caab986c5eddb1e [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001SUMMARY = "OpenGL driver testing framework"
Brad Bishop1d80a2e2019-11-15 16:35:03 -05002DESCRIPTION = "Piglit is an open-source test suite for OpenGL and OpenCL \
3implementations."
Patrick Williamsc124f4f2015-09-15 14:41:29 -05004LICENSE = "MIT & LGPLv2+ & GPLv3 & GPLv2+ & BSD-3-Clause"
5LIC_FILES_CHKSUM = "file://COPYING;md5=b2beded7103a3d8a442a2a0391d607b0"
6
Brad Bishop96ff1982019-08-19 13:50:42 -04007SRC_URI = "git://gitlab.freedesktop.org/mesa/piglit.git;protocol=https \
Patrick Williamsc0f7c042017-02-23 20:41:17 -06008 file://0001-cmake-install-bash-completions-in-the-right-place.patch \
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08009 file://0001-cmake-use-proper-WAYLAND_INCLUDE_DIRS-variable.patch \
Andrew Geissler6ce62a22020-11-30 19:58:47 -060010 file://0001-Add-a-missing-include-for-htobe32-definition.patch \
Andrew Geissler09209ee2020-12-13 08:44:15 -060011 file://0001-generated_tests-gen_tcs-tes_input_tests.py-do-not-ha.patch \
12 file://0002-tests-util-piglit-shader.c-do-not-hardcode-build-pat.patch \
13 file://0001-serializer.py-make-.gz-files-reproducible.patch \
14 file://0001-framework-profile.py-make-test-lists-reproducible.patch \
15 file://0001-tests-shader.py-sort-the-file-list-before-working-on.patch \
Patrick Williamsc0f7c042017-02-23 20:41:17 -060016 "
Brad Bishop316dfdd2018-06-25 12:45:53 -040017UPSTREAM_CHECK_COMMITS = "1"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050018
Andrew Geissler706d5aa2021-02-12 15:55:30 -060019SRCREV = "0fda9f67a782edec640998286e7b6058e8933d17"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050020# (when PV goes above 1.0 remove the trailing r)
21PV = "1.0+gitr${SRCPV}"
22
23S = "${WORKDIR}/git"
24
Brad Bishopc342db32019-05-15 21:57:59 -040025X11_DEPS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxrender libglu', '', d)}"
26X11_RDEPS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa-demos', '', d)}"
27
28DEPENDS = "libpng waffle libxkbcommon virtual/libgl python3-mako-native python3-numpy-native python3-six-native virtual/egl"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050029
Brad Bishop6dbb3162019-11-25 09:41:34 -050030inherit cmake pkgconfig python3native features_check bash-completion
Patrick Williamsc124f4f2015-09-15 14:41:29 -050031
Brad Bishop6e60e8b2018-02-01 10:27:11 -050032# depends on virtual/libgl
33REQUIRED_DISTRO_FEATURES += "opengl"
34
Patrick Williamsf1e5d692016-03-30 15:21:19 -050035# The built scripts go into the temporary directory according to tempfile
36# (typically /tmp) which can race if multiple builds happen on the same machine,
37# so tell it to use a directory in ${B} to avoid overwriting.
38export TEMP = "${B}/temp/"
39do_compile[dirs] =+ "${B}/temp/"
40
Brad Bishopc342db32019-05-15 21:57:59 -040041PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050042PACKAGECONFIG[freeglut] = "-DPIGLIT_USE_GLUT=1,-DPIGLIT_USE_GLUT=0,freeglut,"
Brad Bishopc342db32019-05-15 21:57:59 -040043PACKAGECONFIG[x11] = "-DPIGLIT_BUILD_GL_TESTS=ON,-DPIGLIT_BUILD_GL_TESTS=OFF,${X11_DEPS}, ${X11_RDEPS}"
44
Andrew Geissler09209ee2020-12-13 08:44:15 -060045export PIGLIT_BUILD_DIR = "../../../../git"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050046
47do_configure_prepend() {
48 if [ "${@bb.utils.contains('PACKAGECONFIG', 'freeglut', 'yes', 'no', d)}" = "no" ]; then
49 sed -i -e "/^#.*include <GL\/freeglut_ext.h>$/d" ${S}/src/piglit/glut_wrap.h
50 sed -i -e "/^#.*include.*<GL\/glut.h>$/d" ${S}/src/piglit/glut_wrap.h
51 fi
52}
53
Andrew Geissler82c905d2020-04-13 13:39:40 -050054# Forcibly strip because Piglit is *huge*
Brad Bishop316dfdd2018-06-25 12:45:53 -040055OECMAKE_TARGET_INSTALL = "install/strip"
Patrick Williamsc0f7c042017-02-23 20:41:17 -060056
Brad Bishopa5c52ff2018-11-23 10:55:50 +130057RDEPENDS_${PN} = "waffle waffle-bin python3 python3-mako python3-json \
Brad Bishop316dfdd2018-06-25 12:45:53 -040058 python3-misc \
Patrick Williamsc0f7c042017-02-23 20:41:17 -060059 python3-unixadmin python3-xml python3-multiprocessing \
Brad Bishop316dfdd2018-06-25 12:45:53 -040060 python3-six python3-shell python3-io \
Brad Bishopc342db32019-05-15 21:57:59 -040061 python3-netserver bash \
Patrick Williamsc124f4f2015-09-15 14:41:29 -050062 "
63
Patrick Williamsc0f7c042017-02-23 20:41:17 -060064INSANE_SKIP_${PN} += "dev-so already-stripped"
Brad Bishop19323692019-04-05 15:28:33 -040065
Andrew Geissler82c905d2020-04-13 13:39:40 -050066# As nothing builds against Piglit we don't need to have anything in the
67# sysroot, especially when this is ~2GB of test suite
68SYSROOT_DIRS_remove = "${libdir}"
69
Brad Bishop19323692019-04-05 15:28:33 -040070# Can't be built with ccache
71CCACHE_DISABLE = "1"