+#
+# Conditional build:
+%bcond_without egl # EGL framebuffer backend
+%bcond_without wayland # Wayland backend
+%bcond_without evdev # evdev support for input events
+%bcond_with tslib # TSLib support for input events (outdated?)
+
Summary: Library for rich GUIs
Summary(pl.UTF-8): Biblioteka do bogatych graficznych interfejsów użytkownika
Name: clutter
-Version: 1.14.2
-Release: 1
+Version: 1.22.0
+Release: 2
License: LGPL v2+
Group: Libraries
-Source0: http://ftp.gnome.org/pub/GNOME/sources/clutter/1.14/%{name}-%{version}.tar.xz
-# Source0-md5: efe6ede426c99389f3ff698685cf6094
+Source0: http://ftp.gnome.org/pub/GNOME/sources/clutter/1.22/%{name}-%{version}.tar.xz
+# Source0-md5: 788c488d795103e4c201fae1b032cb89
Patch0: gtkdoc.patch
Patch1: missing.patch
URL: http://www.clutter-project.org/
BuildRequires: atk-devel >= 1:2.5.3
BuildRequires: autoconf >= 2.63
BuildRequires: automake >= 1:1.11
-BuildRequires: cairo-devel >= 1.10
-BuildRequires: cairo-gobject-devel >= 1.10
-BuildRequires: cogl-devel >= 1.14.0
+BuildRequires: cairo-devel >= 1.14.0
+BuildRequires: cairo-gobject-devel >= 1.14.0
+BuildRequires: cogl-devel >= 1.20.0
+%{?with_wayland:BuildRequires: cogl-devel(wayland) >= 1.20.0}
BuildRequires: docbook-dtd412-xml
BuildRequires: gdk-pixbuf2-devel >= 2.0
-BuildRequires: gettext-devel >= 0.17
-BuildRequires: glib2-devel >= 1:2.32.0
-BuildRequires: gobject-introspection-devel >= 0.10.0
+BuildRequires: gettext-tools >= 0.17
+BuildRequires: glib2-devel >= 1:2.39.0
+BuildRequires: gobject-introspection-devel >= 1.39.0
BuildRequires: gtk+3-devel >= 3.4.0
-BuildRequires: gtk-doc >= 1.15
+BuildRequires: gtk-doc >= 1.20
BuildRequires: json-glib-devel >= 0.12.0
+%{?with_evdev:BuildRequires: libevdev-devel}
+%{?with_evdev:BuildRequires: libinput-devel >= 0.8.0}
BuildRequires: libtool >= 2:2.2.6
BuildRequires: libxslt-progs
BuildRequires: pango-devel >= 1:1.30
-BuildRequires: pkgconfig
+BuildRequires: pkgconfig >= 1:0.16
BuildRequires: python-modules
BuildRequires: tar >= 1:1.22
+%{?with_tslib:BuildRequires: tslib-devel >= 1.1}
+%{?with_evdev:BuildRequires: udev-devel >= 1:136}
+%{?with_evdev:BuildRequires: udev-glib-devel}
+# wayland-client wayland-cursor (for client), wayland-server (for compositor)
+%{?with_wayland:BuildRequires: wayland-devel}
BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXcomposite-devel >= 0.4
BuildRequires: xorg-lib-libXdamage-devel
BuildRequires: xorg-lib-libXext-devel
BuildRequires: xorg-lib-libXfixes-devel >= 4
BuildRequires: xorg-lib-libXi-devel
+%if %{with evdev} || %{with wayland}
+BuildRequires: xorg-lib-libxkbcommon-devel
+%endif
BuildRequires: xz
Requires: atk >= 1:2.5.3
-Requires: cairo-gobject >= 1.10
-Requires: cogl >= 1.14.0
-Requires: glib2 >= 1:2.32.0
+Requires: cairo-gobject >= 1.14.0
+Requires: cogl >= 1.20.0
+%{?with_wayland:Requires: cogl(wayland) >= 1.20.0}
+Requires: glib2 >= 1:2.39.0
Requires: gtk+3 >= 3.4.0
Requires: json-glib >= 0.12.0
+%{?with_evdev:Requires: libinput >= 0.8.0}
Requires: pango >= 1:1.30
+%{?with_evdev:Requires: udev-libs >= 1:136}
+%{?with_evdev:Provides: clutter(evdev) = %{version}-%{release}}
Obsoletes: clutter-cairo < 1.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Requires: %{name} = %{version}-%{release}
Requires: OpenGL-GLX-devel
Requires: atk-devel >= 1:2.5.3
-Requires: cairo-gobject-devel >= 1.10
-Requires: cogl-devel >= 1.14.0
+Requires: cairo-gobject-devel >= 1.14.0
+Requires: cogl-devel >= 1.20.0
+%{?with_wayland:Requires: cogl-devel(wayland) >= 1.20.0}
Requires: gdk-pixbuf2-devel >= 2.0
-Requires: glib2-devel >= 1:2.32.0
+Requires: glib2-devel >= 1:2.39.0
Requires: gtk+3-devel >= 3.4.0
Requires: json-glib-devel >= 0.12.0
+%{?with_evdev:Requires: libinput-devel >= 0.8.0}
Requires: pango-devel >= 1:1.30
+%{?with_evdev:Requires: udev-devel >= 1:136}
+%{?with_wayland:Requires: wayland-devel}
Requires: xorg-lib-libX11-devel
Requires: xorg-lib-libXcomposite-devel >= 0.4
Requires: xorg-lib-libXdamage-devel
Requires: xorg-lib-libXext-devel
Requires: xorg-lib-libXfixes-devel >= 4
+%if %{with evdev} || %{with wayland}
+Requires: xorg-lib-libxkbcommon-devel
+%endif
+%{?with_evdev:Provides: clutter-devel(evdev) = %{version}-%{release}}
Obsoletes: clutter-cairo-devel < 1.0
%description devel
Summary(pl.UTF-8): Statyczna biblioteka clutter
Group: Development/Libraries
Requires: %{name}-devel = %{version}-%{release}
+%{?with_evdev:Provides: clutter-static(evdev) = %{version}-%{release}}
Obsoletes: clutter-cairo-static < 1.0
%description static
Summary(pl.UTF-8): Dokumentacja API clutter
Group: Documentation
Requires: gtk-doc-common
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description apidocs
clutter API documentation.
%configure \
--disable-silent-rules \
--enable-docs \
+ %{?with_egl:--enable-egl-backend} \
+ %{?with_evdev:--enable-evdev-input} \
+ --enable-gdk-backend \
--enable-gtk-doc \
--enable-static \
+ %{?with_tslib:--enable-tslib-input} \
+%if %{with wayland}
+ --enable-wayland-backend \
+ --enable-wayland-compositor \
+%endif
+ --enable-xinput \
--with-html-dir=%{_gtkdocdir}
%{__make}
%{__rm} $RPM_BUILD_ROOT%{_libdir}/libclutter-1.0.la
-# drop unsupported locale
-%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/az_IR
-
# move to %{_examplesdir} and package in -examples?
%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/clutter-1.0/cookbook/examples
%{_pkgconfigdir}/clutter-gdk-1.0.pc
%{_pkgconfigdir}/clutter-glx-1.0.pc
%{_pkgconfigdir}/clutter-x11-1.0.pc
+%{_pkgconfigdir}/clutter-egl-1.0.pc
+%{_pkgconfigdir}/clutter-wayland-1.0.pc
+%{_pkgconfigdir}/clutter-wayland-compositor-1.0.pc
%files static
%defattr(644,root,root,755)