%define name clutter %define version 1.7.4 %define git 0 %define rel 5 %if ! %git %define release %mkrel %{rel} %else %define release %mkrel -c %{git} %{rel} %endif %define api 1.0 %define major 0 %define girmajor 1.0 %define libname %mklibname %{name}-glx %{api} %{major} %define libnamedevel %mklibname -d %{name}-glx %{api} %define girname %mklibname %{name}-glx-gir %{girmajor} Summary: Software library for fast, visually rich GUIs Name: %{name} Version: %{version} Release: %{release} %if %git Source0: %{name}-%{git}.tar.bz2 %else Source0: ftp://ftp.gnome.org/pub/GNOME/sources/clutter/1.7/%{name}-%{version}.tar.xz %endif Patch0: clutter-1.7.4-cogl-1.7.4.patch License: LGPLv2+ Group: Graphics Url: http://clutter-project.org/ BuildRequires: libx11-devel BuildRequires: libxext-devel BuildRequires: libxcomposite-devel >= 0.4 BuildRequires: libxdamage-devel BuildRequires: libxfixes-devel >= 3 BuildRequires: GL-devel BuildRequires: atk-devel >= 1.17 BuildRequires: pango-devel >= 1.20 BuildRequires: glib2-devel >= 2.26.0 BuildRequires: libgdk_pixbuf2.0-devel >= 2.0 BuildRequires: libjson-glib-devel >= 0.12.0 BuildRequires: gobject-introspection-devel >= 0.9.5 BuildRequires: gtk-doc BuildRequires: docbook-dtd412-xml BuildRequires: x11-server-xvfb BuildRequires: cogl-devel %description Clutter is an open source software library for creating fast, visually rich graphical user interfaces. The most obvious example of potential usage is in media center type applications. We hope however it can be used for a lot more. Clutter uses OpenGL (and soon optionally OpenGL ES) for rendering but with an API which hides the underlying GL complexity from the developer. The Clutter API is intended to be easy to use, efficient and flexible. #-------------------------------------------------------------------- %package i18n Summary: Translations for %{name} Group: System/Internationalization %description i18n This contains the translation data for %{name}. %files i18n -f %{name}-%{api}.lang #-------------------------------------------------------------------- %package -n %{libname} Summary: Software library for fast, visually rich GUIs Group: System/Libraries Requires: %{name}-i18n >= %{version}-%{release} Requires: %{girname} Provides: %{mklibname %{name} %{api} %{major}} = %{version}-%{release} Obsoletes: %{mklibname %{name} %{api} %{major}} < 1.7.4 %description -n %{libname} Clutter is an open source software library for creating fast, visually rich graphical user interfaces. The most obvious example of potential usage is in media center type applications. We hope however it can be used for a lot more. Clutter uses OpenGL (and soon optionally OpenGL ES) for rendering but with an API which hides the underlying GL complexity from the developer. The Clutter API is intended to be easy to use, efficient and flexible. %files -n %{libname} %{_libdir}/lib%{name}-glx-%{api}.so.%{major}* #-------------------------------------------------------------------- %package -n %{libnamedevel} Summary: Development headers/libraries for %{name} Group: Development/X11 Provides: %{name}-devel = %{version}-%{release} Provides: %{name}-glx-devel = %{version}-%{release} Provides: %{mklibname -d %{name} %{api}} = %{version}-%{release} Obsoletes: %{mklibname -d %{name} %{api}} < 1.7.4 Requires: %{libname} = %{version}-%{release} %description -n %{libnamedevel} Development headers/libraries for %{name} (see %{libname} package) %files -n %{libnamedevel} %{_libdir}/pkgconfig/cally-%{api}.pc %{_libdir}/pkgconfig/%{name}-%{api}.pc %{_libdir}/pkgconfig/%{name}-glx-%{api}.pc %{_libdir}/pkgconfig/%{name}-cogl-%{api}.pc %{_libdir}/pkgconfig/%{name}-x11-%{api}.pc %{_libdir}/lib%{name}-glx-%{api}.so %dir %{_includedir}/%{name}-%{api} %{_includedir}/%{name}-%{api}/cally %{_includedir}/%{name}-%{api}/%{name} %{_datadir}/gir-1.0/Cally-%{girmajor}.gir %{_datadir}/gir-1.0/Clutter-%{girmajor}.gir %{_datadir}/gir-1.0/ClutterX11-%{girmajor}.gir %{_datadir}/gtk-doc/html/cally %{_datadir}/gtk-doc/html/%{name} #-------------------------------------------------------------------- %package -n %{girname} Summary: GObject Introspection interface description for %{name} Group: System/Libraries Requires: %{libname} = %{version}-%{release} Conflicts: %{mklibname %{name}-glx1.0-gir 1.0} < 1.7.4-3 %description -n %{girname} GObject Introspection interface description for %{name}. %files -n %{girname} %{_libdir}/girepository-1.0/Cally-%{girmajor}.typelib %{_libdir}/girepository-1.0/Clutter-%{girmajor}.typelib %{_libdir}/girepository-1.0/ClutterX11-%{girmajor}.typelib #-------------------------------------------------------------------- %prep %if %{git} %setup -q -n %{name} ./autogen.sh -V %else %setup -q %endif %apply_patches #autoreconf -fi %build %configure2_5x --enable-gtk-doc #git from 20090602 does not work with parallel make xvfb-run %make V=1 %install rm -rf %{buildroot} %makeinstall_std %find_lang %{name}-%{api} # we don't want these find %{buildroot} -name '*.la' -exec rm -f {} ';'