From 11e603828297331349e20c37d6bc43cbada19049 Mon Sep 17 00:00:00 2001 From: Andreas Müller Date: Sun, 16 Feb 2020 22:22:42 +0100 Subject: mutter: upgrade 3.34.3 -> 3.34.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Backported patch is included see '<-' in annnouncement: News ==== * Handle mode set race conditions more gracefully [Jonas; !1007] * Fix fallback to GLES2 [Adam; #635] <- * Fix interoperation with wl_data_device_manager v1 [Carlos; #965] * Fix visual glitches with offscreen effects applied [Georges; !992] * Favor text over images in clipboard manager [Carlos; #919] * Fixes crashes [Jonas, Carlos; !961, !869] * Plugged memory leaks [Sebastian, Adam; !1002, !1011] * Misc. bug fixes [Carlos, Robert, Olivier; !1005, #878, !1031, !1034, !1040] Signed-off-by: Andreas Müller Signed-off-by: Khem Raj --- .../mutter/0001-cogl-Fix-GLES2-fallback.patch | 37 --------- meta-gnome/recipes-gnome/mutter/mutter_3.34.3.bb | 96 ---------------------- meta-gnome/recipes-gnome/mutter/mutter_3.34.4.bb | 95 +++++++++++++++++++++ 3 files changed, 95 insertions(+), 133 deletions(-) delete mode 100644 meta-gnome/recipes-gnome/mutter/mutter/0001-cogl-Fix-GLES2-fallback.patch delete mode 100644 meta-gnome/recipes-gnome/mutter/mutter_3.34.3.bb create mode 100644 meta-gnome/recipes-gnome/mutter/mutter_3.34.4.bb diff --git a/meta-gnome/recipes-gnome/mutter/mutter/0001-cogl-Fix-GLES2-fallback.patch b/meta-gnome/recipes-gnome/mutter/mutter/0001-cogl-Fix-GLES2-fallback.patch deleted file mode 100644 index ec92000424..0000000000 --- a/meta-gnome/recipes-gnome/mutter/mutter/0001-cogl-Fix-GLES2-fallback.patch +++ /dev/null @@ -1,37 +0,0 @@ -From f4f7e31303d78b2a8a0881b61311b8d750301b8f Mon Sep 17 00:00:00 2001 -From: Adam Jackson -Date: Tue, 29 Oct 2019 11:53:27 -0400 -Subject: [PATCH] cogl: Fix GLES2 fallback - -Say you're using intel gen3, you poor soul. Your big-GL maxes out at 1.5 -unless you use dirty tricks, but you do have GLES2. We try to fall back -to GLES in this case, but we only ever say eglBindAPI(EGL_OPENGL_API). -So when we go to do CreateContext, even though we think we've requested -GLES 2.0, the driver will compare that "2.0" against the maximum big-GL -version, and things will fail. - -Fix this by binding EGL_OPENGL_ES_API before trying a GLES context. - -https://gitlab.gnome.org/GNOME/mutter/issues/635 - -Upstream-Status: Applied ---- - cogl/cogl/winsys/cogl-winsys-egl.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/cogl/cogl/winsys/cogl-winsys-egl.c b/cogl/cogl/winsys/cogl-winsys-egl.c -index 99dcb8bf3..f2b439a67 100644 ---- a/cogl/cogl/winsys/cogl-winsys-egl.c -+++ b/cogl/cogl/winsys/cogl-winsys-egl.c -@@ -329,6 +329,8 @@ try_create_context (CoglDisplay *display, - if (renderer->driver == COGL_DRIVER_GL || - renderer->driver == COGL_DRIVER_GL3) - eglBindAPI (EGL_OPENGL_API); -+ else if (renderer->driver == COGL_DRIVER_GLES2) -+ eglBindAPI (EGL_OPENGL_ES_API); - - egl_attributes_from_framebuffer_config (display, - &display->onscreen_template->config, --- -2.21.0 - diff --git a/meta-gnome/recipes-gnome/mutter/mutter_3.34.3.bb b/meta-gnome/recipes-gnome/mutter/mutter_3.34.3.bb deleted file mode 100644 index 9afa269ed1..0000000000 --- a/meta-gnome/recipes-gnome/mutter/mutter_3.34.3.bb +++ /dev/null @@ -1,96 +0,0 @@ -SUMMARY = "Window and compositing manager based on Clutter" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -DEPENDS = " \ - xserver-xorg-cvt-native \ - virtual/libx11 \ - gtk+3 \ - gdk-pixbuf \ - cairo \ - pango \ - gsettings-desktop-schemas \ - json-glib \ - gnome-desktop3 \ - gnome-settings-daemon \ - libxtst \ - libxkbfile \ - xinerama \ -" - -GNOMEBASEBUILDCLASS = "meson" - -inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even features_check - -SRC_URI[archive.md5sum] = "c3ee46ae7b84d9d0e8dd3f9e04a61ab1" -SRC_URI[archive.sha256sum] = "cdf57ddd0bc35db952b732b77c796760e65d1ce2f7df31273e5c8d4759ed4a89" -SRC_URI += "file://0001-cogl-Fix-GLES2-fallback.patch" - -# x11 is still manadatory - see meson.build -REQUIRED_DISTRO_FEATURES = "x11" - -# systemd can be replaced by libelogind (not available atow - make systemd -# mandatory distro feature) -LOGIND ?= "systemd" -REQUIRED_DISTRO_FEATURES += "systemd" - -# profiler requires sysprof 3.34 which is not willing to build atow -PACKAGECONFIG ??= " \ - native-backend \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl glx', '', d)} \ - sm \ - startup-notification \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl wayland', 'wayland', '', d)} \ -" - -EXTRA_OEMESON += " \ - -Dxwayland_path=${bindir}/Xwayland \ -" - -# combi-config - see meson_options.txt for more details -PACKAGECONFIG[native-backend] = "-Dnative_backend=true -Dudev=true, -Dnative_backend=false -Dudev=false, libdrm virtual/libgbm libinput ${LOGIND} virtual/egl virtual/libgles2 udev" -PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=true, virtual/libgl" -PACKAGECONFIG[glx] = "-Dglx=true, -Dglx=false" -PACKAGECONFIG[libwacom] = "-Dlibwacom=true, -Dlibwacom=false, libwacom" -PACKAGECONFIG[remote-desktop] = "-Dremote_desktop=true, -Dremote_desktop=false, pipewire" -PACKAGECONFIG[sm] = "-Dsm=true, -Dsm=false, libsm" -PACKAGECONFIG[profiler] = "-Dprofiler=true,-Dprofiler=false,sysprof" -PACKAGECONFIG[startup-notification] = "-Dstartup_notification=true, -Dstartup_notification=false, startup-notification, startup-notification" -PACKAGECONFIG[wayland] = "-Dwayland=true,-Dwayland=false,wayland wayland-native, xserver-xorg-xwayland" -PACKAGECONFIG[wayland-eglstream] = "-Dwayland_eglstream=true,-Dwayland_eglstream=false" - -# yes they changed from mutter-4 -> mutter-5 recently so be perpared -MUTTER_API_NAME = "mutter-5" - -do_install_append() { - # Add gir links in standard paths. That makes dependents life much easier - # to find them - install -d ${D}${datadir}/gir-1.0 - for gir_full in `find ${D}${libdir}/${MUTTER_API_NAME} -name '*.gir'`; do - gir=`basename "$gir_full"` - ln -sr "${D}${libdir}/${MUTTER_API_NAME}/$gir" "${D}${datadir}/gir-1.0/$gir" - done -} - -PACKAGES =+ "${PN}-tests" - -FILES_${PN} += " \ - ${datadir}/gnome-control-center \ - ${libdir}/${MUTTER_API_NAME}/lib*${SOLIBS} \ - ${libdir}/${MUTTER_API_NAME}/*.typelib \ - ${libdir}/${MUTTER_API_NAME}/plugins \ -" - -FILES_${PN}-tests += " \ - ${datadir}/installed-tests \ - ${datadir}/${MUTTER_API_NAME}/tests \ - ${libexecdir}/installed-tests/${MUTTER_API_NAME} \ -" - -FILES_${PN}-dev += " \ - ${libdir}/${MUTTER_API_NAME}/*.gir \ - ${libdir}/${MUTTER_API_NAME}/lib*.so \ -" - -RDEPENDS_${PN} += "zenity" - diff --git a/meta-gnome/recipes-gnome/mutter/mutter_3.34.4.bb b/meta-gnome/recipes-gnome/mutter/mutter_3.34.4.bb new file mode 100644 index 0000000000..b4ddc5dadf --- /dev/null +++ b/meta-gnome/recipes-gnome/mutter/mutter_3.34.4.bb @@ -0,0 +1,95 @@ +SUMMARY = "Window and compositing manager based on Clutter" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +DEPENDS = " \ + xserver-xorg-cvt-native \ + virtual/libx11 \ + gtk+3 \ + gdk-pixbuf \ + cairo \ + pango \ + gsettings-desktop-schemas \ + json-glib \ + gnome-desktop3 \ + gnome-settings-daemon \ + libxtst \ + libxkbfile \ + xinerama \ +" + +GNOMEBASEBUILDCLASS = "meson" + +inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even features_check + +SRC_URI[archive.md5sum] = "de19a6de98a2250dd7efdfca14359e39" +SRC_URI[archive.sha256sum] = "0134513515f605dd0858154d0b54d2e23c5779d52590533e266d407251e20ba2" + +# x11 is still manadatory - see meson.build +REQUIRED_DISTRO_FEATURES = "x11" + +# systemd can be replaced by libelogind (not available atow - make systemd +# mandatory distro feature) +LOGIND ?= "systemd" +REQUIRED_DISTRO_FEATURES += "systemd" + +# profiler requires sysprof 3.34 which is not willing to build atow +PACKAGECONFIG ??= " \ + native-backend \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl glx', '', d)} \ + sm \ + startup-notification \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl wayland', 'wayland', '', d)} \ +" + +EXTRA_OEMESON += " \ + -Dxwayland_path=${bindir}/Xwayland \ +" + +# combi-config - see meson_options.txt for more details +PACKAGECONFIG[native-backend] = "-Dnative_backend=true -Dudev=true, -Dnative_backend=false -Dudev=false, libdrm virtual/libgbm libinput ${LOGIND} virtual/egl virtual/libgles2 udev" +PACKAGECONFIG[opengl] = "-Dopengl=true, -Dopengl=true, virtual/libgl" +PACKAGECONFIG[glx] = "-Dglx=true, -Dglx=false" +PACKAGECONFIG[libwacom] = "-Dlibwacom=true, -Dlibwacom=false, libwacom" +PACKAGECONFIG[remote-desktop] = "-Dremote_desktop=true, -Dremote_desktop=false, pipewire" +PACKAGECONFIG[sm] = "-Dsm=true, -Dsm=false, libsm" +PACKAGECONFIG[profiler] = "-Dprofiler=true,-Dprofiler=false,sysprof" +PACKAGECONFIG[startup-notification] = "-Dstartup_notification=true, -Dstartup_notification=false, startup-notification, startup-notification" +PACKAGECONFIG[wayland] = "-Dwayland=true,-Dwayland=false,wayland wayland-native, xserver-xorg-xwayland" +PACKAGECONFIG[wayland-eglstream] = "-Dwayland_eglstream=true,-Dwayland_eglstream=false" + +# yes they changed from mutter-4 -> mutter-5 recently so be perpared +MUTTER_API_NAME = "mutter-5" + +do_install_append() { + # Add gir links in standard paths. That makes dependents life much easier + # to find them + install -d ${D}${datadir}/gir-1.0 + for gir_full in `find ${D}${libdir}/${MUTTER_API_NAME} -name '*.gir'`; do + gir=`basename "$gir_full"` + ln -sr "${D}${libdir}/${MUTTER_API_NAME}/$gir" "${D}${datadir}/gir-1.0/$gir" + done +} + +PACKAGES =+ "${PN}-tests" + +FILES_${PN} += " \ + ${datadir}/gnome-control-center \ + ${libdir}/${MUTTER_API_NAME}/lib*${SOLIBS} \ + ${libdir}/${MUTTER_API_NAME}/*.typelib \ + ${libdir}/${MUTTER_API_NAME}/plugins \ +" + +FILES_${PN}-tests += " \ + ${datadir}/installed-tests \ + ${datadir}/${MUTTER_API_NAME}/tests \ + ${libexecdir}/installed-tests/${MUTTER_API_NAME} \ +" + +FILES_${PN}-dev += " \ + ${libdir}/${MUTTER_API_NAME}/*.gir \ + ${libdir}/${MUTTER_API_NAME}/lib*.so \ +" + +RDEPENDS_${PN} += "zenity" + -- cgit v1.2.3-54-g00ecf