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