summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2018-08-14 11:34:40 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-15 09:33:53 +0100
commitf3a59540d0d1f7ab42ba7cb5ff1a26ac3a8a9f68 (patch)
tree24cfa322f0a4b278e0aea978cf406af5a1f6813c
parentfe5b37c07b6d07c350516ab6bf849d6d86a84004 (diff)
downloadopenembedded-core-contrib-f3a59540d0d1f7ab42ba7cb5ff1a26ac3a8a9f68.tar.gz
openembedded-core-contrib-f3a59540d0d1f7ab42ba7cb5ff1a26ac3a8a9f68.tar.bz2
openembedded-core-contrib-f3a59540d0d1f7ab42ba7cb5ff1a26ac3a8a9f68.zip
mesa: Disble TLS for musl
See https://bugs.freedesktop.org/show_bug.cgi?id=35268 mesa should infact stop using __attribute__((tls_model("initial-exec"))) until then we disale TLS in glx for musl The problem could happen even on glibc if static TLS sizes are large enough which would mean that additional space the glibc leaves for such rogue libraries get consumed and then same problems show up there as well Fixes errors seen in xorg logs e.g. (EE) Failed to load /usr/lib/xorg/modules/extensions/libglx.so: Error relocating /usr/lib/libGL.so.1: _ITM_deregisterTMCloneTable: initial-exec TLS resolves to dynamic definition in /usr/lib/libGL.so.1 enable readonly text segment on x86 for musl Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-graphics/mesa/mesa.inc4
1 files changed, 3 insertions, 1 deletions
diff --git a/meta/recipes-graphics/mesa/mesa.inc b/meta/recipes-graphics/mesa/mesa.inc
index 945272507a..6aedeee9dc 100644
--- a/meta/recipes-graphics/mesa/mesa.inc
+++ b/meta/recipes-graphics/mesa/mesa.inc
@@ -36,6 +36,7 @@ export LLVM_CONFIG = "${STAGING_BINDIR_NATIVE}/llvm-config${MESA_LLVM_RELEASE}"
export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE}/llvm-config"
EXTRA_OECONF = "--enable-shared-glapi \
--disable-opencl \
+ --enable-glx-read-only-text \
PYTHON2=python2 \
--with-llvm-prefix=${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE} \
--with-platforms='${PLATFORMS}'"
@@ -102,11 +103,12 @@ PACKAGECONFIG[osmesa] = "--enable-${OSMESA},--disable-${OSMESA}"
PACKAGECONFIG[unwind] = "--enable-libunwind,--disable-libunwind,libunwind"
+EXTRA_OECONF_remove_libc-musl = "--enable-glx-tls"
+EXTRA_OECONF_append_libc-musl = " --disable-glx-tls"
# llvmpipe is slow if compiled with -fomit-frame-pointer (e.g. -O2)
FULL_OPTIMIZATION_append = " -fno-omit-frame-pointer"
CFLAGS_append_armv5 = " -DMISSING_64BIT_ATOMICS"
-
EXTRA_OEMAKE += "WAYLAND_PROTOCOLS_DATADIR=${STAGING_DATADIR}/wayland-protocols"
# Remove the mesa dependency on mesa-dev, as mesa is empty