#
# Conditional build:
-%bcond_without fpx # without FlashPIX module (which uses fpx library)
-%bcond_with gs # with PostScript support through ghostscript library (warning: breaks jpeg!)
-%bcond_without jasper # without JPEG2000 module (which uses jasper library)
-%bcond_without cxx # without Magick++ library
-%bcond_without gomp # OpenMP support
-#
-%include /usr/lib/rpm/macros.perl
-%define QuantumDepth 16
+%bcond_with broken # broken/dangerous coders (currently PSD)
+%bcond_without fpx # FlashPIX module (which uses fpx library)
+%bcond_with gs # PostScript support through ghostscript library (warning: breaks jpeg!)
+%bcond_without jasper # JPEG2000 module (which uses jasper library)
+%bcond_without libjxl # JPEG-XL module (which uses libjxl library)
+%bcond_without cxx # Magick++ library
+%bcond_without openmp # OpenMP support
+
%define pdir Graphics
%define pnam Magick
+%define QuantumDepth 16
Summary: Image display, conversion, and manipulation under X
Summary(de.UTF-8): Darstellen, Konvertieren und Bearbeiten von Grafiken unter X
Summary(es.UTF-8): Exhibidor, convertidor y manipulador de imágenes bajo X
Summary(tr.UTF-8): X altında resim gösterme, çevirme ve değişiklik yapma
Summary(uk.UTF-8): Перегляд, конвертування та обробка зображень під X Window
Name: GraphicsMagick
-Version: 1.3.18
-Release: 2
+Version: 1.3.43
+Release: 1
License: MIT
Group: X11/Applications/Graphics
-Source0: http://downloads.sourceforge.net/graphicsmagick/%{name}-%{version}.tar.xz
-# Source0-md5: 45e16e0e9628c167390de837d2144042
+Source0: https://downloads.sourceforge.net/graphicsmagick/%{name}-%{version}.tar.xz
+# Source0-md5: ffcd558899aff408b9073c2d48539e22
Patch0: %{name}-link.patch
Patch1: %{name}-ldflags.patch
URL: http://www.graphicsmagick.org/
BuildRequires: autoconf >= 2.69
-BuildRequires: automake >= 1:1.10.1
+BuildRequires: automake >= 1:1.11
BuildRequires: bzip2-devel >= 1.0.1
BuildRequires: expat-devel >= 1.95.7
BuildRequires: freetype-devel >= 2.0.2-2
-%{?with_gomp:BuildRequires: gcc >= 6:4.2}
+%{?with_openmp:BuildRequires: gcc >= 6:4.2}
%{?with_gs:BuildRequires: ghostscript-devel}
%{?with_jasper:BuildRequires: jasper-devel >= 1.900.1}
BuildRequires: jbigkit-devel >= 1.6
-BuildRequires: lcms2-devel >= 2
+BuildRequires: lcms2-devel >= 2.0
+%{?with_libjxl:BuildRequires: libbrotli-devel}
%{?with_fpx:BuildRequires: libfpx-devel >= 1.2.0.4-3}
-%{?with_gomp:BuildRequires: libgomp-devel}
-BuildRequires: libjpeg-devel
-BuildRequires: libltdl-devel
-BuildRequires: libpng-devel >= 1.2.18
+%{?with_openmp:BuildRequires: libgomp-devel}
+BuildRequires: libheif-devel
+BuildRequires: libjpeg-turbo-devel >= 3.0
+%{?with_libjxl:BuildRequires: libjxl-devel >= 0.8.0}
+BuildRequires: libltdl-devel >= 2:2.2
+BuildRequires: libpng-devel >= 2:1.2.18
BuildRequires: libstdc++-devel
BuildRequires: libtiff-devel >= 3.8.2
BuildRequires: libtool >= 2:2.2
+BuildRequires: libwebp-devel
BuildRequires: libwmf-devel >= 2:0.2.2
BuildRequires: libxml2-devel >= 2.0
BuildRequires: perl-devel >= 1:5.8.0
+BuildRequires: pkgconfig
+BuildRequires: rpm-build >= 4.6
BuildRequires: rpm-perlprov >= 4.1-13
-BuildRequires: rpmbuild(macros) >= 1.315
+BuildRequires: rpmbuild(macros) >= 1.745
+BuildRequires: xorg-lib-libX11-devel
BuildRequires: xorg-lib-libXext-devel
BuildRequires: xz-devel
+BuildRequires: zlib-devel
+BuildRequires: zstd-devel
# only checked for, but only supplied scripts/txt2html is used
#BuildRequires: txt2html
Requires: %{name}-libs = %{version}-%{release}
-Obsoletes: GraphicsMagick-coder-dps
+Obsoletes: GraphicsMagick-coder-dps < 1.1.7-2
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define modulesdir %{_libdir}/GraphicsMagick-%{version}/modules-Q%{QuantumDepth}
Requires: %{name}-libs = %{version}-%{release}
Requires: bzip2-devel
Requires: freetype-devel
-Requires: lcms2-devel >= 2
+Requires: lcms2-devel >= 2.0
Requires: libltdl-devel
Requires: xorg-lib-libXext-devel
Requires: xz-devel
%description coder-fpx -l pl.UTF-8
Moduł kodera dla plików FlashPIX (FPX).
+%package coder-heif
+Summary: Coder module for HEIF/HEIC files
+Summary(pl.UTF-8): Moduł kodera dla plików HEIF/HEIC
+Group: X11/Applications/Graphics
+Requires: %{name} = %{version}-%{release}
+
+%description coder-heif
+Coder module for HEIF/HEIC files.
+
+%description coder-heif -l pl.UTF-8
+Moduł kodera dla plików HEIF/HEIC.
+
%package coder-jbig
Summary: Coder module for JBIG files
Summary(pl.UTF-8): Moduł kodera dla plików JBIG
Moduł kodera dla plików JPEG-2000 (JP2/JPC) używajacy biblioteki
JasPer.
+%package coder-jxl
+Summary: Coder module for JPEG-XL (JXL) files using libjxl library
+Summary(pl.UTF-8): Moduł kodera dla plików JPEG-XL (JXL) używający biblioteki libjxl
+Group: X11/Applications/Graphics
+Requires: %{name} = %{version}-%{release}
+
+%description coder-jxl
+Coder module for JPEG-XL (JXL) files using libjxl library.
+
+%description coder-jxl -l pl.UTF-8
+Moduł kodera dla plików JPEG-XL (JXL) używajacy biblioteki libjxl.
+
%package coder-miff
Summary: Coder module for MIFF files
Summary(pl.UTF-8): Moduł kodera dla plików MIFF
%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} = %{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
Summary: GraphicsMagick documentation
Summary(pl.UTF-8): Dokumentacja do GraphicsMagick
Group: Documentation
+BuildArch: noarch
%description doc
Documentation for GraphicsMagick.
%{__autoconf}
%{__automake}
%configure \
+ %{?with_broken:--enable-broken-coders} \
--enable-fast-install \
--enable-shared \
- %{!?with_gomp:--disable-openmp} \
- --disable-ltdl-install \
+ %{!?with_openmp:--disable-openmp} \
--without-dps \
- --with%{!?with_fpx:out}-fpx \
- --with%{!?with_gs:out}-gslib \
- --with%{!?with_jasper:out}-jp2 \
- --with%{!?with_cxx:out}-magick_plus_plus \
+ --with-fpx%{!?with_fpx:=no} \
--with-gs-font-dir=%{_fontsdir}/Type1 \
+ --with-gslib%{!?with_gs:=no} \
+ --with-jp2%{!?with_jasper:=no} \
+ %{!?with_libjxl:--without-jxl} \
+ --with-magick_plus_plus%{!?with_cxx:=no} \
--with-modules \
--with-perl=%{__perl} \
--with-perl-options="INSTALLDIRS=vendor" \
DESTDIR=$RPM_BUILD_ROOT \
pkgdocdir=%{_docdir}/%{name}-devel-%{version}
-install PerlMagick/demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-perl-%{version}
+cp -p PerlMagick/demo/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-perl-%{version}
+
+# obsoleted by pkg-config
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libGraphicsMagick*.la
%clean
rm -rf $RPM_BUILD_ROOT
# ========= coders without additional deps
%attr(755,root,root) %{modulesdir}/coders/art.so
%{modulesdir}/coders/art.la
-%attr(755,root,root) %{modulesdir}/coders/avi.so
-%{modulesdir}/coders/avi.la
%attr(755,root,root) %{modulesdir}/coders/avs.so
%{modulesdir}/coders/avs.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/cals.so
%{modulesdir}/coders/cals.la
%attr(755,root,root) %{modulesdir}/coders/caption.so
%{modulesdir}/coders/pnm.la
%attr(755,root,root) %{modulesdir}/coders/preview.so
%{modulesdir}/coders/preview.la
+%if %{with broken}
%attr(755,root,root) %{modulesdir}/coders/psd.so
%{modulesdir}/coders/psd.la
+%endif
%attr(755,root,root) %{modulesdir}/coders/ps.so
%{modulesdir}/coders/ps.la
%attr(755,root,root) %{modulesdir}/coders/pwp.so
%attr(755,root,root) %{_bindir}/GraphicsMagickWand-config
%attr(755,root,root) %{_libdir}/libGraphicsMagick.so
%attr(755,root,root) %{_libdir}/libGraphicsMagickWand.so
-%{_libdir}/libGraphicsMagick.la
-%{_libdir}/libGraphicsMagickWand.la
%dir %{_includedir}/GraphicsMagick
%{_includedir}/GraphicsMagick/magick
%{_includedir}/GraphicsMagick/wand
%{modulesdir}/coders/fpx.la
%endif
+%files coder-heif
+%defattr(644,root,root,755)
+# R: libheif
+%attr(755,root,root) %{modulesdir}/coders/heif.so
+%{modulesdir}/coders/heif.la
+
%files coder-jbig
%defattr(644,root,root,755)
# R: jbigkit (libjbig.so)
%attr(755,root,root) %{modulesdir}/coders/jbig.so
%{modulesdir}/coders/jbig.la
+%if %{with libjxl}
+%files coder-jxl
+%defattr(644,root,root,755)
+# R: libjxl
+%attr(755,root,root) %{modulesdir}/coders/jxl.so
+%{modulesdir}/coders/jxl.la
+%endif
+
%files coder-jpeg
%defattr(644,root,root,755)
# R: libjpeg
%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
+
%files coder-wmf
%defattr(644,root,root,755)
# R: libwmf, expat, libjpeg, libpng
%files c++
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libGraphicsMagick++.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libGraphicsMagick++.so.3
+%attr(755,root,root) %ghost %{_libdir}/libGraphicsMagick++.so.12
%files c++-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/GraphicsMagick++-config
%attr(755,root,root) %{_libdir}/libGraphicsMagick++.so
-%{_libdir}/libGraphicsMagick++.la
%{_includedir}/GraphicsMagick/Magick++
%{_includedir}/GraphicsMagick/Magick++.h
%{_pkgconfigdir}/GraphicsMagick++.pc