summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2021-11-06 13:59:15 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-11-15 11:53:55 +0000
commit53226d9c8713f0231c24a7e70a89d2f4e20749f1 (patch)
tree0013b8926f5ae25868a84c1962285d2551258490
parentfca4b3b106913cbfb469de29cc3501f31204b64e (diff)
downloadpoky-53226d9c8713f0231c24a7e70a89d2f4e20749f1.tar.gz
piglit: upgrade to latest revision
Update piglit to latest git revision and update the branch name, since the original one is no longer updated. Make sure the VK tests are only enabled if VK is also enabled in PACKAGECONFIG, and that this is opt-in, otherwise older systems fail to build. Cherry picked from squashed commits: eb3a8d4c7b ("piglit: upgrade to latest revision") a27b06f73a ("piglit: upgrade to latest revision") bb091bc0be ("piglit: upgrade to latest revision") 394746d1cb ("piglit: upgrade to latest revision") 5aec8cff94 ("piglit: upgrade to latest revision") fc4c82773d ("piglit: fix reproducibility") 6fbec0f12a ("piglit: update to latest revision") 8d23a0d498 ("piglit: upgrade to latest revision") 5144d515fe ("piglit: upgrade to latest revision") dd085bd577 ("piglit: upgrade to latest revision") 9ba6df1b2c ("piglit: upgrade to latest revision") 1ccd71eb3e ("piglit: upgrade to latest revision") (From OE-Core rev: 65aa83e25059b29563a45eacdad8178bc7a07fe4) Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Cc: Anuj Mittal <anuj.mittal@intel.com> Cc: Richard Purdie <richard.purdie@linuxfoundation.org> Cc: Steve Sakoman <steve@sakoman.com> Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-graphics/piglit/piglit/0001-Add-a-missing-include-for-htobe32-definition.patch27
-rw-r--r--meta/recipes-graphics/piglit/piglit/0001-framework-profile.py-make-test-lists-reproducible.patch31
-rw-r--r--meta/recipes-graphics/piglit/piglit/0001-generated_tests-gen_tcs-tes_input_tests.py-do-not-ha.patch44
-rw-r--r--meta/recipes-graphics/piglit/piglit/0001-serializer.py-make-.gz-files-reproducible.patch30
-rw-r--r--meta/recipes-graphics/piglit/piglit/0001-tests-shader.py-sort-the-file-list-before-working-on.patch28
-rw-r--r--meta/recipes-graphics/piglit/piglit/0002-tests-util-piglit-shader.c-do-not-hardcode-build-pat.patch30
-rw-r--r--meta/recipes-graphics/piglit/piglit_git.bb12
7 files changed, 200 insertions, 2 deletions
diff --git a/meta/recipes-graphics/piglit/piglit/0001-Add-a-missing-include-for-htobe32-definition.patch b/meta/recipes-graphics/piglit/piglit/0001-Add-a-missing-include-for-htobe32-definition.patch
new file mode 100644
index 0000000000..caa48e088d
--- /dev/null
+++ b/meta/recipes-graphics/piglit/piglit/0001-Add-a-missing-include-for-htobe32-definition.patch
@@ -0,0 +1,27 @@
1From d623e9797b7ee9b3739a8a4afe1a01f7e03754aa Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Sun, 1 Nov 2020 20:08:49 +0000
4Subject: [PATCH] Add a missing include for htobe32 definition
5
6Upstream-Status: Pending
7Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
8---
9 tests/spec/nv_copy_depth_to_color/nv_copy_depth_to_color.c | 2 ++
10 1 file changed, 2 insertions(+)
11
12diff --git a/tests/spec/nv_copy_depth_to_color/nv_copy_depth_to_color.c b/tests/spec/nv_copy_depth_to_color/nv_copy_depth_to_color.c
13index 5f45e0c23..c755ee29a 100644
14--- a/tests/spec/nv_copy_depth_to_color/nv_copy_depth_to_color.c
15+++ b/tests/spec/nv_copy_depth_to_color/nv_copy_depth_to_color.c
16@@ -34,6 +34,8 @@
17
18 #include "piglit-util-gl.h"
19
20+#include <endian.h>
21+
22 #define IMAGE_WIDTH 60
23 #define IMAGE_HEIGHT 60
24
25--
262.17.1
27
diff --git a/meta/recipes-graphics/piglit/piglit/0001-framework-profile.py-make-test-lists-reproducible.patch b/meta/recipes-graphics/piglit/piglit/0001-framework-profile.py-make-test-lists-reproducible.patch
new file mode 100644
index 0000000000..cc9482c047
--- /dev/null
+++ b/meta/recipes-graphics/piglit/piglit/0001-framework-profile.py-make-test-lists-reproducible.patch
@@ -0,0 +1,31 @@
1From 9086d42df1f3134bafcfe33ff16db7bbb9d9a0fd Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Mon, 30 Nov 2020 23:08:22 +0000
4Subject: [PATCH] framework/profile.py: make test lists reproducible
5
6These are created with os.walk, which yields different
7order depending on where it's run.
8
9Upstream-Status: Pending
10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11---
12 framework/profile.py | 6 +++++-
13 1 file changed, 5 insertions(+), 1 deletion(-)
14
15diff --git a/framework/profile.py b/framework/profile.py
16index c210e535e..9b5d51d68 100644
17--- a/framework/profile.py
18+++ b/framework/profile.py
19@@ -528,7 +528,11 @@ class TestProfile(object):
20 else:
21 opts[n] = self.test_list[n]
22 else:
23- opts = self.test_list # pylint: disable=redefined-variable-type
24+ opts = collections.OrderedDict()
25+ test_keys = list(self.test_list.keys())
26+ test_keys.sort()
27+ for k in test_keys:
28+ opts[k] = self.test_list[k]
29
30 for k, v in self.filters.run(opts.items()):
31 yield k, v
diff --git a/meta/recipes-graphics/piglit/piglit/0001-generated_tests-gen_tcs-tes_input_tests.py-do-not-ha.patch b/meta/recipes-graphics/piglit/piglit/0001-generated_tests-gen_tcs-tes_input_tests.py-do-not-ha.patch
new file mode 100644
index 0000000000..8704f98500
--- /dev/null
+++ b/meta/recipes-graphics/piglit/piglit/0001-generated_tests-gen_tcs-tes_input_tests.py-do-not-ha.patch
@@ -0,0 +1,44 @@
1From 1b23539aece156f6fe0789cb988f22e5915228f6 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 10 Nov 2020 17:12:32 +0000
4Subject: [PATCH 1/2] generated_tests/gen_tcs/tes_input_tests.py: do not
5 hardcode the full binary path
6
7This helps reproducibility.
8
9Upstream-Status: Pending
10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11---
12 generated_tests/gen_tcs_input_tests.py | 2 +-
13 generated_tests/gen_tes_input_tests.py | 2 +-
14 2 files changed, 2 insertions(+), 2 deletions(-)
15
16diff --git a/generated_tests/gen_tcs_input_tests.py b/generated_tests/gen_tcs_input_tests.py
17index face4f19a..e36671af4 100644
18--- a/generated_tests/gen_tcs_input_tests.py
19+++ b/generated_tests/gen_tcs_input_tests.py
20@@ -272,7 +272,7 @@ class Test(object):
21 relative probe rgb (0.75, 0.75) (0.0, 1.0, 0.0)
22 """)
23
24- test = test.format(self=self, generator_command=" ".join(sys.argv))
25+ test = test.format(self=self, generator_command="generated_tests/gen_tcs_input_tests.py")
26
27 filename = self.filename()
28 dirname = os.path.dirname(filename)
29diff --git a/generated_tests/gen_tes_input_tests.py b/generated_tests/gen_tes_input_tests.py
30index 3d847b5cc..954840b20 100644
31--- a/generated_tests/gen_tes_input_tests.py
32+++ b/generated_tests/gen_tes_input_tests.py
33@@ -301,7 +301,7 @@ class Test(object):
34 relative probe rgb (0.75, 0.75) (0.0, 1.0, 0.0)
35 """)
36
37- test = test.format(self=self, generator_command=" ".join(sys.argv))
38+ test = test.format(self=self, generator_command="generated_tests/gen_tes_input_tests.py")
39
40 filename = self.filename()
41 dirname = os.path.dirname(filename)
42--
432.17.1
44
diff --git a/meta/recipes-graphics/piglit/piglit/0001-serializer.py-make-.gz-files-reproducible.patch b/meta/recipes-graphics/piglit/piglit/0001-serializer.py-make-.gz-files-reproducible.patch
new file mode 100644
index 0000000000..2efba6f866
--- /dev/null
+++ b/meta/recipes-graphics/piglit/piglit/0001-serializer.py-make-.gz-files-reproducible.patch
@@ -0,0 +1,30 @@
1From 1919bb7f4072d73dcbb64d0e06eff5b04529c3db Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Mon, 16 Nov 2020 18:01:02 +0000
4Subject: [PATCH] serializer.py: make .gz files reproducible
5
6.gz format contains mtime of the compressed data, and
7SOURCE_DATE_EPOCH is the standard way to make it reproducuble.
8
9Upstream-Status: Pending
10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11---
12 tests/serializer.py | 5 ++++-
13 1 file changed, 4 insertions(+), 1 deletion(-)
14
15diff --git a/tests/serializer.py b/tests/serializer.py
16index bd14bc3db..bc5b45d7f 100644
17--- a/tests/serializer.py
18+++ b/tests/serializer.py
19@@ -138,7 +138,10 @@ def serializer(name, profile, outfile):
20 et.SubElement(env, 'env', name=k, value=v)
21
22 tree = et.ElementTree(root)
23- with gzip.open(outfile, 'wb') as f:
24+ reproducible_mtime = None
25+ if 'SOURCE_DATE_EPOCH' in os.environ:
26+ reproducible_mtime=os.environ['SOURCE_DATE_EPOCH']
27+ with gzip.GzipFile(outfile, 'wb', mtime=reproducible_mtime) as f:
28 tree.write(f, encoding='utf-8', xml_declaration=True)
29
30
diff --git a/meta/recipes-graphics/piglit/piglit/0001-tests-shader.py-sort-the-file-list-before-working-on.patch b/meta/recipes-graphics/piglit/piglit/0001-tests-shader.py-sort-the-file-list-before-working-on.patch
new file mode 100644
index 0000000000..8321be8490
--- /dev/null
+++ b/meta/recipes-graphics/piglit/piglit/0001-tests-shader.py-sort-the-file-list-before-working-on.patch
@@ -0,0 +1,28 @@
1From 5bf89c6a314952313b2b762fff0d5501fe57ac53 Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Wed, 2 Dec 2020 21:21:52 +0000
4Subject: [PATCH] tests/shader.py: sort the file list before working on it
5
6This allows later xml output to be reproducible.
7
8Upstream-Status: Pending
9Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
10---
11 tests/shader.py | 4 +++-
12 1 file changed, 3 insertions(+), 1 deletion(-)
13
14diff --git a/tests/shader.py b/tests/shader.py
15index 849273660..e6e65d1ba 100644
16--- a/tests/shader.py
17+++ b/tests/shader.py
18@@ -52,7 +52,9 @@ for basedir in [TESTS_DIR, GENERATED_TESTS_DIR]:
19 for group, files in shader_tests.items():
20 assert group not in profile.test_list, 'duplicate group: {}'.format(group)
21
22- # We'll end up with a list of tuples, split that into two lists
23+ # This makes the xml output reproducible, as os.walk() order is random
24+ files.sort()
25+ # We'll end up with a list of tuples, split that into two list
26 files, installedfiles = list(zip(*files))
27 files = list(files)
28 installedfiles = list(installedfiles)
diff --git a/meta/recipes-graphics/piglit/piglit/0002-tests-util-piglit-shader.c-do-not-hardcode-build-pat.patch b/meta/recipes-graphics/piglit/piglit/0002-tests-util-piglit-shader.c-do-not-hardcode-build-pat.patch
new file mode 100644
index 0000000000..16c7c5c803
--- /dev/null
+++ b/meta/recipes-graphics/piglit/piglit/0002-tests-util-piglit-shader.c-do-not-hardcode-build-pat.patch
@@ -0,0 +1,30 @@
1From 1c67250308a92d4991ed05d9d240090ab84accae Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 10 Nov 2020 17:13:50 +0000
4Subject: [PATCH 2/2] tests/util/piglit-shader.c: do not hardcode build path
5 into target binary
6
7This helps reproducibilty.
8
9Upstream-Status: Inappropriate [oe-core specific]
10Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
11---
12 tests/util/piglit-shader.c | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/tests/util/piglit-shader.c b/tests/util/piglit-shader.c
16index 4fd68d21e..c9ea8295e 100644
17--- a/tests/util/piglit-shader.c
18+++ b/tests/util/piglit-shader.c
19@@ -73,7 +73,7 @@ piglit_compile_shader(GLenum target, const char *filename)
20
21 source_dir = getenv("PIGLIT_SOURCE_DIR");
22 if (source_dir == NULL) {
23- source_dir = SOURCE_DIR;
24+ source_dir = ".";
25 }
26
27 snprintf(filename_with_path, FILENAME_MAX - 1,
28--
292.17.1
30
diff --git a/meta/recipes-graphics/piglit/piglit_git.bb b/meta/recipes-graphics/piglit/piglit_git.bb
index b84d53f87c..9897ef1575 100644
--- a/meta/recipes-graphics/piglit/piglit_git.bb
+++ b/meta/recipes-graphics/piglit/piglit_git.bb
@@ -6,13 +6,19 @@ BUGTRACKER = "https://gitlab.freedesktop.org/mesa/piglit/-/issues"
6LICENSE = "MIT & LGPLv2+ & GPLv3 & GPLv2+ & BSD-3-Clause" 6LICENSE = "MIT & LGPLv2+ & GPLv3 & GPLv2+ & BSD-3-Clause"
7LIC_FILES_CHKSUM = "file://COPYING;md5=b2beded7103a3d8a442a2a0391d607b0" 7LIC_FILES_CHKSUM = "file://COPYING;md5=b2beded7103a3d8a442a2a0391d607b0"
8 8
9SRC_URI = "git://gitlab.freedesktop.org/mesa/piglit.git;protocol=https;branch=master \ 9SRC_URI = "git://gitlab.freedesktop.org/mesa/piglit.git;protocol=https;branch=main \
10 file://0001-cmake-install-bash-completions-in-the-right-place.patch \ 10 file://0001-cmake-install-bash-completions-in-the-right-place.patch \
11 file://0001-cmake-use-proper-WAYLAND_INCLUDE_DIRS-variable.patch \ 11 file://0001-cmake-use-proper-WAYLAND_INCLUDE_DIRS-variable.patch \
12 file://0001-Add-a-missing-include-for-htobe32-definition.patch \
13 file://0001-generated_tests-gen_tcs-tes_input_tests.py-do-not-ha.patch \
14 file://0002-tests-util-piglit-shader.c-do-not-hardcode-build-pat.patch \
15 file://0001-serializer.py-make-.gz-files-reproducible.patch \
16 file://0001-framework-profile.py-make-test-lists-reproducible.patch \
17 file://0001-tests-shader.py-sort-the-file-list-before-working-on.patch \
12 " 18 "
13UPSTREAM_CHECK_COMMITS = "1" 19UPSTREAM_CHECK_COMMITS = "1"
14 20
15SRCREV = "6126c2d4e476c7770d216ffa1932c10e2a5a7813" 21SRCREV = "83bc56abf2686e2cd9024a152e121ca4aa524985"
16# (when PV goes above 1.0 remove the trailing r) 22# (when PV goes above 1.0 remove the trailing r)
17PV = "1.0+gitr${SRCPV}" 23PV = "1.0+gitr${SRCPV}"
18 24
@@ -37,7 +43,9 @@ do_compile[dirs] =+ "${B}/temp/"
37PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" 43PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
38PACKAGECONFIG[freeglut] = "-DPIGLIT_USE_GLUT=1,-DPIGLIT_USE_GLUT=0,freeglut," 44PACKAGECONFIG[freeglut] = "-DPIGLIT_USE_GLUT=1,-DPIGLIT_USE_GLUT=0,freeglut,"
39PACKAGECONFIG[x11] = "-DPIGLIT_BUILD_GL_TESTS=ON,-DPIGLIT_BUILD_GL_TESTS=OFF,${X11_DEPS}, ${X11_RDEPS}" 45PACKAGECONFIG[x11] = "-DPIGLIT_BUILD_GL_TESTS=ON,-DPIGLIT_BUILD_GL_TESTS=OFF,${X11_DEPS}, ${X11_RDEPS}"
46PACKAGECONFIG[vulkan] = "-DPIGLIT_BUILD_VK_TESTS=ON,-DPIGLIT_BUILD_VK_TESTS=OFF,vulkan-loader"
40 47
48export PIGLIT_BUILD_DIR = "../../../../git"
41 49
42do_configure_prepend() { 50do_configure_prepend() {
43 if [ "${@bb.utils.contains('PACKAGECONFIG', 'freeglut', 'yes', 'no', d)}" = "no" ]; then 51 if [ "${@bb.utils.contains('PACKAGECONFIG', 'freeglut', 'yes', 'no', d)}" = "no" ]; then