%define major 66 %define glibmajor 8 %define qt4major 4 %define qt5major 1 %define cppmajor 0 %define girmajor 0.18 %define libname %mklibname %name %{major} %define libnameglib %mklibname %name-glib %{glibmajor} %define libnameqt4 %mklibname %name-qt4_ %{qt4major} %define libnameqt5 %mklibname %name-qt5_ %{qt5major} %define libnamecpp %mklibname %name-cpp %{cppmajor} %define libnamedev %mklibname -d %{name} %define libnameglibdev %mklibname -d %{name}-glib %define libnameqt4dev %mklibname -d %{name}-qt4 %define libnameqt5dev %mklibname -d %{name}-qt5 %define libnamecppdev %mklibname -d %{name}-cpp %define libnamegir %mklibname %{name}-gir %{girmajor} Name: poppler Summary: PDF rendering library Group: Publishing Version: 0.52.0 %define subrel 3 Release: %mkrel 3 License: GPLv2+ URL: http://poppler.freedesktop.org Source: http://poppler.freedesktop.org/%{name}-%{version}.tar.xz Patch0: poppler-CVE-2017-7511.patch Patch1: poppler-0.54.0-CVE-2017-9406.patch Patch2: poppler-0.54.0-CVE-2017-9408.patch Patch3: poppler-0.55.0-CVE-2017-7515.patch Patch4: poppler-0.48.0-CVE-2017-9775.patch Patch5: poppler-0.52.0-CVE-2017-9776.patch Patch6: poppler-0.52.0-CVE-2017-9865.patch Patch7: poppler-0.26.5-CVE-2017-14517.patch Patch8: poppler-0.26.5-CVE-2017-14519.patch Patch9: poppler-0.59.0-CVE-2017-14520.patch Patch10: poppler-0.41.0-CVE-2017-14518.patch Patch11: poppler-0.41.0-CVE-2017-14617.patch Patch12: poppler-0.41.0-CVE-2017-14926.patch Patch13: poppler-0.41.0-CVE-2017-14928.patch Patch14: poppler-0.41.0-CVE-2017-14929.patch Patch15: poppler-0.41.0-CVE-2017-14975.patch Patch16: poppler-0.41.0-CVE-2017-14977.patch BuildRequires: pkgconfig(cairo) >= 1.10.0 BuildRequires: pkgconfig(cairo-ft) >= 1.10.0 BuildRequires: pkgconfig(cairo-pdf) BuildRequires: pkgconfig(cairo-ps) BuildRequires: pkgconfig(cairo-svg) BuildRequires: pkgconfig(fontconfig) >= 2.0.0 BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(gdk-pixbuf-2.0) BuildRequires: pkgconfig(gio-2.0) >= 2.18 BuildRequires: pkgconfig(glib-2.0) >= 2.18 BuildRequires: pkgconfig(gobject-2.0) >= 2.18 BuildRequires: pkgconfig(gtk+-3.0) >= 3.0 BuildRequires: pkgconfig(lcms2) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(nss) BuildRequires: pkgconfig(Qt5Core) >= 5.0.0 BuildRequires: pkgconfig(Qt5Gui) >= 5.0.0 BuildRequires: pkgconfig(Qt5Test) >= 5.0.0 BuildRequires: pkgconfig(Qt5Widgets) >= 5.0.0 BuildRequires: pkgconfig(Qt5Xml) >= 5.0.0 BuildRequires: pkgconfig(QtCore) >= 4.4.0 BuildRequires: pkgconfig(QtGui) >= 4.4.0 BuildRequires: pkgconfig(QtTest) >= 4.4.0 BuildRequires: pkgconfig(QtXml) >= 4.4.0 BuildRequires: jpeg-devel BuildRequires: openjpeg2-devel BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: gettext-devel BuildRequires: gtk-doc BuildRequires: libtiff-devel Obsoletes: xpdf-tools < 3.02-10mdv Provides: xpdf-tools Obsoletes: pdftohtml Provides: pdftohtml %description Poppler is a PDF rendering library based on the xpdf-3.0 code base. %package -n %{libname} Summary: PDF rendering library Group: System/Libraries Conflicts: %{_lib}poppler12 Recommends: poppler-data %description -n %{libname} Poppler is a PDF rendering library based on the xpdf-3.0 code base. %package -n %{libnamedev} Summary: Development files for %{name} Group: Development/C++ Provides: %{name}-devel = %{version}-%{release} Requires: %{libname} = %{version}-%{release} Obsoletes: %{libname}-devel %description -n %{libnamedev} Development files for %{name} %package -n %{libnamecpp} Summary: PDF rendering library - C++ backend Group: System/Libraries %description -n %{libnamecpp} Poppler is a PDF rendering library based on the xpdf-3.0 code base. This is the C++ backend version. %package -n %{libnameqt4dev} Summary: Development files for %{name}-qt4 Group: Development/KDE and Qt Provides: %{name}-qt4-devel = %{version}-%{release} Requires: %{libnameqt4} = %{version} Requires: %{libnamedev} = %{version} Obsoletes: %{libnameqt4}-devel %description -n %{libnameqt4dev} Development files for %{name}-qt4 %package -n %{libnameqt5dev} Summary: Development files for %{name}-qt5 Group: Development/KDE and Qt Provides: %{name}-qt5-devel = %{version}-%{release} Requires: %{libnameqt5} = %{version} Requires: %{libnamedev} = %{version} %description -n %{libnameqt5dev} Development files for %{name}-qt5. %package -n %{libnameqt4} Summary: PDF rendering library - Qt4 backend Group: System/Libraries Obsoletes: %{_lib}poppler-qt4-4 < 0.20.1-3 %description -n %{libnameqt4} Poppler is a PDF rendering library based on the xpdf-3.0 code base. This is the Qt4 backend version. %package -n %{libnameqt5} Summary: PDF rendering library - Qt5 backend Group: System/Libraries %description -n %{libnameqt5} Poppler is a PDF rendering library based on the xpdf-3.0 code base. This is the Qt5 backend version. %package -n %{libnameglib} Summary: PDF rendering library - glib binding Group: System/Libraries Conflicts: %{libname} < %{version}-%{release} Conflicts: %{name}-gir0.16 < 0.16.6 %description -n %{libnameglib} Poppler is a PDF rendering library based on the xpdf-3.0 code base. %package -n %{libnamegir} Summary: Gobject-introspection files for %{name} Group: System/Libraries Obsoletes: %{name}-gir0.16 < 0.16.6 Requires: %{libnameglib} = %{version} %description -n %{libnamegir} Gobject-introspection files for %{name}. %package -n %{libnameglibdev} Summary: Development files for %{name}'s glib binding Group: Development/C++ Provides: %{name}-glib-devel = %{version}-%{release} Requires: %{libnameglib} = %{version} Requires: %{libnamegir} = %{version} Requires: %{libnamedev} = %{version} Conflicts: %{libnamedev} < %{version}-%{release} Obsoletes: %{libnameglib}-devel %description -n %{libnameglibdev} Development files for %{name}'s glib binding. %package -n %{libnamecppdev} Summary: Development files for %{name}-cpp Group: Development/C++ Provides: %{name}-cpp-devel = %{version}-%{release} Requires: %{libnamecpp} = %{version} Requires: %{libnamedev} = %{version} %description -n %{libnamecppdev} Development files for %{name}-cpp. %prep %setup -q %autopatch -p1 %build export MOCQT4=%{_qt4_bindir}/moc export MOCQT5=%{_qt5_bindir}/moc # We need c++11 enforced on older compilers only (< gcc 6) export CXXFLAGS="$CXXFLAGS %{optflags} -std=gnu++11" autoreconf -vfi %configure2_5x \ --disable-static \ --disable-gtk-test \ --enable-cairo-output \ --enable-libopenjpeg=openjpeg2 \ --enable-poppler-qt4 \ --enable-xpdf-headers \ --enable-gtk-doc %make_build %install %make_install %{__cp} -a config.h %{buildroot}%{_includedir}/poppler/ find %{buildroot} -name '*.la' -delete %files %doc AUTHORS COPYING NEWS README %{_bindir}/* %{_mandir}/man1/* %files -n %{libname} %{_libdir}/libpoppler.so.%{major}{,.*} %files -n %{libnamedev} %{_libdir}/libpoppler.so %dir %{_includedir}/poppler/ %{_includedir}/poppler/config.h %{_includedir}/poppler/[A-Z]* %{_includedir}/poppler/fofi %{_includedir}/poppler/goo %{_includedir}/poppler/splash %{_includedir}/poppler/poppler-config.h %{_libdir}/pkgconfig/poppler-cairo.pc %{_libdir}/pkgconfig/poppler-splash.pc %{_libdir}/pkgconfig/poppler.pc %{_datadir}/gtk-doc/html/%{name}/ %files -n %{libnameglib} %{_libdir}/libpoppler-glib.so.%{glibmajor}{,.*} %files -n %{libnamegir} %{_libdir}/girepository-1.0/Poppler-%{girmajor}.typelib %files -n %{libnameglibdev} %{_libdir}/libpoppler-glib.so %{_libdir}/pkgconfig/poppler-glib.pc %{_includedir}/poppler/glib/ %{_datadir}/gir-1.0/Poppler-%{girmajor}.gir %files -n %{libnameqt4dev} %{_includedir}/poppler/qt4/ %{_libdir}/pkgconfig/poppler-qt4.pc %{_libdir}/libpoppler-qt4.so %files -n %{libnameqt4} %{_libdir}/libpoppler-qt4.so.%{qt4major}{,.*} %files -n %{libnameqt5dev} %{_includedir}/poppler/qt5/ %{_libdir}/pkgconfig/poppler-qt5.pc %{_libdir}/libpoppler-qt5.so %files -n %{libnameqt5} %{_libdir}/libpoppler-qt5.so.%{qt5major}{,.*} %files -n %{libnamecpp} %{_libdir}/libpoppler-cpp.so.%{cppmajor}{,.*} %files -n %{libnamecppdev} %{_libdir}/libpoppler-cpp.so %{_libdir}/pkgconfig/poppler-cpp.pc %{_includedir}/poppler/cpp