#
# Conditional build:
%bcond_without apidocs # disable gtk-doc
-%bcond_with glitz # build with glitz backend
+%bcond_without svg # disable SVG support (to boostrap librsvg)
%if "%{pld_release}" == "ac"
%bcond_with xcb # XCB backend
%else
%bcond_without xcb # XCB backend
%endif
%bcond_with tests # perform tests (can fail due to out of memory)
-%bcond_without poppler # PDF backend
#
Summary: Cairo - multi-platform 2D graphics library
Summary(pl.UTF-8): Cairo - wieloplatformowa biblioteka graficzna 2D
Name: cairo
-Version: 1.8.8
-Release: 1
+Version: 1.10.2
+Release: 8
License: LGPL v2.1 or MPL v1.1
Group: Libraries
Source0: http://cairographics.org/releases/%{name}-%{version}.tar.gz
-# Source0-md5: d3e1a1035ae563812d4dd44a74fb0dd0
+# Source0-md5: f101a9e88b783337b20b2e26dfd26d5f
Patch0: %{name}-link.patch
URL: http://cairographics.org/
-BuildRequires: autoconf >= 2.58
-BuildRequires: automake >= 1:1.8
-BuildRequires: fontconfig-devel
+BuildRequires: autoconf >= 2.59
+BuildRequires: automake >= 1:1.9.6
+BuildRequires: fontconfig-devel >= 2.2.95
BuildRequires: freetype-devel >= 1:2.3.0
-%{?with_glitz:BuildRequires: glitz-devel >= 0.5.1}
+BuildRequires: glib2-devel >= 1:2.0
%{?with_apidocs:BuildRequires: gtk-doc >= 1.6}
-BuildRequires: libpng-devel
-BuildRequires: libtool
-BuildRequires: pixman-devel >= 0.12.0
-BuildRequires: pkgconfig
-%{?with_poppler:BuildRequires: poppler-glib-devel >= 0.8.0}
+BuildRequires: libpng-devel >= 2:1.4.0
+%{?with_svg:BuildRequires: librsvg-devel >= 2.15.0}
+BuildRequires: libspectre-devel >= 0.2.0
+BuildRequires: libtool >= 1.4
+BuildRequires: pixman-devel >= 0.18.4
+BuildRequires: pkgconfig >= 1:0.9
+%{?with_tests:BuildRequires: poppler-glib-devel >= 0.13.3}
BuildRequires: rpm >= 4.4.9-56
+BuildRequires: sed >= 4.0
%if %{with xcb}
-BuildRequires: libxcb-devel >= 0.9.92
-BuildRequires: xcb-util-devel >= 0.2
+BuildRequires: libxcb-devel >= 1.4
%endif
%if "%{pld_release}" == "ac"
BuildRequires: xrender-devel >= 0.6
%else
+BuildRequires: xorg-lib-libX11-devel%{?with_xcb: >= 1.1}
BuildRequires: xorg-lib-libXrender-devel >= 0.6
%endif
BuildRequires: zlib-devel
Requires: freetype >= 1:2.3.0
-%{?with_glitz:Requires: glitz >= 0.5.1}
-Requires: pixman >= 0.12.0
+Requires: pixman >= 0.18.4
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
-iCairo provides anti-aliased vector-based rendering for X. Paths
+Cairo provides anti-aliased vector-based rendering for X. Paths
consist of line segments and cubic splines and can be rendered at any
width with various join and cap styles. All colors may be specified
with optional translucence (opacity/alpha) and combined using the
Summary(pl.UTF-8): Pliki programistyczne biblioteki Cairo
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: fontconfig-devel
+Requires: fontconfig-devel >= 2.2.95
Requires: freetype-devel >= 1:2.3.0
-%{?with_glitz:Requires: glitz-devel >= 0.5.1}
-Requires: libpng-devel
-%{?with_xcb:Requires: libxcb-devel >= 0.9.92}
-Requires: pixman-devel >= 0.12.0
-%{?with_xcb:Requires: xcb-util-devel >= 0.2}
+Requires: libpng-devel >= 2:1.4.0
+%{?with_xcb:Requires: libxcb-devel >= 1.4}
+Requires: pixman-devel >= 0.18.4
%if "%{pld_release}" == "ac"
Requires: xrender-devel >= 0.6
%else
+Requires: xorg-lib-libX11-devel%{?with_xcb: >= 1.1}
Requires: xorg-lib-libXrender-devel >= 0.6
%endif
%description static -l pl.UTF-8
Statyczna biblioteka Cairo.
+%package gobject
+Summary: GObject functions library for Cairo graphics library
+Summary(pl.UTF-8): Biblioteka funkcji GObject dla biblioteki graficznej Cairo
+Group: Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description gobject
+GObject functions library for Cairo graphics library.
+
+%description gobject -l pl.UTF-8
+Biblioteka funkcji GObject dla biblioteki graficznej Cairo.
+
+%package gobject-devel
+Summary: Header files for Cairo GObject library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki Cairo GObject
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+Requires: %{name}-gobject = %{version}-%{release}
+Requires: glib2-devel >= 1:2.0
+
+%description gobject-devel
+Header files for Cairo GObject library.
+
+%description gobject-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki Cairo GObject.
+
+%package gobject-static
+Summary: Static Cairo GObject library
+Summary(pl.UTF-8): Statyczna biblioteka Cairo GObject
+Group: Development/Libraries
+Requires: %{name}-gobject-devel = %{version}-%{release}
+
+%description gobject-static
+Static Cairo GObject library.
+
+%description gobject-static -l pl.UTF-8
+Statyczna biblioteka Cairo GObject.
+
+%package trace
+Summary: Cairo calls tracing utility
+Summary(pl.UTF-8): Narzędzie do śledzenia wywołań Cairo
+Group: Development/Tools
+Requires: %{name} = %{version}-%{release}
+
+%description trace
+Cairo calls tracing utility.
+
+%description trace -l pl.UTF-8
+Narzędzie do śledzenia wywołań Cairo.
+
%package apidocs
Summary: Cairo API documentation
Summary(pl.UTF-8): Dokumentacja API Cairo
%{__autoconf}
%{__automake}
%configure \
+ --disable-silent-rules \
--enable-freetype \
- %{?with_glitz:--enable-glitz} \
%{?with_apidocs:--enable-gtk-doc} \
- --enable-pdf=%{?with_poppler:yes}%{!?with_poppler:no} \
+ --enable-pdf \
--enable-png \
--enable-ps \
+ %{!?with_svg:--disable-svg} \
+ --enable-tee \
%{?with_xcb:--enable-xcb} \
--with-html-dir=%{_gtkdocdir}
+
+%{__sed} -i 's/gobject-2.0 glib-2.0//' src/cairo.pc
+
%{__make}
%{?with_tests:%{__make} check}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
+# LD_PRELOADable library
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/cairo/libcairo-trace.{la,a}
+
%{!?with_apidocs:rm -rf $RPM_BUILD_ROOT%{_gtkdocdir}/cairo}
%clean
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
+%post gobject -p /sbin/ldconfig
+%postun gobject -p /sbin/ldconfig
+
%files
%defattr(644,root,root,755)
# COPYING contains only notes, not LGPL/MPL texts
%doc AUTHORS COPYING ChangeLog NEWS README
%attr(755,root,root) %{_libdir}/libcairo.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libcairo.so.2
+%attr(755,root,root) %{_libdir}/libcairo-script-interpreter.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libcairo-script-interpreter.so.2
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libcairo.so
+%attr(755,root,root) %{_libdir}/libcairo-script-interpreter.so
%{_libdir}/libcairo.la
+%{_libdir}/libcairo-script-interpreter.la
%{_includedir}/cairo
+%exclude %{_includedir}/cairo/cairo-gobject.h
%{_pkgconfigdir}/cairo.pc
+%{_pkgconfigdir}/cairo-fc.pc
%{_pkgconfigdir}/cairo-ft.pc
-%{?with_poppler:%{_pkgconfigdir}/cairo-pdf.pc}
+%{_pkgconfigdir}/cairo-pdf.pc
%{_pkgconfigdir}/cairo-png.pc
%{_pkgconfigdir}/cairo-ps.pc
-%{_pkgconfigdir}/cairo-svg.pc
+%{?with_svg:%{_pkgconfigdir}/cairo-svg.pc}
+%{_pkgconfigdir}/cairo-tee.pc
%{?with_xcb:%{_pkgconfigdir}/cairo-xcb.pc}
+%{?with_xcb:%{_pkgconfigdir}/cairo-xcb-shm.pc}
%{_pkgconfigdir}/cairo-xlib.pc
%{_pkgconfigdir}/cairo-xlib-xrender.pc
%files static
%defattr(644,root,root,755)
%{_libdir}/libcairo.a
+%{_libdir}/libcairo-script-interpreter.a
+
+%files gobject
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libcairo-gobject.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libcairo-gobject.so.2
+
+%files gobject-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libcairo-gobject.so
+%{_libdir}/libcairo-gobject.la
+%{_includedir}/cairo/cairo-gobject.h
+%{_pkgconfigdir}/cairo-gobject.pc
+
+%files gobject-static
+%defattr(644,root,root,755)
+%{_libdir}/libcairo-gobject.a
+
+%files trace
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/cairo-trace
+%dir %{_libdir}/cairo
+%attr(755,root,root) %{_libdir}/cairo/libcairo-trace.so*
%if %{with apidocs}
%files apidocs