summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValentin Popa <valentin.popa@intel.com>2013-10-30 12:27:39 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-11-01 11:09:03 +0000
commit678a4fa22f5569d75a13eb39d586cdcf033bdeb0 (patch)
treea2410d7a24ed23ebfc118412a74f6be741352170
parent9f7f7afaa47bc3a058234269bffa55e15558df16 (diff)
downloadpoky-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>
-rw-r--r--meta/recipes-graphics/mesa/mesa-9.1.6/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch362
-rw-r--r--meta/recipes-graphics/mesa/mesa-gl_9.2.2.bb (renamed from meta/recipes-graphics/mesa/mesa-gl_9.1.6.bb)0
-rw-r--r--meta/recipes-graphics/mesa/mesa.inc2
-rw-r--r--meta/recipes-graphics/mesa/mesa/0001-configure-Avoid-use-of-AC_CHECK_FILE-for-cross-compi.patch65
-rw-r--r--meta/recipes-graphics/mesa/mesa/0003-EGL-Mutate-NativeDisplayType-depending-on-config.patch35
-rw-r--r--meta/recipes-graphics/mesa/mesa/0004-glsl-fix-builtin_compiler-cross-compilation.patch54
-rw-r--r--meta/recipes-graphics/mesa/mesa/0005-fix-out-of-tree-builds-gallium.patch42
-rw-r--r--meta/recipes-graphics/mesa/mesa/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch (renamed from meta/recipes-graphics/mesa/mesa-9.1.6/0005-llvmpipe-remove-the-power-of-two-sizeof-struct-cmd_b.patch)0
-rw-r--r--meta/recipes-graphics/mesa/mesa_9.1.6.bb16
-rw-r--r--meta/recipes-graphics/mesa/mesa_9.2.2.bb11
-rw-r--r--meta/recipes-graphics/mesa/mesa_git.bb8
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 @@
1From 06c1ba29de8a26fffb73ee99f0fc54c704e9fee4 Mon Sep 17 00:00:00 2001
2From: Daniel Stone <daniel@fooishbar.org>
3Date: Fri, 24 May 2013 17:20:27 +0100
4Subject: [PATCH 3/5] EGL: Mutate NativeDisplayType depending on config
5
6If we go through ./configure without enabling X11 anywhere, then set the
7fallback types for EGL NativeDisplay and friends, rather than assuming
8X11/Xlib.
9
10Upstream-Status: Backport (slightly different solution was applied in master
11https://bugs.freedesktop.org/show_bug.cgi?id=64959)
12
13Signed-off-by: Daniel Stone <daniel@fooishbar.org>
14Signed-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
23diff --git a/configure.ac b/configure.ac
24index 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
56diff --git a/include/EGL/eglplatform.h b/include/EGL/eglplatform.h
57deleted file mode 100644
58index 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 */
208diff --git a/include/EGL/eglplatform.h.in b/include/EGL/eglplatform.h.in
209new file mode 100644
210index 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--
3611.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"
10BUGTRACKER = "https://bugs.freedesktop.org" 10BUGTRACKER = "https://bugs.freedesktop.org"
11SECTION = "x11" 11SECTION = "x11"
12LICENSE = "MIT" 12LICENSE = "MIT"
13LIC_FILES_CHKSUM = "file://docs/license.html;md5=42d77d95cba529a3637129be87d6555d" 13LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf"
14 14
15INC_PR = "r9" 15INC_PR = "r9"
16PE = "2" 16PE = "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 @@
1From e21ce89f7ae6964f196086ff325d79e4a3b5acd8 Mon Sep 17 00:00:00 2001
2From: Jonathan Liu <net147@gmail.com>
3Date: Tue, 4 Jun 2013 06:04:44 -0700
4Subject: [PATCH 1/4] configure: Avoid use of AC_CHECK_FILE for cross compiling
5
6The AC_CHECK_FILE macro can't be used for cross compiling as it will
7result in "error: cannot check for file existence when cross compiling".
8Replace it with the AS_IF macro.
9
10Upstream-Status: Submitted
11http://lists.freedesktop.org/archives/mesa-dev/2013-June/040168.html
12
13Signed-off-by: Jonathan Liu <net147@gmail.com>
14Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
15---
16 configure.ac | 12 ++++++------
17 1 file changed, 6 insertions(+), 6 deletions(-)
18
19diff --git a/configure.ac b/configure.ac
20index 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--
641.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 @@
1From 8d31ae23683394617c49301b039b3a069b9ea436 Mon Sep 17 00:00:00 2001 1From 06c1ba29de8a26fffb73ee99f0fc54c704e9fee4 Mon Sep 17 00:00:00 2001
2From: Daniel Stone <daniel@fooishbar.org> 2From: Daniel Stone <daniel@fooishbar.org>
3Date: Fri, 24 May 2013 17:20:27 +0100 3Date: Fri, 24 May 2013 17:20:27 +0100
4Subject: [PATCH 3/4] EGL: Mutate NativeDisplayType depending on config 4Subject: [PATCH 3/5] EGL: Mutate NativeDisplayType depending on config
5 5
6If we go through ./configure without enabling X11 anywhere, then set the 6If we go through ./configure without enabling X11 anywhere, then set the
7fallback types for EGL NativeDisplay and friends, rather than assuming 7fallback types for EGL NativeDisplay and friends, rather than assuming
@@ -13,36 +13,39 @@ https://bugs.freedesktop.org/show_bug.cgi?id=64959)
13Signed-off-by: Daniel Stone <daniel@fooishbar.org> 13Signed-off-by: Daniel Stone <daniel@fooishbar.org>
14Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> 14Signed-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
23diff --git a/configure.ac b/configure.ac 23diff --git a/configure.ac b/configure.ac
24index 67b8c40..afc3217 100644 24index 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 @@
1From ab38c97f057f739533a4e1fc9de51ea5f4e6242d Mon Sep 17 00:00:00 2001
2From: Jonathan Liu <net147@gmail.com>
3Date: Sat, 29 Jun 2013 11:37:20 +0200
4Subject: [PATCH 4/4] glsl: fix builtin_compiler cross-compilation
5
6The target libtool is used when building host binaries, which predictably
7doesn't work.
8
9Upstream-Status: Submitted https://bugs.freedesktop.org/show_bug.cgi?id=44618
10Signed-off-by: Jonathan Liu <net147@gmail.com>
11Signed-off-by: Ross Burton <ross.burton@intel.com>
12---
13 src/glsl/builtin_compiler/Makefile.am | 13 +++++++++++++
14 1 file changed, 13 insertions(+)
15
16diff --git a/src/glsl/builtin_compiler/Makefile.am b/src/glsl/builtin_compiler/Makefile.am
17index 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--
531.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 @@
1Upstream-Status: Submitted
2Signed-off-by: Ross Burton <ross.burton@intel.com>
3
4From 9e31e15ebb0adbf3cc0394c30cbc1ccd2b35a27f Mon Sep 17 00:00:00 2001
5From: Ross Burton <ross.burton@intel.com>
6Date: Fri, 28 Jun 2013 11:44:58 +0100
7Subject: [PATCH] build: fix out-of-tree builds in gallium/auxiliary
8
9The rules were writing files to e.g. util/u_indices_gen.py, but in an
10out-of-tree build this directory doesn't exist in the build directory. So,
11create the directories just in case.
12
13Signed-off-by: Ross Burton <ross.burton@intel.com>
14---
15 src/gallium/auxiliary/Makefile.am | 4 ++++
16 1 file changed, 4 insertions(+)
17
18diff --git a/src/gallium/auxiliary/Makefile.am b/src/gallium/auxiliary/Makefile.am
19index 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--
411.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 @@
1require ${BPN}.inc
2
3SRC_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
13SRC_URI[md5sum] = "443a2a352667294b53d56cb1a74114e9"
14SRC_URI[sha256sum] = "e632dff0acafad0a59dc208d16dedb37f7bd58f94c5d58c4b51912e41d005e3d"
15
16S = "${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 @@
1require ${BPN}.inc
2
3SRC_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
8SRC_URI[md5sum] = "20887f8020db7d1736a01ae9cd5d8c38"
9SRC_URI[sha256sum] = "c78a5035233672844cf2492fe82dc10877e12026be227d04469d6ca6ac656a3d"
10
11S = "${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"
5LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf" 5LIC_FILES_CHKSUM = "file://docs/license.html;md5=f69a4626e9efc40fa0d3cc3b02c9eacf"
6 6
7PR = "${INC_PR}.0" 7PR = "${INC_PR}.0"
8SRCREV = "5a925cc5504575c22dbb7d29842d7fc5babcb5c7" 8SRCREV = "8f0742051e8501e737affb392996aef172034ca8"
9PV = "9.1.3+git${SRCPV}" 9PV = "9.2.2+git${SRCPV}"
10 10
11SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa \ 11SRC_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