summaryrefslogtreecommitdiffstats
path: root/recipes-graphics/mesa/mesa-demos/0001-YOCIMX-8300-Fix-mesa-demos-build-break-on-GCC-14.patch
blob: 91b736ee7757f510308b6bbc9541ec911ed479b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
From 400c42cda81a859bd5950567eaffe394053ccc99 Mon Sep 17 00:00:00 2001
From: Wujian Sun <wujian.sun_1@nxp.com>
Date: Thu, 5 Dec 2024 10:32:05 +0800
Subject: [PATCH] YOCIMX-8300 Fix mesa-demos build break on GCC 14

| ../mesa-demos-8.5.0/src/egl/opengl/eglkms.c: In function 'main':
| ../mesa-demos-8.5.0/src/egl/opengl/eglkms.c:190:24: error: passing
argument 1 of 'eglGetDisplay' from incompatible pointer type
[-Wincompatible-pointer-types]
|   190 |    dpy = eglGetDisplay(gbm);
|       |                        ^~~
|       |                        |
|       |                        struct gbm_device *
| In file included from ../mesa-demos-8.5.0/src/egl/opengl/eglkms.c:33:

Type' {aka 'struct wl_display *'} but argument is of type 'struct
gbm_device *'
|   143 | EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay
(EGLNativeDisplayType display_id);
|       |
~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
| ../mesa-demos-8.5.0/src/egl/opengl/eglkms.c:229:50: error: passing
argument 3 of 'eglCreateWindowSurface' from incompatible pointer type
[-Wincompatible-pointer-types]
|   229 |    surface = eglCreateWindowSurface(dpy, config, gs, NULL);
|       |                                                  ^~
|       |                                                  |
|       |                                                  struct
gbm_surface *

Upstream-Status: Submitted [https://gitlab.freedesktop.org/mesa/demos/-/merge_requests/205]

Signed-off-by: Wujian Sun <wujian.sun_1@nxp.com>
---
 src/egl/opengl/eglkms.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/egl/opengl/eglkms.c b/src/egl/opengl/eglkms.c
index 832962b..57adc7b 100644
--- a/src/egl/opengl/eglkms.c
+++ b/src/egl/opengl/eglkms.c
@@ -187,7 +187,7 @@ int main(int argc, char *argv[])
       goto close_fd;
    }
 
-   dpy = eglGetDisplay(gbm);
+   dpy = eglGetDisplay((EGLNativeDisplayType) gbm);
    if (dpy == EGL_NO_DISPLAY) {
       fprintf(stderr, "eglGetDisplay() failed\n");
       ret = -1;
@@ -226,7 +226,7 @@ int main(int argc, char *argv[])
    gs = gbm_surface_create(gbm, kms.mode.hdisplay, kms.mode.vdisplay,
 			   GBM_BO_FORMAT_XRGB8888,
 			   GBM_BO_USE_SCANOUT | GBM_BO_USE_RENDERING);
-   surface = eglCreateWindowSurface(dpy, config, gs, NULL);
+   surface = eglCreateWindowSurface(dpy, config, (EGLNativeWindowType) gs, NULL);
 
    if (!eglMakeCurrent(dpy, surface, surface, ctx)) {
       fprintf(stderr, "failed to make context current\n");