summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2015-04-06 17:36:46 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-04-10 18:10:27 +0100
commitbcd9f0578fd3bb1569635e78a0d7d315213bd25f (patch)
treea6154008c41ef20f391c205cc94c634c845b5c6e /meta/recipes-graphics
parent62980ea8ac6e56aa3b192ed3a53199d563f2df59 (diff)
downloadpoky-bcd9f0578fd3bb1569635e78a0d7d315213bd25f.tar.gz
mesa: Fix building with musl
backport needed patches add a patch to use _NP macros only on glibc based linux and not on all linux Change-Id: Ib43bec9d222856f8e7acb9f0143b406517f049c8 (From OE-Core rev: 7dcd8f532fef71e711bf11a00f0e246a36b6138a) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-graphics')
-rw-r--r--meta/recipes-graphics/mesa/mesa/0001-PTHREAD_MUTEX_RECURSIVE_NP-is-specific-to-glibc.patch29
-rw-r--r--meta/recipes-graphics/mesa/mesa/0002-mesa-simplify-detection-of-fpclassify.patch53
-rw-r--r--meta/recipes-graphics/mesa/mesa_10.4.4.bb5
3 files changed, 86 insertions, 1 deletions
diff --git a/meta/recipes-graphics/mesa/mesa/0001-PTHREAD_MUTEX_RECURSIVE_NP-is-specific-to-glibc.patch b/meta/recipes-graphics/mesa/mesa/0001-PTHREAD_MUTEX_RECURSIVE_NP-is-specific-to-glibc.patch
new file mode 100644
index 0000000000..52443d8422
--- /dev/null
+++ b/meta/recipes-graphics/mesa/mesa/0001-PTHREAD_MUTEX_RECURSIVE_NP-is-specific-to-glibc.patch
@@ -0,0 +1,29 @@
1From 46cdd464efbada13478f5e39a50aef85599ff91b Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 4 Apr 2015 15:50:53 -0700
4Subject: [PATCH 1/2] PTHREAD_MUTEX_RECURSIVE_NP is specific to glibc
5
6use glibc guard around it
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9Upstream-Status: Pending
10---
11 include/c11/threads_posix.h | 2 +-
12 1 file changed, 1 insertion(+), 1 deletion(-)
13
14diff --git a/include/c11/threads_posix.h b/include/c11/threads_posix.h
15index f9c165d..c641de4 100644
16--- a/include/c11/threads_posix.h
17+++ b/include/c11/threads_posix.h
18@@ -178,7 +178,7 @@ mtx_init(mtx_t *mtx, int type)
19 return thrd_error;
20 pthread_mutexattr_init(&attr);
21 if ((type & mtx_recursive) != 0) {
22-#if defined(__linux__) || defined(__linux)
23+#if defined __GLIBC__ && (defined(__linux__) || defined(__linux))
24 pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP);
25 #else
26 pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
27--
282.1.4
29
diff --git a/meta/recipes-graphics/mesa/mesa/0002-mesa-simplify-detection-of-fpclassify.patch b/meta/recipes-graphics/mesa/mesa/0002-mesa-simplify-detection-of-fpclassify.patch
new file mode 100644
index 0000000000..dd7a188a2f
--- /dev/null
+++ b/meta/recipes-graphics/mesa/mesa/0002-mesa-simplify-detection-of-fpclassify.patch
@@ -0,0 +1,53 @@
1From c09606093c6b8e47d7cb6745eff192184eaaae07 Mon Sep 17 00:00:00 2001
2From: Felix Janda <felix.janda@posteo.de>
3Date: Fri, 23 Jan 2015 17:57:15 +0100
4Subject: [PATCH 2/2] mesa: simplify detection of fpclassify
5
6Fixes compilation with musl libc.
7
8Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
9Upstream-Status: Backport
10---
11 src/mesa/main/querymatrix.c | 18 +++++++-----------
12 1 file changed, 7 insertions(+), 11 deletions(-)
13
14diff --git a/src/mesa/main/querymatrix.c b/src/mesa/main/querymatrix.c
15index eb36c76..ef85175 100644
16--- a/src/mesa/main/querymatrix.c
17+++ b/src/mesa/main/querymatrix.c
18@@ -37,8 +37,12 @@
19 #define INT_TO_FIXED(x) ((GLfixed) ((x) << 16))
20 #define FLOAT_TO_FIXED(x) ((GLfixed) ((x) * 65536.0))
21
22-#if defined(_MSC_VER)
23-#if _MSC_VER < 1800 /* Not required on VS2013 and above. */
24+#if defined(fpclassify)
25+/* ISO C99 says that fpclassify is a macro. Assume that any implementation
26+ * of fpclassify, whether it's in a C99 compiler or not, will be a macro.
27+ */
28+#elif defined(_MSC_VER)
29+/* Not required on VS2013 and above. */
30 /* Oddly, the fpclassify() function doesn't exist in such a form
31 * on MSVC. This is an implementation using slightly different
32 * lower-level Windows functions.
33@@ -71,16 +75,8 @@ fpclassify(double x)
34 return FP_NAN;
35 }
36 }
37-#endif /* _MSC_VER < 1800 */
38-
39-#elif defined(__APPLE__) || defined(__CYGWIN__) || defined(__FreeBSD__) || \
40- defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || \
41- (defined(__sun) && defined(__C99FEATURES__)) || defined(__MINGW32__) || \
42- (defined(__sun) && defined(__GNUC__)) || defined(ANDROID) || defined(__HAIKU__)
43-
44-/* fpclassify is available. */
45
46-#elif !defined(_XOPEN_SOURCE) || _XOPEN_SOURCE < 600
47+#else
48
49 enum {FP_NAN, FP_INFINITE, FP_ZERO, FP_SUBNORMAL, FP_NORMAL}
50 fpclassify(double x)
51--
522.1.4
53
diff --git a/meta/recipes-graphics/mesa/mesa_10.4.4.bb b/meta/recipes-graphics/mesa/mesa_10.4.4.bb
index 8140411752..8472408001 100644
--- a/meta/recipes-graphics/mesa/mesa_10.4.4.bb
+++ b/meta/recipes-graphics/mesa/mesa_10.4.4.bb
@@ -1,6 +1,9 @@
1require ${BPN}.inc 1require ${BPN}.inc
2 2
3SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2" 3SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \
4 file://0001-PTHREAD_MUTEX_RECURSIVE_NP-is-specific-to-glibc.patch \
5 file://0002-mesa-simplify-detection-of-fpclassify.patch \
6 "
4 7
5SRC_URI[md5sum] = "62faf98ac79c5587f8e917e187419e6c" 8SRC_URI[md5sum] = "62faf98ac79c5587f8e917e187419e6c"
6SRC_URI[sha256sum] = "f18a967e9c4d80e054b2fdff8c130ce6e6d1f8eecfc42c9f354f8628d8b4df1c" 9SRC_URI[sha256sum] = "f18a967e9c4d80e054b2fdff8c130ce6e6d1f8eecfc42c9f354f8628d8b4df1c"