]> git.pld-linux.org Git - packages/mutter.git/blame - mutter.spec
- updated to 44.4
[packages/mutter.git] / mutter.spec
CommitLineData
0457c1a2
JB
1#
2# Conditional build
c9580293 3%bcond_with eglstream # Wayland EGLStream support
0457c1a2 4%bcond_without pipewire # remote desktop via pipewire
0e83eb80 5%bcond_with sysprof # build with tracing support
dccf1bfd 6%bcond_without apidocs # API documentation
a1856478 7%bcond_with tests # run tests (causes infinite loop on builders)
0457c1a2 8
25d9769d 9Summary: Window and compositing manager based on Clutter
2d2fcd08 10Summary(pl.UTF-8): Zarządca okien i składania oparty na bibliotece Clutter
25d9769d 11Name: mutter
80f01a76 12Version: 44.4
b488e34d 13Release: 1
25d9769d
PZ
14License: GPL v2+
15Group: X11/Window Managers
b1557b20 16Source0: https://download.gnome.org/sources/mutter/44/%{name}-%{version}.tar.xz
80f01a76 17# Source0-md5: 985f14046cbff834f5f7ba4e1bce4bad
db933be0 18Patch0: %{name}-deps.patch
5300656a 19URL: https://gitlab.gnome.org/GNOME/mutter
587540dd 20BuildRequires: EGL-devel
f5403a97
JB
21# <EGL/eglmesaext.h>
22BuildRequires: Mesa-libEGL-devel
b1557b20 23BuildRequires: Mesa-libgbm-devel >= 21.3
f5403a97 24BuildRequires: OpenGL-GLX-devel
587540dd 25BuildRequires: atk-devel >= 1:2.6
0591ebfb 26BuildRequires: cairo-devel >= 1.10.0
587540dd 27BuildRequires: cairo-gobject-devel >= 1.14.0
b1557b20 28BuildRequires: colord-devel >= 1.4.5
c0615e35 29BuildRequires: dbus-devel
c9580293 30%{?with_eglstream:BuildRequires: egl-wayland-devel}
5300656a 31BuildRequires: fribidi-devel >= 1.0.0
587540dd
JB
32BuildRequires: gdk-pixbuf2-devel >= 2.0
33BuildRequires: gettext-tools >= 0.19.6
dccf1bfd 34%{?with_apidocs:BuildRequires: gi-docgen >= 2021.1}
b1557b20 35BuildRequires: glib2-devel >= 1:2.75.1
e9a83890 36BuildRequires: gnome-desktop-devel >= 3.0
92790b60 37BuildRequires: gnome-settings-daemon-devel
587540dd 38BuildRequires: gobject-introspection-devel >= 1.40.0
c9580293
JB
39BuildRequires: graphene-devel >= 1.10.2
40BuildRequires: gsettings-desktop-schemas-devel >= 40
b1557b20
JB
41BuildRequires: gtk4-devel >= 4.0.0
42BuildRequires: harfbuzz-devel >= 2.6
587540dd 43BuildRequires: json-glib-devel >= 0.12.0
b1557b20
JB
44BuildRequires: lcms2-devel >= 2.6
45BuildRequires: libcanberra-devel >= 0.26
7491ffac 46BuildRequires: libdrm-devel
8c4d3481 47BuildRequires: libgudev-devel >= 232
dccf1bfd 48BuildRequires: libinput-devel >= 1.19.0
4e6754cd 49BuildRequires: libwacom-devel >= 0.13
587540dd 50# xcb-randr, xcb-res
7491ffac 51BuildRequires: libxcb-devel
b1557b20 52BuildRequires: meson >= 0.58.0
8c4d3481 53BuildRequires: ninja >= 1.5
c9580293 54BuildRequires: pango-devel >= 1:1.46.0
dccf1bfd 55%{?with_pipewire:BuildRequires: pipewire-devel >= 0.3.33}
7491ffac 56BuildRequires: pkgconfig >= 1:0.21
92790b60 57BuildRequires: rpmbuild(macros) >= 1.736
d7ee70a8 58BuildRequires: startup-notification-devel >= 0.7
a219dc67 59%{?with_sysprof:BuildRequires: sysprof-devel >= 3.37.2}
5300656a
JB
60# or elogind-devel
61BuildRequires: systemd-devel >= 1:209
011c8734 62BuildRequires: tar >= 1:1.22
8c4d3481 63BuildRequires: udev-devel >= 1:228
b1557b20 64BuildRequires: wayland-devel >= 1.21
f949eba7 65BuildRequires: wayland-egl-devel
b1557b20 66BuildRequires: wayland-protocols >= 1.31
41c83d1a 67BuildRequires: xkeyboard-config
d7ee70a8
MB
68BuildRequires: xorg-lib-libICE-devel
69BuildRequires: xorg-lib-libSM-devel
b1557b20 70BuildRequires: xorg-lib-libX11-devel >= 1.7.0
0e83eb80 71BuildRequires: xorg-lib-libXau-devel
587540dd 72BuildRequires: xorg-lib-libXcomposite-devel >= 0.4
25d9769d
PZ
73BuildRequires: xorg-lib-libXcursor-devel
74BuildRequires: xorg-lib-libXdamage-devel
75BuildRequires: xorg-lib-libXext-devel
dccf1bfd 76BuildRequires: xorg-lib-libXfixes-devel >= 6
0e83eb80 77BuildRequires: xorg-lib-libXi-devel >= 1.7.4
d7ee70a8 78BuildRequires: xorg-lib-libXinerama-devel
4e6754cd 79BuildRequires: xorg-lib-libXrandr-devel >= 1.5.0
25d9769d 80BuildRequires: xorg-lib-libXrender-devel
0e83eb80 81BuildRequires: xorg-lib-libXtst-devel
3d470aa2 82BuildRequires: xorg-lib-libxkbcommon-devel >= 0.4.3
8c4d3481 83BuildRequires: xorg-lib-libxkbcommon-x11-devel >= 0.4.3
7491ffac 84BuildRequires: xorg-lib-libxkbfile-devel
db933be0 85BuildRequires: xorg-xserver-Xwayland-devel >= 21.1
4aab8c13
JB
86# /usr/bin/cvt
87BuildRequires: xorg-xserver-server-tools
011c8734 88BuildRequires: xz
b1557b20 89Requires(post,postun): glib2 >= 1:2.75.1
2d2fcd08 90Requires: %{name}-libs = %{version}-%{release}
b1557b20 91Requires: colord >= 1.4.5
c9580293 92Requires: gsettings-desktop-schemas >= 40
b1557b20 93Requires: lcms2 >= 2.6
25d9769d 94Requires: zenity
d7ee70a8 95Provides: gnome-wm
03eb186a 96Obsoletes: mutter-apidocs < 3.18
7491ffac 97Obsoletes: mutter-wayland < 3.14
03eb186a 98Obsoletes: mutter-wayland-apidocs < 3.14
25d9769d
PZ
99BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
100
b1557b20 101%define apiver 12
c0615e35 102
25d9769d 103%description
d7ee70a8
MB
104Mutter is a window and compositing manager that displays and manages
105your desktop via OpenGL. Mutter combines a sophisticated display
106engine using the Clutter toolkit with solid window-management logic
107inherited from the Metacity window manager.
25d9769d 108
2d2fcd08
JB
109%description -l pl.UTF-8
110Mutter to zarządca okien i składania wyświetlający pulpit i
111zarządzający nim poprzez OpenGL. Łączy wyszukany silnik wyświetlania
112wykorzystujący toolkit Clutter z solidną logiką zarządcy okien
113odziedziczoną z zarządcy okien Metacity.
114
115%package libs
116Summary: Mutter shared library
117Summary(pl.UTF-8): Biblioteka współdzielona zarządcy okien Mutter
118Group: Libraries
b1557b20 119Requires: Mesa-libgbm >= 21.3
587540dd 120Requires: atk >= 1:2.6
0591ebfb 121Requires: cairo >= 1.10.0
587540dd 122Requires: cairo-gobject >= 1.14.0
5300656a 123Requires: fribidi >= 1.0.0
b1557b20 124Requires: glib2 >= 1:2.75.1
e9a83890 125Requires: gnome-desktop >= 3.0
c9580293 126Requires: graphene >= 1.10.2
a936f533 127Requires: gtk+3 >= 3.20.0
587540dd 128Requires: json-glib >= 0.12.0
2d2fcd08 129Requires: libcanberra-gtk3 >= 0.26
dccf1bfd 130Requires: libinput >= 1.19.0
587540dd 131Requires: libwacom >= 0.13
c9580293 132Requires: pango >= 1:1.46.0
dccf1bfd 133%{?with_pipewire:Requires: pipewire-libs >= 0.3.33}
2d2fcd08 134Requires: startup-notification >= 0.7
d7034200 135Requires: libgudev >= 232
5300656a 136Requires: udev-libs >= 1:228
b1557b20
JB
137Requires: wayland >= 1.21
138Requires: xorg-lib-libX11 >= 1.7.0
587540dd 139Requires: xorg-lib-libXcomposite >= 0.4
dccf1bfd 140Requires: xorg-lib-libXfixes >= 6
0e83eb80 141Requires: xorg-lib-libXi >= 1.7.4
587540dd 142Requires: xorg-lib-libXrandr >= 1.5.0
7491ffac 143Obsoletes: mutter-wayland-libs < 3.14
2d2fcd08
JB
144Conflicts: mutter < 3.4.0-2
145
146%description libs
147Mutter shared library.
148
149%description libs -l pl.UTF-8
150Biblioteka współdzielona zarządcy okien i składania Mutter.
151
25d9769d 152%package devel
d7ee70a8 153Summary: Development package for Mutter
2d2fcd08 154Summary(pl.UTF-8): Pakiet programistyczny do wtyczek zarządcy okien Mutter
d7ee70a8 155Group: X11/Development/Libraries
2d2fcd08 156Requires: %{name}-libs = %{version}-%{release}
587540dd 157Requires: EGL-devel
b1557b20 158Requires: Mesa-libgbm-devel >= 21.3
0591ebfb 159Requires: cairo-devel >= 1.10.0
587540dd
JB
160Requires: cairo-gobject-devel >= 1.14.0
161Requires: gdk-pixbuf2-devel >= 2.0
b1557b20 162Requires: glib2-devel >= 1:2.75.1
c9580293 163Requires: graphene-devel >= 1.10.2
a936f533 164Requires: gtk+3-devel >= 3.20.0
2d2fcd08 165Requires: libcanberra-gtk3-devel >= 0.26
587540dd 166Requires: libdrm-devel
2d2fcd08 167Requires: startup-notification-devel >= 0.7
b1557b20 168Requires: wayland-devel >= 1.21
f949eba7 169Requires: wayland-egl-devel
b1557b20 170Requires: xorg-lib-libX11-devel >= 1.7.0
0e83eb80 171Requires: xorg-lib-libXau-devel
587540dd 172Requires: xorg-lib-libXcomposite-devel >= 0.4
2d2fcd08
JB
173Requires: xorg-lib-libXcursor-devel
174Requires: xorg-lib-libXdamage-devel
587540dd 175Requires: xorg-lib-libXext-devel
dccf1bfd 176Requires: xorg-lib-libXfixes-devel >= 6
0e83eb80 177Requires: xorg-lib-libXi-devel >= 1.7.4
587540dd 178Requires: xorg-lib-libXrandr-devel >= 1.5.0
2d2fcd08 179Requires: xorg-lib-libXrender-devel
0e83eb80 180Requires: xorg-lib-libXtst-devel
8c4d3481 181Requires: xorg-lib-libxkbcommon-devel >= 0.4.3
7491ffac 182Obsoletes: mutter-wayland-devel < 3.14
25d9769d
PZ
183
184%description devel
2d2fcd08
JB
185Header files for developing Mutter plugins.
186
187%description devel -l pl.UTF-8
188Pliki nagłówkowe do tworzenia wtyczek zarządcy okien i składania
189Mutter.
25d9769d 190
dccf1bfd
JB
191%package apidocs
192Summary: API documentation for Mutter libaries
193Summary(pl.UTF-8): Dokumentacja API bibliotek Mutter
194Group: Documentation
195BuildArch: noarch
196
197%description apidocs
198API documentation for Mutter libaries.
199
200%description apidocs -l pl.UTF-8
201Dokumentacja API bibliotek Mutter.
202
25d9769d
PZ
203%prep
204%setup -q
586b5247 205%patch0 -p1
25d9769d
PZ
206
207%build
92790b60 208%meson build \
dccf1bfd 209 %{?with_apidocs:-Ddocs=true} \
3ec8ff71 210 %{?with_eglstream:-Degl_device=true} \
c9580293 211 %{?with_eglstream:-Dwayland_eglstream=true} \
5300656a 212 -Dgles2_libname=libGLESv2.so.2 \
92790b60 213 -Dinstalled_tests=false \
0e83eb80 214 -Dprofiler=%{__true_false sysprof} \
0457c1a2 215 %{!?with_pipewire:-Dremote_desktop=false} \
a1856478 216 -Dtests=%{__true_false tests} \
8c4d3481
JB
217 -Dxwayland_path=/usr/bin/Xwayland
218
92790b60 219%ninja_build -C build
25d9769d
PZ
220
221%install
222rm -rf $RPM_BUILD_ROOT
223
92790b60 224%ninja_install -C build
25d9769d 225
dccf1bfd
JB
226%if %{with apidocs}
227# FIXME: where to package gi-docgen generated docs?
228install -d $RPM_BUILD_ROOT%{_gtkdocdir}
b1557b20 229%{__mv} $RPM_BUILD_ROOT%{_datadir}/mutter-%{apiver}/doc $RPM_BUILD_ROOT%{_gtkdocdir}/mutter-%{apiver}
dccf1bfd
JB
230%endif
231
d7ee70a8 232%find_lang %{name}
25d9769d
PZ
233
234%clean
235rm -rf $RPM_BUILD_ROOT
236
237%post
3ba512a2 238%glib_compile_schemas
25d9769d 239
3ba512a2 240%postun
3ba512a2 241%glib_compile_schemas
25d9769d 242
2d2fcd08
JB
243%post libs -p /sbin/ldconfig
244%postun libs -p /sbin/ldconfig
245
25d9769d
PZ
246%files -f %{name}.lang
247%defattr(644,root,root,755)
41c83d1a 248%doc NEWS doc/*.txt
25d9769d 249%attr(755,root,root) %{_bindir}/mutter
c0615e35
JB
250%dir %{_libdir}/mutter-%{apiver}/plugins
251%attr(755,root,root) %{_libdir}/mutter-%{apiver}/plugins/libdefault.so
41c83d1a 252%attr(755,root,root) %{_libexecdir}/mutter-restart-helper
b1557b20 253%attr(755,root,root) %{_libexecdir}/mutter-x11-frames
168b9775 254/lib/udev/rules.d/61-mutter.rules
3ba512a2
ŁK
255%{_datadir}/GConf/gsettings/mutter-schemas.convert
256%{_datadir}/glib-2.0/schemas/org.gnome.mutter.gschema.xml
41c83d1a 257%{_datadir}/glib-2.0/schemas/org.gnome.mutter.wayland.gschema.xml
61953114 258%{_datadir}/gnome-control-center/keybindings/50-mutter-wayland.xml
3ba512a2 259%{_datadir}/gnome-control-center/keybindings/50-mutter-windows.xml
d0d1f3ea
AF
260%{_datadir}/gnome-control-center/keybindings/50-mutter-navigation.xml
261%{_datadir}/gnome-control-center/keybindings/50-mutter-system.xml
d7ee70a8 262%{_mandir}/man1/mutter.1*
25d9769d 263
2d2fcd08
JB
264%files libs
265%defattr(644,root,root,755)
c0615e35
JB
266%attr(755,root,root) %{_libdir}/libmutter-%{apiver}.so.*.*.*
267%attr(755,root,root) %ghost %{_libdir}/libmutter-%{apiver}.so.0
268%dir %{_libdir}/mutter-%{apiver}
269%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-clutter-%{apiver}.so.*.*.*
270%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-clutter-%{apiver}.so.0
271%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-cogl-pango-%{apiver}.so.*.*.*
272%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-cogl-pango-%{apiver}.so.0
c0615e35
JB
273%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-cogl-%{apiver}.so.*.*.*
274%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-cogl-%{apiver}.so.0
2d2fcd08 275# intentionally installed in package-private dir
c9580293
JB
276%{_libdir}/mutter-%{apiver}/Cally-%{apiver}.typelib
277%{_libdir}/mutter-%{apiver}/Clutter-%{apiver}.typelib
c9580293
JB
278%{_libdir}/mutter-%{apiver}/Cogl-%{apiver}.typelib
279%{_libdir}/mutter-%{apiver}/CoglPango-%{apiver}.typelib
280%{_libdir}/mutter-%{apiver}/Meta-%{apiver}.typelib
2d2fcd08 281
25d9769d
PZ
282%files devel
283%defattr(644,root,root,755)
c0615e35
JB
284%attr(755,root,root) %{_libdir}/libmutter-%{apiver}.so
285%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-clutter-%{apiver}.so
286%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-cogl-pango-%{apiver}.so
c0615e35
JB
287%attr(755,root,root) %{_libdir}/mutter-%{apiver}/libmutter-cogl-%{apiver}.so
288%{_includedir}/mutter-%{apiver}
d7ee70a8 289# intentionally installed in package-private dir
c9580293
JB
290%{_libdir}/mutter-%{apiver}/Cally-%{apiver}.gir
291%{_libdir}/mutter-%{apiver}/Clutter-%{apiver}.gir
c9580293
JB
292%{_libdir}/mutter-%{apiver}/Cogl-%{apiver}.gir
293%{_libdir}/mutter-%{apiver}/CoglPango-%{apiver}.gir
294%{_libdir}/mutter-%{apiver}/Meta-%{apiver}.gir
c0615e35
JB
295%{_pkgconfigdir}/libmutter-%{apiver}.pc
296%{_pkgconfigdir}/mutter-clutter-%{apiver}.pc
c0615e35
JB
297%{_pkgconfigdir}/mutter-cogl-%{apiver}.pc
298%{_pkgconfigdir}/mutter-cogl-pango-%{apiver}.pc
dccf1bfd
JB
299
300%if %{with apidocs}
301%files apidocs
302%defattr(644,root,root,755)
303%{_gtkdocdir}/mutter-%{apiver}
304%endif
This page took 0.355385 seconds and 4 git commands to generate.