Accepting request 699590 from GNOME:Factory

Disable LTO (boo#1133121). (forwarded request 697427 from marxin)

OBS-URL: https://build.opensuse.org/request/show/699590
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/mutter?expand=0&rev=135
This commit is contained in:
Dominique Leuenberger 2019-05-03 20:19:30 +00:00 committed by Git OBS Bridge
commit 56303211fa
11 changed files with 251 additions and 325 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:df24dcc0b866fc6bffbfc82881a84bd7cc9c641e4124d2545c368c0b10e12363
size 3725692

3
mutter-3.32.1.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:520082efae0f60f252eed2d0e45e174524f7d7ee1e6bbdbaf5c06f0456a6e4e0
size 2797144

View File

@ -1,34 +0,0 @@
From 1cb21877edd9c7c5bc991527ae70879b1e9fece0 Mon Sep 17 00:00:00 2001
From: Daniel van Vugt <daniel.van.vugt@canonical.com>
Date: Thu, 11 Oct 2018 06:49:22 +0000
Subject: [PATCH] cogl-auto-texture: Avoid a double-free crash
If texture allocation fails (e.g. on an old GPU with size limit 2048)
then `cogl_texture_new_with_size` was trying to use the same CoglError
twice. The second time was after it had already been freed.
Bug reported and fix provided by Gert van de Kraats.
https://launchpad.net/bugs/1790525
(cherry picked from commit d21478b0f0163b0688abe065a7009b33453d0d00)
---
cogl/cogl/deprecated/cogl-auto-texture.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/cogl/cogl/deprecated/cogl-auto-texture.c b/cogl/cogl/deprecated/cogl-auto-texture.c
index 29a5f73ef..fe52e1575 100644
--- a/cogl/cogl/deprecated/cogl-auto-texture.c
+++ b/cogl/cogl/deprecated/cogl-auto-texture.c
@@ -94,6 +94,7 @@ cogl_texture_new_with_size (unsigned int width,
if (!cogl_texture_allocate (tex, &skip_error))
{
cogl_error_free (skip_error);
+ skip_error = NULL;
cogl_object_unref (tex);
tex = NULL;
}
--
2.18.1

View File

@ -1,39 +0,0 @@
From 1c57a5842069735b7bb80846130bf61d0e0a0880 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
Date: Fri, 25 Jan 2019 21:06:39 +0000
Subject: [PATCH] screen-cast: Fix monitor recording on HiDPI
It scaled the logical monitor rect with scale to get the stream
dimensions, but that is only valid when having
'scale-monitor-framebuffers' enabled. Even when it was, it didn't work
properly, as clutter_stage_capture_into() doesn't work properly with
scaled monitor framebuffers yet.
https://gitlab.gnome.org/GNOME/mutter/merge_requests/415
(cherry picked from commit 3fa6a92cc5dda6ab3939c3e982185f6caf453360)
---
src/backends/meta-screen-cast-monitor-stream-src.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/backends/meta-screen-cast-monitor-stream-src.c b/src/backends/meta-screen-cast-monitor-stream-src.c
index 382d7d4a2..093e9f236 100644
--- a/src/backends/meta-screen-cast-monitor-stream-src.c
+++ b/src/backends/meta-screen-cast-monitor-stream-src.c
@@ -87,7 +87,11 @@ meta_screen_cast_monitor_stream_src_get_specs (MetaScreenCastStreamSrc *src,
logical_monitor = meta_monitor_get_logical_monitor (monitor);
mode = meta_monitor_get_current_mode (monitor);
- scale = logical_monitor->scale;
+ if (meta_is_stage_views_scaled ())
+ scale = logical_monitor->scale;
+ else
+ scale = 1.0;
+
*width = (int) roundf (logical_monitor->rect.width * scale);
*height = (int) roundf (logical_monitor->rect.height * scale);
*frame_rate = meta_monitor_mode_get_refresh_rate (mode);
--
2.18.1

View File

@ -1,47 +0,0 @@
From afc91f0804ad1350fa09aa141b93020f28143b48 Mon Sep 17 00:00:00 2001
From: Carlos Garnacho <carlosg@gnome.org>
Date: Fri, 5 May 2017 12:15:30 +0000
Subject: [PATCH] clutter: Avoid rounding compensation when invalidating 2D
actors
This allows the redraw clip to be more constrained, so MetaCullable doesn't
end up rendering portions of window shadows, frame and background when a
window invalidates (part of) its contents.
https://bugzilla.gnome.org/show_bug.cgi?id=782344
(cherry picked from commit a7df459416dc46321204c98197e4fd84724976e0)
---
clutter/clutter/clutter-paint-volume.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/clutter/clutter/clutter-paint-volume.c b/clutter/clutter/clutter-paint-volume.c
index b48f7f9d6..f3405138b 100644
--- a/clutter/clutter/clutter-paint-volume.c
+++ b/clutter/clutter/clutter-paint-volume.c
@@ -1166,6 +1166,21 @@ _clutter_paint_volume_get_stage_paint_box (ClutterPaintVolume *pv,
_clutter_paint_volume_get_bounding_box (&projected_pv, box);
+ if (pv->is_2d && pv->actor &&
+ clutter_actor_get_z_position (pv->actor) == 0)
+ {
+ /* If the volume/actor are perfectly 2D, take the bounding box as
+ * good. We won't need to add any extra room for sub-pixel positioning
+ * in this case.
+ */
+ clutter_paint_volume_free (&projected_pv);
+ box->x1 = CLUTTER_NEARBYINT (box->x1);
+ box->y1 = CLUTTER_NEARBYINT (box->y1);
+ box->x2 = CLUTTER_NEARBYINT (box->x2);
+ box->y2 = CLUTTER_NEARBYINT (box->y2);
+ return;
+ }
+
/* The aim here is that for a given rectangle defined with floating point
* coordinates we want to determine a stable quantized size in pixels
* that doesn't vary due to the original box's sub-pixel position.
--
2.18.1

View File

@ -1,54 +0,0 @@
From c6223ffea87831f9bd51d11c50e953f0318459e0 Mon Sep 17 00:00:00 2001
From: Daniel van Vugt <daniel.van.vugt@canonical.com>
Date: Thu, 11 Oct 2018 07:02:05 +0000
Subject: [PATCH] clutter-offscreen-effect: Disable if no texture
If texture allocation fails (e.g. on an old GPU with size limit 2048)
then `update_fbo` would return `FALSE` but leaves `priv->offscreen`
as non-NULL. So the next paint will try to use the offscreen with a
`NULL` texture and crashes. The solution is simply to ensure that
`priv->offscreen` is NULL if there is no `priv->texture`, so the default
(non-offscreen) paint path gets used instead.
Bug reported and fix provided by Gert van de Kraats.
https://launchpad.net/bugs/1795774
(cherry picked from commit f31cf0c3ef99b27c0b2c0161fc9fc1eb82778b2e)
(cherry picked from commit 1b78ca8c5eef39831639a0bde8d613cd1bb024dc)
---
clutter/clutter/clutter-offscreen-effect.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/clutter/clutter/clutter-offscreen-effect.c b/clutter/clutter/clutter-offscreen-effect.c
index 1dbf29f60..5db40b79a 100644
--- a/clutter/clutter/clutter-offscreen-effect.c
+++ b/clutter/clutter/clutter-offscreen-effect.c
@@ -186,6 +186,12 @@ update_fbo (ClutterEffect *effect, int fbo_width, int fbo_height)
priv->texture = NULL;
}
+ if (priv->offscreen != NULL)
+ {
+ cogl_handle_unref (priv->offscreen);
+ priv->offscreen = NULL;
+ }
+
priv->texture =
clutter_offscreen_effect_create_texture (self, fbo_width, fbo_height);
if (priv->texture == NULL)
@@ -196,9 +202,6 @@ update_fbo (ClutterEffect *effect, int fbo_width, int fbo_height)
priv->fbo_width = fbo_width;
priv->fbo_height = fbo_height;
- if (priv->offscreen != NULL)
- cogl_handle_unref (priv->offscreen);
-
priv->offscreen = cogl_offscreen_new_to_texture (priv->texture);
if (priv->offscreen == NULL)
{
--
2.18.1

View File

@ -1,43 +0,0 @@
From 4ed430b4ef3013c96fa56cdc57b925b42d20ead9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Florian=20M=C3=BCllner?= <fmuellner@gnome.org>
Date: Thu, 20 Oct 2016 18:00:04 +0200
Subject: [PATCH] gtk-shell: Work around non-working startup notifications
GNOME Shell relies on the MetaScreen::startup-sequence-changed signal,
which is tied to (lib)startup-notification and therefore X11. As a result,
when we remove the startup sequence of a wayland client, GNOME Shell will
not be notified about this until startup-notification's timeout is hit.
As a temporary stop-gap, go through XWayland even for wayland clients,
so that the signal is emitted when expected.
https://bugzilla.gnome.org/show_bug.cgi?id=768531
---
src/wayland/meta-wayland-gtk-shell.c | 10 ++++++++++
1 file changed, 10 insertions(+)
Index: mutter-3.29.2/src/wayland/meta-wayland-gtk-shell.c
===================================================================
--- mutter-3.29.2.orig/src/wayland/meta-wayland-gtk-shell.c 2017-12-21 16:44:13.000000000 +0100
+++ mutter-3.29.2/src/wayland/meta-wayland-gtk-shell.c 2018-07-24 21:26:48.888683780 +0200
@@ -312,11 +312,21 @@ gtk_shell_set_startup_id (struct wl_clie
struct wl_resource *resource,
const char *startup_id)
{
+#if 0
MetaDisplay *display;
display = meta_get_display ();
meta_startup_notification_remove_sequence (display->startup_notification,
startup_id);
+#else
+ /* HACK: MetaScreen::startup-sequence-changed is currently tied to
+ (lib)startup-notification, which means it only works on X11;
+ so for now, always go through XWayland, even for wayland clients */
+ gdk_x11_display_broadcast_startup_message (gdk_display_get_default (),
+ "remove",
+ "ID", startup_id,
+ NULL);
+#endif
}
static void

View File

@ -12,12 +12,12 @@ https://bugzilla.gnome.org/show_bug.cgi?id=781704
src/x11/iconcache.c | 35 ++++++++++++++++++++++++++++++++++- src/x11/iconcache.c | 35 ++++++++++++++++++++++++++++++++++-
1 file changed, 34 insertions(+), 1 deletion(-) 1 file changed, 34 insertions(+), 1 deletion(-)
Index: mutter-3.29.2/src/x11/iconcache.c Index: mutter-3.32.1/src/x11/iconcache.c
=================================================================== ===================================================================
--- mutter-3.29.2.orig/src/x11/iconcache.c 2017-03-09 19:39:07.000000000 +0100 --- mutter-3.32.1.orig/src/x11/iconcache.c
+++ mutter-3.29.2/src/x11/iconcache.c 2018-07-24 21:26:48.904683928 +0200 +++ mutter-3.32.1/src/x11/iconcache.c
@@ -304,10 +304,43 @@ standard_pict_format_for_depth (int dept @@ -305,10 +305,43 @@ standard_pict_format_for_depth (int dept
} return 0;
} }
+static XRenderPictFormat RGB16_565_Format = +static XRenderPictFormat RGB16_565_Format =

View File

@ -1,41 +0,0 @@
From 7260ba5db3fcf9b086944aef9f3d89f159ece137 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jonas=20=C3=85dahl?= <jadahl@gmail.com>
Date: Thu, 11 Oct 2018 13:16:26 +0000
Subject: [PATCH] monitor-manager: Don't use switch-config when ensuring
configuration
Switch-configs are only to be used in certain circumstances (see
meta_monitor_manager_can_switch_config()) so when ensuring
configuration and attempting to create a linear configuration, use the
linear configuration constructor function directly without going via the
switch config method, otherwise we might incorrectly fall back to the
fallback configuration (only enable primary monitor).
This is a regression introduced by 6267732bec97773.
Fixes: https://gitlab.gnome.org/GNOME/mutter/issues/342
(cherry picked from commit 149e4d69345adab2bfea84a04f88511cbad62fe0)
---
src/backends/meta-monitor-manager.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/src/backends/meta-monitor-manager.c b/src/backends/meta-monitor-manager.c
index baed7521d..d9236b928 100644
--- a/src/backends/meta-monitor-manager.c
+++ b/src/backends/meta-monitor-manager.c
@@ -561,9 +561,7 @@ meta_monitor_manager_ensure_configured (MetaMonitorManager *manager)
g_clear_object (&config);
}
- config =
- meta_monitor_config_manager_create_for_switch_config (manager->config_manager,
- META_MONITOR_SWITCH_CONFIG_ALL_LINEAR);
+ config = meta_monitor_config_manager_create_linear (manager->config_manager);
if (config)
{
if (!meta_monitor_manager_apply_monitors_config (manager,
--
2.18.1

View File

@ -1,3 +1,101 @@
-------------------------------------------------------------------
Wed Apr 24 09:42:26 UTC 2019 - Martin Liška <mliska@suse.cz>
- Disable LTO (boo#1133121).
-------------------------------------------------------------------
Thu Apr 18 10:36:55 UTC 2019 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 3.32.1:
+ Fix fallback app menu on wayland (glgo#GNOME/mutter#493).
+ Fix elogind support (glgo#GNOME/mutter!491).
+ Fix startup notifications not timing out
+ (glgo#GNOME/mutter#501).
+ Fix keyboard accessibility toggle from keys
+ (glgo#GNOME/mutter!501, glgo#GNOME/mutter#529,
+ glgo#GNOME/mutter!531).
+ Fix touchscreen input on rotated displays
+ (glgo#GNOME/mutter#514).
+ Work around hangul text input bug (glgo#GNOME/mutter#1365).
+ Fix blurry wallpaper scaling (glgo#GNOME/mutter!505).
+ Fix placement of window menu when using fractional scaling
+ (glgo#GNOME/mutter#527).
+ Fix repaint issues of offscreen effects on secondary monitors
+ (glgo#GNOME/mutter!511).
+ Fix windows not getting focus after launch
+ (glgo#GNOME/mutter#505).
+ Properly advertise support for 'underscan' property
+ (glgo#GNOME/mutter!507).
+ Improve power-saving handling (glgo#GNOME/mutter!506).
+ Fix moving windows by super+touch [Jonas D.; !495]
+ Misc. bug fixes and cleanups: glgo#GNOME/mutter!478,
glgo#GNOME/mutter!475, glgo#GNOME/mutter!480,
glgo#GNOME/mutter!482, glgo#GNOME/mutter#490,
glgo#GNOME/mutter!488, glgo#GNOME/mutter#491,
glgo#GNOME/mutter#480, glgo#GNOME/mutter!477,
glgo#GNOME/mutter!496, glgo#GNOME/mutter!492,
glgo#GNOME/mutter!485, glgo#GNOME/mutter!515,
glgo#GNOME/mutter!519, glgo#GNOME/mutter!521,
glgo#GNOME/mutter!216, glgo#GNOME/mutter!538,
glgo#GNOME/mutter#541, glgo#GNOME/mutter#523.
+ Updated translations.
- Drop mutter-fix-meson50-build.patch: fixed upstream.
- Rebase
mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch.
-------------------------------------------------------------------
Tue Mar 12 06:32:53 UTC 2019 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 3.32.0:
+ Fix deadlock when cancelling a theme sound.
+ Stop swizzling BGRA buffers (bye-bye inverted colors in
screenshots and animations).
- Add mutter-fix-meson50-build.patch: Fix build with meson >= 0.50
-------------------------------------------------------------------
Tue Mar 5 06:16:34 UTC 2019 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 3.31.92:
+ Fix flicker of apps that use multiple SHM buffers.
+ Don't disable page flips after temporary failures.
+ Improve redraw performance.
+ Add cursor-mode support to window screencasting.
+ Add back support for system-wide monitor configurations.
+ Add fractional scaling support.
+ Consider remapped keys when guessing keycode from keysym.
+ Stop turning on-screen-keyboard off on focus changes.
+ Fix crashes.
+ Misc. bug fixes and cleanups.
+ Updated translations.
- Pass cogl_tests=false, clutter_tests=false and tests=false to
meson, we can now disable tests fully.
-------------------------------------------------------------------
Fri Feb 22 06:31:31 UTC 2019 - bjorn.lie@gmail.com
- Update to version 3.31.91:
+ Fix infinite loop in EDID matching.
+ wayland:
- Don't reset in text-input state prematurely.
- Don't maximize windows if minimum size is too big.
+ Fix crash when using "restore shortcuts" without focus window.
+ Add flag parameter to grab accelerator API.
+ Reuse old CRTC if possible to avoid flicker on hotplug.
+ Misc. bug fixes and cleanups.
+ Updated translations.
- Drop patches fixed upstream:
+ mutter-Avoid_double-free_crash.patch: cogl-auto-texture: Avoid
a double-free crash.
+ mutter-clutter-offscreen-effect-fix.patch:
clutter-offscreen-effect: Disable if no texture.
+ mutter-clutter-Avoid-rounding-compensation.patch: clutter:
Avoid rounding compensation when invalidating 2D actors.
+ mutter-Fix-monitor-recording-on-HiDPI.patch: screen-cast: Fix
monitor recording on HiDPI.
+ mutter-monitor-manager-Dont-use_switch-config.patch:
monitor-manager: Don't use switch-config when ensuring
configuration.
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Feb 21 08:13:50 UTC 2019 - bjorn.lie@gmail.com Thu Feb 21 08:13:50 UTC 2019 - bjorn.lie@gmail.com
@ -22,6 +120,101 @@ Thu Feb 21 04:42:37 UTC 2019 - qkzhu@suse.com
(96*1.5) to keep GNOME's behavior consistent with YaST Installer (96*1.5) to keep GNOME's behavior consistent with YaST Installer
(fate#326682, bsc#1125467). (fate#326682, bsc#1125467).
-------------------------------------------------------------------
Wed Feb 13 19:22:10 UTC 2019 - bjorn.lie@gmail.com
- Update to version 3.31.90:
+ Fix support of extended characters in on-screen keyboard.
+ Improve selection of the primary GPU.
+ Screen-cast cursor updates as PipeWire stream metadata.
+ Fix rendering glitches in magnifier.
+ Fix monitor recording on HiDPI.
+ Honour secondary GPU supported pixel formats.
+ Fall back to CPU copy path when using a software renderer.
+ Remove fallback app menu.
+ wayland: Add support for viewporter protocol.
+ Misc. bug fixes and cleanups.
+ Updated translations.
- Disable
mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch
- Set api_minor define to 0.
-------------------------------------------------------------------
Wed Feb 6 21:56:14 UTC 2019 - bjorn.lie@gmail.com
- Fix translation-update-upstream call, needed after update of
translation-update-upstream in distro.
-------------------------------------------------------------------
Fri Jan 11 08:43:58 UTC 2019 - bjorn.lie@gmail.com
- Update to version 3.31.4:
+ keybindings: Limit corner move to current monitor.
+ xdg-output: Report rotated physical dimensions.
+ Add continuous integration pipeline.
+ Improve performance on secondary GPUs.
+ Use the actual hardware refresh rate.
+ Remove hide-titlebar-when-maximized support.
+ wayland: Implement buffer transforms.
+ Remove ability to externally set sync-to-vblank.
+ Turn off touchscreens together with DPMS.
+ Mipmap the wallpaper when shrinking.
+ Implement RecordWindow method for screen-casts.
+ Fix EGLStream texture downloading.
+ Split out display-server-specific code from MetaWindowActor.
+ Improve render performance on some KMS devices with software
GL.
+ Fix damage area of transformed surfaces.
+ Remove autotools support.
+ Misc. bug fixes and cleanups: bgo#790207, bgo#765011,
bgo#786663 bgo#782344, bgo#781034, glgo#GNOME/mutter!309,
glgo#GNOME/mutter#272, glgo#GNOME/mutter#393,
glgo#GNOME/mutter#276, glgo#GNOME/mutter#404,
glgo#GNOME/mutter#104, glgo#GNOME/mutter!343,
glgo#GNOME/mutter#342, glgo#GNOME/mutter!356,
glgo#GNOME/mutter#414, glgo#GNOME/mutter#423,
glgo#GNOME/mutter!374, glgo#GNOME/mutter!382,
glgo#GNOME/mutter!383.
- Drop patches fixed upstream mutter-fix-startup.patch and
mutter-monitor-manager-Don-t-use-switch-config-when-ensurin.patch
- Bump api_major to 4 following upstreams changes.
- Pass -Degl_device=true to meson, ensure we build egl support.
- Pass -Dinstalled_tests=false to meson, running tests during build
are something we will look into later in the cycle.
-------------------------------------------------------------------
Sat Jan 5 01:22:18 UTC 2019 - bjorn.lie@gmail.com
- Update to version 3.31.2:
+ Fix handling of non-UTF8 encodings.
+ Fix memory leaks introduced in 3.30.1.
+ Fix regression when overriding workspace layout.
+ Fix crash when restarting window manager.
+ Add meson build support.
+ Freeze clock when headless.
+ Fix crash on monitor hotplug.
+ Misc. bug fixes.
- Drop
mutter-wayland-text-input-Ignore-text-input-state-commit-wh.patch
Fixed upstream.
- Disable mutter-xwayland-create-xauthority.patch: Needs rebase.
- Switch to meson buildsystem, add meson BuildRequires and macros.
- Add xorg-x11-server, xorg-x11-server-wayland and
pkgconfig(gnome-settings-daemon) BuildRequires: New dependencies.
- Set api_minor define to 0_0_0.
-------------------------------------------------------------------
Tue Dec 18 19:56:19 UTC 2018 - bjorn.lie@gmail.com
- Add two patches from fedora that have not been applied to the
stable branch:
+ mutter-monitor-manager-Don-t-use-switch-config-when-ensurin.patch:
monitor-manager: Don't use switch-config when ensuring
configuration.
+ mutter-wayland-text-input-Ignore-text-input-state-commit-wh.patch:
wayland/text-input: Ignore text-input state commit when not
focused.
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Nov 14 09:26:14 UTC 2018 - bjorn.lie@gmail.com Wed Nov 14 09:26:14 UTC 2018 - bjorn.lie@gmail.com

View File

@ -16,36 +16,23 @@
# #
%define api_major 3 %define api_major 4
%define api_minor 0 %define api_minor 0
%define libmutter libmutter-%{api_major}-%{api_minor} %define libmutter libmutter-%{api_major}-%{api_minor}
Name: mutter Name: mutter
Version: 3.30.2 Version: 3.32.1
Release: 0 Release: 0
Summary: Window and compositing manager based on Clutter Summary: Window and compositing manager based on Clutter
License: GPL-2.0-or-later License: GPL-2.0-or-later
Group: System/GUI/GNOME Group: System/GUI/GNOME
URL: https://www.gnome.org URL: https://www.gnome.org
Source0: https://download.gnome.org/sources/mutter/3.30/%{name}-%{version}.tar.xz Source0: https://download.gnome.org/sources/mutter/3.32/%{name}-%{version}.tar.xz
# PATCH-FIX-UPSTREAM mutter-fix-startup.patch bgo#768531 -- Fix slow startup notification on wayland
Patch0: mutter-fix-startup.patch
# PATCH-FEATURE-UPSTREAM mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch FATE#323412 bgo#781704 bsc#1024748 vliaskovitis@suse.com -- iconcache: Support RGB16_565 format for 16-bit sessions # PATCH-FEATURE-UPSTREAM mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch FATE#323412 bgo#781704 bsc#1024748 vliaskovitis@suse.com -- iconcache: Support RGB16_565 format for 16-bit sessions
Patch1: mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch Patch1: mutter-iconcache-Support-RGB16_565-format-for-16-bit-color-.patch
# PATCH-FIX-OPENSUSE mutter-xwayland-create-xauthority.patch bsc#1084737 hpj@suse.com -- Create and pass an Xauthority file to Xwayland and session # PATCH-NEEDS-REBASE mutter-xwayland-create-xauthority.patch bsc#1084737 hpj@suse.com -- Create and pass an Xauthority file to Xwayland and session (WAS: PATCH-FIx-OPENSUSE)
Patch2: mutter-xwayland-create-xauthority.patch Patch2: mutter-xwayland-create-xauthority.patch
# PATCH-FIX-OPENSUSE mutter-Lower-HIDPI_LIMIT-to-144.patch fate#326682, bsc#1125467 qkzhu@suse.com -- Lower HIDPI_LIMIT to 144 # PATCH-FIX-OPENSUSE mutter-Lower-HIDPI_LIMIT-to-144.patch fate#326682, bsc#1125467 qkzhu@suse.com -- Lower HIDPI_LIMIT to 144
Patch3: mutter-Lower-HIDPI_LIMIT-to-144.patch Patch3: mutter-Lower-HIDPI_LIMIT-to-144.patch
# PATCH-FIX-UPSTREAM mutter-Avoid_double-free_crash.patch -- cogl-auto-texture: Avoid a double-free crash
Patch4: mutter-Avoid_double-free_crash.patch
# PATCH-FIX-UPSTREAM mutter-clutter-offscreen-effect-fix.patch -- clutter-offscreen-effect: Disable if no texture
Patch5: mutter-clutter-offscreen-effect-fix.patch
# PATCH-FIX-UPSTREAM mutter-clutter-Avoid-rounding-compensation.patch -- clutter: Avoid rounding compensation when invalidating 2D actors
Patch6: mutter-clutter-Avoid-rounding-compensation.patch
# PATCH-FIX-UPSTREAM mutter-Fix-monitor-recording-on-HiDPI.patch -- screen-cast: Fix monitor recording on HiDPI
Patch7: mutter-Fix-monitor-recording-on-HiDPI.patch
# PATCH-FIX-UPSTREAM mutter-monitor-manager-Dont-use_switch-config.patch -- monitor-manager: Don't use switch-config when ensuring configuration
Patch8: mutter-monitor-manager-Dont-use_switch-config.patch
## SLE-only patches start at 1000 ## SLE-only patches start at 1000
# PATCH-FEATURE-SLE mutter-SLE-bell.patch FATE#316042 bnc#889218 idonmez@suse.com -- make audible bell work out of the box. # PATCH-FEATURE-SLE mutter-SLE-bell.patch FATE#316042 bnc#889218 idonmez@suse.com -- make audible bell work out of the box.
Patch1000: mutter-SLE-bell.patch Patch1000: mutter-SLE-bell.patch
@ -56,8 +43,11 @@ Patch1002: mutter-SLE-bsc984738-grab-display.patch
BuildRequires: Mesa-libGLESv3-devel BuildRequires: Mesa-libGLESv3-devel
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: libtool BuildRequires: libtool
BuildRequires: meson
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: translation-update-upstream BuildRequires: translation-update-upstream
BuildRequires: xorg-x11-server
BuildRequires: xorg-x11-server-wayland
BuildRequires: zenity BuildRequires: zenity
BuildRequires: pkgconfig(cairo) >= 1.10.0 BuildRequires: pkgconfig(cairo) >= 1.10.0
BuildRequires: pkgconfig(egl) BuildRequires: pkgconfig(egl)
@ -65,6 +55,7 @@ BuildRequires: pkgconfig(gbm) >= 17.1
BuildRequires: pkgconfig(gio-unix-2.0) >= 2.53.2 BuildRequires: pkgconfig(gio-unix-2.0) >= 2.53.2
BuildRequires: pkgconfig(glesv2) BuildRequires: pkgconfig(glesv2)
BuildRequires: pkgconfig(gnome-desktop-3.0) BuildRequires: pkgconfig(gnome-desktop-3.0)
BuildRequires: pkgconfig(gnome-settings-daemon)
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.9.5 BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.9.5
BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.19.3 BuildRequires: pkgconfig(gsettings-desktop-schemas) >= 3.19.3
BuildRequires: pkgconfig(gtk+-3.0) >= 3.19.7 BuildRequires: pkgconfig(gtk+-3.0) >= 3.19.7
@ -73,7 +64,7 @@ BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(libcanberra-gtk3) BuildRequires: pkgconfig(libcanberra-gtk3)
BuildRequires: pkgconfig(libdrm) >= 2.4.83 BuildRequires: pkgconfig(libdrm) >= 2.4.83
BuildRequires: pkgconfig(libinput) BuildRequires: pkgconfig(libinput)
BuildRequires: pkgconfig(libpipewire-0.2) BuildRequires: pkgconfig(libpipewire-0.2) >= 0.2.5
BuildRequires: pkgconfig(libstartup-notification-1.0) BuildRequires: pkgconfig(libstartup-notification-1.0)
BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(libudev) >= 136 BuildRequires: pkgconfig(libudev) >= 136
@ -153,18 +144,13 @@ applications that want to make use of the mutter library.
%prep %prep
%setup -q %setup -q
%patch0 -p1
%patch1 -p1 %patch1 -p1
%patch2 -p1 # Needs rebase
#patch2 -p1
%patch3 -p1 %patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
# SLE-only patches and translations. # SLE-only patches and translations.
translation-update-upstream translation-update-upstream po mutter
%if !0%{?is_opensuse} %if !0%{?is_opensuse}
%patch1000 -p1 %patch1000 -p1
%patch1001 -p1 %patch1001 -p1
@ -172,21 +158,21 @@ translation-update-upstream
%endif %endif
%build %build
autoreconf -fiv %define _lto_cflags %{nil}
%configure \ %meson \
--enable-wayland \ -Degl_device=true \
--enable-native-backend \ -Dcogl_tests=false \
--disable-static \ -Dclutter_tests=false \
--enable-egl-device \ -Dtests=false \
--enable-gles2=yes \ -Dinstalled_tests=false \
--enable-compile-warnings=maximum \
--enable-remote-desktop \
%{nil} %{nil}
%make_build %meson_build
#%%check
#%%meson_test
%install %install
%make_install %meson_install
find %{buildroot}%{_libdir} -type f -name '*.la' -delete -print
%find_lang %{name} %{?no_lang_C} %find_lang %{name} %{?no_lang_C}
%fdupes %{buildroot}%{_prefix} %fdupes %{buildroot}%{_prefix}
@ -202,26 +188,26 @@ find %{buildroot}%{_libdir} -type f -name '*.la' -delete -print
%{_datadir}/applications/mutter.desktop %{_datadir}/applications/mutter.desktop
# These so files are not split out since they are private to mutter # These so files are not split out since they are private to mutter
%{_libdir}/mutter/libmutter-clutter-%{api_major}.so %{_libdir}/mutter-%{api_major}/libmutter-clutter-%{api_major}.so.*
%{_libdir}/mutter/libmutter-cogl-gles2-%{api_major}.so %{_libdir}/mutter-%{api_major}/libmutter-cogl-gles2-%{api_major}.so.*
%{_libdir}/mutter/libmutter-cogl-pango-%{api_major}.so %{_libdir}/mutter-%{api_major}/libmutter-cogl-pango-%{api_major}.so.*
%{_libdir}/mutter/libmutter-cogl-path-%{api_major}.so %{_libdir}/mutter-%{api_major}/libmutter-cogl-path-%{api_major}.so.*
%{_libdir}/mutter/libmutter-cogl-%{api_major}.so %{_libdir}/mutter-%{api_major}/libmutter-cogl-%{api_major}.so.*
%{_libdir}/mutter/plugins/default.so %{_libdir}/mutter-%{api_major}/plugins/libdefault.so
# These typelibs are not split out since they are private to mutter # These typelibs are not split out since they are private to mutter
%{_libdir}/mutter/Cally-%{api_major}.typelib %{_libdir}/mutter-%{api_major}/Cally-%{api_major}.typelib
%{_libdir}/mutter/Clutter-%{api_major}.typelib %{_libdir}/mutter-%{api_major}/Clutter-%{api_major}.typelib
%{_libdir}/mutter/ClutterX11-%{api_major}.typelib %{_libdir}/mutter-%{api_major}/ClutterX11-%{api_major}.typelib
%{_libdir}/mutter/Cogl-%{api_major}.typelib %{_libdir}/mutter-%{api_major}/Cogl-%{api_major}.typelib
%{_libdir}/mutter/CoglPango-%{api_major}.typelib %{_libdir}/mutter-%{api_major}/CoglPango-%{api_major}.typelib
%{_libdir}/mutter/Meta-%{api_major}.typelib %{_libdir}/mutter-%{api_major}/Meta-%{api_major}.typelib
%files -n %{libmutter} %files -n %{libmutter}
%{_libdir}/libmutter-%{api_major}.so.* %{_libdir}/libmutter-%{api_major}.so.*
%dir %{_libdir}/mutter/ %dir %{_libdir}/mutter-%{api_major}/
# users of libmutter need this directory # users of libmutter need this directory
%dir %{_libdir}/mutter/plugins/ %dir %{_libdir}/mutter-%{api_major}/plugins/
%files data %files data
# Do not depend on g-c-c just for a directory # Do not depend on g-c-c just for a directory
@ -236,14 +222,19 @@ find %{buildroot}%{_libdir} -type f -name '*.la' -delete -print
%{_datadir}/glib-2.0/schemas/org.gnome.mutter.wayland.gschema.xml %{_datadir}/glib-2.0/schemas/org.gnome.mutter.wayland.gschema.xml
%files devel %files devel
%{_includedir}/mutter/ %{_includedir}/mutter-%{api_major}/
%{_libdir}/mutter-%{api_major}/Meta-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/Cally-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/Clutter-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/ClutterX11-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/Cogl-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/CoglPango-%{api_major}.gir
%{_libdir}/mutter-%{api_major}/libmutter-clutter-%{api_major}.so
%{_libdir}/mutter-%{api_major}/libmutter-cogl-gles2-%{api_major}.so
%{_libdir}/mutter-%{api_major}/libmutter-cogl-pango-%{api_major}.so
%{_libdir}/mutter-%{api_major}/libmutter-cogl-path-%{api_major}.so
%{_libdir}/mutter-%{api_major}/libmutter-cogl-%{api_major}.so
%{_libdir}/libmutter-%{api_major}.so %{_libdir}/libmutter-%{api_major}.so
%{_libdir}/mutter/Meta-%{api_major}.gir
%{_libdir}/mutter/Cally-%{api_major}.gir
%{_libdir}/mutter/Clutter-%{api_major}.gir
%{_libdir}/mutter/ClutterX11-%{api_major}.gir
%{_libdir}/mutter/Cogl-%{api_major}.gir
%{_libdir}/mutter/CoglPango-%{api_major}.gir
%{_libdir}/pkgconfig/libmutter-%{api_major}.pc %{_libdir}/pkgconfig/libmutter-%{api_major}.pc
%{_libdir}/pkgconfig/mutter-clutter-%{api_major}.pc %{_libdir}/pkgconfig/mutter-clutter-%{api_major}.pc
%{_libdir}/pkgconfig/mutter-clutter-x11-%{api_major}.pc %{_libdir}/pkgconfig/mutter-clutter-x11-%{api_major}.pc