diff options
5 files changed, 2 insertions, 211 deletions
diff --git a/meta/recipes-graphics/piglit/piglit/0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch b/meta/recipes-graphics/piglit/piglit/0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch deleted file mode 100644 index 9d6eaaaa01..0000000000 --- a/meta/recipes-graphics/piglit/piglit/0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch +++ /dev/null | |||
@@ -1,49 +0,0 @@ | |||
1 | From 6b6acee8841d092e5066b1bec2ba1c49cce4f91f Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Daniel=20D=C3=ADaz?= <daniel.diaz@linaro.org> | ||
3 | Date: Thu, 4 May 2017 00:57:39 -0500 | ||
4 | Subject: [PATCH 1/4] CMake: define GBM_BO_MAP only when symbol is found | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | gbm_bo_map() and _unmap() have been added recently to Mesa, | ||
10 | and this update may not have reached all implementations of | ||
11 | GBM, such as the one provided by Mali r6, where said | ||
12 | definitions can be found in the header file but not in the | ||
13 | library itself. This leads to errors like the following when | ||
14 | linking: | ||
15 | ../../../../lib/libpiglitutil_gl.so.0: undefined reference to `gbm_bo_unmap' | ||
16 | ../../../../lib/libpiglitutil_gl.so.0: undefined reference to `gbm_bo_map' | ||
17 | collect2: error: ld returned 1 exit status | ||
18 | make[2]: *** [bin/point-sprite] Error 1 | ||
19 | |||
20 | Instead of relying on the header file, actually try to link | ||
21 | using that symbol to determine if PIGLIT_HAS_GBM_BO_MAP | ||
22 | should be defined. | ||
23 | |||
24 | Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org> | ||
25 | Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu> | ||
26 | Upstream-Status: Backport | ||
27 | --- | ||
28 | CMakeLists.txt | 5 +++-- | ||
29 | 1 file changed, 3 insertions(+), 2 deletions(-) | ||
30 | |||
31 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
32 | index a4ff99e..cc26fa8 100644 | ||
33 | --- a/CMakeLists.txt | ||
34 | +++ b/CMakeLists.txt | ||
35 | @@ -141,8 +141,9 @@ IF(${CMAKE_SYSTEM_NAME} MATCHES "Linux") | ||
36 | if(GBM_FOUND) | ||
37 | set(PIGLIT_HAS_GBM True) | ||
38 | add_definitions(-DPIGLIT_HAS_GBM) | ||
39 | - if (GBM_VERSION VERSION_EQUAL "12.1" OR GBM_VERSION VERSION_GREATER "12.1") | ||
40 | - set(PIGLIT_HAS_GBM_BO_MAP True) | ||
41 | + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${GBM_LIBRARIES}) | ||
42 | + CHECK_FUNCTION_EXISTS(gbm_bo_map PIGLIT_HAS_GBM_BO_MAP) | ||
43 | + if (PIGLIT_HAS_GBM_BO_MAP) | ||
44 | add_definitions(-DPIGLIT_HAS_GBM_BO_MAP) | ||
45 | endif() | ||
46 | endif(GBM_FOUND) | ||
47 | -- | ||
48 | 1.9.1 | ||
49 | |||
diff --git a/meta/recipes-graphics/piglit/piglit/0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch b/meta/recipes-graphics/piglit/piglit/0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch deleted file mode 100644 index 39f0d86cfe..0000000000 --- a/meta/recipes-graphics/piglit/piglit/0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch +++ /dev/null | |||
@@ -1,49 +0,0 @@ | |||
1 | From aa6728cc4941a87e3933c2aa770ab8ae3080b870 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Daniel=20D=C3=ADaz?= <daniel.diaz@linaro.org> | ||
3 | Date: Tue, 16 May 2017 12:37:07 -0500 | ||
4 | Subject: [PATCH 2/4] util/egl: Honour Surfaceless MESA in get_default_display | ||
5 | MIME-Version: 1.0 | ||
6 | Content-Type: text/plain; charset=UTF-8 | ||
7 | Content-Transfer-Encoding: 8bit | ||
8 | |||
9 | Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org> | ||
10 | Upstream-Status: Pending | ||
11 | --- | ||
12 | tests/util/piglit-util-egl.c | 7 +++++++ | ||
13 | 1 file changed, 7 insertions(+) | ||
14 | |||
15 | diff --git a/tests/util/piglit-util-egl.c b/tests/util/piglit-util-egl.c | ||
16 | index 106c735..389fe12 100644 | ||
17 | --- a/tests/util/piglit-util-egl.c | ||
18 | +++ b/tests/util/piglit-util-egl.c | ||
19 | @@ -85,6 +85,7 @@ piglit_egl_get_default_display(EGLenum platform) | ||
20 | static bool has_x11 = false; | ||
21 | static bool has_wayland = false; | ||
22 | static bool has_gbm = false; | ||
23 | + static bool has_surfaceless_mesa = false; | ||
24 | |||
25 | static EGLDisplay (*peglGetPlatformDisplayEXT)(EGLenum platform, void *native_display, const EGLint *attrib_list); | ||
26 | |||
27 | @@ -99,6 +100,7 @@ piglit_egl_get_default_display(EGLenum platform) | ||
28 | has_x11 = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_EXT_platform_x11"); | ||
29 | has_wayland = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_EXT_platform_wayland"); | ||
30 | has_gbm = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_EXT_platform_gbm"); | ||
31 | + has_surfaceless_mesa = piglit_is_egl_extension_supported(EGL_NO_DISPLAY, "EGL_MESA_platform_surfaceless"); | ||
32 | |||
33 | peglGetPlatformDisplayEXT = (void*) eglGetProcAddress("eglGetPlatformDisplayEXT"); | ||
34 | } | ||
35 | @@ -123,6 +125,11 @@ piglit_egl_get_default_display(EGLenum platform) | ||
36 | return EGL_NO_DISPLAY; | ||
37 | } | ||
38 | break; | ||
39 | + case EGL_PLATFORM_SURFACELESS_MESA: | ||
40 | + if (!has_surfaceless_mesa) { | ||
41 | + return EGL_NO_DISPLAY; | ||
42 | + } | ||
43 | + break; | ||
44 | default: | ||
45 | fprintf(stderr, "%s: unrecognized platform %#x\n", __func__, platform); | ||
46 | return EGL_NO_DISPLAY; | ||
47 | -- | ||
48 | 1.9.1 | ||
49 | |||
diff --git a/meta/recipes-graphics/piglit/piglit/0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch b/meta/recipes-graphics/piglit/piglit/0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch deleted file mode 100644 index ee64415693..0000000000 --- a/meta/recipes-graphics/piglit/piglit/0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch +++ /dev/null | |||
@@ -1,31 +0,0 @@ | |||
1 | From b02bdbfdba3464ce47f87c04bcd1d35a8fef3f54 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Daniel=20D=C3=ADaz?= <daniel.diaz@linaro.org> | ||
3 | Date: Wed, 17 May 2017 17:53:10 -0500 | ||
4 | Subject: [PATCH 3/4] egl_mesa_platform_surfaceless: Don't use | ||
5 | eglGetPlatformDisplay directly | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: text/plain; charset=UTF-8 | ||
8 | Content-Transfer-Encoding: 8bit | ||
9 | |||
10 | Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org> | ||
11 | Upstream-Status: Pending | ||
12 | --- | ||
13 | .../spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | 2 +- | ||
14 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
15 | |||
16 | diff --git a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | ||
17 | index 3bbd6aa..81a3919 100644 | ||
18 | --- a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | ||
19 | +++ b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | ||
20 | @@ -31,7 +31,7 @@ test_setup(EGLDisplay *dpy) | ||
21 | |||
22 | piglit_require_egl_extension(EGL_NO_DISPLAY, "EGL_MESA_platform_surfaceless"); | ||
23 | |||
24 | - *dpy = eglGetPlatformDisplay(EGL_PLATFORM_SURFACELESS_MESA, NULL, NULL); | ||
25 | + *dpy = piglit_egl_get_default_display(EGL_PLATFORM_SURFACELESS_MESA); | ||
26 | if (*dpy == EGL_NO_DISPLAY) { | ||
27 | printf("failed to get EGLDisplay\n"); | ||
28 | piglit_report_result(PIGLIT_SKIP); | ||
29 | -- | ||
30 | 1.9.1 | ||
31 | |||
diff --git a/meta/recipes-graphics/piglit/piglit/0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch b/meta/recipes-graphics/piglit/piglit/0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch deleted file mode 100644 index 8b4fd34152..0000000000 --- a/meta/recipes-graphics/piglit/piglit/0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch +++ /dev/null | |||
@@ -1,76 +0,0 @@ | |||
1 | From f3bb10947a87cc3a59619847f53d47708e10fbb7 Mon Sep 17 00:00:00 2001 | ||
2 | From: =?UTF-8?q?Daniel=20D=C3=ADaz?= <daniel.diaz@linaro.org> | ||
3 | Date: Wed, 17 May 2017 10:51:48 -0500 | ||
4 | Subject: [PATCH 4/4] egl_mesa_platform_surfaceless: Use EXT functions for | ||
5 | surfaces | ||
6 | MIME-Version: 1.0 | ||
7 | Content-Type: text/plain; charset=UTF-8 | ||
8 | Content-Transfer-Encoding: 8bit | ||
9 | |||
10 | These EXT symbols are guaranteed to exist since they require | ||
11 | EGL_EXT_platform_base. | ||
12 | |||
13 | Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org> | ||
14 | Upstream-Status: Pending | ||
15 | --- | ||
16 | .../egl_mesa_platform_surfaceless.c | 23 ++++++++++++++++++++-- | ||
17 | 1 file changed, 21 insertions(+), 2 deletions(-) | ||
18 | |||
19 | diff --git a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | ||
20 | index 81a3919..264ed71 100644 | ||
21 | --- a/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | ||
22 | +++ b/tests/egl/spec/egl_mesa_platform_surfaceless/egl_mesa_platform_surfaceless.c | ||
23 | @@ -24,6 +24,24 @@ | ||
24 | #include "piglit-util.h" | ||
25 | #include "piglit-util-egl.h" | ||
26 | |||
27 | +/* Extension function pointers. | ||
28 | + * | ||
29 | + * Use prefix 'pegl' (piglit egl) instead of 'egl' to avoid collisions with | ||
30 | + * prototypes in eglext.h. */ | ||
31 | +EGLSurface (*peglCreatePlatformPixmapSurfaceEXT)(EGLDisplay display, EGLConfig config, | ||
32 | + NativePixmapType native_pixmap, const EGLint *attrib_list); | ||
33 | +EGLSurface (*peglCreatePlatformWindowSurfaceEXT)(EGLDisplay display, EGLConfig config, | ||
34 | + NativeWindowType native_window, const EGLint *attrib_list); | ||
35 | + | ||
36 | +static void | ||
37 | +init_egl_extension_funcs(void) | ||
38 | +{ | ||
39 | + peglCreatePlatformPixmapSurfaceEXT = (void*) | ||
40 | + eglGetProcAddress("eglCreatePlatformPixmapSurfaceEXT"); | ||
41 | + peglCreatePlatformWindowSurfaceEXT = (void*) | ||
42 | + eglGetProcAddress("eglCreatePlatformWindowSurfaceEXT"); | ||
43 | +} | ||
44 | + | ||
45 | static void | ||
46 | test_setup(EGLDisplay *dpy) | ||
47 | { | ||
48 | @@ -72,7 +90,7 @@ test_create_window(void *test_data) | ||
49 | |||
50 | test_setup(&dpy); | ||
51 | |||
52 | - surf = eglCreatePlatformWindowSurface(dpy, EGL_NO_CONFIG_KHR, | ||
53 | + surf = peglCreatePlatformWindowSurfaceEXT(dpy, EGL_NO_CONFIG_KHR, | ||
54 | /*native_window*/ NULL, | ||
55 | /*attrib_list*/ NULL); | ||
56 | if (surf) { | ||
57 | @@ -103,7 +121,7 @@ test_create_pixmap(void *test_data) | ||
58 | |||
59 | test_setup(&dpy); | ||
60 | |||
61 | - surf = eglCreatePlatformPixmapSurface(dpy, EGL_NO_CONFIG_KHR, | ||
62 | + surf = peglCreatePlatformPixmapSurfaceEXT(dpy, EGL_NO_CONFIG_KHR, | ||
63 | /*native_window*/ NULL, | ||
64 | /*attrib_list*/ NULL); | ||
65 | if (surf) { | ||
66 | @@ -205,6 +223,7 @@ main(int argc, char **argv) | ||
67 | piglit_report_result(PIGLIT_FAIL); | ||
68 | } | ||
69 | |||
70 | + init_egl_extension_funcs(); | ||
71 | result = piglit_run_selected_subtests(subtests, selected_names, | ||
72 | num_selected, result); | ||
73 | piglit_report_result(result); | ||
74 | -- | ||
75 | 1.9.1 | ||
76 | |||
diff --git a/meta/recipes-graphics/piglit/piglit_git.bb b/meta/recipes-graphics/piglit/piglit_git.bb index 2ea57794a6..3f43798109 100644 --- a/meta/recipes-graphics/piglit/piglit_git.bb +++ b/meta/recipes-graphics/piglit/piglit_git.bb | |||
@@ -5,14 +5,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b2beded7103a3d8a442a2a0391d607b0" | |||
5 | SRC_URI = "git://anongit.freedesktop.org/piglit \ | 5 | SRC_URI = "git://anongit.freedesktop.org/piglit \ |
6 | file://0001-cmake-install-bash-completions-in-the-right-place.patch \ | 6 | file://0001-cmake-install-bash-completions-in-the-right-place.patch \ |
7 | file://0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch \ | 7 | file://0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch \ |
8 | file://0001-CMake-define-GBM_BO_MAP-only-when-symbol-is-found.patch \ | ||
9 | file://0002-util-egl-Honour-Surfaceless-MESA-in-get_default_disp.patch \ | ||
10 | file://0003-egl_mesa_platform_surfaceless-Don-t-use-eglGetPlatfo.patch \ | ||
11 | file://0004-egl_mesa_platform_surfaceless-Use-EXT-functions-for-.patch \ | ||
12 | " | 8 | " |
13 | 9 | ||
14 | # From 2017-02-06 | 10 | # From 2017-07-03 |
15 | SRCREV = "ca58eec0b965655c7eba592a634cbf4aadfbc675" | 11 | SRCREV = "c8f4fd9eeb298a2ef0855927f22634f794ef3eff" |
16 | # (when PV goes above 1.0 remove the trailing r) | 12 | # (when PV goes above 1.0 remove the trailing r) |
17 | PV = "1.0+gitr${SRCPV}" | 13 | PV = "1.0+gitr${SRCPV}" |
18 | 14 | ||