X-Git-Url: https://git.pld-linux.org/?p=packages%2Fcairo.git;a=blobdiff_plain;f=cairo.spec;h=2d96cf22fc16be23a16027341ae52a4eaf64c966;hp=1175ed9f5d2c5658683d5e2f0a48a56ebea9038e;hb=HEAD;hpb=5832928a3bd09d0766bf720ee4d7021f68c0b347 diff --git a/cairo.spec b/cairo.spec index 1175ed9..774da89 100644 --- a/cairo.spec +++ b/cairo.spec @@ -1,91 +1,62 @@ # # Conditional build: %bcond_without apidocs # disable gtk-doc -%bcond_with cogl # Cogl surface backend [incompatible with cogl 1.12.x] -%bcond_with directfb # DirectFB surface backend -%bcond_with drm # DRM surface backend -%bcond_without gl # OpenGL surface backend -%bcond_with glesv2 # OpenGLESv2 surface backend (mutually exclusive with gl) -%bcond_with openvg # OpenVG surface backend %bcond_without pdf # PDF surface backend -%bcond_without ps # PS surface backend -%bcond_without svg # SVG surface backend (disable to boostrap librsvg) -%bcond_with qt # Qt surface backend [expects qt_draw_glyphs() API in Qt 4.7+] -%if "%{pld_release}" == "ac" -%bcond_with xcb # XCB backend -%else +%bcond_without svg # SVG surface backend %bcond_without xcb # XCB backend -%endif %bcond_with tests # perform tests (can fail due to out of memory) +%bcond_without static_libs # static libraries -%if %{with glesv2} -%undefine with_gl -%endif Summary: Cairo - multi-platform 2D graphics library Summary(pl.UTF-8): Cairo - wieloplatformowa biblioteka graficzna 2D Name: cairo -Version: 1.14.0 +Version: 1.18.0 Release: 2 License: LGPL v2.1 or MPL v1.1 Group: Libraries -Source0: http://cairographics.org/releases/%{name}-%{version}.tar.xz -# Source0-md5: fc3a5edeba703f906f2241b394f0cced -Patch0: %{name}-link.patch -URL: http://cairographics.org/ -%{?with_directfb:BuildRequires: DirectFB-devel} -%if %{with gl} || %{with glesv2} || %{with openvg} -BuildRequires: EGL-devel >= 1.1 -%endif -%if %{with gl} || %{with openvg} -BuildRequires: OpenGL-GLX-devel -%endif -%{?with_gl:BuildRequires: OpenGL-devel} -%{?with_glesv2:BuildRequires: OpenGLESv2-devel >= 2.0} -%{?with_openvg:BuildRequires: OpenVG-devel} -%{?with_qt:BuildRequires: QtGui-devel >= 4.4.0} -BuildRequires: autoconf >= 2.63 -BuildRequires: automake >= 1:1.11 +Source0: https://www.cairographics.org/releases/%{name}-%{version}.tar.xz +# Source0-md5: 3f0685fbadc530606f965b9645bb51d9 +URL: https://www.cairographics.org/ BuildRequires: binutils-devel -%{?with_cogl:BuildRequires: cogl-devel} BuildRequires: fontconfig-devel >= 2.2.95 -BuildRequires: freetype-devel >= 1:2.3.0 +%if %{with tests} +# ttx +BuildRequires: fonttools +%endif +# pkgconfig(freetype2) >= 25.0.19 +BuildRequires: freetype-devel >= 1:2.13.0 BuildRequires: glib2-devel >= 1:2.14 %{?with_apidocs:BuildRequires: gtk-doc >= 1.15} -%{?with_drm:BuildRequires: libdrm-devel} BuildRequires: libpng-devel >= 2:1.4.0 %if %{with svg} && %{with tests} BuildRequires: librsvg-devel >= 2.35.0 %endif -%if %{with ps} && %{with tests} +%if %{with tests} BuildRequires: libspectre-devel >= 0.2.0 %endif -BuildRequires: libtool >= 2:2.2 %{?with_xcb:BuildRequires: libxcb-devel >= 1.6} BuildRequires: lzo-devel >= 2 -BuildRequires: pixman-devel >= 0.30.0 +BuildRequires: meson >= 0.59.0 +BuildRequires: ninja >= 1.5 +BuildRequires: pixman-devel >= 0.36.0 BuildRequires: pkgconfig >= 1:0.18 %if %{with pdf} && %{with tests} BuildRequires: poppler-glib-devel >= 0.17.4 %endif BuildRequires: rpm >= 4.4.9-56 +BuildRequires: rpm-build >= 4.6 +BuildRequires: rpmbuild(macros) >= 1.736 BuildRequires: sed >= 4.0 BuildRequires: tar >= 1:1.22 -%{?with_drm:BuildRequires: udev-devel >= 1:136} -%if "%{pld_release}" == "ac" -BuildRequires: xrender-devel >= 0.6 -%else BuildRequires: xorg-lib-libX11-devel%{?with_xcb: >= 1.1} BuildRequires: xorg-lib-libXext-devel BuildRequires: xorg-lib-libXrender-devel >= 0.6 -%endif BuildRequires: xz BuildRequires: zlib-devel -%{?with_qt:Requires: QtGui >= 4.4.0} Requires: fontconfig-libs >= 2.2.95 -Requires: freetype >= 1:2.3.0 +Requires: freetype >= 1:2.13.0 %{?with_xcb:Requires: libxcb >= 1.6} -Requires: pixman >= 0.30.0 -%{?with_drm:Requires: udev-libs >= 1:136} +Requires: pixman >= 0.36.0 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -121,30 +92,15 @@ Summary: Development files for Cairo library Summary(pl.UTF-8): Pliki programistyczne biblioteki Cairo Group: Development/Libraries Requires: %{name} = %{version}-%{release} -%{?with_directfb:Requires: DirectFB-devel} -%if %{with gl} || %{with glesv2} || %{with openvg} -Requires: EGL-devel >= 1.1 -%endif -%{?with_gl:Requires: OpenGL-devel} -%{?with_glesv2:Requires: OpenGLESv2-devel >= 2.0} -%{?with_openvg:Requires: OpenVG-devel} -%{?with_qt:Requires: QtGui-devel >= 4.4.0} -%{?with_cogl:Requires: cogl-devel} Requires: fontconfig-devel >= 2.2.95 -Requires: freetype-devel >= 1:2.3.0 -%{?with_drm:Requires: libdrm-devel} +Requires: freetype-devel >= 1:2.13.0 Requires: libpng-devel >= 2:1.4.0 %{?with_xcb:Requires: libxcb-devel >= 1.6} Requires: lzo-devel >= 2 -Requires: pixman-devel >= 0.30.0 -%{?with_drm:Requires: udev-devel >= 1:136} -%if "%{pld_release}" == "ac" -Requires: xrender-devel >= 0.6 -%else +Requires: pixman-devel >= 0.36.0 Requires: xorg-lib-libX11-devel%{?with_xcb: >= 1.1} Requires: xorg-lib-libXext-devel Requires: xorg-lib-libXrender-devel >= 0.6 -%endif Requires: zlib-devel %description devel @@ -222,9 +178,7 @@ Summary: Cairo API documentation Summary(pl.UTF-8): Dokumentacja API Cairo Group: Documentation Requires: gtk-doc-common -%if "%{_rpmversion}" >= "5" BuildArch: noarch -%endif %description apidocs Cairo API documentation. @@ -234,49 +188,32 @@ Dokumentacja API Cairo. %prep %setup -q -%patch0 -p1 %build -%{?with_apidocs:%{__gtkdocize}} -%{__libtoolize} -%{__aclocal} -I build -%{__autoheader} -%{__autoconf} -%{__automake} -%configure \ - --disable-silent-rules \ - %{?with_cogl:--enable-cogl} \ - %{?with_directfb:--enable-directfb} \ - --enable-ft \ - %{?with_gl:--enable-gl} \ - %{?with_glesv2:--enable-glesv2} \ - %{?with_apidocs:--enable-gtk-doc} \ - %{?with_pdf:--enable-pdf} \ - --enable-png \ - %{?with_ps:--enable-ps} \ - %{?with_qt:--enable-qt} \ - %{!?with_svg:--disable-svg} \ - --enable-tee \ - %{?with_openvg:--enable-vg} \ - %{?with_xcb:--enable-xcb} \ - --enable-xml \ - --with-html-dir=%{_gtkdocdir} - -%{__make} -%{?with_tests:%{__make} check} +%meson build \ + %{!?with_static_libs:--default-library=shared} \ + -Dfontconfig=enabled \ + -Dfreetype=enabled \ + -Dgtk_doc=%{__true_false apidocs} \ + -Dpng=enabled \ + -Dspectre=%{__enabled_disabled tests} \ + -Dtee=enabled \ + -Dtests=disabled \ + -Dxcb=%{__enabled_disabled xcb} \ + -Dxlib=enabled \ + -Dzlib=enabled + +%ninja_build -C build + +%{?with_tests:%ninja_test -C build} %install rm -rf $RPM_BUILD_ROOT -%{__make} install \ - DESTDIR=$RPM_BUILD_ROOT +%ninja_install -C build # LD_PRELOADable library -%{__rm} $RPM_BUILD_ROOT%{_libdir}/cairo/libcairo-trace.{la,a} -# LD_PRELOADable modules(?) -%{__rm} $RPM_BUILD_ROOT%{_libdir}/cairo/cairo-{fdr,sphinx}.{la,a} - -%{!?with_apidocs:%{__rm} -rf $RPM_BUILD_ROOT%{_gtkdocdir}/cairo} +%{?with_static_libs:%{__rm} $RPM_BUILD_ROOT%{_libdir}/cairo/libcairo-{fdr,trace}.a} %clean rm -rf $RPM_BUILD_ROOT @@ -290,7 +227,7 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) # COPYING contains only notes, not LGPL/MPL texts -%doc AUTHORS COPYING ChangeLog NEWS README +%doc AUTHORS BUGS COPYING NEWS README.md %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.*.*.* @@ -300,39 +237,29 @@ rm -rf $RPM_BUILD_ROOT %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 -%{?with_directfb:%{_pkgconfigdir}/cairo-directfb.pc} -%if %{with gl} || %{with glesv2} || %{with openvg} -%{_pkgconfigdir}/cairo-egl.pc -%endif %{_pkgconfigdir}/cairo-fc.pc %{_pkgconfigdir}/cairo-ft.pc -%{?with_gl:%{_pkgconfigdir}/cairo-gl.pc} -%if %{with gl} || %{with openvg} -%{_pkgconfigdir}/cairo-glx.pc -%endif %{?with_pdf:%{_pkgconfigdir}/cairo-pdf.pc} %{_pkgconfigdir}/cairo-png.pc -%{?with_ps:%{_pkgconfigdir}/cairo-ps.pc} -%{?with_qt:%{_pkgconfigdir}/cairo-qt.pc} +%{_pkgconfigdir}/cairo-ps.pc %{_pkgconfigdir}/cairo-script.pc +%{_pkgconfigdir}/cairo-script-interpreter.pc %{?with_svg:%{_pkgconfigdir}/cairo-svg.pc} %{_pkgconfigdir}/cairo-tee.pc -%{?with_openvg:%{_pkgconfigdir}/cairo-vg.pc} %{?with_xcb:%{_pkgconfigdir}/cairo-xcb.pc} %{?with_xcb:%{_pkgconfigdir}/cairo-xcb-shm.pc} %{_pkgconfigdir}/cairo-xlib.pc %{_pkgconfigdir}/cairo-xlib-xrender.pc -%{_pkgconfigdir}/cairo-xml.pc +%if %{with static_libs} %files static %defattr(644,root,root,755) %{_libdir}/libcairo.a %{_libdir}/libcairo-script-interpreter.a +%endif %files gobject %defattr(644,root,root,755) @@ -342,21 +269,20 @@ rm -rf $RPM_BUILD_ROOT %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 +%if %{with static_libs} %files gobject-static %defattr(644,root,root,755) %{_libdir}/libcairo-gobject.a +%endif %files trace %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/cairo-sphinx %attr(755,root,root) %{_bindir}/cairo-trace %dir %{_libdir}/cairo -%attr(755,root,root) %{_libdir}/cairo/cairo-fdr.so* -%attr(755,root,root) %{_libdir}/cairo/cairo-sphinx.so* +%attr(755,root,root) %{_libdir}/cairo/libcairo-fdr.so %attr(755,root,root) %{_libdir}/cairo/libcairo-trace.so* %if %{with apidocs}