]> git.pld-linux.org Git - packages/ghostscript.git/blob - ghostscript.spec
- adding owned dir
[packages/ghostscript.git] / ghostscript.spec
1 # TODO:
2 # - add djvu driver:
3 #   http://dl.sourceforge.net/djvu/gsdjvu-1.3.tar.gz (or newer)
4 #
5 # Conditional build:
6 %bcond_without  cairo           # cairo support (disable for cairo bootstrap)
7 %bcond_without  system_freetype # system freetype
8 %bcond_without  system_jbig2dec # system jbig2dec
9 %bcond_with     system_libjpeg  # system libjpeg (incompatible with D_MAX_BLOCKS_IN_MCU=64 variant)
10 %bcond_with     system_libtiff  # system libtiff (incompatible with modified libjpeg)
11 %bcond_without  system_openjp2  # system openjpeg2
12 %bcond_with     system_lcms2    # build with included lcms2 (which is thread safe)
13 %bcond_without  system_tesseract        # system tesseract+leptonlib
14 %bcond_without  gtk             # gsx (GTK+ based frontend)
15 %bcond_without  texdocs         # skip tetex BRs
16
17 Summary:        PostScript & PDF interpreter and renderer
18 Summary(de.UTF-8):      PostScript & PDF Interpreter und Renderer
19 Summary(fr.UTF-8):      Interpréteur et visualisateur PostScript & PDF
20 Summary(ja.UTF-8):      PostScript インタープリタ・レンダラー
21 Summary(pl.UTF-8):      Bezpłatny interpreter i renderer PostScriptu i PDF
22 Summary(tr.UTF-8):      PostScript & PDF yorumlayıcı ve gösterici
23 Name:           ghostscript
24 Version:        10.02.0
25 Release:        2
26 License:        AGPL v3+
27 Group:          Applications/Graphics
28 #Source0Download: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
29 Source0:        https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10020/%{name}-%{version}.tar.xz
30 # Source0-md5:  80c1cdfada72f2eb5987dc0d590ea5b2
31 Source1:        http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
32 # Source1-md5:  9b5953aa0cc155f4364f20036b848585
33 Patch0:         %{name}-missquotes.patch
34 Patch1:         %{name}-a4.patch
35 Patch2:         ijs-pkgconfig.patch
36
37 Patch6:         %{name}-gdevcd8-fixes.patch
38
39 # fedora
40 Patch20:        %{name}-scripts.patch
41
42 Patch28:        %{name}-iccprofiles-initdir.patch
43
44 URL:            http://www.ghostscript.com/
45 BuildRequires:  autoconf >= 2.63
46 BuildRequires:  automake >= 1.6
47 %{?with_cairo:BuildRequires:    cairo-devel >= 1.2.0}
48 BuildRequires:  cups-devel >= 1.5
49 BuildRequires:  dbus-devel
50 BuildRequires:  docbook-style-dsssl
51 BuildRequires:  fontconfig-devel
52 %{?with_system_freetype:BuildRequires:  freetype-devel >= 1:2.13.0}
53 %{?with_gtk:BuildRequires:      gtk+3-devel >= 3.0}
54 %{?with_system_jbig2dec:BuildRequires:  jbig2dec-devel >= 0.20}
55 %{?with_system_lcms2:BuildRequires:     lcms2-devel >= 2.10}
56 BuildRequires:  libidn-devel
57 %{?with_system_libjpeg:BuildRequires:   libjpeg-devel >= 9e}
58 BuildRequires:  libpaper-devel
59 BuildRequires:  libpng-devel >= 2:1.6.39
60 BuildRequires:  libstdc++-devel
61 %{?with_system_libtiff:BuildRequires:   libtiff-devel >= 4.5.0}
62 BuildRequires:  libtool
63 %{?with_system_openjp2:BuildRequires:   openjpeg2-devel >= 2.4.0}
64 BuildRequires:  pkgconfig
65 BuildRequires:  rpm-build >= 4.6
66 BuildRequires:  tar >= 1:1.22
67 %{?with_system_tesseract:BuildRequires: tesseract-devel >= 4.1.0}
68 # for documentation regeneration
69 %if %{with texdocs}
70 BuildRequires:  tetex
71 BuildRequires:  tetex-dvips
72 %endif
73 BuildRequires:  xorg-lib-libX11-devel
74 BuildRequires:  xorg-lib-libXext-devel
75 BuildRequires:  xorg-lib-libXt-devel
76 BuildRequires:  xz
77 BuildRequires:  zlib-devel >= 1.2.13
78 %{?with_system_freetype:Requires:       freetype >= 1:2.13.0}
79 %{?with_system_jbig2dec:Requires:       jbig2dec >= 0.20}
80 %{?with_system_lcms2:Requires:  lcms2 >= 2.10}
81 %{?with_system_libjpeg:Requires:        libjpeg >= 9e}
82 Requires:       libpng >= 2:1.6.39
83 %{?with_system_libtiff:Requires:        libtiff >= 4.5.0}
84 Requires:       zlib >= 1.2.13
85 Obsoletes:      ghostscript-afpl < 8.54
86 Obsoletes:      ghostscript-esp < 8.50
87 Obsoletes:      ghostscript-gpl < 8.51
88 Obsoletes:      ghostscript-svga < 9.24
89 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
90
91 %define         _ulibdir        %{_prefix}/lib
92
93 %description
94 cos nGhostscript is a PostScript interpreter. It can render both
95 PostScript and PDF compliant files to devices which include an X
96 window, many printer formats (including support for color printers),
97 and popular graphics file formats.
98
99 %description -l de.UTF-8
100 Ghostscipt ist ein PostScript-Interpretierer. Er kann sowohl
101 PostScript als auch PDF-konforme Dateien an Geräte ausgeben, zu denen
102 ein X-Fenster, viele Druckerformate (einschließlich Support für
103 Farbdrucker) und gängige Grafikdateiformate zählen.
104
105 %description -l fr.UTF-8
106 Ghostscript est un interpréteur PostScript. Il peut rendre des
107 fichiers PostScript ou PDF sur des périphériques dont une fenêtre X,de
108 nombreux types d'imprimantes (dont un support pour imprimantes
109 couleur), et des formats de fichiers graphiques populaires.
110
111 %description -l ja.UTF-8
112 Ghostscript は PostScript インタープリタです。ポストスクリプトと PDF をレンダリングし、X window
113 や他のプリンタフォーマットで出力 します。このパッケージは日本語対応しています。
114
115 %description -l pl.UTF-8
116 Ghostcript jest interpreterem PostScriptu, języka używanego do opisu
117 formatu dokumentu. Ghostscript potrafi przetworzyć dokument w formacie
118 PostScript i PDF na szereg postaci wyjściowych: drukarki (włączając
119 kolorowe), okno X-Window i popularne formaty graficzne.
120
121 %description -l tr.UTF-8
122 GhostScript, PostScript ve PDF uyumlu dosyaları, X penceresinde
123 gösterebilir ve birçok yazıcının (renkli yazıcılar dahil) basabileceği
124 biçime getirebilir.
125
126 %package gtk
127 Summary:        Ghostscript with GTK+ console
128 Summary(pl.UTF-8):      Ghostscript z konsolą GTK+
129 Group:          Applications/Graphics
130 Requires:       %{name} = %{version}-%{release}
131 Obsoletes:      ghostscript-afpl-gtk < 8.54
132 Obsoletes:      ghostscript-esp-gtk < 8.50
133 Obsoletes:      ghostscript-gpl-gtk < 8.51
134
135 %description gtk
136 Ghostscript with GTK+ console.
137
138 %description gtk -l pl.UTF-8
139 Ghostscript z konsolą GTK+.
140
141 %package x11
142 Summary:        X Window System drivers for Ghostscript
143 Summary(pl.UTF-8):      Sterowniki systemu X Window dla Ghostscripta
144 Group:          Applications/Graphics
145 Requires:       %{name} = %{version}-%{release}
146
147 %description x11
148 X Window System output drivers for Ghostscript: x11, x11alpha.
149
150 %description x11 -l pl.UTF-8
151 Sterowniki wyjściowe systemu X Window dla Ghostscripta: x11, x11alpha.
152
153 %package devel
154 Summary:        libgs header files
155 Summary(pl.UTF-8):      Pliki nagłówkowe libgs
156 Group:          Development/Libraries
157 Requires:       %{name} = %{version}-%{release}
158 Obsoletes:      ghostscript-afpl-devel < 8.54
159 Obsoletes:      ghostscript-esp-devel < 8.50
160
161 %description devel
162 Header files for libgs - ghostscript shared library.
163
164 %description devel -l pl.UTF-8
165 Pliki nagłówkowe libgs - współdzielonej biblioteki ghostscript.
166
167 %package doc
168 Summary:        Documentation for ghostscript
169 Group:          Documentation
170 BuildArch:      noarch
171
172 %description doc
173 The documentation files that come with ghostscript.
174
175 %package ijs
176 Summary:        IJS (InkJet Server) shared library
177 Summary(pl.UTF-8):      Biblioteka współdzielona IJS (InkJet Server)
178 Group:          Libraries
179 Conflicts:      ghostscript < 9.10-2
180
181 %description ijs
182 IJS (InkJet Server) Raster Image Transport Protocol shared library.
183
184 %description ijs -l pl.UTF-8
185 Biblioteka współdzielona protokołu transportu obrazów rastrowych IJS
186 (InkJet Server).
187
188 %package ijs-devel
189 Summary:        IJS development files
190 Summary(pl.UTF-8):      Pliki dla programistów IJS
191 Group:          Development/Libraries
192 Requires:       %{name}-ijs = %{version}-%{release}
193 Obsoletes:      ghostscript-afpl-ijs-devel < 8.54
194 Obsoletes:      ghostscript-esp-ijs-devel < 8.50
195
196 %description ijs-devel
197 IJS development files.
198
199 %description ijs-devel -l pl.UTF-8
200 Pliki do tworzenia programów z użyciem biblioteki IJS.
201
202 %package ijs-static
203 Summary:        Static libijs library
204 Summary(pl.UTF-8):      Statyczna biblioteka IJS
205 Group:          Development/Libraries
206 Requires:       %{name}-ijs-devel = %{version}-%{release}
207 Obsoletes:      ghostscript-afpl-ijs-static < 8.54
208 Obsoletes:      ghostscript-esp-ijs-static < 8.50
209
210 %description ijs-static
211 Static libijs library.
212
213 %description ijs-static -l pl.UTF-8
214 Statyczna wersja biblioteki IJS.
215
216 %prep
217 %setup -q
218 %patch0 -p1
219 %patch1 -p1
220 %patch2 -p1
221
222 %patch6 -p1
223
224 %patch20 -p1
225
226 %patch28 -p1
227
228 # use system libs:
229 # freetype 2.13.0
230 %{?with_system_freetype:%{__rm} -r freetype}
231 # jbig2dec 0.20
232 %{?with_system_jbig2dec:%{__rm} -r jbig2dec}
233 # (unmodified) libpng 1.6.39 and zlib 1.2.13
234 %{__rm} -r libpng zlib
235 # libjpeg (9e with additional CLAMP_DC) is built with different configuration (D_MAX_BLOCKS_IN_MCU=64)
236 %{?with_system_libjpeg:%{__rm} -r jpeg}
237 # lcms2mt is thread safe version of lcms2 2.10
238 %{?with_system_lcms2:%{__rm} -r lcms2mt}
239 # openjpeg 2.4.0
240 %{?with_system_openjp2:%{__rm} -r openjpeg}
241 # tesseract 5.0.0-alpha-20201231, leptonica 1.81.0
242 %{?with_system_tesseract:%{__rm} -r tesseract leptonica}
243 # libtiff 4.5.0rc2
244 %{?with_system_libtiff:%{__rm} -r tiff}
245
246 %build
247 %{__aclocal}
248 %{__autoconf}
249 %configure \
250         %{!?with_cairo:--disable-cairo} \
251         --disable-compile-inits \
252         --enable-dynamic --disable-hidden-visibility \
253         --with-drivers=ALL \
254         --with-fontpath="%{_datadir}/fonts:%{_datadir}/fonts/Type1" \
255         --with-ijs \
256         --with-jbig2dec \
257         --with-pdftoraster \
258         %{?with_system_libtiff:--with-system-libtiff} \
259         --with-x
260
261 cd ijs
262 %{__libtoolize}
263 %{__aclocal}
264 %{__autoconf}
265 %{__automake}
266 %configure \
267         --enable-shared
268 %{__make}
269 cd ..
270
271 %{__make} -j1 so \
272         docdir=%{_docdir}/%{name}-%{version}
273
274 %{__make} -j1 \
275         docdir=%{_docdir}/%{name}-%{version}
276
277 %install
278 rm -rf $RPM_BUILD_ROOT
279
280 %{__make} soinstall \
281         DESTDIR=$RPM_BUILD_ROOT \
282         docdir=%{_docdir}/%{name}-%{version}
283
284 %{__make} install \
285         DESTDIR=$RPM_BUILD_ROOT \
286         docdir=%{_docdir}/%{name}-%{version}
287
288 %{__make} -C ijs install \
289         DESTDIR=$RPM_BUILD_ROOT
290
291 cp -p base/gserrors.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
292
293 cp -p LICENSE $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
294
295 %{__rm} $RPM_BUILD_ROOT%{_bindir}/*.sh \
296         $RPM_BUILD_ROOT%{_mandir}/man1/{ps2pdf1{2,3},eps2eps}.1
297
298 echo ".so gs.1"     > $RPM_BUILD_ROOT%{_mandir}/man1/ghostscript.1
299 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ps2pdf12.1
300 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ps2pdf13.1
301 echo ".so ps2ps.1"  > $RPM_BUILD_ROOT%{_mandir}/man1/eps2eps.1
302 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gsbj.1
303 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gsdj.1
304 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gsdj500.1
305 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gslj.1
306
307 bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
308 %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.ghostscript-non-english-man-pages
309
310 ln -sf gs $RPM_BUILD_ROOT%{_bindir}/gsc
311 ln -sf gs $RPM_BUILD_ROOT%{_bindir}/ghostscript
312
313 %clean
314 rm -rf $RPM_BUILD_ROOT
315
316 %post   -p /sbin/ldconfig
317 %postun -p /sbin/ldconfig
318
319 %post   ijs -p /sbin/ldconfig
320 %postun ijs -p /sbin/ldconfig
321
322 %files
323 %defattr(644,root,root,755)
324 %attr(755,root,root) %{_bindir}/dvipdf
325 %attr(755,root,root) %{_bindir}/eps2eps
326 %attr(755,root,root) %{_bindir}/ghostscript
327 %attr(755,root,root) %{_bindir}/gs
328 %attr(755,root,root) %{_bindir}/gsbj
329 %attr(755,root,root) %{_bindir}/gsc
330 %attr(755,root,root) %{_bindir}/gsdj
331 %attr(755,root,root) %{_bindir}/gsdj500
332 %attr(755,root,root) %{_bindir}/gslj
333 %attr(755,root,root) %{_bindir}/gslp
334 %attr(755,root,root) %{_bindir}/gsnd
335 %attr(755,root,root) %{_bindir}/pdf2dsc
336 %attr(755,root,root) %{_bindir}/pdf2ps
337 %attr(755,root,root) %{_bindir}/pf2afm
338 %attr(755,root,root) %{_bindir}/pfbtopfa
339 %attr(755,root,root) %{_bindir}/printafm
340 %attr(755,root,root) %{_bindir}/ps2ascii
341 %attr(755,root,root) %{_bindir}/ps2epsi
342 %attr(755,root,root) %{_bindir}/ps2pdf
343 %attr(755,root,root) %{_bindir}/ps2pdf12
344 %attr(755,root,root) %{_bindir}/ps2pdf13
345 %attr(755,root,root) %{_bindir}/ps2pdf14
346 %attr(755,root,root) %{_bindir}/ps2pdfwr
347 %attr(755,root,root) %{_bindir}/ps2ps
348 %attr(755,root,root) %{_bindir}/ps2ps2
349 %attr(755,root,root) %{_bindir}/pphs
350 %attr(755,root,root) %{_libdir}/libgs.so.*.*
351 %attr(755,root,root) %ghost %{_libdir}/libgs.so.10
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(es) %{_mandir}/es/man1/*
387 %lang(fr) %{_mandir}/fr/man1/*
388 %lang(pl) %{_mandir}/pl/man1/*
389
390 %files doc
391 %defattr(644,root,root,755)
392 %doc %{_docdir}/%{name}-%{version}
393
394 %if %{with gtk}
395 %files gtk
396 %defattr(644,root,root,755)
397 %attr(755,root,root) %{_bindir}/gsx
398 %endif
399
400 %files x11
401 %defattr(644,root,root,755)
402 %dir %{_libdir}/%{name}/%{version}
403 %attr(755,root,root) %{_libdir}/%{name}/%{version}/X11.so
404
405 %files devel
406 %defattr(644,root,root,755)
407 %attr(755,root,root) %{_libdir}/libgs.so
408 %{_includedir}/ghostscript
409
410 %files ijs
411 %defattr(644,root,root,755)
412 %doc ijs/README
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
416
417 %files ijs-devel
418 %defattr(644,root,root,755)
419 %attr(755,root,root) %{_libdir}/libijs.so
420 %{_libdir}/libijs.la
421 %{_includedir}/ijs
422 %{_pkgconfigdir}/ijs.pc
423
424 %files ijs-static
425 %defattr(644,root,root,755)
426 %{_libdir}/libijs.a
This page took 0.064862 seconds and 4 git commands to generate.