summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBas Nieuwenhuizen <[email protected]>2019-08-03 18:13:52 +0200
committerBas Nieuwenhuizen <[email protected]>2019-08-03 18:40:04 +0200
commitd7ca1efc6c814947af5b0a0c75b40673b61c31c4 (patch)
tree818b4ab5c3986edd915cd4823fb1d1aa7b0ae430
parent2dd598c129c159b9f939d3e14d862bfa63bc512b (diff)
meson: Do not use GLX_USE_TLS on Android.
The asm code expects a specific kind of implementation, but Android uses something different (emutls). Turns out mesa has a fallback with pthread_getspecific, with an optimizaiton if only a single thread is used. emutls also uses getspecific, so lets just use the optimized mesa implementation. Fixes: 20294dceebc "mesa: Enable asm unconditionally, now that gen_matypes is gone." Reviewed-by: Eric Engestrom <[email protected]>
-rw-r--r--meson.build6
1 files changed, 5 insertions, 1 deletions
diff --git a/meson.build b/meson.build
index 7e8fee2ee2a..2ca672e492f 100644
--- a/meson.build
+++ b/meson.build
@@ -375,7 +375,11 @@ if with_egl and not (with_platform_drm or with_platform_surfaceless or with_plat
endif
endif
-pre_args += '-DGLX_USE_TLS'
+# Android uses emutls for versions <= P/28. For GLX_USE_TLS we need ELF TLS.
+if not with_platform_android or get_option('platform-sdk-version') >= 29
+ pre_args += '-DGLX_USE_TLS'
+endif
+
if with_glx != 'disabled'
if not (with_platform_x11 and with_any_opengl)
error('Cannot build GLX support without X11 platform support and at least one OpenGL API')