]> git.pld-linux.org Git - packages/ghostscript.git/blob - ghostscript.spec
rel 2; add bunch of fedora fixes
[packages/ghostscript.git] / ghostscript.spec
1 # TODO:
2 # - fix svga bcond
3 # - add djvu driver:
4 #   http://dl.sourceforge.net/djvu/gsdjvu-1.3.tar.gz (or newer)
5 #
6 # Conditional build:
7 %bcond_without  cairo           # disable cairo support (for cairo bootstrap)
8 %bcond_without  system_jbig2dec # build with included jbig2dec
9 %bcond_with     svga            # svgalib display support (vgalib,lvga256 devices) [broken in sources]
10 %bcond_without  gtk             # gsx (GTK+ based frontend)
11
12 Summary:        PostScript & PDF interpreter and renderer
13 Summary(de.UTF-8):      PostScript & PDF Interpreter und Renderer
14 Summary(fr.UTF-8):      Interpréteur et visualisateur PostScript & PDF
15 Summary(ja.UTF-8):      PostScript インタープリタ・レンダラー
16 Summary(pl.UTF-8):      Bezpłatny interpreter i renderer PostScriptu i PDF
17 Summary(tr.UTF-8):      PostScript & PDF yorumlayıcı ve gösterici
18 Name:           ghostscript
19 Version:        9.04
20 Release:        2
21 License:        GPL v3+
22 Group:          Applications/Graphics
23 Source0:        http://downloads.sourceforge.net/ghostscript/%{name}-%{version}.tar.bz2
24 # Source0-md5:  9f6899e821ab6d78ab2c856f10fa3023
25 Source1:        http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
26 # Source1-md5:  9b5953aa0cc155f4364f20036b848585
27 Patch0:         %{name}-missquotes.patch
28 Patch1:         %{name}-setuid.patch
29 Patch2:         %{name}-time_h.patch
30 Patch5:         %{name}-cups-sh.patch
31 Patch6:         %{name}-gdevcd8-fixes.patch
32 Patch7:         %{name}-fPIC.patch
33 Patch8:         %{name}-zlib.patch
34 Patch9:         %{name}-git.patch
35
36 # fedora
37 Patch20: ghostscript-scripts.patch
38 Patch21: ghostscript-runlibfileifexists.patch
39 Patch22: ghostscript-cups-rgbw.patch
40 Patch23: ghostscript-glyph-crash.patch
41 Patch24: ghostscript-jbig2dec-nullderef.patch
42 Patch25: ghostscript-SEAC.patch
43 Patch26: ghostscript-cups-filters.patch
44 Patch27: ghostscript-Fontmap.local.patch
45 Patch28: ghostscript-iccprofiles-initdir.patch
46 Patch29: ghostscript-gdevcups-debug-uninit.patch
47 Patch30: ghostscript-pxl-landscape.patch
48
49 URL:            http://www.ghostscript.com/
50 BuildRequires:  autoconf >= 2.57
51 BuildRequires:  automake >= 1.6
52 %{?with_cairo:BuildRequires:    cairo-devel >= 1.2.0}
53 BuildRequires:  cups-devel
54 BuildRequires:  dbus-devel
55 BuildRequires:  docbook-style-dsssl
56 BuildRequires:  fontconfig-devel
57 BuildRequires:  freetype-devel >= 2.0
58 %{?with_gtk:BuildRequires:      gtk+2-devel >= 1:2.0.0}
59 %{?with_system_jbig2dec:BuildRequires:  jbig2dec-devel}
60 BuildRequires:  libidn-devel
61 BuildRequires:  libpaper-devel
62 BuildRequires:  libpng-devel >= 1.2.42
63 BuildRequires:  libstdc++-devel
64 BuildRequires:  libtiff-devel >= 3.9.2
65 BuildRequires:  libtool
66 BuildRequires:  pkgconfig
67 # Required by 'gdevvglb' device.
68 %{?with_svga:BuildRequires:     svgalib-devel}
69 BuildRequires:  tar >= 1:1.22
70 # for documentation regeneration
71 BuildRequires:  tetex
72 BuildRequires:  tetex-dvips
73 BuildRequires:  xorg-lib-libXext-devel
74 BuildRequires:  xorg-lib-libXt-devel
75 BuildRequires:  zlib-devel >= 1.2.3
76 Obsoletes:      ghostscript-afpl
77 Obsoletes:      ghostscript-esp
78 Obsoletes:      ghostscript-gpl
79 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80
81 %define         _ulibdir        %{_prefix}/lib
82
83 %description
84 cos nGhostscript is a PostScript interpreter. It can render both
85 PostScript and PDF compliant files to devices which include an X
86 window, many printer formats (including support for color printers),
87 and popular graphics file formats.
88
89 %description -l de.UTF-8
90 Ghostscipt ist ein PostScript-Interpretierer. Er kann sowohl
91 PostScript als auch PDF-konforme Dateien an Geräte ausgeben, zu denen
92 ein X-Fenster, viele Druckerformate (einschließlich Support für
93 Farbdrucker) und gängige Grafikdateiformate zählen.
94
95 %description -l fr.UTF-8
96 Ghostscript est un interpréteur PostScript. Il peut rendre des
97 fichiers PostScript ou PDF sur des périphériques dont une fenêtre X,de
98 nombreux types d'imprimantes (dont un support pour imprimantes
99 couleur), et des formats de fichiers graphiques populaires.
100
101 %description -l ja.UTF-8
102 Ghostscript は PostScript インタープリタです。ポストスクリプトと PDF をレンダリングし、X window
103 や他のプリンタフォーマットで出力 します。このパッケージは日本語対応しています。
104
105 %description -l pl.UTF-8
106 Ghostcript jest interpreterem PostScriptu, języka używanego do opisu
107 formatu dokumentu. Ghostscript potrafi przetworzyć dokument w formacie
108 PostScript i PDF na szereg postaci wyjściowych: drukarki (włączając
109 kolorowe), okno X-Window i popularne formaty graficzne.
110
111 %description -l tr.UTF-8
112 GhostScript, PostScript ve PDF uyumlu dosyaları, X penceresinde
113 gösterebilir ve birçok yazıcının (renkli yazıcılar dahil) basabileceği
114 biçime getirebilir.
115
116 %package cups
117 Summary:        Ghostscript CUPS files
118 Summary(pl.UTF-8):      Pliki Ghostscripta dla CUPS-a
119 Group:          Applications/Graphics
120 Requires:       %{name} = %{version}-%{release}
121
122 %description cups
123 This package contains CUPS files provided by ghostscript.
124
125 %description cups -l pl.UTF-8
126 Ten pakiet zawiera pliki dla CUPS-a dostarczane przez ghostscript.
127
128 %package gtk
129 Summary:        Ghostscript with GTK+ console
130 Summary(pl.UTF-8):      Ghostscript z konsolą GTK+
131 Group:          Applications/Graphics
132 Requires:       %{name} = %{version}-%{release}
133 Obsoletes:      ghostscript-afpl-gtk
134 Obsoletes:      ghostscript-esp-gtk
135 Obsoletes:      ghostscript-gpl-gtk
136
137 %description gtk
138 Ghostscript with GTK+ console.
139
140 %description gtk -l pl.UTF-8
141 Ghostscript z konsolą GTK+.
142
143 %package x11
144 Summary:        X Window System drivers for Ghostscript
145 Summary(pl.UTF-8):      Sterowniki systemu X Window dla Ghostscripta
146 Group:          Applications/Graphics
147 Requires:       %{name} = %{version}-%{release}
148
149 %description x11
150 X Window System output drivers for Ghostscript: x11, x11alpha.
151
152 %description x11 -l pl.UTF-8
153 Sterowniki wyjściowe systemu X Window dla Ghostscripta: x11, x11alpha.
154
155 %package devel
156 Summary:        libgs header files
157 Summary(pl.UTF-8):      Pliki nagłówkowe libgs
158 Group:          Development/Libraries
159 Requires:       %{name} = %{version}-%{release}
160 Obsoletes:      ghostscript-afpl-devel
161 Obsoletes:      ghostscript-esp-devel
162
163 %description devel
164 Header files for libgs - ghostscript shared library.
165
166 %description devel -l pl.UTF-8
167 Pliki nagłówkowe libgs - współdzielonej biblioteki ghostscript.
168
169 %package ijs-devel
170 Summary:        IJS development files
171 Summary(pl.UTF-8):      Pliki dla programistów IJS
172 Group:          Development/Libraries
173 Requires:       %{name} = %{version}-%{release}
174 Obsoletes:      ghostscript-afpl-ijs-devel
175 Obsoletes:      ghostscript-esp-ijs-devel
176
177 %description ijs-devel
178 IJS development files.
179
180 %description ijs-devel -l pl.UTF-8
181 Pliki do tworzenia programów z użyciem biblioteki IJS.
182
183 %package ijs-static
184 Summary:        Static libijs library
185 Summary(pl.UTF-8):      Statyczna biblioteka IJS
186 Group:          Development/Libraries
187 Requires:       %{name}-ijs-devel = %{version}-%{release}
188 Obsoletes:      ghostscript-afpl-ijs-static
189 Obsoletes:      ghostscript-esp-ijs-static
190
191 %description ijs-static
192 Static libijs library.
193
194 %description ijs-static -l pl.UTF-8
195 Statyczna wersja biblioteki IJS.
196
197 %prep
198 %setup -q
199 %patch0 -p1
200 %patch1 -p1
201 %patch2 -p1
202
203 %patch5 -p1
204 %patch6 -p1
205 %patch7 -p1
206 %patch8 -p1
207 %patch9 -p2
208
209 %patch20 -p1
210 %patch21 -p1
211 %patch22 -p1
212 %patch23 -p1
213 %patch24 -p1
214 %patch25 -p1
215 %patch26 -p1
216 %patch27 -p1
217 %patch28 -p1
218 %patch29 -p1
219 %patch30 -p1
220
221 %build
222 %if %{with system_jbig2dec}
223 %{__rm} -r jbig2dec
224 %endif
225 # use system libs (sources contain unmodified zlib 1.2.3 and libpng 1.2.42)
226 %{__rm} -r libpng zlib
227 # jpeg is built with different configuration (D_MAX_BLOCKS_IN_MCU=64), jasper and lcms are modified
228 cd jasper
229 %{__libtoolize}
230 %{__aclocal}
231 %{__autoconf}
232 %{__autoheader}
233 %{__automake}
234 cd ..
235 %{__aclocal}
236 %{__autoconf}
237 %configure \
238         CFLAGS="%{rpmcflags} -DA4" \
239         %{!?with_cairo:--disable-cairo} \
240         --disable-compile-inits \
241         --enable-dynamic \
242         --with-drivers=ALL%{?with_svga:,vgalib,lvga256} \
243         --with-fontpath="%{_datadir}/fonts:%{_datadir}/fonts/Type1" \
244         --with-ijs \
245         --with-install-cups \
246         --with-jbig2dec \
247         --with-jasper \
248         --with-pdftoraster \
249         --with-system-libtiff \
250         --with-x
251
252 cd ijs
253 %{__libtoolize}
254 %{__aclocal}
255 %{__autoconf}
256 %{__automake}
257 %configure \
258         --enable-shared
259 %{__make}
260 cd ..
261
262 %{__make} -j1 so \
263         docdir=%{_docdir}/%{name}-%{version}
264
265 %{__make} -j1 \
266         docdir=%{_docdir}/%{name}-%{version}
267
268 %install
269 rm -rf $RPM_BUILD_ROOT
270
271 %{__make} soinstall \
272         DESTDIR=$RPM_BUILD_ROOT \
273         docdir=%{_docdir}/%{name}-%{version}
274
275 %{__make} install \
276         DESTDIR=$RPM_BUILD_ROOT \
277         docdir=%{_docdir}/%{name}-%{version}
278
279 %{__make} -C ijs install \
280         DESTDIR=$RPM_BUILD_ROOT
281
282 %{__rm} $RPM_BUILD_ROOT%{_bindir}/*.sh \
283         $RPM_BUILD_ROOT%{_mandir}/man1/{ps2pdf1{2,3},eps2eps}.1 \
284         $RPM_BUILD_ROOT%{_mandir}/de/man1/{ps2pdf1{2,3},eps2eps}.1
285
286 echo ".so gs.1"     > $RPM_BUILD_ROOT%{_mandir}/man1/ghostscript.1
287 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ps2pdf12.1
288 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ps2pdf13.1
289 echo ".so ps2ps.1"  > $RPM_BUILD_ROOT%{_mandir}/man1/eps2eps.1
290 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gsbj.1
291 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gsdj.1
292 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gsdj500.1
293 echo ".so gslp.1"   > $RPM_BUILD_ROOT%{_mandir}/man1/gslj.1
294
295 echo ".so ps2ps.1"  > $RPM_BUILD_ROOT%{_mandir}/de/man1/eps2eps.1
296 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/ps2pdf12.1
297 echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/ps2pdf13.1
298
299 bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
300
301 #mv -f $RPM_BUILD_ROOT%{_bindir}/{gsc,gs}
302 ln -sf gs $RPM_BUILD_ROOT%{_bindir}/gsc
303 ln -sf gs $RPM_BUILD_ROOT%{_bindir}/ghostscript
304 ln -s gstoraster $RPM_BUILD_ROOT%{_ulibdir}/cups/filter/pdftoraster
305 ln -s gstoraster $RPM_BUILD_ROOT%{_ulibdir}/cups/filter/pstoraster
306
307 %clean
308 rm -rf $RPM_BUILD_ROOT
309
310 %post   -p /sbin/ldconfig
311 %postun -p /sbin/ldconfig
312
313 %files
314 %defattr(644,root,root,755)
315 %doc %{_docdir}/%{name}-%{version}
316 %attr(755,root,root) %{_bindir}/dumphint
317 %attr(755,root,root) %{_bindir}/dvipdf
318 %attr(755,root,root) %{_bindir}/eps2eps
319 %attr(755,root,root) %{_bindir}/font2c
320 %attr(755,root,root) %{_bindir}/ghostscript
321 %attr(755,root,root) %{_bindir}/gs
322 %attr(755,root,root) %{_bindir}/gsbj
323 %attr(755,root,root) %{_bindir}/gsc
324 %attr(755,root,root) %{_bindir}/gsdj
325 %attr(755,root,root) %{_bindir}/gsdj500
326 %attr(755,root,root) %{_bindir}/gslj
327 %attr(755,root,root) %{_bindir}/gslp
328 %attr(755,root,root) %{_bindir}/gsnd
329 %attr(755,root,root) %{_bindir}/ijs_client_example
330 %attr(755,root,root) %{_bindir}/ijs_server_example
331 %attr(755,root,root) %{_bindir}/pdf2dsc
332 %attr(755,root,root) %{_bindir}/pdf2ps
333 %attr(755,root,root) %{_bindir}/pdfopt
334 %attr(755,root,root) %{_bindir}/pf2afm
335 %attr(755,root,root) %{_bindir}/pfbtopfa
336 %attr(755,root,root) %{_bindir}/printafm
337 %attr(755,root,root) %{_bindir}/ps2ascii
338 %attr(755,root,root) %{_bindir}/ps2epsi
339 %attr(755,root,root) %{_bindir}/ps2pdf
340 %attr(755,root,root) %{_bindir}/ps2pdf12
341 %attr(755,root,root) %{_bindir}/ps2pdf13
342 %attr(755,root,root) %{_bindir}/ps2pdf14
343 %attr(755,root,root) %{_bindir}/ps2pdfwr
344 %attr(755,root,root) %{_bindir}/ps2ps
345 %attr(755,root,root) %{_bindir}/ps2ps2
346 %attr(755,root,root) %{_bindir}/pphs
347 %attr(755,root,root) %{_bindir}/wftopfa
348 %attr(755,root,root) %{_libdir}/libgs.so.*.*
349 %attr(755,root,root) %ghost %{_libdir}/libgs.so.9
350 %attr(755,root,root) %{_libdir}/libijs-*.so
351 %dir %{_libdir}/%{name}
352 %dir %{_libdir}/%{name}/%{version}
353 %dir %{_datadir}/%{name}
354 %dir %{_datadir}/%{name}/%{version}
355 %{_datadir}/%{name}/%{version}/Resource
356 %{_datadir}/%{name}/%{version}/iccprofiles
357 %dir %{_datadir}/%{name}/%{version}/lib
358 %{_datadir}/%{name}/%{version}/examples
359 %{_datadir}/%{name}/%{version}/lib/*.ppd
360 %{_datadir}/%{name}/%{version}/lib/*.ps
361 %{_datadir}/%{name}/%{version}/lib/*.rpd
362 %{_datadir}/%{name}/%{version}/lib/*.src
363 %{_datadir}/%{name}/%{version}/lib/*.upp
364 %{_datadir}/%{name}/%{version}/lib/*.x[bp]m
365 %{_mandir}/man1/dvipdf.1*
366 %{_mandir}/man1/eps2eps.1*
367 %{_mandir}/man1/font2c.1*
368 %{_mandir}/man1/ghostscript.1*
369 %{_mandir}/man1/gs.1*
370 %{_mandir}/man1/gsbj.1*
371 %{_mandir}/man1/gsdj.1*
372 %{_mandir}/man1/gsdj500.1*
373 %{_mandir}/man1/gslj.1*
374 %{_mandir}/man1/gslp.1*
375 %{_mandir}/man1/gsnd.1*
376 %{_mandir}/man1/pdf2dsc.1*
377 %{_mandir}/man1/pdf2ps.1*
378 %{_mandir}/man1/pdfopt.1*
379 %{_mandir}/man1/pf2afm.1*
380 %{_mandir}/man1/pfbtopfa.1*
381 %{_mandir}/man1/printafm.1*
382 %{_mandir}/man1/ps2ascii.1*
383 %{_mandir}/man1/ps2epsi.1*
384 %{_mandir}/man1/ps2pdf.1*
385 %{_mandir}/man1/ps2pdf12.1*
386 %{_mandir}/man1/ps2pdf13.1*
387 %{_mandir}/man1/ps2pdfwr.1*
388 %{_mandir}/man1/ps2ps.1*
389 %{_mandir}/man1/wftopfa.1*
390 %lang(cs) %{_mandir}/cs/man1/*
391 %lang(de) %{_mandir}/de/man1/*
392 %lang(es) %{_mandir}/es/man1/*
393 %lang(fr) %{_mandir}/fr/man1/*
394 %lang(pl) %{_mandir}/pl/man1/*
395
396 %files cups
397 %defattr(644,root,root,755)
398 %attr(755,root,root) %{_ulibdir}/cups/filter/gstoraster
399 %attr(755,root,root) %{_ulibdir}/cups/filter/pdftoraster
400 %attr(755,root,root) %{_ulibdir}/cups/filter/pstoraster
401 %attr(755,root,root) %{_ulibdir}/cups/filter/pstopxl
402 %{_datadir}/cups/model/pxlcolor.ppd
403 %{_datadir}/cups/model/pxlmono.ppd
404 %{_datadir}/cups/mime/gstoraster.convs
405
406 %if %{with gtk}
407 %files gtk
408 %defattr(644,root,root,755)
409 %attr(755,root,root) %{_bindir}/gsx
410 %endif
411
412 %files x11
413 %defattr(644,root,root,755)
414 %attr(755,root,root) %{_libdir}/%{name}/%{version}/X11.so
415
416 %files devel
417 %defattr(644,root,root,755)
418 %attr(755,root,root) %{_libdir}/libgs.so
419 %{_includedir}/ghostscript
420
421 %files ijs-devel
422 %defattr(644,root,root,755)
423 %attr(755,root,root) %{_bindir}/ijs-config
424 %attr(755,root,root) %{_libdir}/libijs.so
425 %{_libdir}/libijs.la
426 %{_includedir}/ijs
427 %{_pkgconfigdir}/ijs.pc
428 %{_mandir}/man1/ijs-config.1*
429
430 %files ijs-static
431 %defattr(644,root,root,755)
432 %{_libdir}/libijs.a
This page took 0.11259 seconds and 4 git commands to generate.