summaryrefslogtreecommitdiffstats
path: root/meta
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:44:33 +0100
commitaa5987c943cf1e452698eba95dcdab4d0e369248 (patch)
tree7b320de0e40616fef25ad68d9e0dcbf577437204 /meta
parent79d72d9045ec077da3804c6691eec32941b1a053 (diff)
downloadpoky-aa5987c943cf1e452698eba95dcdab4d0e369248.tar.gz
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 (From OE-Core rev: f3a59540d0d1f7ab42ba7cb5ff1a26ac3a8a9f68) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-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}"
36export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE}/llvm-config" 36export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE}/llvm-config"
37EXTRA_OECONF = "--enable-shared-glapi \ 37EXTRA_OECONF = "--enable-shared-glapi \
38 --disable-opencl \ 38 --disable-opencl \
39 --enable-glx-read-only-text \
39 PYTHON2=python2 \ 40 PYTHON2=python2 \
40 --with-llvm-prefix=${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE} \ 41 --with-llvm-prefix=${STAGING_LIBDIR}/llvm${MESA_LLVM_RELEASE} \
41 --with-platforms='${PLATFORMS}'" 42 --with-platforms='${PLATFORMS}'"
@@ -102,11 +103,12 @@ PACKAGECONFIG[osmesa] = "--enable-${OSMESA},--disable-${OSMESA}"
102 103
103PACKAGECONFIG[unwind] = "--enable-libunwind,--disable-libunwind,libunwind" 104PACKAGECONFIG[unwind] = "--enable-libunwind,--disable-libunwind,libunwind"
104 105
106EXTRA_OECONF_remove_libc-musl = "--enable-glx-tls"
107EXTRA_OECONF_append_libc-musl = " --disable-glx-tls"
105# llvmpipe is slow if compiled with -fomit-frame-pointer (e.g. -O2) 108# llvmpipe is slow if compiled with -fomit-frame-pointer (e.g. -O2)
106FULL_OPTIMIZATION_append = " -fno-omit-frame-pointer" 109FULL_OPTIMIZATION_append = " -fno-omit-frame-pointer"
107 110
108CFLAGS_append_armv5 = " -DMISSING_64BIT_ATOMICS" 111CFLAGS_append_armv5 = " -DMISSING_64BIT_ATOMICS"
109
110EXTRA_OEMAKE += "WAYLAND_PROTOCOLS_DATADIR=${STAGING_DATADIR}/wayland-protocols" 112EXTRA_OEMAKE += "WAYLAND_PROTOCOLS_DATADIR=${STAGING_DATADIR}/wayland-protocols"
111 113
112# Remove the mesa dependency on mesa-dev, as mesa is empty 114# Remove the mesa dependency on mesa-dev, as mesa is empty