# TODO
-# - remove magick/quantum-private.h when koffice 1.6 is fixed not to use it
+# - unpackaged:
+# - pango (subpackage) DT_NEEDED: libpangocairo-1.0.so.0 libcairo.so.2 libpango-1.0.so.0 libgobject-2.0.so.0
+# %{modulesdir}/coders/pango.la
+# %{modulesdir}/coders/pango.so
#
# Conditional build:
%bcond_without djvu # without DJVU module
%bcond_without fpx # without FlashPIX module (which uses fpx library)
-%bcond_without graphviz # without Graphviz support
+%bcond_without gomp # without OpenMP support
+%bcond_without graphviz # without dot module (which uses GraphViz libraries)
%bcond_with gs # with PostScript support through ghostscript library (warning: breaks jpeg!)
%bcond_without jasper # without JPEG2000 module (which uses jasper library)
%bcond_without wmf # without WMF module (which uses libwmf library)
%bcond_without cxx # without Magick++
%bcond_without exr # without OpenEXR module
-#
+
%include /usr/lib/rpm/macros.perl
-%define ver 6.6.0
-%define pver 5
+%define ver 6.7.9
+%define pver 10
%define QuantumDepth 16
Summary: Image display, conversion, and manipulation under X
Summary(de.UTF-8): Darstellen, Konvertieren und Bearbeiten von Grafiken unter X
Summary(uk.UTF-8): Перегляд, конвертування та обробка зображень під X Window
Name: ImageMagick
Version: %{ver}%{?pver:.%{pver}}
-Release: 1
+Release: 0.1
Epoch: 1
License: Apache-like
Group: X11/Applications/Graphics
-Source0: http://www.imagemagick.org/download/%{name}-%{ver}-%{pver}.tar.bz2
-# Source0-md5: fb57509760a902af5bf535b8da15fdc7
+Source0: ftp://ftp.imagemagick.org/pub/ImageMagick/legacy/%{name}-%{ver}-%{pver}.tar.xz
+# Source0-md5: e6c4da963f7651674dca48f2b9f575bb
Patch0: %{name}-ac.patch
Patch1: %{name}-link.patch
Patch2: %{name}-libpath.patch
Patch3: %{name}-ldflags.patch
+Patch4: %{name}-lt.patch
+Patch5: agread-param.patch
URL: http://www.imagemagick.org/
-BuildRequires: OpenEXR-devel
-BuildRequires: autoconf >= 2.62
-BuildRequires: automake >= 1:1.9
+BuildRequires: OpenEXR-devel >= 1.0.6
+BuildRequires: autoconf >= 2.67
+BuildRequires: automake >= 1:1.11
BuildRequires: bzip2-devel >= 1.0.1
%{?with_djvu:BuildRequires: djvulibre-devel}
BuildRequires: expat-devel >= 1.95.7
+BuildRequires: fftw3-devel >= 3.0
+BuildRequires: fontconfig-devel >= 2.1.0
BuildRequires: freetype-devel >= 2.0.2-2
+%{?with_gomp:BuildRequires: gcc-c++ >= 6:4.2}
%{?with_gs:BuildRequires: ghostscript-devel}
-%{?with_graphviz:BuildRequires: graphviz-devel >= 2.6}
+%{?with_graphviz:BuildRequires: graphviz-devel >= 2.9.0}
%{?with_jasper:BuildRequires: jasper-devel >= 1.700.5}
BuildRequires: jbigkit-devel
-BuildRequires: lcms-devel
+BuildRequires: lcms2-devel >= 2.0
%{?with_fpx:BuildRequires: libfpx-devel >= 1.2.0.4-3}
-BuildRequires: libjpeg-devel
+%{?with_gomp:BuildRequires: libgomp-devel}
+BuildRequires: libjpeg-devel >= 6b
+BuildRequires: liblqr-devel >= 0.1.0
BuildRequires: libltdl-devel
BuildRequires: libpng-devel >= 1.0.8
-BuildRequires: librsvg-devel
+BuildRequires: librsvg-devel >= 2.9.0
BuildRequires: libstdc++-devel
BuildRequires: libtiff-devel
-BuildRequires: libtool >= 2:1.5
+BuildRequires: libtool >= 2:2.2
+BuildRequires: libwebp-devel
%{?with_wmf:BuildRequires: libwmf-devel >= 2:0.2.2}
BuildRequires: libxml2-devel >= 2.0
BuildRequires: perl-devel >= 1:5.8.0
BuildRequires: pkgconfig
BuildRequires: rpm-perlprov >= 4.1-13
BuildRequires: rpmbuild(macros) >= 1.315
+BuildRequires: tar >= 1:1.22
# only checked for, but only supplied scripts/txt2html is used
#BuildRequires: txt2html
BuildRequires: xorg-lib-libXext
+BuildRequires: xz
+BuildRequires: xz-devel
+BuildRequires: zlib-devel
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+Suggests: shared-color-profiles
Obsoletes: ImageMagick-coder-dps
Obsoletes: ImageMagick-coder-mpeg
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Summary(pl.UTF-8): Biblioteki ImageMagick
Summary(pt_BR.UTF-8): Bibliotecas dinâmicas do ImageMagick
Group: X11/Libraries
+Requires: fontconfig-libs >= 2.1.0
+Requires: liblqr >= 0.1.0
%description libs
ImageMagick libraries.
Summary(uk.UTF-8): Хедери та бібліотеки для програмування з ImageMagick
Group: X11/Development/Libraries
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
-Requires: bzip2-devel
-Requires: freetype-devel
-Requires: lcms-devel
-Requires: libjpeg-devel
+Requires: bzip2-devel >= 1.0.1
+Requires: fftw3-devel >= 3.0
+Requires: fontconfig-devel >= 2.1.0
+Requires: freetype-devel >= 2.0.2
+Requires: lcms2-devel >= 2.0
+%{?with_gomp:Requires: libgomp-devel}
+Requires: libjpeg-devel >= 6b
+Requires: liblqr-devel >= 0.1.0
Requires: libltdl-devel
Requires: libtiff-devel
Requires: xorg-lib-libXext-devel
Це окремий пакет зі статичними бібліотеками, які більше не входять до
складу ImageMagick-devel.
-%package perl
+%package -n perl-%{name}
Summary: Libraries and modules for access to ImageMagick from Perl
Summary(pl.UTF-8): Biblioteki i moduły Perla dla ImageMagick
Summary(pt_BR.UTF-8): Módulo perl para uso com o ImageMagick
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
Requires: perl-dirs
+Provides: ImageMagick-perl = %{epoch}:%{version}-%{release}
+Obsoletes: ImageMagick-perl
-%description perl
+%description -n perl-%{name}
This is the ImageMagick Perl support package. It perl modules and
support files for access to ImageMagick library from perl without
unuseful forking or such.
-%description perl -l pl.UTF-8
+%description -n perl-%{name} -l pl.UTF-8
Biblioteki i moduły umożliwiające korzystanie z ImageMagick z poziomu
Perla.
-%description perl -l pt_BR.UTF-8
+%description -n perl-%{name} -l pt_BR.UTF-8
Este pacote fornece um módulo perl para acessar funções do ImageMagick
em scripts Perl.
-%description perl -l ru.UTF-8
+%description -n perl-%{name} -l ru.UTF-8
Это пакет ImageMagick для поддержки perl. Он включает модули perl и
вспомогательные файлы для доступа к библиотеке ImageMagick из Perl.
-%description perl -l uk.UTF-8
+%description -n perl-%{name} -l uk.UTF-8
Це пакет ImageMagick для підтримки Perl. Він містить модулі Perl та
додаткові файли для доступу до бібліотеки ImageMagick з Perl.
Це окремий пакет зі статичними бібліотеками, які більше не входять до
складу ImageMagick-c++-devel.
+%package coder-caption
+Summary: Coder module for CAPTION image files
+Group: X11/Applications/Graphics
+URL: http://www.imagemagick.org/Usage/text/#caption
+Requires: %{name} = %{epoch}:%{version}-%{release}
+
+%description coder-caption
+Coder module to Read Text Caption.
+
%package coder-djvu
Summary: Coder module for DJVU files
Summary(pl.UTF-8): Moduł kodera dla plików DJVU
%description coder-djvu
Coder module for DJVU files.
-%description coder-djvu -l pl
+%description coder-djvu -l pl.UTF-8
Moduł kodera dla plików DJVU.
%package coder-dot
Summary(pl.UTF-8): Moduł kodera dla plików GraphViz DOT
Group: X11/Applications/Graphics
Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: graphviz >= 2.9.0
%description coder-dot
Coder module for GraphViz DOT files.
Summary(pl.UTF-8): Moduł kodera dla plików EXR ILM
Group: X11/Applications/Graphics
Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: OpenEXR >= 1.0.6
%description coder-exr
Coder module for ILM EXR files.
Summary(pl.UTF-8): Moduł kodera dla plików SVG (Scalable Vector Graphics)
Group: X11/Applications/Graphics
Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: librsvg >= 2.9.0
%description coder-svg
Coder module for SVG (Scalable Vector Graphics) files.
%description coder-url -l pl.UTF-8
Moduł kodera ściągający pliki o podanym URL.
+%package coder-webp
+Summary: Coder module for WebP files
+Summary(pl.UTF-8): Moduł kodera dla plików WebP
+Group: X11/Applications/Graphics
+Requires: %{name} = %{epoch}:%{version}-%{release}
+
+%description coder-webp
+Coder module for WebP files.
+
+%description coder-webp -l pl.UTF-8
+Moduł kodera dla plików WebP.
+
%package coder-wmf
Summary: Coder module for WMF files
Summary(pl.UTF-8): Moduł kodera dla plików WMF
%patch1 -p1
%patch2 -p1
%patch3 -p1
+%patch4 -p1
+%patch5 -p1
-%{__perl} -pi -e 's,lib/graphviz,%{_lib}/graphviz,' configure.ac
-find -type f -exec perl -pi -e 's=!/usr/local/bin/perl=!/usr/bin/perl=' {} \;
+find -type f | xargs grep -l '/usr/local/bin/perl' | xargs %{__sed} -i -e 's=!/usr/local/bin/perl=!%{__perl}='
# avoid rebuilding (broken paths in scripts/Makefile.am)
touch www/Magick++/NEWS.html www/Magick++/ChangeLog.html
%{__autoheader}
%{__automake}
%configure \
+ --disable-ltdl-install \
+ %{!?with_gomp:--disable-openmp} \
+ --disable-silent-rules \
--enable-fast-install \
- --enable-lzw \
--enable-shared \
- --disable-ltdl-install \
+ --enable-static \
--without-dps \
- --with%{!?with_graphviz:out}-djvu \
- --with%{!?with_graphviz:out}-dot \
+ --with%{!?with_djvu:out}-djvu \
--with%{!?with_fpx:out}-fpx \
+ --with%{!?with_graphviz:out}-gvc \
--with%{!?with_gs:out}-gslib \
--with%{!?with_jasper:out}-jp2 \
--with%{!?with_cxx:out}-magick_plus_plus \
--with-perl-options="INSTALLDIRS=vendor" \
--with-quantum-depth=%{QuantumDepth} \
--with-threads \
- --with-ttf \
--with-x
-%{__make}
-%{__perl} -pi -e 's,/%{name}-%{ver}/,/%{name}-doc-%{version}/,' utilities/*.1
+%{__make} -j1
+%{__sed} -i -e 's,/%{name}-%{ver}/,/%{name}-doc-%{version}/,' utilities/*.1
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-perl
+install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-perl-%{version}
-%{__make} install \
+%{__make} -j1 install \
DESTDIR=$RPM_BUILD_ROOT \
pkgdocdir=%{_docdir}/%{name}-doc-%{version}
-install PerlMagick/demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-perl
-rm -f $RPM_BUILD_ROOT%{modulesdir}/{coders,filters}/*.a
-rm -f $RPM_BUILD_ROOT%{modulesdir}/coders/dps.{la,so}
-rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Image/Magick/.packlist
-rm -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
-rm -f $RPM_BUILD_ROOT%{_datadir}/ImageMagick-%{ver}/{ChangeLog,LICENSE,NEWS.txt}
-
-# for koffice 1.6
-cp -a magick/quantum-private.h $RPM_BUILD_ROOT%{_includedir}/ImageMagick/magick
+cp -p PerlMagick/demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-perl-%{version}
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{ver}/{ChangeLog,LICENSE,NEWS.txt}
+%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Image/Magick/.packlist
+%{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%dir %{_libdir}/ImageMagick-%{ver}
-%dir %{_libdir}/ImageMagick-%{ver}/config
-%{_libdir}/ImageMagick-%{ver}/config/*.xml
%dir %{modulesdir}
%dir %{modulesdir}/coders
%dir %{modulesdir}/filters
%dir %{_datadir}/ImageMagick-%{ver}
-%dir %{_datadir}/ImageMagick-%{ver}/config
-%{_datadir}/ImageMagick-%{ver}/config/*.xml
-%{_datadir}/ImageMagick-%{ver}/config/sRGB.icm
+%{_datadir}/ImageMagick-%{ver}/*.xml
+%dir %{_sysconfdir}/ImageMagick
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ImageMagick/*.xml
# ========= coders without additional deps
+%attr(755,root,root) %{modulesdir}/coders/aai.so
+%{modulesdir}/coders/aai.la
%attr(755,root,root) %{modulesdir}/coders/art.so
%{modulesdir}/coders/art.la
%attr(755,root,root) %{modulesdir}/coders/avs.so
%{modulesdir}/coders/avs.la
+%attr(755,root,root) %{modulesdir}/coders/bgr.so
+%{modulesdir}/coders/bgr.la
%attr(755,root,root) %{modulesdir}/coders/bmp.so
%{modulesdir}/coders/bmp.la
%attr(755,root,root) %{modulesdir}/coders/braille.so
%{modulesdir}/coders/braille.la
-%attr(755,root,root) %{modulesdir}/coders/caption.so
-%{modulesdir}/coders/caption.la
%attr(755,root,root) %{modulesdir}/coders/cals.so
%{modulesdir}/coders/cals.la
%attr(755,root,root) %{modulesdir}/coders/cin.so
%{modulesdir}/coders/dcm.la
%attr(755,root,root) %{modulesdir}/coders/dds.so
%{modulesdir}/coders/dds.la
+%attr(755,root,root) %{modulesdir}/coders/debug.so
+%{modulesdir}/coders/debug.la
%attr(755,root,root) %{modulesdir}/coders/dib.so
%{modulesdir}/coders/dib.la
%attr(755,root,root) %{modulesdir}/coders/dng.so
%{modulesdir}/coders/ept.la
%attr(755,root,root) %{modulesdir}/coders/fax.so
%{modulesdir}/coders/fax.la
+%attr(755,root,root) %{modulesdir}/coders/fd.so
+%{modulesdir}/coders/fd.la
%attr(755,root,root) %{modulesdir}/coders/fits.so
%{modulesdir}/coders/fits.la
%attr(755,root,root) %{modulesdir}/coders/gif.so
%{modulesdir}/coders/gray.la
%attr(755,root,root) %{modulesdir}/coders/hald.so
%{modulesdir}/coders/hald.la
+%attr(755,root,root) %{modulesdir}/coders/hdr.so
+%{modulesdir}/coders/hdr.la
%attr(755,root,root) %{modulesdir}/coders/histogram.so
%{modulesdir}/coders/histogram.la
%attr(755,root,root) %{modulesdir}/coders/hrz.so
%{modulesdir}/coders/inline.la
%attr(755,root,root) %{modulesdir}/coders/ipl.so
%{modulesdir}/coders/ipl.la
+%attr(755,root,root) %{modulesdir}/coders/jnx.so
+%{modulesdir}/coders/jnx.la
%attr(755,root,root) %{modulesdir}/coders/label.so
%{modulesdir}/coders/label.la
+%attr(755,root,root) %{modulesdir}/coders/mac.so
+%{modulesdir}/coders/mac.la
%attr(755,root,root) %{modulesdir}/coders/magick.so
%{modulesdir}/coders/magick.la
%attr(755,root,root) %{modulesdir}/coders/map.so
%files doc
%defattr(644,root,root,755)
-%doc %{_defaultdocdir}/%{name}-doc-%{version}
+%doc %{_docdir}/%{name}-doc-%{version}
%files libs
%defattr(644,root,root,755)
%doc ChangeLog LICENSE AUTHORS.txt
%attr(755,root,root) %{_libdir}/libMagickCore.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libMagickCore.so.3
+%attr(755,root,root) %ghost %{_libdir}/libMagickCore.so.5
%attr(755,root,root) %{_libdir}/libMagickWand.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libMagickWand.so.3
+%attr(755,root,root) %ghost %{_libdir}/libMagickWand.so.5
+%dir %{_libdir}/ImageMagick-%{ver}
+%dir %{_libdir}/ImageMagick-%{ver}/config
+%{_libdir}/ImageMagick-%{ver}/config/configure.xml
+
+%files coder-caption
+%defattr(644,root,root,755)
+# R: pango, fontconfig
+%defattr(644,root,root,755)
+%attr(755,root,root) %{modulesdir}/coders/caption.so
+%{modulesdir}/coders/caption.la
%if %{with djvu}
%files coder-djvu
%attr(755,root,root) %{modulesdir}/coders/url.so
%{modulesdir}/coders/url.la
+%files coder-webp
+%defattr(644,root,root,755)
+# R: libwebp
+%attr(755,root,root) %{modulesdir}/coders/webp.so
+%{modulesdir}/coders/webp.la
+
%if %{with wmf}
%files coder-wmf
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libMagickCore.so
%attr(755,root,root) %{_libdir}/libMagickWand.so
%dir %{_includedir}/ImageMagick
-%{_libdir}/libMagickCore.la
-%{_libdir}/libMagickWand.la
%{_includedir}/ImageMagick/magick
%{_includedir}/ImageMagick/wand
%{_pkgconfigdir}/ImageMagick.pc
%{_libdir}/libMagickCore.a
%{_libdir}/libMagickWand.a
-%files perl
+%files -n perl-%{name}
%defattr(644,root,root,755)
-%{perl_vendorarch}/Image/*
+%{perl_vendorarch}/Image/Magick.pm
%dir %{perl_vendorarch}/auto/Image/Magick
%{perl_vendorarch}/auto/Image/Magick/autosplit.ix
%{perl_vendorarch}/auto/Image/Magick/Magick.bs
%attr(755,root,root) %{perl_vendorarch}/auto/Image/Magick/Magick.so
-%{_mandir}/man3/Image::Magick.*
-%{_examplesdir}/%{name}-perl
+%{_mandir}/man3/Image::Magick.3pm*
+%{_examplesdir}/%{name}-perl-%{version}
%if %{with cxx}
%files c++
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libMagick++.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libMagick++.so.3
+%attr(755,root,root) %ghost %{_libdir}/libMagick++.so.5
%files c++-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/Magick++-config
-%{_libdir}/libMagick++.la
%attr(755,root,root) %{_libdir}/libMagick++.so
%{_includedir}/ImageMagick/Magick++
%{_includedir}/ImageMagick/Magick++.h