2 # - tesseract OCR support (experimental)
4 # http://dl.sourceforge.net/djvu/gsdjvu-1.3.tar.gz (or newer)
7 %bcond_without cairo # cairo support (disable for cairo bootstrap)
8 %bcond_without system_freetype # system freetype
9 %bcond_without system_jbig2dec # system jbig2dec
10 %bcond_with system_libjpeg # system libjpeg (incompatible with D_MAX_BLOCKS_IN_MCU=64 variant)
11 %bcond_with system_libtiff # system libtiff (incompatible with modified libjpeg)
12 %bcond_with system_lcms2 # build with included lcms2 (which is thread safe)
13 %bcond_without gtk # gsx (GTK+ based frontend)
14 %bcond_without texdocs # skip tetex BRs
16 Summary: PostScript & PDF interpreter and renderer
17 Summary(de.UTF-8): PostScript & PDF Interpreter und Renderer
18 Summary(fr.UTF-8): Interpréteur et visualisateur PostScript & PDF
19 Summary(ja.UTF-8): PostScript インタープリタ・レンダラー
20 Summary(pl.UTF-8): Bezpłatny interpreter i renderer PostScriptu i PDF
21 Summary(tr.UTF-8): PostScript & PDF yorumlayıcı ve gösterici
26 Group: Applications/Graphics
27 #Source0Download: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
28 Source0: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs9531/%{name}-%{version}.tar.xz
29 # Source0-md5: 3052b8787050a5d33eb2c2e9c9723766
30 Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
31 # Source1-md5: 9b5953aa0cc155f4364f20036b848585
32 Patch0: %{name}-missquotes.patch
33 Patch2: ijs-pkgconfig.patch
35 Patch6: %{name}-gdevcd8-fixes.patch
36 Patch8: %{name}-zlib.patch
39 Patch20: %{name}-scripts.patch
41 Patch28: %{name}-iccprofiles-initdir.patch
43 URL: http://www.ghostscript.com/
44 BuildRequires: autoconf >= 2.63
45 BuildRequires: automake >= 1.6
46 %{?with_cairo:BuildRequires: cairo-devel >= 1.2.0}
47 BuildRequires: cups-devel >= 1.5
48 BuildRequires: dbus-devel
49 BuildRequires: docbook-style-dsssl
50 BuildRequires: fontconfig-devel
51 %{?with_system_freetype:BuildRequires: freetype-devel >= 1:2.10.1}
52 %{?with_gtk:BuildRequires: gtk+3-devel >= 3.0}
53 %{?with_system_jbig2dec:BuildRequires: jbig2dec-devel >= 0.19}
54 %{?with_system_lcms2:BuildRequires: lcms2-devel >= 2.6}
55 BuildRequires: libidn-devel
56 %{?with_system_libjpeg:BuildRequires: libjpeg-devel >= 9c}
57 BuildRequires: libpaper-devel
58 BuildRequires: libpng-devel >= 2:1.6.37
59 BuildRequires: libstdc++-devel
60 %{?with_system_libtiff:BuildRequires: libtiff-devel >= 4.1.0}
61 BuildRequires: libtool
62 BuildRequires: pkgconfig
63 BuildRequires: tar >= 1:1.22
64 # for documentation regeneration
67 BuildRequires: tetex-dvips
69 BuildRequires: xorg-lib-libX11-devel
70 BuildRequires: xorg-lib-libXext-devel
71 BuildRequires: xorg-lib-libXt-devel
73 BuildRequires: zlib-devel >= 1.2.11
74 %{?with_system_freetype:Requires: freetype >= 1:2.10.1}
75 %{?with_system_jbig2dec:Requires: jbig2dec >= 0.19}
76 %{?with_system_lcms2:Requires: lcms2 >= 2.6}
77 %{?with_system_libjpeg:Requires: libjpeg >= 9c}
78 Requires: libpng >= 2:1.6.37
79 %{?with_system_libtiff:Requires: libtiff >= 4.1.0}
80 Requires: zlib >= 1.2.11
81 Obsoletes: ghostscript-afpl
82 Obsoletes: ghostscript-esp
83 Obsoletes: ghostscript-gpl
84 Obsoletes: ghostscript-svga
85 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
87 %define _ulibdir %{_prefix}/lib
90 cos nGhostscript is a PostScript interpreter. It can render both
91 PostScript and PDF compliant files to devices which include an X
92 window, many printer formats (including support for color printers),
93 and popular graphics file formats.
95 %description -l de.UTF-8
96 Ghostscipt ist ein PostScript-Interpretierer. Er kann sowohl
97 PostScript als auch PDF-konforme Dateien an Geräte ausgeben, zu denen
98 ein X-Fenster, viele Druckerformate (einschließlich Support für
99 Farbdrucker) und gängige Grafikdateiformate zählen.
101 %description -l fr.UTF-8
102 Ghostscript est un interpréteur PostScript. Il peut rendre des
103 fichiers PostScript ou PDF sur des périphériques dont une fenêtre X,de
104 nombreux types d'imprimantes (dont un support pour imprimantes
105 couleur), et des formats de fichiers graphiques populaires.
107 %description -l ja.UTF-8
108 Ghostscript は PostScript インタープリタです。ポストスクリプトと PDF をレンダリングし、X window
109 や他のプリンタフォーマットで出力 します。このパッケージは日本語対応しています。
111 %description -l pl.UTF-8
112 Ghostcript jest interpreterem PostScriptu, języka używanego do opisu
113 formatu dokumentu. Ghostscript potrafi przetworzyć dokument w formacie
114 PostScript i PDF na szereg postaci wyjściowych: drukarki (włączając
115 kolorowe), okno X-Window i popularne formaty graficzne.
117 %description -l tr.UTF-8
118 GhostScript, PostScript ve PDF uyumlu dosyaları, X penceresinde
119 gösterebilir ve birçok yazıcının (renkli yazıcılar dahil) basabileceği
123 Summary: Ghostscript with GTK+ console
124 Summary(pl.UTF-8): Ghostscript z konsolą GTK+
125 Group: Applications/Graphics
126 Requires: %{name} = %{version}-%{release}
127 Obsoletes: ghostscript-afpl-gtk
128 Obsoletes: ghostscript-esp-gtk
129 Obsoletes: ghostscript-gpl-gtk
132 Ghostscript with GTK+ console.
134 %description gtk -l pl.UTF-8
135 Ghostscript z konsolą GTK+.
138 Summary: X Window System drivers for Ghostscript
139 Summary(pl.UTF-8): Sterowniki systemu X Window dla Ghostscripta
140 Group: Applications/Graphics
141 Requires: %{name} = %{version}-%{release}
144 X Window System output drivers for Ghostscript: x11, x11alpha.
146 %description x11 -l pl.UTF-8
147 Sterowniki wyjściowe systemu X Window dla Ghostscripta: x11, x11alpha.
150 Summary: libgs header files
151 Summary(pl.UTF-8): Pliki nagłówkowe libgs
152 Group: Development/Libraries
153 Requires: %{name} = %{version}-%{release}
154 Obsoletes: ghostscript-afpl-devel
155 Obsoletes: ghostscript-esp-devel
158 Header files for libgs - ghostscript shared library.
160 %description devel -l pl.UTF-8
161 Pliki nagłówkowe libgs - współdzielonej biblioteki ghostscript.
164 Summary: Documentation for ghostscript
166 %if "%{_rpmversion}" >= "5"
171 The documentation files that come with ghostscript.
174 Summary: IJS (InkJet Server) shared library
175 Summary(pl.UTF-8): Biblioteka współdzielona IJS (InkJet Server)
177 Conflicts: ghostscript < 9.10-2
180 IJS (InkJet Server) Raster Image Transport Protocol shared library.
182 %description ijs -l pl.UTF-8
183 Biblioteka współdzielona protokołu transportu obrazów rastrowych IJS
187 Summary: IJS development files
188 Summary(pl.UTF-8): Pliki dla programistów IJS
189 Group: Development/Libraries
190 Requires: %{name}-ijs = %{version}-%{release}
191 Obsoletes: ghostscript-afpl-ijs-devel
192 Obsoletes: ghostscript-esp-ijs-devel
194 %description ijs-devel
195 IJS development files.
197 %description ijs-devel -l pl.UTF-8
198 Pliki do tworzenia programów z użyciem biblioteki IJS.
201 Summary: Static libijs library
202 Summary(pl.UTF-8): Statyczna biblioteka IJS
203 Group: Development/Libraries
204 Requires: %{name}-ijs-devel = %{version}-%{release}
205 Obsoletes: ghostscript-afpl-ijs-static
206 Obsoletes: ghostscript-esp-ijs-static
208 %description ijs-static
209 Static libijs library.
211 %description ijs-static -l pl.UTF-8
212 Statyczna wersja biblioteki IJS.
229 %{?with_system_freetype:%{__rm} -r freetype}
231 %{?with_system_jbig2dec:%{__rm} -r jbig2dec}
232 # (unmodified) libpng 1.6.37 and zlib 1.2.11
233 %{__rm} -r libpng zlib
234 # libjpeg (9c without CLAMP_DC fixes) is built with different configuration (D_MAX_BLOCKS_IN_MCU=64)
235 %{?with_system_libjpeg:%{__rm} -r jpeg}
236 # openjpeg is 2.3.1 + few custom fixes; stick to bundled for now
237 # lcms2mt is thread safe version of lcms2
238 %{?with_system_lcms2:%{__rm} -r lcms2mt}
242 CFLAGS="%{rpmcflags} -DA4" \
243 %{!?with_cairo:--disable-cairo} \
244 --disable-compile-inits \
247 --with-fontpath="%{_datadir}/fonts:%{_datadir}/fonts/Type1" \
251 %{?with_system_libtiff:--with-system-libtiff} \
265 docdir=%{_docdir}/%{name}-%{version}
268 docdir=%{_docdir}/%{name}-%{version}
271 rm -rf $RPM_BUILD_ROOT
273 %{__make} soinstall \
274 DESTDIR=$RPM_BUILD_ROOT \
275 docdir=%{_docdir}/%{name}-%{version}
278 DESTDIR=$RPM_BUILD_ROOT \
279 docdir=%{_docdir}/%{name}-%{version}
281 %{__make} -C ijs install \
282 DESTDIR=$RPM_BUILD_ROOT
284 cp -p base/gserrors.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
286 cp -p LICENSE $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
288 %{__rm} $RPM_BUILD_ROOT%{_bindir}/*.sh \
289 $RPM_BUILD_ROOT%{_mandir}/man1/{ps2pdf1{2,3},eps2eps}.1 \
290 $RPM_BUILD_ROOT%{_mandir}/de/man1/{ps2pdf1{2,3},eps2eps}.1
292 echo ".so gs.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ghostscript.1
293 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ps2pdf12.1
294 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ps2pdf13.1
295 echo ".so ps2ps.1" > $RPM_BUILD_ROOT%{_mandir}/man1/eps2eps.1
296 echo ".so gslp.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gsbj.1
297 echo ".so gslp.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gsdj.1
298 echo ".so gslp.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gsdj500.1
299 echo ".so gslp.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gslj.1
301 echo ".so ps2ps.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/eps2eps.1
302 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/ps2pdf12.1
303 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/ps2pdf13.1
305 bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
306 %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.ghostscript-non-english-man-pages
308 ln -sf gs $RPM_BUILD_ROOT%{_bindir}/gsc
309 ln -sf gs $RPM_BUILD_ROOT%{_bindir}/ghostscript
312 rm -rf $RPM_BUILD_ROOT
314 %post -p /sbin/ldconfig
315 %postun -p /sbin/ldconfig
317 %post ijs -p /sbin/ldconfig
318 %postun ijs -p /sbin/ldconfig
321 %defattr(644,root,root,755)
322 %attr(755,root,root) %{_bindir}/dvipdf
323 %attr(755,root,root) %{_bindir}/eps2eps
324 %attr(755,root,root) %{_bindir}/ghostscript
325 %attr(755,root,root) %{_bindir}/gs
326 %attr(755,root,root) %{_bindir}/gsbj
327 %attr(755,root,root) %{_bindir}/gsc
328 %attr(755,root,root) %{_bindir}/gsdj
329 %attr(755,root,root) %{_bindir}/gsdj500
330 %attr(755,root,root) %{_bindir}/gslj
331 %attr(755,root,root) %{_bindir}/gslp
332 %attr(755,root,root) %{_bindir}/gsnd
333 %attr(755,root,root) %{_bindir}/pdf2dsc
334 %attr(755,root,root) %{_bindir}/pdf2ps
335 %attr(755,root,root) %{_bindir}/pf2afm
336 %attr(755,root,root) %{_bindir}/pfbtopfa
337 %attr(755,root,root) %{_bindir}/printafm
338 %attr(755,root,root) %{_bindir}/ps2ascii
339 %attr(755,root,root) %{_bindir}/ps2epsi
340 %attr(755,root,root) %{_bindir}/ps2pdf
341 %attr(755,root,root) %{_bindir}/ps2pdf12
342 %attr(755,root,root) %{_bindir}/ps2pdf13
343 %attr(755,root,root) %{_bindir}/ps2pdf14
344 %attr(755,root,root) %{_bindir}/ps2pdfwr
345 %attr(755,root,root) %{_bindir}/ps2ps
346 %attr(755,root,root) %{_bindir}/ps2ps2
347 %attr(755,root,root) %{_bindir}/pphs
348 %attr(755,root,root) %{_libdir}/libgs.so.*.*
349 %attr(755,root,root) %ghost %{_libdir}/libgs.so.9
350 %dir %{_libdir}/%{name}
351 %dir %{_libdir}/%{name}/%{version}
352 %dir %{_datadir}/%{name}
353 %dir %{_datadir}/%{name}/%{version}
354 %{_datadir}/%{name}/%{version}/Resource
355 %{_datadir}/%{name}/%{version}/iccprofiles
356 %dir %{_datadir}/%{name}/%{version}/lib
357 %{_datadir}/%{name}/%{version}/lib/*.ppd
358 %{_datadir}/%{name}/%{version}/lib/*.ps
359 %{_datadir}/%{name}/%{version}/lib/*.rpd
360 %{_datadir}/%{name}/%{version}/lib/*.upp
361 %{_datadir}/%{name}/%{version}/lib/*.x[bp]m
362 %{_mandir}/man1/dvipdf.1*
363 %{_mandir}/man1/eps2eps.1*
364 %{_mandir}/man1/ghostscript.1*
365 %{_mandir}/man1/gs.1*
366 %{_mandir}/man1/gsbj.1*
367 %{_mandir}/man1/gsdj.1*
368 %{_mandir}/man1/gsdj500.1*
369 %{_mandir}/man1/gslj.1*
370 %{_mandir}/man1/gslp.1*
371 %{_mandir}/man1/gsnd.1*
372 %{_mandir}/man1/pdf2dsc.1*
373 %{_mandir}/man1/pdf2ps.1*
374 %{_mandir}/man1/pf2afm.1*
375 %{_mandir}/man1/pfbtopfa.1*
376 %{_mandir}/man1/printafm.1*
377 %{_mandir}/man1/ps2ascii.1*
378 %{_mandir}/man1/ps2epsi.1*
379 %{_mandir}/man1/ps2pdf.1*
380 %{_mandir}/man1/ps2pdf12.1*
381 %{_mandir}/man1/ps2pdf13.1*
382 %{_mandir}/man1/ps2pdf14.1*
383 %{_mandir}/man1/ps2pdfwr.1*
384 %{_mandir}/man1/ps2ps.1*
385 %lang(cs) %{_mandir}/cs/man1/*
386 %lang(de) %{_mandir}/de/man1/*
387 %lang(es) %{_mandir}/es/man1/*
388 %lang(fr) %{_mandir}/fr/man1/*
389 %lang(pl) %{_mandir}/pl/man1/*
392 %defattr(644,root,root,755)
393 %doc %{_docdir}/%{name}-%{version}
397 %defattr(644,root,root,755)
398 %attr(755,root,root) %{_bindir}/gsx
402 %defattr(644,root,root,755)
403 %attr(755,root,root) %{_libdir}/%{name}/%{version}/X11.so
406 %defattr(644,root,root,755)
407 %attr(755,root,root) %{_libdir}/libgs.so
408 %{_includedir}/ghostscript
411 %defattr(644,root,root,755)
413 %attr(755,root,root) %{_bindir}/ijs_client_example
414 %attr(755,root,root) %{_bindir}/ijs_server_example
415 %attr(755,root,root) %{_libdir}/libijs-*.so
418 %defattr(644,root,root,755)
419 %attr(755,root,root) %{_libdir}/libijs.so
422 %{_pkgconfigdir}/ijs.pc
425 %defattr(644,root,root,755)