]> git.pld-linux.org Git - packages/poppler.git/blob - poppler.spec
- enable qt6 support, rel 2
[packages/poppler.git] / poppler.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs # gtk-doc API documentation
4 %bcond_without  cairo   # Cairo backend
5 %bcond_without  qt5     # Qt 5 wrapper
6 %bcond_without  qt6     # Qt 6 wrapper
7 %bcond_without  cpp     # C++ wrapper
8 %bcond_without  glib    # GLib wrapper
9 %bcond_without  static_libs     # don't build static libraries
10
11 %define         cairo_ver       1.10.0
12 %define         qt5_ver         5.9.0
13 %define         qt6_ver         6.2
14 Summary:        PDF rendering library
15 Summary(pl.UTF-8):      Biblioteka renderująca PDF
16 Name:           poppler
17 Version:        22.04.0
18 Release:        2
19 License:        GPL v2+
20 Group:          Libraries
21 Source0:        https://poppler.freedesktop.org/%{name}-%{version}.tar.xz
22 # Source0-md5:  8c55071a273a25d582f51d91861b4379
23 Patch0:         %{name}-gtkdocdir.patch
24 Patch1:         %{name}-include.patch
25 URL:            https://poppler.freedesktop.org/
26 %{?with_qt5:BuildRequires:      Qt5Core-devel >= %{qt5_ver}}
27 %{?with_qt5:BuildRequires:      Qt5Gui-devel >= %{qt5_ver}}
28 %{?with_qt5:BuildRequires:      Qt5Test-devel >= %{qt5_ver}}
29 %{?with_qt5:BuildRequires:      Qt5Widgets-devel >= %{qt5_ver}}
30 %{?with_qt5:BuildRequires:      Qt5Xml-devel >= %{qt5_ver}}
31 %{?with_qt6:BuildRequires:      Qt6Core-devel >= %{qt6_ver}}
32 %{?with_qt6:BuildRequires:      Qt6Gui-devel >= %{qt6_ver}}
33 %{?with_qt6:BuildRequires:      Qt6Test-devel >= %{qt6_ver}}
34 %{?with_qt6:BuildRequires:      Qt6Widgets-devel >= %{qt6_ver}}
35 BuildRequires:  boost-devel >= 1.58.0
36 %{?with_cairo:BuildRequires:    cairo-devel >= %{cairo_ver}}
37 BuildRequires:  cmake >= 3.10.0
38 BuildRequires:  curl-devel
39 BuildRequires:  docbook-dtd412-xml
40 BuildRequires:  fontconfig-devel >= 2.0.0
41 BuildRequires:  freetype-devel >= 1:2.8
42 # -std=c11
43 BuildRequires:  gcc >= 6:4.7
44 BuildRequires:  gettext-tools
45 %{?with_glib:BuildRequires:     glib2-devel >= 1:2.56}
46 %{?with_glib:BuildRequires:     gobject-introspection-devel >= 0.9.12}
47 BuildRequires:  gperf
48 %{?with_apidocs:BuildRequires:  gtk-doc >= 1.14}
49 BuildRequires:  lcms2-devel >= 2
50 BuildRequires:  libjpeg-devel
51 BuildRequires:  libpng-devel
52 # -std=c++17
53 BuildRequires:  libstdc++-devel >= 6:7
54 BuildRequires:  libtiff-devel
55 BuildRequires:  libxml2-devel >= 2.0
56 BuildRequires:  nss-devel >= 3.19
57 BuildRequires:  openjpeg2-devel >= 2
58 BuildRequires:  pkgconfig >= 1:0.18
59 # wanted cairo backends
60 BuildRequires:  pkgconfig(cairo-pdf) >= %{cairo_ver}
61 BuildRequires:  pkgconfig(cairo-ps) >= %{cairo_ver}
62 BuildRequires:  pkgconfig(cairo-svg) >= %{cairo_ver}
63 %{?with_qt5:BuildRequires:      qt5-build >= %{qt5_ver}}
64 %{?with_qt6:BuildRequires:      qt6-build >= %{qt6_ver}}
65 BuildRequires:  rpm-build >= 4.6
66 BuildRequires:  rpmbuild(macros) >= 1.752
67 BuildRequires:  sed >= 4.0
68 BuildRequires:  tar >= 1:1.22
69 BuildRequires:  which
70 BuildRequires:  xz
71 BuildRequires:  zlib-devel
72 Requires:       freetype >= 1:2.8
73 Requires:       openjpeg2 >= 2
74 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
75
76 %description
77 A common PDF rendering library for integrating PDF viewing into
78 desktop applications (based on the xpdf-3.0 code base).
79
80 %description -l pl.UTF-8
81 Wspólna biblioteka renderująca PDF do integrowania oglądania PDF w
82 aplikacjach desktopowych (oparta na kodzie xpdf-3.0).
83
84 %package devel
85 Summary:        Poppler header files
86 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki Poppler
87 Group:          Development/Libraries
88 Requires:       %{name} = %{version}-%{release}
89 Requires:       curl-devel
90 Requires:       lcms2-devel >= 2
91 Requires:       libstdc++-devel >= 6:7
92 Requires:       nss-devel >= 3.19
93 Conflicts:      poppler0.61-devel
94
95 %description devel
96 Header files for the Poppler library.
97
98 %description devel -l pl.UTF-8
99 Pliki nagłówkowe biblioteki Poppler.
100
101 %package static
102 Summary:        Poppler static libraries
103 Summary(pl.UTF-8):      Statyczne biblioteki Poppler
104 Group:          Development/Libraries
105 Requires:       %{name}-devel = %{version}-%{release}
106
107 %description static
108 Poppler static libraries.
109
110 %description static -l pl.UTF-8
111 Statyczne biblioteki Poppler.
112
113 %package apidocs
114 Summary:        Poppler library API documentation
115 Summary(pl.UTF-8):      Dokumentacja API biblioteki Poppler
116 Group:          Documentation
117 Requires:       gtk-doc-common
118 BuildArch:      noarch
119
120 %description apidocs
121 Poppler library API documentation.
122
123 %description apidocs -l pl.UTF-8
124 Dokumentacja API biblioteki Poppler.
125
126 %package cpp
127 Summary:        Cpp wrapper for poppler
128 Summary(pl.UTF-8):      Wrapper cpp dla popplera
129 Group:          Libraries
130 Requires:       %{name} = %{version}-%{release}
131
132 %description cpp
133 Cpp wrapper for poppler.
134
135 %description cpp -l pl.UTF-8
136 Wrapper cpp dla popplera.
137
138 %package cpp-devel
139 Summary:        Header files for cpp wrapper for poppler
140 Summary(pl.UTF-8):      Pliki nagłówkowe wrappera cpp dla popplera
141 Group:          Development/Libraries
142 Requires:       %{name}-cpp = %{version}-%{release}
143 Requires:       %{name}-devel = %{version}-%{release}
144
145 %description cpp-devel
146 Header files for cpp wrapper for poppler.
147
148 %description cpp-devel -l pl.UTF-8
149 Pliki nagłówkowe wrappera cpp dla popplera.
150
151 %package cpp-static
152 Summary:        Static version of cpp wrapper for poppler
153 Summary(pl.UTF-8):      Statyczna wersja wrappera cpp dla popplera
154 Group:          Development/Libraries
155 Requires:       %{name}-cpp-devel = %{version}-%{release}
156
157 %description cpp-static
158 Static version of cpp wrapper for poppler.
159
160 %description cpp-static -l pl.UTF-8
161 Statyczna wersja wrappera cpp dla popplera.
162
163 %package glib
164 Summary:        GLib wrapper for poppler
165 Summary(pl.UTF-8):      Wrapper GLib dla popplera
166 Group:          Libraries
167 Requires:       %{name} = %{version}-%{release}
168 %{?with_cairo:Requires: cairo >= %{cairo_ver}}
169 Requires:       glib2 >= 1:2.56
170
171 %description glib
172 GLib wrapper for poppler.
173
174 %description glib -l pl.UTF-8
175 Wrapper GLib dla popplera.
176
177 %package glib-devel
178 Summary:        Header files for GLib wrapper for poppler
179 Summary(pl.UTF-8):      Pliki nagłówkowe wrappera GLib dla popplera
180 Group:          Development/Libraries
181 Requires:       %{name}-devel = %{version}-%{release}
182 Requires:       %{name}-glib = %{version}-%{release}
183 %{?with_cairo:Requires: cairo-devel >= %{cairo_ver}}
184 Requires:       glib2-devel >= 1:2.56
185
186 %description glib-devel
187 Header files for GLib wrapper for poppler.
188
189 %description glib-devel -l pl.UTF-8
190 Pliki nagłówkowe wrappera GLib dla popplera.
191
192 %package glib-static
193 Summary:        Static version of GLib wrapper for poppler
194 Summary(pl.UTF-8):      Statyczna wersja wrappera GLib dla popplera
195 Group:          Development/Libraries
196 Requires:       %{name}-glib-devel = %{version}-%{release}
197
198 %description glib-static
199 Static version of GLib wrapper for poppler.
200
201 %description glib-static -l pl.UTF-8
202 Statyczna wersja wrappera GLib dla popplera.
203
204 %package qt5
205 Summary:        Qt5 wrapper for poppler
206 Summary(pl.UTF-8):      Wrapper Qt5 dla popplera
207 Group:          Libraries
208 Requires:       %{name} = %{version}-%{release}
209
210 %description qt5
211 Qt5 wrapper for poppler.
212
213 %description qt5 -l pl.UTF-8
214 Wrapper Qt5 dla popplera.
215
216 %package qt5-devel
217 Summary:        Header files for Qt5 wrapper for poppler
218 Summary(pl.UTF-8):      Pliki nagłówkowe wrappera Qt5 dla popplera
219 Group:          Development/Libraries
220 Requires:       %{name}-devel = %{version}-%{release}
221 Requires:       %{name}-qt5 = %{version}-%{release}
222 Requires:       Qt5Core-devel >= %{qt5_ver}
223 Requires:       Qt5Gui-devel >= %{qt5_ver}
224 Requires:       Qt5Widgets-devel >= %{qt5_ver}
225 Requires:       Qt5Xml-devel >= %{qt5_ver}
226
227 %description qt5-devel
228 Header files for Qt5 wrapper for poppler.
229
230 %description qt5-devel -l pl.UTF-8
231 Pliki nagłówkowe wrapper Qt5 dla popplera.
232
233 %package qt5-static
234 Summary:        Static version of Qt5 wrapper for poppler
235 Summary(pl.UTF-8):      Statyczna wersja wrappera Qt5 dla popplera
236 Group:          Development/Libraries
237 Requires:       %{name}-qt5-devel = %{version}-%{release}
238
239 %description qt5-static
240 Static version of Qt5 wrapper for poppler.
241
242 %description qt5-static -l pl.UTF-8
243 Statyczna wersja wrappera Qt5 dla popplera.
244
245 %package qt6
246 Summary:        Qt6 wrapper for poppler
247 Summary(pl.UTF-8):      Wrapper Qt6 dla popplera
248 Group:          Libraries
249 Requires:       %{name} = %{version}-%{release}
250
251 %description qt6
252 Qt6 wrapper for poppler.
253
254 %description qt6 -l pl.UTF-8
255 Wrapper Qt6 dla popplera.
256
257 %package qt6-devel
258 Summary:        Header files for Qt6 wrapper for poppler
259 Summary(pl.UTF-8):      Pliki nagłówkowe wrappera Qt6 dla popplera
260 Group:          Development/Libraries
261 Requires:       %{name}-devel = %{version}-%{release}
262 Requires:       %{name}-qt6 = %{version}-%{release}
263 Requires:       Qt6Core-devel >= %{qt5_ver}
264 Requires:       Qt6Gui-devel >= %{qt5_ver}
265 Requires:       Qt6Widgets-devel >= %{qt5_ver}
266 Requires:       Qt6Xml-devel >= %{qt5_ver}
267
268 %description qt6-devel
269 Header files for Qt6 wrapper for poppler.
270
271 %description qt6-devel -l pl.UTF-8
272 Pliki nagłówkowe wrapper Qt6 dla popplera.
273
274 %package qt6-static
275 Summary:        Static version of Qt6 wrapper for poppler
276 Summary(pl.UTF-8):      Statyczna wersja wrappera Qt6 dla popplera
277 Group:          Development/Libraries
278 Requires:       %{name}-qt6-devel = %{version}-%{release}
279
280 %description qt6-static
281 Static version of Qt6 wrapper for poppler.
282
283 %description qt6-static -l pl.UTF-8
284 Statyczna wersja wrappera Qt6 dla popplera.
285
286 %package progs
287 Summary:        Set of tools for viewing information and converting PDF files
288 Summary(pl.UTF-8):      Zestaw narzędzi do wyświetlania informacji i konwertowania plików PDF
289 Group:          Applications/Publishing
290 Provides:       pdftops
291 Obsoletes:      pdftohtml < 0.40
292 Obsoletes:      pdftohtml-pdftops < 0.40
293 Obsoletes:      poppler-utils < 0.5.0-2
294 Obsoletes:      xpdf-tools
295
296 %description progs
297 Package contains utilites for PDF files. These utilities allow to
298 - extract information about PDF files,
299 - extract images from PDF files,
300 - convert PDF files to HTML, plain text and PS formats.
301
302 %description progs -l pl.UTF-8
303 Pakiet zawiera zestaw narzędzi do plików PDF. Programy te umożliwiają
304 - wyświetlanie informacji o plikach PDF,
305 - wydobywanie obrazków z plików PDF,
306 - konwersję plików PDF do formatów takich jak HTML, PS czy też
307   czystego tekstu.
308
309 %prep
310 %setup -q
311 %patch0 -p1
312 %patch1 -p1
313
314 %{__sed} -i -e '/set(_known_build_types/ s/)/;PLD)/' cmake/modules/PopplerMacros.cmake
315
316 %build
317 install -d build
318 cd build
319 %cmake .. \
320         %{!?with_cpp:-DENABLE_CPP=OFF} \
321         %{!?with_glib:-DENABLE_GLIB=OFF} \
322         %{?with_apidocs:-DENABLE_GTK_DOC=ON} \
323         -DENABLE_GTK_TESTS=OFF \
324         -DENABLE_LIBCURL=ON \
325         %{!?with_qt5:-DENABLE_QT5=OFF} \
326         %{!?with_qt6:-DENABLE_QT6=OFF} \
327         -DENABLE_UNSTABLE_API_ABI_HEADERS=ON \
328         -DENABLE_ZLIB=ON \
329         %{!?with_cairo:-DWITH_CAIRO=OFF}
330
331 %{__make}
332 cd ..
333
334 %if %{with static_libs}
335 install -d build-static
336 cd build-static
337 %cmake .. \
338         -DBUILD_SHARED_LIBS=OFF \
339         %{!?with_cpp:-DENABLE_CPP=OFF} \
340         %{!?with_glib:-DENABLE_GLIB=OFF} \
341         -DENABLE_GTK_DOC=OFF \
342         -DENABLE_GTK_TESTS=OFF \
343         -DENABLE_LIBCURL=ON \
344         %{!?with_qt5:-DENABLE_QT5=OFF} \
345         -DENABLE_ZLIB=ON \
346         %{!?with_cairo:-DWITH_CAIRO=OFF}
347
348 %{__make}
349 %endif
350
351 %install
352 rm -rf $RPM_BUILD_ROOT
353
354 %if %{with static_libs}
355 %{__make} -C build-static install \
356         DESTDIR=$RPM_BUILD_ROOT
357 %endif
358
359 %{__make} -C build install \
360         DESTDIR=$RPM_BUILD_ROOT
361
362 %clean
363 rm -rf $RPM_BUILD_ROOT
364
365 %post   -p /sbin/ldconfig
366 %postun -p /sbin/ldconfig
367
368 %post   cpp -p /sbin/ldconfig
369 %postun cpp -p /sbin/ldconfig
370
371 %post   glib -p /sbin/ldconfig
372 %postun glib -p /sbin/ldconfig
373
374 %post   qt5 -p /sbin/ldconfig
375 %postun qt5 -p /sbin/ldconfig
376
377 %files
378 %defattr(644,root,root,755)
379 %doc AUTHORS ChangeLog NEWS README*
380 %attr(755,root,root) %{_libdir}/libpoppler.so.*.*.*
381 %attr(755,root,root) %ghost %{_libdir}/libpoppler.so.120
382
383 %files devel
384 %defattr(644,root,root,755)
385 %attr(755,root,root) %{_libdir}/libpoppler.so
386 %dir %{_includedir}/poppler
387 %{_includedir}/poppler/poppler-config.h
388 %{_includedir}/poppler/poppler_private_export.h
389 %{_includedir}/poppler/[ABCDEFGHJLMNOPRSTUVX]*.h
390 %{_includedir}/poppler/fofi
391 %{_includedir}/poppler/goo
392 %{_includedir}/poppler/splash
393 %{_pkgconfigdir}/poppler.pc
394
395 %if %{with static_libs}
396 %files static
397 %defattr(644,root,root,755)
398 %{_libdir}/libpoppler.a
399 %endif
400
401 %if %{with apidocs}
402 %files apidocs
403 %defattr(644,root,root,755)
404 %{_gtkdocdir}/poppler
405 %endif
406
407 %if %{with cpp}
408 %files cpp
409 %defattr(644,root,root,755)
410 %attr(755,root,root) %{_libdir}/libpoppler-cpp.so.*.*.*
411 %attr(755,root,root) %ghost %{_libdir}/libpoppler-cpp.so.0
412
413 %files cpp-devel
414 %defattr(644,root,root,755)
415 %attr(755,root,root) %{_libdir}/libpoppler-cpp.so
416 %{_includedir}/poppler/cpp
417 %{_pkgconfigdir}/poppler-cpp.pc
418
419 %if %{with static_libs}
420 %files cpp-static
421 %defattr(644,root,root,755)
422 %{_libdir}/libpoppler-cpp.a
423 %endif
424 %endif
425
426 %if %{with glib}
427 %files glib
428 %defattr(644,root,root,755)
429 %attr(755,root,root) %{_libdir}/libpoppler-glib.so.*.*.*
430 %attr(755,root,root) %ghost %{_libdir}/libpoppler-glib.so.8
431 %{_libdir}/girepository-1.0/Poppler-0.18.typelib
432
433 %files glib-devel
434 %defattr(644,root,root,755)
435 %attr(755,root,root) %{_libdir}/libpoppler-glib.so
436 %{_includedir}/poppler/glib
437 %{_pkgconfigdir}/poppler-glib.pc
438 %{_datadir}/gir-1.0/Poppler-0.18.gir
439
440 %if %{with static_libs}
441 %files glib-static
442 %defattr(644,root,root,755)
443 %{_libdir}/libpoppler-glib.a
444 %endif
445 %endif
446
447 %if %{with qt5}
448 %files qt5
449 %defattr(644,root,root,755)
450 %attr(755,root,root) %{_libdir}/libpoppler-qt5.so.*.*.*
451 %attr(755,root,root) %ghost %{_libdir}/libpoppler-qt5.so.1
452
453 %files qt5-devel
454 %defattr(644,root,root,755)
455 %attr(755,root,root) %{_libdir}/libpoppler-qt5.so
456 %{_includedir}/poppler/qt5
457 %{_pkgconfigdir}/poppler-qt5.pc
458
459 %if %{with static_libs}
460 %files qt5-static
461 %defattr(644,root,root,755)
462 %{_libdir}/libpoppler-qt5.a
463 %endif
464 %endif
465
466 %if %{with qt6}
467 %files qt6
468 %defattr(644,root,root,755)
469 %attr(755,root,root) %{_libdir}/libpoppler-qt6.so.*.*.*
470 %attr(755,root,root) %ghost %{_libdir}/libpoppler-qt6.so.3
471
472 %files qt6-devel
473 %defattr(644,root,root,755)
474 %attr(755,root,root) %{_libdir}/libpoppler-qt6.so
475 %{_includedir}/poppler/qt6
476 %{_pkgconfigdir}/poppler-qt6.pc
477
478 %if %{with static_libs}
479 %files qt6-static
480 %defattr(644,root,root,755)
481 %{_libdir}/libpoppler-qt6.a
482 %endif
483 %endif
484
485 %files progs
486 %defattr(644,root,root,755)
487 %attr(755,root,root) %{_bindir}/pdfattach
488 %attr(755,root,root) %{_bindir}/pdfdetach
489 %attr(755,root,root) %{_bindir}/pdffonts
490 %attr(755,root,root) %{_bindir}/pdfimages
491 %attr(755,root,root) %{_bindir}/pdfinfo
492 %attr(755,root,root) %{_bindir}/pdfseparate
493 %attr(755,root,root) %{_bindir}/pdfsig
494 %attr(755,root,root) %{_bindir}/pdftocairo
495 %attr(755,root,root) %{_bindir}/pdftohtml
496 %attr(755,root,root) %{_bindir}/pdftoppm
497 %attr(755,root,root) %{_bindir}/pdftops
498 %attr(755,root,root) %{_bindir}/pdftotext
499 %attr(755,root,root) %{_bindir}/pdfunite
500 %{_mandir}/man1/pdfattach.1*
501 %{_mandir}/man1/pdfdetach.1*
502 %{_mandir}/man1/pdffonts.1*
503 %{_mandir}/man1/pdfimages.1*
504 %{_mandir}/man1/pdfinfo.1*
505 %{_mandir}/man1/pdfseparate.1*
506 %{_mandir}/man1/pdfsig.1*
507 %{_mandir}/man1/pdftocairo.1*
508 %{_mandir}/man1/pdftohtml.1*
509 %{_mandir}/man1/pdftoppm.1*
510 %{_mandir}/man1/pdftops.1*
511 %{_mandir}/man1/pdftotext.1*
512 %{_mandir}/man1/pdfunite.1*
This page took 0.130322 seconds and 4 git commands to generate.