diff options
author | Valentin Popa <valentin.popa@intel.com> | 2013-10-30 12:27:39 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-11-01 11:09:03 +0000 |
commit | 678a4fa22f5569d75a13eb39d586cdcf033bdeb0 (patch) | |
tree | a2410d7a24ed23ebfc118412a74f6be741352170 | |
parent | 9f7f7afaa47bc3a058234269bffa55e15558df16 (diff) | |
download | poky-678a4fa22f5569d75a13eb39d586cdcf033bdeb0.tar.gz |
Mesa: upgrade to 9.2.2
* License is still MIT
* removed patches were already merged or
another solution was backported.
(From OE-Core rev: 263e654e5d28fa7f6b0c8cc23f57a31448e88a40)
Signed-off-by: Valentin Popa <valentin.popa@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
11 files changed, 33 insertions, 562 deletions
diff --git a/meta/recipes-graphics/mesa/mesa-9.1.6/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch b/meta/recipes-graphics/mesa/mesa-9.1.6/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch deleted file mode 100644 index 30a3d98758..0000000000 --- a/meta/recipes-graphics/mesa/mesa-9.1.6/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch +++ /dev/null | |||
@@ -1,362 +0,0 @@ | |||
1 | From 06c1ba29de8a26fffb73ee99f0fc54c704e9fee4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Daniel Stone <daniel@fooishbar.org> | ||
3 | Date: Fri, 24 May 2013 17:20:27 +0100 | ||
4 | Subject: [PATCH 3/5] EGL: Mutate NativeDisplayType depending on config | ||
5 | |||
6 | If we go through ./configure without enabling X11 anywhere, then set the | ||
7 | fallback types for EGL NativeDisplay and friends, rather than assuming | ||
8 | X11/Xlib. | ||
9 | |||
10 | Upstream-Status: Backport (slightly different solution was applied in master | ||
11 | https://bugs.freedesktop.org/show_bug.cgi?id=64959) | ||
12 | |||
13 | Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
14 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
15 | --- | ||
16 | configure.ac | 9 +++ | ||
17 | include/EGL/eglplatform.h | 146 ------------------------------------------- | ||
18 | include/EGL/eglplatform.h.in | 146 +++++++++++++++++++++++++++++++++++++++++++ | ||
19 | 3 files changed, 155 insertions(+), 146 deletions(-) | ||
20 | delete mode 100644 include/EGL/eglplatform.h | ||
21 | create mode 100644 include/EGL/eglplatform.h.in | ||
22 | |||
23 | diff --git a/configure.ac b/configure.ac | ||
24 | index 2b4a374..d4c7a95 100644 | ||
25 | --- a/configure.ac | ||
26 | +++ b/configure.ac | ||
27 | @@ -1565,12 +1565,20 @@ fi | ||
28 | |||
29 | EGL_PLATFORMS="$egl_platforms" | ||
30 | |||
31 | +if echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1; then | ||
32 | + MESA_EGL_NO_X11_HEADERS=0 | ||
33 | +else | ||
34 | + MESA_EGL_NO_X11_HEADERS=1 | ||
35 | +fi | ||
36 | + | ||
37 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_X11, echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1) | ||
38 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_WAYLAND, echo "$egl_platforms" | grep 'wayland' >/dev/null 2>&1) | ||
39 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep 'drm' >/dev/null 2>&1) | ||
40 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_FBDEV, echo "$egl_platforms" | grep 'fbdev' >/dev/null 2>&1) | ||
41 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_NULL, echo "$egl_platforms" | grep 'null' >/dev/null 2>&1) | ||
42 | |||
43 | +AC_SUBST([MESA_EGL_NO_X11_HEADERS]) | ||
44 | + | ||
45 | AM_CONDITIONAL(HAVE_EGL_DRIVER_DRI2, test "x$HAVE_EGL_DRIVER_DRI2" != "x") | ||
46 | AM_CONDITIONAL(HAVE_EGL_DRIVER_GLX, test "x$HAVE_EGL_DRIVER_GLX" != "x") | ||
47 | |||
48 | @@ -2042,6 +2050,7 @@ CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS" | ||
49 | |||
50 | dnl Substitute the config | ||
51 | AC_CONFIG_FILES([Makefile | ||
52 | + include/EGL/eglplatform.h | ||
53 | src/Makefile | ||
54 | src/egl/Makefile | ||
55 | src/egl/drivers/Makefile | ||
56 | diff --git a/include/EGL/eglplatform.h b/include/EGL/eglplatform.h | ||
57 | deleted file mode 100644 | ||
58 | index 17fdc61..0000000 | ||
59 | --- a/include/EGL/eglplatform.h | ||
60 | +++ /dev/null | ||
61 | @@ -1,146 +0,0 @@ | ||
62 | -#ifndef __eglplatform_h_ | ||
63 | -#define __eglplatform_h_ | ||
64 | - | ||
65 | -/* | ||
66 | -** Copyright (c) 2007-2009 The Khronos Group Inc. | ||
67 | -** | ||
68 | -** Permission is hereby granted, free of charge, to any person obtaining a | ||
69 | -** copy of this software and/or associated documentation files (the | ||
70 | -** "Materials"), to deal in the Materials without restriction, including | ||
71 | -** without limitation the rights to use, copy, modify, merge, publish, | ||
72 | -** distribute, sublicense, and/or sell copies of the Materials, and to | ||
73 | -** permit persons to whom the Materials are furnished to do so, subject to | ||
74 | -** the following conditions: | ||
75 | -** | ||
76 | -** The above copyright notice and this permission notice shall be included | ||
77 | -** in all copies or substantial portions of the Materials. | ||
78 | -** | ||
79 | -** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
80 | -** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
81 | -** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | ||
82 | -** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY | ||
83 | -** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | ||
84 | -** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | ||
85 | -** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. | ||
86 | -*/ | ||
87 | - | ||
88 | -/* Platform-specific types and definitions for egl.h | ||
89 | - * $Revision: 12306 $ on $Date: 2010-08-25 09:51:28 -0700 (Wed, 25 Aug 2010) $ | ||
90 | - * | ||
91 | - * Adopters may modify khrplatform.h and this file to suit their platform. | ||
92 | - * You are encouraged to submit all modifications to the Khronos group so that | ||
93 | - * they can be included in future versions of this file. Please submit changes | ||
94 | - * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla) | ||
95 | - * by filing a bug against product "EGL" component "Registry". | ||
96 | - */ | ||
97 | - | ||
98 | -#include <KHR/khrplatform.h> | ||
99 | - | ||
100 | -/* Macros used in EGL function prototype declarations. | ||
101 | - * | ||
102 | - * EGL functions should be prototyped as: | ||
103 | - * | ||
104 | - * EGLAPI return-type EGLAPIENTRY eglFunction(arguments); | ||
105 | - * typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments); | ||
106 | - * | ||
107 | - * KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h | ||
108 | - */ | ||
109 | - | ||
110 | -#ifndef EGLAPI | ||
111 | -#define EGLAPI KHRONOS_APICALL | ||
112 | -#endif | ||
113 | - | ||
114 | -#ifndef EGLAPIENTRY | ||
115 | -#define EGLAPIENTRY KHRONOS_APIENTRY | ||
116 | -#endif | ||
117 | -#define EGLAPIENTRYP EGLAPIENTRY* | ||
118 | - | ||
119 | -/* The types NativeDisplayType, NativeWindowType, and NativePixmapType | ||
120 | - * are aliases of window-system-dependent types, such as X Display * or | ||
121 | - * Windows Device Context. They must be defined in platform-specific | ||
122 | - * code below. The EGL-prefixed versions of Native*Type are the same | ||
123 | - * types, renamed in EGL 1.3 so all types in the API start with "EGL". | ||
124 | - * | ||
125 | - * Khronos STRONGLY RECOMMENDS that you use the default definitions | ||
126 | - * provided below, since these changes affect both binary and source | ||
127 | - * portability of applications using EGL running on different EGL | ||
128 | - * implementations. | ||
129 | - */ | ||
130 | - | ||
131 | -#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */ | ||
132 | -#ifndef WIN32_LEAN_AND_MEAN | ||
133 | -#define WIN32_LEAN_AND_MEAN 1 | ||
134 | -#endif | ||
135 | -#include <windows.h> | ||
136 | - | ||
137 | -typedef HDC EGLNativeDisplayType; | ||
138 | -typedef HBITMAP EGLNativePixmapType; | ||
139 | -typedef HWND EGLNativeWindowType; | ||
140 | - | ||
141 | -#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */ | ||
142 | - | ||
143 | -typedef int EGLNativeDisplayType; | ||
144 | -typedef void *EGLNativeWindowType; | ||
145 | -typedef void *EGLNativePixmapType; | ||
146 | - | ||
147 | -#elif defined(WL_EGL_PLATFORM) | ||
148 | - | ||
149 | -typedef struct wl_display *EGLNativeDisplayType; | ||
150 | -typedef struct wl_egl_pixmap *EGLNativePixmapType; | ||
151 | -typedef struct wl_egl_window *EGLNativeWindowType; | ||
152 | - | ||
153 | -#elif defined(__GBM__) | ||
154 | - | ||
155 | -typedef struct gbm_device *EGLNativeDisplayType; | ||
156 | -typedef struct gbm_bo *EGLNativePixmapType; | ||
157 | -typedef void *EGLNativeWindowType; | ||
158 | - | ||
159 | -#elif defined(ANDROID) /* Android */ | ||
160 | - | ||
161 | -struct ANativeWindow; | ||
162 | -struct egl_native_pixmap_t; | ||
163 | - | ||
164 | -typedef struct ANativeWindow *EGLNativeWindowType; | ||
165 | -typedef struct egl_native_pixmap_t *EGLNativePixmapType; | ||
166 | -typedef void *EGLNativeDisplayType; | ||
167 | - | ||
168 | -#elif defined(__unix__) | ||
169 | - | ||
170 | -#ifdef MESA_EGL_NO_X11_HEADERS | ||
171 | - | ||
172 | -typedef void *EGLNativeDisplayType; | ||
173 | -typedef khronos_uint32_t EGLNativePixmapType; | ||
174 | -typedef khronos_uint32_t EGLNativeWindowType; | ||
175 | - | ||
176 | -#else | ||
177 | - | ||
178 | -/* X11 (tentative) */ | ||
179 | -#include <X11/Xlib.h> | ||
180 | -#include <X11/Xutil.h> | ||
181 | - | ||
182 | -typedef Display *EGLNativeDisplayType; | ||
183 | -typedef Pixmap EGLNativePixmapType; | ||
184 | -typedef Window EGLNativeWindowType; | ||
185 | - | ||
186 | -#endif /* MESA_EGL_NO_X11_HEADERS */ | ||
187 | - | ||
188 | -#else | ||
189 | -#error "Platform not recognized" | ||
190 | -#endif | ||
191 | - | ||
192 | -/* EGL 1.2 types, renamed for consistency in EGL 1.3 */ | ||
193 | -typedef EGLNativeDisplayType NativeDisplayType; | ||
194 | -typedef EGLNativePixmapType NativePixmapType; | ||
195 | -typedef EGLNativeWindowType NativeWindowType; | ||
196 | - | ||
197 | - | ||
198 | -/* Define EGLint. This must be a signed integral type large enough to contain | ||
199 | - * all legal attribute names and values passed into and out of EGL, whether | ||
200 | - * their type is boolean, bitmask, enumerant (symbolic constant), integer, | ||
201 | - * handle, or other. While in general a 32-bit integer will suffice, if | ||
202 | - * handles are 64 bit types, then EGLint should be defined as a signed 64-bit | ||
203 | - * integer type. | ||
204 | - */ | ||
205 | -typedef khronos_int32_t EGLint; | ||
206 | - | ||
207 | -#endif /* __eglplatform_h */ | ||
208 | diff --git a/include/EGL/eglplatform.h.in b/include/EGL/eglplatform.h.in | ||
209 | new file mode 100644 | ||
210 | index 0000000..5126c92 | ||
211 | --- /dev/null | ||
212 | +++ b/include/EGL/eglplatform.h.in | ||
213 | @@ -0,0 +1,146 @@ | ||
214 | +#ifndef __eglplatform_h_ | ||
215 | +#define __eglplatform_h_ | ||
216 | + | ||
217 | +/* | ||
218 | +** Copyright (c) 2007-2009 The Khronos Group Inc. | ||
219 | +** | ||
220 | +** Permission is hereby granted, free of charge, to any person obtaining a | ||
221 | +** copy of this software and/or associated documentation files (the | ||
222 | +** "Materials"), to deal in the Materials without restriction, including | ||
223 | +** without limitation the rights to use, copy, modify, merge, publish, | ||
224 | +** distribute, sublicense, and/or sell copies of the Materials, and to | ||
225 | +** permit persons to whom the Materials are furnished to do so, subject to | ||
226 | +** the following conditions: | ||
227 | +** | ||
228 | +** The above copyright notice and this permission notice shall be included | ||
229 | +** in all copies or substantial portions of the Materials. | ||
230 | +** | ||
231 | +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
232 | +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
233 | +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. | ||
234 | +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY | ||
235 | +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | ||
236 | +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | ||
237 | +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. | ||
238 | +*/ | ||
239 | + | ||
240 | +/* Platform-specific types and definitions for egl.h | ||
241 | + * $Revision: 12306 $ on $Date: 2010-08-25 09:51:28 -0700 (Wed, 25 Aug 2010) $ | ||
242 | + * | ||
243 | + * Adopters may modify khrplatform.h and this file to suit their platform. | ||
244 | + * You are encouraged to submit all modifications to the Khronos group so that | ||
245 | + * they can be included in future versions of this file. Please submit changes | ||
246 | + * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla) | ||
247 | + * by filing a bug against product "EGL" component "Registry". | ||
248 | + */ | ||
249 | + | ||
250 | +#include <KHR/khrplatform.h> | ||
251 | + | ||
252 | +/* Macros used in EGL function prototype declarations. | ||
253 | + * | ||
254 | + * EGL functions should be prototyped as: | ||
255 | + * | ||
256 | + * EGLAPI return-type EGLAPIENTRY eglFunction(arguments); | ||
257 | + * typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments); | ||
258 | + * | ||
259 | + * KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h | ||
260 | + */ | ||
261 | + | ||
262 | +#ifndef EGLAPI | ||
263 | +#define EGLAPI KHRONOS_APICALL | ||
264 | +#endif | ||
265 | + | ||
266 | +#ifndef EGLAPIENTRY | ||
267 | +#define EGLAPIENTRY KHRONOS_APIENTRY | ||
268 | +#endif | ||
269 | +#define EGLAPIENTRYP EGLAPIENTRY* | ||
270 | + | ||
271 | +/* The types NativeDisplayType, NativeWindowType, and NativePixmapType | ||
272 | + * are aliases of window-system-dependent types, such as X Display * or | ||
273 | + * Windows Device Context. They must be defined in platform-specific | ||
274 | + * code below. The EGL-prefixed versions of Native*Type are the same | ||
275 | + * types, renamed in EGL 1.3 so all types in the API start with "EGL". | ||
276 | + * | ||
277 | + * Khronos STRONGLY RECOMMENDS that you use the default definitions | ||
278 | + * provided below, since these changes affect both binary and source | ||
279 | + * portability of applications using EGL running on different EGL | ||
280 | + * implementations. | ||
281 | + */ | ||
282 | + | ||
283 | +#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */ | ||
284 | +#ifndef WIN32_LEAN_AND_MEAN | ||
285 | +#define WIN32_LEAN_AND_MEAN 1 | ||
286 | +#endif | ||
287 | +#include <windows.h> | ||
288 | + | ||
289 | +typedef HDC EGLNativeDisplayType; | ||
290 | +typedef HBITMAP EGLNativePixmapType; | ||
291 | +typedef HWND EGLNativeWindowType; | ||
292 | + | ||
293 | +#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */ | ||
294 | + | ||
295 | +typedef int EGLNativeDisplayType; | ||
296 | +typedef void *EGLNativeWindowType; | ||
297 | +typedef void *EGLNativePixmapType; | ||
298 | + | ||
299 | +#elif defined(WL_EGL_PLATFORM) | ||
300 | + | ||
301 | +typedef struct wl_display *EGLNativeDisplayType; | ||
302 | +typedef struct wl_egl_pixmap *EGLNativePixmapType; | ||
303 | +typedef struct wl_egl_window *EGLNativeWindowType; | ||
304 | + | ||
305 | +#elif defined(__GBM__) | ||
306 | + | ||
307 | +typedef struct gbm_device *EGLNativeDisplayType; | ||
308 | +typedef struct gbm_bo *EGLNativePixmapType; | ||
309 | +typedef void *EGLNativeWindowType; | ||
310 | + | ||
311 | +#elif defined(ANDROID) /* Android */ | ||
312 | + | ||
313 | +struct ANativeWindow; | ||
314 | +struct egl_native_pixmap_t; | ||
315 | + | ||
316 | +typedef struct ANativeWindow *EGLNativeWindowType; | ||
317 | +typedef struct egl_native_pixmap_t *EGLNativePixmapType; | ||
318 | +typedef void *EGLNativeDisplayType; | ||
319 | + | ||
320 | +#elif defined(__unix__) | ||
321 | + | ||
322 | +#if @MESA_EGL_NO_X11_HEADERS@ | ||
323 | + | ||
324 | +typedef void *EGLNativeDisplayType; | ||
325 | +typedef khronos_uint32_t EGLNativePixmapType; | ||
326 | +typedef khronos_uint32_t EGLNativeWindowType; | ||
327 | + | ||
328 | +#else | ||
329 | + | ||
330 | +/* X11 (tentative) */ | ||
331 | +#include <X11/Xlib.h> | ||
332 | +#include <X11/Xutil.h> | ||
333 | + | ||
334 | +typedef Display *EGLNativeDisplayType; | ||
335 | +typedef Pixmap EGLNativePixmapType; | ||
336 | +typedef Window EGLNativeWindowType; | ||
337 | + | ||
338 | +#endif /* MESA_EGL_NO_X11_HEADERS */ | ||
339 | + | ||
340 | +#else | ||
341 | +#error "Platform not recognized" | ||
342 | +#endif | ||
343 | + | ||
344 | +/* EGL 1.2 types, renamed for consistency in EGL 1.3 */ | ||
345 | +typedef EGLNativeDisplayType NativeDisplayType; | ||
346 | +typedef EGLNativePixmapType NativePixmapType; | ||
347 | +typedef EGLNativeWindowType NativeWindowType; | ||
348 | + | ||
349 | + | ||
350 | +/* Define EGLint. This must be a signed integral type large enough to contain | ||
351 | + * all legal attribute names and values passed into and out of EGL, whether | ||
352 | + * their type is boolean, bitmask, enumerant (symbolic constant), integer, | ||
353 | + * handle, or other. While in general a 32-bit integer will suffice, if | ||
354 | + * handles are 64 bit types, then EGLint should be defined as a signed 64-bit | ||
355 | + * integer type. | ||
356 | + */ | ||
357 | +typedef khronos_int32_t EGLint; | ||
358 | + | ||
359 | +#endif /* __eglplatform_h */ | ||
360 | -- | ||
361 | 1.8.2.1 | ||
362 | |||
diff --git a/meta/recipes-graphics/mesa/mesa-gl_9.1.6.bb b/meta/recipes-graphics/mesa/mesa-gl_9.2.2.bb index 21f6151f29..21f6151f29 100644 --- a/meta/recipes-graphics/mesa/mesa-gl_9.1.6.bb +++ b/meta/recipes-graphics/mesa/mesa-gl_9.2.2.bb | |||
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc index 2b66582c19..96313b5da5 100644 --- a/meta/recipes-graphics/mesa/mesa.inc +++ b/meta/recipes-graphics/mesa/mesa.inc | |||
@@ -10,7 +10,7 @@ HOMEPAGE = "http://mesa3d.org" | |||
10 | BUGTRACKER = "https://bugs.freedesktop.org" | 10 | BUGTRACKER = "https://bugs.freedesktop.org" |
11 | SECTION = "x11" | 11 | SECTION = "x11" |
12 | LICENSE = "MIT" | 12 | LICENSE = "MIT" |
13 | LIC_FILES_CHKSUM = "file://docs/license.html;md5=42d77d95cba529a3637129be87d6555d" | 13 | LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf" |
14 | 14 | ||
15 | INC_PR = "r9" | 15 | INC_PR = "r9" |
16 | PE = "2" | 16 | PE = "2" |
diff --git a/meta/recipes-graphics/mesa/mesa/0001-configure-Avoid-use-of-AC_CHECK_FILE-for-cross-compi.patch b/meta/recipes-graphics/mesa/mesa/0001-configure-Avoid-use-of-AC_CHECK_FILE-for-cross-compi.patch deleted file mode 100644 index 76b5a18ede..0000000000 --- a/meta/recipes-graphics/mesa/mesa/0001-configure-Avoid-use-of-AC_CHECK_FILE-for-cross-compi.patch +++ /dev/null | |||
@@ -1,65 +0,0 @@ | |||
1 | From e21ce89f7ae6964f196086ff325d79e4a3b5acd8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jonathan Liu <net147@gmail.com> | ||
3 | Date: Tue, 4 Jun 2013 06:04:44 -0700 | ||
4 | Subject: [PATCH 1/4] configure: Avoid use of AC_CHECK_FILE for cross compiling | ||
5 | |||
6 | The AC_CHECK_FILE macro can't be used for cross compiling as it will | ||
7 | result in "error: cannot check for file existence when cross compiling". | ||
8 | Replace it with the AS_IF macro. | ||
9 | |||
10 | Upstream-Status: Submitted | ||
11 | http://lists.freedesktop.org/archives/mesa-dev/2013-June/040168.html | ||
12 | |||
13 | Signed-off-by: Jonathan Liu <net147@gmail.com> | ||
14 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
15 | --- | ||
16 | configure.ac | 12 ++++++------ | ||
17 | 1 file changed, 6 insertions(+), 6 deletions(-) | ||
18 | |||
19 | diff --git a/configure.ac b/configure.ac | ||
20 | index 70c598e..67b8c40 100644 | ||
21 | --- a/configure.ac | ||
22 | +++ b/configure.ac | ||
23 | @@ -1630,8 +1630,8 @@ if test "x$enable_gallium_llvm" = xyes; then | ||
24 | CLANG_LIBDIR=${LLVM_LIBDIR} | ||
25 | fi | ||
26 | CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} | ||
27 | - AC_CHECK_FILE("$CLANG_RESOURCE_DIR/include/stddef.h",, | ||
28 | - AC_MSG_ERROR([Could not find clang internal header stddef.h in $CLANG_RESOURCE_DIR Use --with-clang-libdir to specify the correct path to the clang libraries.])) | ||
29 | + AS_IF([test ! -f "$CLANG_RESOURCE_DIR/include/stddef.h"], | ||
30 | + [AC_MSG_ERROR([Could not find clang internal header stddef.h in $CLANG_RESOURCE_DIR Use --with-clang-libdir to specify the correct path to the clang libraries.])]) | ||
31 | fi | ||
32 | else | ||
33 | MESA_LLVM=0 | ||
34 | @@ -1861,7 +1861,7 @@ if test "x$MESA_LLVM" != x0; then | ||
35 | if test "x$with_llvm_shared_libs" = xyes; then | ||
36 | dnl We can't use $LLVM_VERSION because it has 'svn' stripped out, | ||
37 | LLVM_SO_NAME=LLVM-`$LLVM_CONFIG --version` | ||
38 | - AC_CHECK_FILE("$LLVM_LIBDIR/lib$LLVM_SO_NAME.so", llvm_have_one_so=yes,) | ||
39 | + AS_IF([test -f "$LLVM_LIBDIR/lib$LLVM_SO_NAME.so"], [llvm_have_one_so=yes]) | ||
40 | |||
41 | if test "x$llvm_have_one_so" = xyes; then | ||
42 | dnl LLVM was built using auto*, so there is only one shared object. | ||
43 | @@ -1869,8 +1869,8 @@ if test "x$MESA_LLVM" != x0; then | ||
44 | else | ||
45 | dnl If LLVM was built with CMake, there will be one shared object per | ||
46 | dnl component. | ||
47 | - AC_CHECK_FILE("$LLVM_LIBDIR/libLLVMTarget.so",, | ||
48 | - AC_MSG_ERROR([Could not find llvm shared libraries: | ||
49 | + AS_IF([test ! -f "$LLVM_LIBDIR/libLLVMTarget.so"], | ||
50 | + [AC_MSG_ERROR([Could not find llvm shared libraries: | ||
51 | Please make sure you have built llvm with the --enable-shared option | ||
52 | and that your llvm libraries are installed in $LLVM_LIBDIR | ||
53 | If you have installed your llvm libraries to a different directory you | ||
54 | @@ -1881,7 +1881,7 @@ if test "x$MESA_LLVM" != x0; then | ||
55 | --enable-opencl | ||
56 | If you do not want to build with llvm shared libraries and instead want to | ||
57 | use llvm static libraries then remove these options from your configure | ||
58 | - invocation and reconfigure.])) | ||
59 | + invocation and reconfigure.])]) | ||
60 | |||
61 | dnl We don't need to update LLVM_LIBS in this case because the LLVM | ||
62 | dnl install uses a shared object for each compoenent and we have | ||
63 | -- | ||
64 | 1.8.2.1 | ||
65 | |||
diff --git a/meta/recipes-graphics/mesa/mesa/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch b/meta/recipes-graphics/mesa/mesa/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch index 8a83f4b07b..30a3d98758 100644 --- a/meta/recipes-graphics/mesa/mesa/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch +++ b/meta/recipes-graphics/mesa/mesa/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch | |||
@@ -1,7 +1,7 @@ | |||
1 | From 8d31ae23683394617c49301b039b3a069b9ea436 Mon Sep 17 00:00:00 2001 | 1 | From 06c1ba29de8a26fffb73ee99f0fc54c704e9fee4 Mon Sep 17 00:00:00 2001 |
2 | From: Daniel Stone <daniel@fooishbar.org> | 2 | From: Daniel Stone <daniel@fooishbar.org> |
3 | Date: Fri, 24 May 2013 17:20:27 +0100 | 3 | Date: Fri, 24 May 2013 17:20:27 +0100 |
4 | Subject: [PATCH 3/4] EGL: Mutate NativeDisplayType depending on config | 4 | Subject: [PATCH 3/5] EGL: Mutate NativeDisplayType depending on config |
5 | 5 | ||
6 | If we go through ./configure without enabling X11 anywhere, then set the | 6 | If we go through ./configure without enabling X11 anywhere, then set the |
7 | fallback types for EGL NativeDisplay and friends, rather than assuming | 7 | fallback types for EGL NativeDisplay and friends, rather than assuming |
@@ -13,36 +13,39 @@ https://bugs.freedesktop.org/show_bug.cgi?id=64959) | |||
13 | Signed-off-by: Daniel Stone <daniel@fooishbar.org> | 13 | Signed-off-by: Daniel Stone <daniel@fooishbar.org> |
14 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | 14 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> |
15 | --- | 15 | --- |
16 | configure.ac | 5 ++ | 16 | configure.ac | 9 +++ |
17 | include/EGL/eglplatform.h | 146 ------------------------------------------- | 17 | include/EGL/eglplatform.h | 146 ------------------------------------------- |
18 | include/EGL/eglplatform.h.in | 146 +++++++++++++++++++++++++++++++++++++++++++ | 18 | include/EGL/eglplatform.h.in | 146 +++++++++++++++++++++++++++++++++++++++++++ |
19 | 3 files changed, 151 insertions(+), 146 deletions(-) | 19 | 3 files changed, 155 insertions(+), 146 deletions(-) |
20 | delete mode 100644 include/EGL/eglplatform.h | 20 | delete mode 100644 include/EGL/eglplatform.h |
21 | create mode 100644 include/EGL/eglplatform.h.in | 21 | create mode 100644 include/EGL/eglplatform.h.in |
22 | 22 | ||
23 | diff --git a/configure.ac b/configure.ac | 23 | diff --git a/configure.ac b/configure.ac |
24 | index 67b8c40..afc3217 100644 | 24 | index 2b4a374..d4c7a95 100644 |
25 | --- a/configure.ac | 25 | --- a/configure.ac |
26 | +++ b/configure.ac | 26 | +++ b/configure.ac |
27 | @@ -1499,6 +1499,9 @@ EGL_PLATFORMS="$egl_platforms" | 27 | @@ -1565,12 +1565,20 @@ fi |
28 | 28 | ||
29 | if echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1; then | 29 | EGL_PLATFORMS="$egl_platforms" |
30 | NEED_WINSYS_XLIB=yes | 30 | |
31 | +if echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1; then | ||
31 | + MESA_EGL_NO_X11_HEADERS=0 | 32 | + MESA_EGL_NO_X11_HEADERS=0 |
32 | +else | 33 | +else |
33 | + MESA_EGL_NO_X11_HEADERS=1 | 34 | + MESA_EGL_NO_X11_HEADERS=1 |
34 | fi | 35 | +fi |
36 | + | ||
35 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_X11, echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1) | 37 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_X11, echo "$egl_platforms" | grep 'x11' >/dev/null 2>&1) |
36 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_WAYLAND, echo "$egl_platforms" | grep 'wayland' >/dev/null 2>&1) | 38 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_WAYLAND, echo "$egl_platforms" | grep 'wayland' >/dev/null 2>&1) |
37 | @@ -1512,6 +1515,7 @@ AM_CONDITIONAL(HAVE_EGL_DRIVER_GLX, test "x$HAVE_EGL_DRIVER_GLX" != "x") | 39 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_DRM, echo "$egl_platforms" | grep 'drm' >/dev/null 2>&1) |
38 | AC_SUBST([EGL_NATIVE_PLATFORM]) | 40 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_FBDEV, echo "$egl_platforms" | grep 'fbdev' >/dev/null 2>&1) |
39 | AC_SUBST([EGL_PLATFORMS]) | 41 | AM_CONDITIONAL(HAVE_EGL_PLATFORM_NULL, echo "$egl_platforms" | grep 'null' >/dev/null 2>&1) |
40 | AC_SUBST([EGL_CFLAGS]) | 42 | |
41 | +AC_SUBST([MESA_EGL_NO_X11_HEADERS]) | 43 | +AC_SUBST([MESA_EGL_NO_X11_HEADERS]) |
44 | + | ||
45 | AM_CONDITIONAL(HAVE_EGL_DRIVER_DRI2, test "x$HAVE_EGL_DRIVER_DRI2" != "x") | ||
46 | AM_CONDITIONAL(HAVE_EGL_DRIVER_GLX, test "x$HAVE_EGL_DRIVER_GLX" != "x") | ||
42 | 47 | ||
43 | AC_ARG_WITH([egl-driver-dir], | 48 | @@ -2042,6 +2050,7 @@ CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS" |
44 | [AS_HELP_STRING([--with-egl-driver-dir=DIR], | ||
45 | @@ -1991,6 +1995,7 @@ CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS" | ||
46 | 49 | ||
47 | dnl Substitute the config | 50 | dnl Substitute the config |
48 | AC_CONFIG_FILES([Makefile | 51 | AC_CONFIG_FILES([Makefile |
diff --git a/meta/recipes-graphics/mesa/mesa/0004-glsl-fix-builtin_compiler-cross-compilation.patch b/meta/recipes-graphics/mesa/mesa/0004-glsl-fix-builtin_compiler-cross-compilation.patch deleted file mode 100644 index 460a2748bf..0000000000 --- a/meta/recipes-graphics/mesa/mesa/0004-glsl-fix-builtin_compiler-cross-compilation.patch +++ /dev/null | |||
@@ -1,54 +0,0 @@ | |||
1 | From ab38c97f057f739533a4e1fc9de51ea5f4e6242d Mon Sep 17 00:00:00 2001 | ||
2 | From: Jonathan Liu <net147@gmail.com> | ||
3 | Date: Sat, 29 Jun 2013 11:37:20 +0200 | ||
4 | Subject: [PATCH 4/4] glsl: fix builtin_compiler cross-compilation | ||
5 | |||
6 | The target libtool is used when building host binaries, which predictably | ||
7 | doesn't work. | ||
8 | |||
9 | Upstream-Status: Submitted https://bugs.freedesktop.org/show_bug.cgi?id=44618 | ||
10 | Signed-off-by: Jonathan Liu <net147@gmail.com> | ||
11 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
12 | --- | ||
13 | src/glsl/builtin_compiler/Makefile.am | 13 +++++++++++++ | ||
14 | 1 file changed, 13 insertions(+) | ||
15 | |||
16 | diff --git a/src/glsl/builtin_compiler/Makefile.am b/src/glsl/builtin_compiler/Makefile.am | ||
17 | index e11a17f..8ebe0a2 100644 | ||
18 | --- a/src/glsl/builtin_compiler/Makefile.am | ||
19 | +++ b/src/glsl/builtin_compiler/Makefile.am | ||
20 | @@ -64,6 +64,8 @@ AM_CXXFLAGS = $(AM_CFLAGS) | ||
21 | include ../Makefile.sources | ||
22 | |||
23 | noinst_PROGRAMS = builtin_compiler | ||
24 | + | ||
25 | +if !CROSS_COMPILING | ||
26 | noinst_LTLIBRARIES = libglslcore.la libglcpp.la | ||
27 | |||
28 | libglcpp_la_SOURCES = \ | ||
29 | @@ -73,6 +75,7 @@ libglcpp_la_SOURCES = \ | ||
30 | libglslcore_la_SOURCES = \ | ||
31 | $(BUILTIN_COMPILER_GENERATED_CXX_FILES) \ | ||
32 | $(LIBGLSL_FILES) | ||
33 | +endif | ||
34 | |||
35 | builtin_compiler_SOURCES = \ | ||
36 | $(top_srcdir)/src/mesa/main/hash_table.c \ | ||
37 | @@ -81,4 +84,14 @@ builtin_compiler_SOURCES = \ | ||
38 | $(top_srcdir)/src/mesa/program/symbol_table.c \ | ||
39 | $(BUILTIN_COMPILER_CXX_FILES) \ | ||
40 | $(GLSL_COMPILER_CXX_FILES) | ||
41 | + | ||
42 | +if CROSS_COMPILING | ||
43 | +builtin_compiler_SOURCES += \ | ||
44 | + $(LIBGLCPP_GENERATED_FILES) \ | ||
45 | + $(LIBGLCPP_FILES) \ | ||
46 | + $(BUILTIN_COMPILER_GENERATED_CXX_FILES) \ | ||
47 | + $(LIBGLSL_FILES) | ||
48 | +builtin_compiler_CPPFLAGS = $(AM_CPPFLAGS) | ||
49 | +else | ||
50 | builtin_compiler_LDADD = libglslcore.la libglcpp.la | ||
51 | +endif | ||
52 | -- | ||
53 | 1.8.2.1 | ||
54 | |||
diff --git a/meta/recipes-graphics/mesa/mesa/0005-fix-out-of-tree-builds-gallium.patch b/meta/recipes-graphics/mesa/mesa/0005-fix-out-of-tree-builds-gallium.patch deleted file mode 100644 index 8c5984fd55..0000000000 --- a/meta/recipes-graphics/mesa/mesa/0005-fix-out-of-tree-builds-gallium.patch +++ /dev/null | |||
@@ -1,42 +0,0 @@ | |||
1 | Upstream-Status: Submitted | ||
2 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
3 | |||
4 | From 9e31e15ebb0adbf3cc0394c30cbc1ccd2b35a27f Mon Sep 17 00:00:00 2001 | ||
5 | From: Ross Burton <ross.burton@intel.com> | ||
6 | Date: Fri, 28 Jun 2013 11:44:58 +0100 | ||
7 | Subject: [PATCH] build: fix out-of-tree builds in gallium/auxiliary | ||
8 | |||
9 | The rules were writing files to e.g. util/u_indices_gen.py, but in an | ||
10 | out-of-tree build this directory doesn't exist in the build directory. So, | ||
11 | create the directories just in case. | ||
12 | |||
13 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
14 | --- | ||
15 | src/gallium/auxiliary/Makefile.am | 4 ++++ | ||
16 | 1 file changed, 4 insertions(+) | ||
17 | |||
18 | diff --git a/src/gallium/auxiliary/Makefile.am b/src/gallium/auxiliary/Makefile.am | ||
19 | index f14279b..0c3e7ba 100644 | ||
20 | --- a/src/gallium/auxiliary/Makefile.am | ||
21 | +++ b/src/gallium/auxiliary/Makefile.am | ||
22 | @@ -38,13 +38,17 @@ libgallium_la_SOURCES += \ | ||
23 | endif | ||
24 | |||
25 | indices/u_indices_gen.c: $(srcdir)/indices/u_indices_gen.py | ||
26 | + mkdir --parents indices | ||
27 | $(AM_V_GEN) $(PYTHON2) $< > $@ | ||
28 | |||
29 | indices/u_unfilled_gen.c: $(srcdir)/indices/u_unfilled_gen.py | ||
30 | + mkdir --parents indices | ||
31 | $(AM_V_GEN) $(PYTHON2) $< > $@ | ||
32 | |||
33 | util/u_format_srgb.c: $(srcdir)/util/u_format_srgb.py | ||
34 | + mkdir --parents util | ||
35 | $(AM_V_GEN) $(PYTHON2) $< > $@ | ||
36 | |||
37 | util/u_format_table.c: $(srcdir)/util/u_format_table.py $(srcdir)/util/u_format_pack.py $(srcdir)/util/u_format_parse.py $(srcdir)/util/u_format.csv | ||
38 | + mkdir --parents util | ||
39 | $(AM_V_GEN) $(PYTHON2) $(srcdir)/util/u_format_table.py $(srcdir)/util/u_format.csv > $@ | ||
40 | -- | ||
41 | 1.7.10.4 | ||
42 | |||
diff --git a/meta/recipes-graphics/mesa/mesa-9.1.6/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch b/meta/recipes-graphics/mesa/mesa/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch index d86421b767..d86421b767 100644 --- a/meta/recipes-graphics/mesa/mesa-9.1.6/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch +++ b/meta/recipes-graphics/mesa/mesa/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch | |||
diff --git a/meta/recipes-graphics/mesa/mesa_9.1.6.bb b/meta/recipes-graphics/mesa/mesa_9.1.6.bb deleted file mode 100644 index b55fa02a7e..0000000000 --- a/meta/recipes-graphics/mesa/mesa_9.1.6.bb +++ /dev/null | |||
@@ -1,16 +0,0 @@ | |||
1 | require ${BPN}.inc | ||
2 | |||
3 | SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \ | ||
4 | file://0001-configure-Avoid-use-of-AC_CHECK_FILE-for-cross-compi.patch \ | ||
5 | file://0002-pipe_loader_sw-include-xlib_sw_winsys.h-only-when-HA.patch \ | ||
6 | file://0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch \ | ||
7 | file://0004-glsl-fix-builtin_compiler-cross-compilation.patch \ | ||
8 | file://0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch \ | ||
9 | file://0005-fix-out-of-tree-builds-gallium.patch \ | ||
10 | file://0006-fix-out-of-tree-egl.patch \ | ||
11 | " | ||
12 | |||
13 | SRC_URI[md5sum] = "443a2a352667294b53d56cb1a74114e9" | ||
14 | SRC_URI[sha256sum] = "e632dff0acafad0a59dc208d16dedb37f7bd58f94c5d58c4b51912e41d005e3d" | ||
15 | |||
16 | S = "${WORKDIR}/Mesa-${PV}" | ||
diff --git a/meta/recipes-graphics/mesa/mesa_9.2.2.bb b/meta/recipes-graphics/mesa/mesa_9.2.2.bb new file mode 100644 index 0000000000..60eba01db1 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa_9.2.2.bb | |||
@@ -0,0 +1,11 @@ | |||
1 | require ${BPN}.inc | ||
2 | |||
3 | SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \ | ||
4 | file://0002-pipe_loader_sw-include-xlib_sw_winsys.h-only-when-HA.patch \ | ||
5 | file://0006-fix-out-of-tree-egl.patch \ | ||
6 | " | ||
7 | |||
8 | SRC_URI[md5sum] = "20887f8020db7d1736a01ae9cd5d8c38" | ||
9 | SRC_URI[sha256sum] = "c78a5035233672844cf2492fe82dc10877e12026be227d04469d6ca6ac656a3d" | ||
10 | |||
11 | S = "${WORKDIR}/Mesa-${PV}" | ||
diff --git a/meta/recipes-graphics/mesa/mesa_git.bb b/meta/recipes-graphics/mesa/mesa_git.bb index 6397ece6fe..19d3e70823 100644 --- a/meta/recipes-graphics/mesa/mesa_git.bb +++ b/meta/recipes-graphics/mesa/mesa_git.bb | |||
@@ -5,15 +5,11 @@ DEFAULT_PREFERENCE = "-1" | |||
5 | LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf" | 5 | LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf" |
6 | 6 | ||
7 | PR = "${INC_PR}.0" | 7 | PR = "${INC_PR}.0" |
8 | SRCREV = "5a925cc5504575c22dbb7d29842d7fc5babcb5c7" | 8 | SRCREV = "8f0742051e8501e737affb392996aef172034ca8" |
9 | PV = "9.1.3+git${SRCPV}" | 9 | PV = "9.2.2+git${SRCPV}" |
10 | 10 | ||
11 | SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa \ | 11 | SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa \ |
12 | file://0001-configure-Avoid-use-of-AC_CHECK_FILE-for-cross-compi.patch \ | ||
13 | file://0002-pipe_loader_sw-include-xlib_sw_winsys.h-only-when-HA.patch \ | 12 | file://0002-pipe_loader_sw-include-xlib_sw_winsys.h-only-when-HA.patch \ |
14 | file://0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch \ | ||
15 | file://0004-glsl-fix-builtin_compiler-cross-compilation.patch \ | ||
16 | file://0005-fix-out-of-tree-builds-gallium.patch \ | ||
17 | file://0006-fix-out-of-tree-egl.patch \ | 13 | file://0006-fix-out-of-tree-egl.patch \ |
18 | " | 14 | " |
19 | 15 | ||