diff options
Diffstat (limited to 'meta/recipes-graphics')
17 files changed, 261 insertions, 5 deletions
diff --git a/meta/recipes-graphics/cairo/cairo.inc b/meta/recipes-graphics/cairo/cairo.inc index 1e45318dd..45651bad2 100644 --- a/meta/recipes-graphics/cairo/cairo.inc +++ b/meta/recipes-graphics/cairo/cairo.inc @@ -9,11 +9,14 @@ Extension." HOMEPAGE = "http://cairographics.org" BUGTRACKER = "http://bugs.freedesktop.org" SECTION = "libs" + LICENSE = "MPL-1 & LGPLv2.1 & GPLv3+" LICENSE_${PN} = "MPL-1 & LGPLv2.1" LICENSE_${PN}-dev = "MPL-1 & LGPLv2.1" LICENSE_${PN}-gobject = "MPL-1 & LGPLv2.1" +LICENSE_${PN}-script-interpreter = "MPL-1 & LGPLv2.1" LICENSE_${PN}-perf-utils = "GPLv3+" + X11DEPENDS = "virtual/libx11 libsm libxrender libxext" DEPENDS = "libpng fontconfig pixman glib-2.0 zlib" diff --git a/meta/recipes-graphics/cairo/cairo/Manually-transpose-the-matrix-in-_cairo_gl_shader_bi.patch b/meta/recipes-graphics/cairo/cairo/Manually-transpose-the-matrix-in-_cairo_gl_shader_bi.patch new file mode 100644 index 000000000..955b7d4ef --- /dev/null +++ b/meta/recipes-graphics/cairo/cairo/Manually-transpose-the-matrix-in-_cairo_gl_shader_bi.patch @@ -0,0 +1,49 @@ +Upstream-Status: Backport + + http://lists.cairographics.org/archives/cairo/2015-May/026253.html + http://cgit.freedesktop.org/cairo/commit/?id=f52f0e2feb1ad0a4de23c475a8c020d41a1764a8 + +Signed-off-by: Andre McCurdy <armccurdy@gmail.com> + + +From f52f0e2feb1ad0a4de23c475a8c020d41a1764a8 Mon Sep 17 00:00:00 2001 +From: Zan Dobersek <zdobersek@igalia.com> +Date: Fri, 8 May 2015 01:50:25 -0700 +Subject: [PATCH] Manually transpose the matrix in _cairo_gl_shader_bind_matrix() + +To maintain compatibility with OpenGL ES 2.0, the matrix in +_cairo_gl_shader_bind_matrix() should be manually transposed, +and GL_FALSE passed as the transpose argument to the +glUniformMatrix3fv() call as it is the only valid value for +that parameter in OpenGL ES 2.0. + +Reviewed-by: Bryce Harrington <bryce@osg.samsung.com> +Acked-by: "Henry (Yu) Song" <henry.song@samsung.com> +--- + src/cairo-gl-shaders.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/cairo-gl-shaders.c b/src/cairo-gl-shaders.c +index 2710606..fe975d2 100644 +--- a/src/cairo-gl-shaders.c ++++ b/src/cairo-gl-shaders.c +@@ -973,12 +973,12 @@ _cairo_gl_shader_bind_matrix (cairo_gl_context_t *ctx, + { + cairo_gl_dispatch_t *dispatch = &ctx->dispatch; + float gl_m[9] = { +- m->xx, m->xy, m->x0, +- m->yx, m->yy, m->y0, +- 0, 0, 1 ++ m->xx, m->yx, 0, ++ m->xy, m->yy, 0, ++ m->x0, m->y0, 1 + }; + assert (location != -1); +- dispatch->UniformMatrix3fv (location, 1, GL_TRUE, gl_m); ++ dispatch->UniformMatrix3fv (location, 1, GL_FALSE, gl_m); + } + + void +-- +1.9.1 + diff --git a/meta/recipes-graphics/cairo/cairo_1.14.2.bb b/meta/recipes-graphics/cairo/cairo_1.14.2.bb index 3817dbf28..75cde0ad7 100644 --- a/meta/recipes-graphics/cairo/cairo_1.14.2.bb +++ b/meta/recipes-graphics/cairo/cairo_1.14.2.bb @@ -3,6 +3,7 @@ require cairo.inc LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77" SRC_URI = "http://cairographics.org/releases/cairo-${PV}.tar.xz" +SRC_URI += "file://Manually-transpose-the-matrix-in-_cairo_gl_shader_bi.patch" SRC_URI[md5sum] = "e1cdfaf1c6c995c4d4c54e07215b0118" SRC_URI[sha256sum] = "c919d999ddb1bbbecd4bbe65299ca2abd2079c7e13d224577895afa7005ecceb" diff --git a/meta/recipes-graphics/directfb/directfb.inc b/meta/recipes-graphics/directfb/directfb.inc index 446aaeadb..cbd401483 100644 --- a/meta/recipes-graphics/directfb/directfb.inc +++ b/meta/recipes-graphics/directfb/directfb.inc @@ -22,6 +22,9 @@ S = "${WORKDIR}/DirectFB-${PV}" LDFLAGS_append =" -lts -lm" +# Workaround for linking issues seen with armv7a + gold +LDFLAGS_append_armv7a = "${@base_contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" + BINCONFIG = "${bindir}/directfb-config" inherit autotools binconfig-disabled pkgconfig diff --git a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb index 266bd4246..c0d5c6a96 100644 --- a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb +++ b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb @@ -13,8 +13,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4" PROVIDES = "virtual/libsdl" DEPENDS = "${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl libglu', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxext libxrandr libxrender', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'libglu', '', d)} \ tslib" DEPENDS_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/nativesdk-libx11 nativesdk-libxrandr nativesdk-libxrender nativesdk-libxext', '', d)}" diff --git a/meta/recipes-graphics/libsdl2/libsdl2_2.0.3.bb b/meta/recipes-graphics/libsdl2/libsdl2_2.0.3.bb index 97f64f384..f138f9761 100644 --- a/meta/recipes-graphics/libsdl2/libsdl2_2.0.3.bb +++ b/meta/recipes-graphics/libsdl2/libsdl2_2.0.3.bb @@ -39,7 +39,7 @@ PACKAGECONFIG ??= " \ ${@bb.utils.contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland gles2', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \ " PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib," diff --git a/meta/recipes-graphics/mesa/mesa-demos/0010-sharedtex_mt-fix-rendering-thread-hang.patch b/meta/recipes-graphics/mesa/mesa-demos/0010-sharedtex_mt-fix-rendering-thread-hang.patch new file mode 100644 index 000000000..04e1b446f --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-demos/0010-sharedtex_mt-fix-rendering-thread-hang.patch @@ -0,0 +1,43 @@ +From 525fa9ded72d22b53c5eb366f61e2ac1d407a2db Mon Sep 17 00:00:00 2001 +From: Awais Belal <awais_belal@mentor.com> +Date: Thu, 8 Oct 2015 13:49:31 +0500 +Subject: [PATCH] sharedtex_mt: fix rendering thread hang + +XNextEvent is a blocking call which locks up the display mutex +this causes the rendering threads to hang when they try call +glXSwapBuffers() as that tries to take the same mutex in +underlying calls through XCopyArea(). +So we only go to XNextEvent when it has at least one event +and we wouldn't lock indefinitely. + +Signed-off-by: Awais Belal <awais_belal@mentor.com> +Upstream-Status: Backport (2b304e765695d385fd3bf414e6e444020bedb0a8) + +--- + src/xdemos/sharedtex_mt.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/src/xdemos/sharedtex_mt.c b/src/xdemos/sharedtex_mt.c +index a90903a..1d503c4 100644 +--- a/src/xdemos/sharedtex_mt.c ++++ b/src/xdemos/sharedtex_mt.c +@@ -420,9 +420,14 @@ Resize(struct window *h, unsigned int width, unsigned int height) + static void + EventLoop(void) + { ++ int i; ++ XEvent event; + while (1) { +- int i; +- XEvent event; ++ /* Do we have an event? */ ++ if (XPending(gDpy) == 0) { ++ usleep(10000); ++ continue; ++ } + XNextEvent(gDpy, &event); + for (i = 0; i < NumWindows; i++) { + struct window *h = &Windows[i]; +-- +1.9.1 + diff --git a/meta/recipes-graphics/mesa/mesa-demos_8.2.0.bb b/meta/recipes-graphics/mesa/mesa-demos_8.2.0.bb index e4516425e..0094f556f 100644 --- a/meta/recipes-graphics/mesa/mesa-demos_8.2.0.bb +++ b/meta/recipes-graphics/mesa/mesa-demos_8.2.0.bb @@ -19,6 +19,7 @@ SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/demos/${PV}/${BPN}-${PV}.tar.bz2 \ file://0007-Install-few-more-test-programs.patch \ file://0008-glsl-perf-Add-few-missing-.glsl-.vert-.frag-files-to.patch \ file://0009-glsl-perf-Install-.glsl-.vert-.frag-files.patch \ + file://0010-sharedtex_mt-fix-rendering-thread-hang.patch \ " SRC_URI[md5sum] = "72613a2c8c013716db02e3ff59d29061" SRC_URI[sha256sum] = "e4bfecb5816ddd4b7b37c1bc876b63f1f7f06fda5879221a9774d0952f90ba92" diff --git a/meta/recipes-graphics/piglit/piglit_git.bb b/meta/recipes-graphics/piglit/piglit_git.bb index 0d825c981..55ad78c09 100644 --- a/meta/recipes-graphics/piglit/piglit_git.bb +++ b/meta/recipes-graphics/piglit/piglit_git.bb @@ -18,6 +18,12 @@ inherit cmake pythonnative distro_features_check # depends on virtual/libx11 REQUIRED_DISTRO_FEATURES = "x11" +# The built scripts go into the temporary directory according to tempfile +# (typically /tmp) which can race if multiple builds happen on the same machine, +# so tell it to use a directory in ${B} to avoid overwriting. +export TEMP = "${B}/temp/" +do_compile[dirs] =+ "${B}/temp/" + PACKAGECONFIG ??= "" PACKAGECONFIG[freeglut] = "-DPIGLIT_USE_GLUT=1,-DPIGLIT_USE_GLUT=0,freeglut," diff --git a/meta/recipes-graphics/waffle/waffle/0001-third_party-threads-Use-PTHREAD_MUTEX_RECURSIVE-by-d.patch b/meta/recipes-graphics/waffle/waffle/0001-third_party-threads-Use-PTHREAD_MUTEX_RECURSIVE-by-d.patch new file mode 100644 index 000000000..a0c826ed9 --- /dev/null +++ b/meta/recipes-graphics/waffle/waffle/0001-third_party-threads-Use-PTHREAD_MUTEX_RECURSIVE-by-d.patch @@ -0,0 +1,54 @@ +From 3b9b8f5f6d1b99af43e95ec0868404e552a85b73 Mon Sep 17 00:00:00 2001 +From: Emil Velikov <emil.l.velikov@gmail.com> +Date: Thu, 19 Mar 2015 22:26:11 +0000 +Subject: [PATCH] third_party/threads: Use PTHREAD_MUTEX_RECURSIVE by default + +PTHREAD_MUTEX_RECURSIVE_NP was used for compatibility with old glibc. +Although due to the_GNU_SOURCES define the portable, +PTHREAD_MUTEX_RECURSIVE will be available for Linuxes since at least +1998. Simplify things giving us compatibility with musl which +apparently does not provide the non-portable define. + +Inspired by almost identical commit in mesa aead7fe2e2b(c11/threads: Use +PTHREAD_MUTEX_RECURSIVE by default) by Felix Janda. + +Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> +Reviewed-by: Chad Versace <chad.versace@intel.com> +--- +Upstream-Status: Backport + + third_party/threads/threads_posix.c | 10 ++++------ + 1 file changed, 4 insertions(+), 6 deletions(-) + +diff --git a/third_party/threads/threads_posix.c b/third_party/threads/threads_posix.c +index 5835e43..e122bf9 100644 +--- a/third_party/threads/threads_posix.c ++++ b/third_party/threads/threads_posix.c +@@ -26,6 +26,9 @@ + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ ++ ++#define _GNU_SOURCE ++ + #include <stdlib.h> + #ifndef assert + #include <assert.h> +@@ -150,13 +153,8 @@ int mtx_init(mtx_t *mtx, int type) + && type != (mtx_try|mtx_recursive)) + return thrd_error; + pthread_mutexattr_init(&attr); +- if ((type & mtx_recursive) != 0) { +-#if defined(__linux__) || defined(__linux) +- pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP); +-#else ++ if ((type & mtx_recursive) != 0) + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); +-#endif +- } + pthread_mutex_init(mtx, &attr); + pthread_mutexattr_destroy(&attr); + return thrd_success; +-- +2.5.2 + diff --git a/meta/recipes-graphics/waffle/waffle_1.5.1.bb b/meta/recipes-graphics/waffle/waffle_1.5.1.bb index b8aa05a2d..af8402053 100644 --- a/meta/recipes-graphics/waffle/waffle_1.5.1.bb +++ b/meta/recipes-graphics/waffle/waffle_1.5.1.bb @@ -3,7 +3,9 @@ LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4c5154407c2490750dd461c50ad94797 \ file://include/waffle/waffle.h;endline=24;md5=61dbf8697f61c78645e75a93c585b1bf" -SRC_URI = "http://waffle-gl.org/files/release/${BPN}-${PV}/${BPN}-${PV}.tar.xz" +SRC_URI = "http://waffle-gl.org/files/release/${BPN}-${PV}/${BPN}-${PV}.tar.xz \ + file://0001-third_party-threads-Use-PTHREAD_MUTEX_RECURSIVE-by-d.patch \ + " SRC_URI[md5sum] = "c0d802bc3d0aba87c51e423a3a8bdd69" SRC_URI[sha256sum] = "cbab0e926515064e818bf089a5af04be33307e5f40d07659fb40d59b2bfe20aa" diff --git a/meta/recipes-graphics/xorg-app/xwininfo_1.1.3.bb b/meta/recipes-graphics/xorg-app/xwininfo_1.1.3.bb index 7a452410b..0c23d1943 100644 --- a/meta/recipes-graphics/xorg-app/xwininfo_1.1.3.bb +++ b/meta/recipes-graphics/xorg-app/xwininfo_1.1.3.bb @@ -7,7 +7,7 @@ windows. Information may include window position, size, color depth, \ and a number of other items." LIC_FILES_CHKSUM = "file://COPYING;md5=78976cd3115f6faf615accc4e094d90e" -DEPENDS += "libxext libxmu" +DEPENDS += "libxext libxmu gettext-native" PE = "0" diff --git a/meta/recipes-graphics/xorg-lib/libxcb.inc b/meta/recipes-graphics/xorg-lib/libxcb.inc index fe31f20df..e40ae77ab 100644 --- a/meta/recipes-graphics/xorg-lib/libxcb.inc +++ b/meta/recipes-graphics/xorg-lib/libxcb.inc @@ -14,7 +14,9 @@ DEPENDS = "xcb-proto xproto libxau xcb-proto-native libpthread-stubs" SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.bz2 \ file://xcbincludedir.patch \ - file://disable-check.patch" + file://disable-check.patch \ + file://gcc-mips-pr68302-mips-workaround.patch \ + " PACKAGES_DYNAMIC = "^libxcb-.*" diff --git a/meta/recipes-graphics/xorg-lib/libxcb/gcc-mips-pr68302-mips-workaround.patch b/meta/recipes-graphics/xorg-lib/libxcb/gcc-mips-pr68302-mips-workaround.patch new file mode 100644 index 000000000..698d038f9 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/libxcb/gcc-mips-pr68302-mips-workaround.patch @@ -0,0 +1,22 @@ +Reduce debug info for xcb.c since on mips we run into a gcc5 bug + +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68302 + +This patch is a workaround to get past the gcc bug until its resolved. +it should have minimal impact on libxcb while make it work. + +Upstream-Status: Inappropriate [OE-Specific] +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +Index: libxcb-1.11.1/src/Makefile.am +=================================================================== +--- libxcb-1.11.1.orig/src/Makefile.am ++++ libxcb-1.11.1/src/Makefile.am +@@ -188,6 +188,7 @@ EXTSOURCES += xkb.c + if BUILD_XKB + lib_LTLIBRARIES += libxcb-xkb.la + libxcb_xkb_la_LDFLAGS = -version-info 1:0:0 -no-undefined ++CFLAGS += -g1 + libxcb_xkb_la_LIBADD = $(XCB_LIBS) + nodist_libxcb_xkb_la_SOURCES = xkb.c xkb.h + endif diff --git a/meta/recipes-graphics/xorg-lib/pixman/0001-v3-test-add-a-check-for-FE_DIVBYZERO.patch b/meta/recipes-graphics/xorg-lib/pixman/0001-v3-test-add-a-check-for-FE_DIVBYZERO.patch new file mode 100644 index 000000000..a60df5fc0 --- /dev/null +++ b/meta/recipes-graphics/xorg-lib/pixman/0001-v3-test-add-a-check-for-FE_DIVBYZERO.patch @@ -0,0 +1,65 @@ +From fcd5eb9bd0e8674a6f4987a8fce7dc1ba8f9320c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> +Date: Thu, 17 Sep 2015 03:08:36 +0200 +Subject: [PATCH] [v3] test: add a check for FE_DIVBYZERO + +Some architectures, such as Microblaze and Nios2, currently do not +implement FE_DIVBYZERO, even though they have <fenv.h> and +feenableexcept(). This commit adds a configure.ac check to verify +whether FE_DIVBYZERO is defined or not, and if not, disables the +problematic code in test/utils.c. + +Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> +Signed-off-by: Marek Vasut <marex@denx.de> +Upstream-Status: Submitted +--- +Changes v1 -> v2: + + * Use the ac_cv_have_decl_FE_DIVBYZERO variable, which is + automatically set by AC_CHECK_DECL, to decide whether or not + HAVE_FEDIVBYZERO should be defined. + +Changes v2 -> v3: + + * Use action-if-yes of AC_CHECK_DECL as suggested in + http://lists.freedesktop.org/archives/pixman/2014-February/003176.html +--- + configure.ac | 5 +++++ + test/utils.c | 2 ++ + 2 files changed, 7 insertions(+) + +diff --git a/configure.ac b/configure.ac +index f93cc30..424bfd3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -891,6 +891,11 @@ if test x$have_feenableexcept = xyes; then + AC_DEFINE(HAVE_FEENABLEEXCEPT, 1, [Whether we have feenableexcept()]) + fi + ++AC_CHECK_DECL([FE_DIVBYZERO], ++ [AC_DEFINE(HAVE_FEDIVBYZERO, 1, [Whether we have FE_DIVBYZERO])], ++ [], ++ [[#include <fenv.h>]]) ++ + AC_CHECK_FUNC(gettimeofday, have_gettimeofday=yes, have_gettimeofday=no) + AC_CHECK_HEADER(sys/time.h, have_sys_time_h=yes, have_sys_time_h=no) + if test x$have_gettimeofday = xyes && test x$have_sys_time_h = xyes; then +diff --git a/test/utils.c b/test/utils.c +index 222d4d5..8657966 100644 +--- a/test/utils.c ++++ b/test/utils.c +@@ -966,9 +966,11 @@ enable_divbyzero_exceptions (void) + { + #ifdef HAVE_FENV_H + #ifdef HAVE_FEENABLEEXCEPT ++#ifdef HAVE_FEDIVBYZERO + feenableexcept (FE_DIVBYZERO); ++#endif + #endif + #endif + } + + void +-- +2.1.4 + diff --git a/meta/recipes-graphics/xorg-lib/pixman_0.32.6.bb b/meta/recipes-graphics/xorg-lib/pixman_0.32.6.bb index eae59b62d..317a568bd 100644 --- a/meta/recipes-graphics/xorg-lib/pixman_0.32.6.bb +++ b/meta/recipes-graphics/xorg-lib/pixman_0.32.6.bb @@ -31,6 +31,7 @@ SRC_URI += "\ file://0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch \ file://mips-export-revert.patch \ file://asm_include.patch \ + file://0001-v3-test-add-a-check-for-FE_DIVBYZERO.patch \ " SRC_URI[md5sum] = "8a9e8f14743a39cf303803f369c1f344" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc index cc1c02b55..9881c942b 100644 --- a/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc @@ -23,6 +23,9 @@ S = "${WORKDIR}/${XORG_PN}-${PV}" inherit autotools pkgconfig +inherit distro_features_check +REQUIRED_DISTRO_FEATURES = "x11" + PROTO_DEPS = "randrproto renderproto fixesproto damageproto xextproto xproto xf86dgaproto xf86miscproto xf86vidmodeproto compositeproto recordproto resourceproto videoproto scrnsaverproto xineramaproto fontsproto kbproto inputproto bigreqsproto xcmiscproto presentproto" LIB_DEPS = "pixman libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl libgcrypt" DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} font-util" |