# http://dl.sourceforge.net/djvu/gsdjvu-1.3.tar.gz (or newer)
#
# Conditional build:
-%bcond_without cairo # disable cairo support (for cairo bootstrap)
-%bcond_without system_freetype # build with included freetype
-%bcond_without system_jbig2dec # build with included jbig2dec
-%bcond_without system_lcms2 # build with included lcms2
-%bcond_with svga # svgalib display support (vgalib,lvga256 devices) [broken in sources]
+%bcond_without cairo # cairo support (disable for cairo bootstrap)
+%bcond_without system_freetype # system freetype
+%bcond_without system_jbig2dec # system jbig2dec
+%bcond_with system_libjpeg # system libjpeg (incompatible with D_MAX_BLOCKS_IN_MCU=64 variant)
+%bcond_with system_libtiff # system libtiff (incompatible with modified libjpeg)
+%bcond_without system_openjp2 # system openjpeg2
+%bcond_with system_lcms2 # build with included lcms2 (which is thread safe)
%bcond_without gtk # gsx (GTK+ based frontend)
%bcond_without texdocs # skip tetex BRs
Summary(pl.UTF-8): Bezpłatny interpreter i renderer PostScriptu i PDF
Summary(tr.UTF-8): PostScript & PDF yorumlayıcı ve gösterici
Name: ghostscript
-Version: 9.20
+Version: 10.02.0
Release: 1
License: AGPL v3+
Group: Applications/Graphics
#Source0Download: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases
-Source0: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs920/%{name}-%{version}.tar.xz
-# Source0-md5: 8f3d383d48da22345937b66b01ab2960
+Source0: https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10020/%{name}-%{version}.tar.xz
+# Source0-md5: 80c1cdfada72f2eb5987dc0d590ea5b2
Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
# Source1-md5: 9b5953aa0cc155f4364f20036b848585
Patch0: %{name}-missquotes.patch
-Patch1: %{name}-setuid.patch
+Patch1: %{name}-a4.patch
+Patch2: ijs-pkgconfig.patch
-Patch3: %{name}-svga-shared.patch
Patch6: %{name}-gdevcd8-fixes.patch
-Patch8: %{name}-zlib.patch
# fedora
Patch20: %{name}-scripts.patch
-Patch21: %{name}-runlibfileifexists.patch
-Patch27: %{name}-Fontmap.local.patch
+
Patch28: %{name}-iccprofiles-initdir.patch
URL: http://www.ghostscript.com/
-BuildRequires: autoconf >= 2.57
+BuildRequires: autoconf >= 2.63
BuildRequires: automake >= 1.6
%{?with_cairo:BuildRequires: cairo-devel >= 1.2.0}
+BuildRequires: cups-devel >= 1.5
BuildRequires: dbus-devel
BuildRequires: docbook-style-dsssl
BuildRequires: fontconfig-devel
-%{?with_system_freetype:BuildRequires: freetype-devel >= 1:2.6}
+%{?with_system_freetype:BuildRequires: freetype-devel >= 1:2.10.4}
%{?with_gtk:BuildRequires: gtk+3-devel >= 3.0}
-%{?with_system_jbig2dec:BuildRequires: jbig2dec-devel >= 0.12}
+%{?with_system_jbig2dec:BuildRequires: jbig2dec-devel >= 0.19}
%{?with_system_lcms2:BuildRequires: lcms2-devel >= 2.6}
BuildRequires: libidn-devel
+%{?with_system_libjpeg:BuildRequires: libjpeg-devel >= 9c}
BuildRequires: libpaper-devel
-BuildRequires: libpng-devel >= 2:1.6.17
+BuildRequires: libpng-devel >= 2:1.6.37
BuildRequires: libstdc++-devel
-BuildRequires: libtiff-devel >= 4.0.1
+%{?with_system_libtiff:BuildRequires: libtiff-devel >= 4.2.0}
BuildRequires: libtool
+%{?with_system_openjp2:BuildRequires: openjpeg2-devel}
BuildRequires: pkgconfig
-# Required by 'gdevvglb' device.
-%{?with_svga:BuildRequires: svgalib-devel}
+BuildRequires: rpm-build >= 4.6
BuildRequires: tar >= 1:1.22
# for documentation regeneration
%if %{with texdocs}
BuildRequires: tetex
BuildRequires: tetex-dvips
%endif
+BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXext-devel
BuildRequires: xorg-lib-libXt-devel
BuildRequires: xz
-BuildRequires: zlib-devel >= 1.2.8
+BuildRequires: zlib-devel >= 1.2.11
+%{?with_system_freetype:Requires: freetype >= 1:2.10.4}
+%{?with_system_jbig2dec:Requires: jbig2dec >= 0.19}
%{?with_system_lcms2:Requires: lcms2 >= 2.6}
-Obsoletes: ghostscript-afpl
-Obsoletes: ghostscript-esp
-Obsoletes: ghostscript-gpl
+%{?with_system_libjpeg:Requires: libjpeg >= 9c}
+Requires: libpng >= 2:1.6.37
+%{?with_system_libtiff:Requires: libtiff >= 4.2.0}
+Requires: zlib >= 1.2.11
+Obsoletes: ghostscript-afpl < 8.54
+Obsoletes: ghostscript-esp < 8.50
+Obsoletes: ghostscript-gpl < 8.51
+Obsoletes: ghostscript-svga < 9.24
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _ulibdir %{_prefix}/lib
Summary(pl.UTF-8): Ghostscript z konsolą GTK+
Group: Applications/Graphics
Requires: %{name} = %{version}-%{release}
-Obsoletes: ghostscript-afpl-gtk
-Obsoletes: ghostscript-esp-gtk
-Obsoletes: ghostscript-gpl-gtk
+Obsoletes: ghostscript-afpl-gtk < 8.54
+Obsoletes: ghostscript-esp-gtk < 8.50
+Obsoletes: ghostscript-gpl-gtk < 8.51
%description gtk
Ghostscript with GTK+ console.
%description gtk -l pl.UTF-8
Ghostscript z konsolą GTK+.
-%package svga
-Summary: SVGAlib drivers for Ghostscript
-Summary(pl.UTF-8): Sterowniki SVGAlib dla Ghostscripta
-Group: Applications/Graphics
-Requires: %{name} = %{version}-%{release}
-
-%description svga
-SVGAlib output drivers for Ghostscript: lvga256, vgalib.
-
-%description svga -l pl.UTF-8
-Sterowniki wyjściowe SVGAlib dla Ghostscripta: lvga256, vgalib.
-
%package x11
Summary: X Window System drivers for Ghostscript
Summary(pl.UTF-8): Sterowniki systemu X Window dla Ghostscripta
Summary(pl.UTF-8): Pliki nagłówkowe libgs
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
-Obsoletes: ghostscript-afpl-devel
-Obsoletes: ghostscript-esp-devel
+Obsoletes: ghostscript-afpl-devel < 8.54
+Obsoletes: ghostscript-esp-devel < 8.50
%description devel
Header files for libgs - ghostscript shared library.
%package doc
Summary: Documentation for ghostscript
Group: Documentation
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc
The documentation files that come with ghostscript.
Summary(pl.UTF-8): Pliki dla programistów IJS
Group: Development/Libraries
Requires: %{name}-ijs = %{version}-%{release}
-Obsoletes: ghostscript-afpl-ijs-devel
-Obsoletes: ghostscript-esp-ijs-devel
+Obsoletes: ghostscript-afpl-ijs-devel < 8.54
+Obsoletes: ghostscript-esp-ijs-devel < 8.50
%description ijs-devel
IJS development files.
Summary(pl.UTF-8): Statyczna biblioteka IJS
Group: Development/Libraries
Requires: %{name}-ijs-devel = %{version}-%{release}
-Obsoletes: ghostscript-afpl-ijs-static
-Obsoletes: ghostscript-esp-ijs-static
+Obsoletes: ghostscript-afpl-ijs-static < 8.54
+Obsoletes: ghostscript-esp-ijs-static < 8.50
%description ijs-static
Static libijs library.
%setup -q
%patch0 -p1
%patch1 -p1
-
-%patch3 -p1
+%patch2 -p1
%patch6 -p1
-%patch8 -p1
%patch20 -p1
-%patch21 -p1
-%patch27 -p1
%patch28 -p1
-%build
# use system libs:
-# freetype 2.5.5 + few pre-2.6 fixes from git
+# freetype 2.10.4
%{?with_system_freetype:%{__rm} -r freetype}
-# jbig2dec 0.12 + minor updates
+# jbig2dec 0.19
%{?with_system_jbig2dec:%{__rm} -r jbig2dec}
-# (unmodified) libpng 1.6.17 and zlib 1.2.8
+# (unmodified) libpng 1.6.37 and zlib 1.2.11
%{__rm} -r libpng zlib
-# (unmodified) libjpeg 9a is built with different configuration (D_MAX_BLOCKS_IN_MCU=64)
-# openjpeg is 2.1.0 + fixes; stick to bundled for now
-# lcms2 is 2.6 with some minor future changes (one already in 2.7, two post-2.7, extra_xform.h ???)
-%{?with_system_lcms2:%{__rm} -r lcms2}
+# libjpeg (9d with additional CLAMP_DC) is built with different configuration (D_MAX_BLOCKS_IN_MCU=64)
+%{?with_system_libjpeg:%{__rm} -r jpeg}
+# lcms2mt is thread safe version of lcms2 2.10
+%{?with_system_lcms2:%{__rm} -r lcms2mt}
+# leptonica 1.81.0-git (for tesseract), no switch to use system
+# openjpeg 2.4.0
+%{?with_system_openjp2:%{__rm} -r openjpeg}
+# tesseract 5.0.0-alpha, no switch to use system
+
+%build
%{__aclocal}
%{__autoconf}
%configure \
- CFLAGS="%{rpmcflags} -DA4" \
%{!?with_cairo:--disable-cairo} \
--disable-compile-inits \
- --enable-dynamic \
- --with-drivers=ALL%{?with_svga:,svga} \
+ --enable-dynamic --disable-hidden-visibility \
+ --with-drivers=ALL \
--with-fontpath="%{_datadir}/fonts:%{_datadir}/fonts/Type1" \
--with-ijs \
--with-jbig2dec \
--with-pdftoraster \
- --with-system-libtiff \
+ %{?with_system_libtiff:--with-system-libtiff} \
--with-x
cd ijs
cp -p base/gserrors.h $RPM_BUILD_ROOT%{_includedir}/ghostscript
+cp -p LICENSE $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+
%{__rm} $RPM_BUILD_ROOT%{_bindir}/*.sh \
- $RPM_BUILD_ROOT%{_mandir}/man1/{ps2pdf1{2,3},eps2eps}.1 \
- $RPM_BUILD_ROOT%{_mandir}/de/man1/{ps2pdf1{2,3},eps2eps}.1
+ $RPM_BUILD_ROOT%{_mandir}/man1/{ps2pdf1{2,3},eps2eps}.1
echo ".so gs.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ghostscript.1
echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/man1/ps2pdf12.1
echo ".so gslp.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gsdj500.1
echo ".so gslp.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gslj.1
-echo ".so ps2ps.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/eps2eps.1
-echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/ps2pdf12.1
-echo ".so ps2pdf.1" > $RPM_BUILD_ROOT%{_mandir}/de/man1/ps2pdf13.1
-
bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
%{__rm} $RPM_BUILD_ROOT%{_mandir}/README.ghostscript-non-english-man-pages
-#mv -f $RPM_BUILD_ROOT%{_bindir}/{gsc,gs}
ln -sf gs $RPM_BUILD_ROOT%{_bindir}/gsc
ln -sf gs $RPM_BUILD_ROOT%{_bindir}/ghostscript
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/dvipdf
%attr(755,root,root) %{_bindir}/eps2eps
-%attr(755,root,root) %{_bindir}/font2c
%attr(755,root,root) %{_bindir}/ghostscript
%attr(755,root,root) %{_bindir}/gs
%attr(755,root,root) %{_bindir}/gsbj
%attr(755,root,root) %{_bindir}/ps2ps
%attr(755,root,root) %{_bindir}/ps2ps2
%attr(755,root,root) %{_bindir}/pphs
-%attr(755,root,root) %{_bindir}/wftopfa
%attr(755,root,root) %{_libdir}/libgs.so.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgs.so.9
-%dir %{_libdir}/%{name}
-%dir %{_libdir}/%{name}/%{version}
+%attr(755,root,root) %ghost %{_libdir}/libgs.so.10
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/%{version}
%{_datadir}/%{name}/%{version}/Resource
%{_datadir}/%{name}/%{version}/iccprofiles
%dir %{_datadir}/%{name}/%{version}/lib
-%{_datadir}/%{name}/%{version}/examples
%{_datadir}/%{name}/%{version}/lib/*.ppd
%{_datadir}/%{name}/%{version}/lib/*.ps
%{_datadir}/%{name}/%{version}/lib/*.rpd
-%{_datadir}/%{name}/%{version}/lib/*.src
%{_datadir}/%{name}/%{version}/lib/*.upp
%{_datadir}/%{name}/%{version}/lib/*.x[bp]m
%{_mandir}/man1/dvipdf.1*
%{_mandir}/man1/eps2eps.1*
-%{_mandir}/man1/font2c.1*
%{_mandir}/man1/ghostscript.1*
%{_mandir}/man1/gs.1*
%{_mandir}/man1/gsbj.1*
%{_mandir}/man1/ps2pdf14.1*
%{_mandir}/man1/ps2pdfwr.1*
%{_mandir}/man1/ps2ps.1*
-%{_mandir}/man1/wftopfa.1*
%lang(cs) %{_mandir}/cs/man1/*
-%lang(de) %{_mandir}/de/man1/*
%lang(es) %{_mandir}/es/man1/*
%lang(fr) %{_mandir}/fr/man1/*
%lang(pl) %{_mandir}/pl/man1/*
%files doc
+%defattr(644,root,root,755)
%doc %{_docdir}/%{name}-%{version}
%if %{with gtk}
%attr(755,root,root) %{_bindir}/gsx
%endif
-%if %{with svga}
-%files svga
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/%{version}/lvga256.so
-%attr(755,root,root) %{_libdir}/%{name}/%{version}/vgalib.so
-%endif
-
%files x11
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/%{version}/X11.so