-%bcond_without tests
+# NOTE: there is intel SSE optimization available but with no runtime detection;
+# it's enabled based on compiler flags (-msse*, either explicit or implied by -march=)
+#
+# Conditional build:
+%bcond_without tests # don't perform "make check"
+%bcond_without default_libpng # don't use this libpng as default system libpng
+#
Summary: PNG library
Summary(de.UTF-8): PNG-Library
Summary(es.UTF-8): Biblioteca PNG
Summary(pt_BR.UTF-8): Biblioteca PNG
Summary(tr.UTF-8): PNG kitaplığı
Name: libpng
-Version: 1.4.2
+Version: 1.6.34
Release: 1
Epoch: 2
License: distributable
Group: Libraries
Source0: http://downloads.sourceforge.net/libpng/%{name}-%{version}.tar.xz
-# Source0-md5: d22ef5878842d918d6d110c0e7cc3afc
+# Source0-md5: c05b6ca7190a5e387b78657dbe5536b2
Patch0: %{name}-pngminus.patch
-# http://littlesvr.ca/apng/diff/%{name}-%{version}-apng.patch | dos2unix
-Patch1: %{name}-apng.patch
+Patch1: http://downloads.sourceforge.net/libpng-apng/%{name}-%{version}-apng.patch.gz
+# Patch1-md5: d7a82f1aa85ba628556fb7bd1428668b
URL: http://www.libpng.org/pub/png/libpng.html
BuildRequires: rpmbuild(macros) >= 1.213
BuildRequires: tar >= 1:1.22
BuildRequires: xz >= 1:4.999.7
-BuildRequires: zlib-devel
+BuildRequires: zlib-devel >= 1.2.9
Provides: libpng(APNG) = 0.10
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Narzędzia do konwersji plików PNG z lub do plików PNM.
%prep
-%setup -q -c -T
-xzcat -dc %{SOURCE0} | tar xf - -C ..
+%setup -q
%patch0 -p1
-%patch1 -p0
+%patch1 -p1
%build
-%configure
+%configure \
+%ifarch %{arm} aarch64
+ --enable-arm-neon=check \
+%endif
+%ifarch mipsel mips64el
+ --enable-mips-msa=check \
+%endif
+%ifarch ppc ppc64
+ --enable-powerpc-vsx=check
+%endif
+
%{__make}
%{__make} -C contrib/pngminus -f makefile.std \
install contrib/pngminus/{png2pnm,pnm2png} $RPM_BUILD_ROOT%{_bindir}
install example.c $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+%if %{without default_libpng}
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/{libpng-config,pn?2pn?} \
+ $RPM_BUILD_ROOT%{_libdir}/libpng.{so,la,a} \
+ $RPM_BUILD_ROOT%{_includedir}/png*.h \
+ $RPM_BUILD_ROOT%{_pkgconfigdir}/libpng.pc \
+ $RPM_BUILD_ROOT%{_mandir}/man[35]/*png*
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
%doc ANNOUNCE CHANGES LICENSE README TODO
-%attr(755,root,root) %{_libdir}/libpng14.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpng14.so.14
+%attr(755,root,root) %{_libdir}/libpng16.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libpng16.so.16
%files devel
%defattr(644,root,root,755)
-%doc libpng-%{version}.txt
-%attr(755,root,root) %{_bindir}/libpng14-config
+%doc libpng-manual.txt
+%attr(755,root,root) %{_bindir}/libpng16-config
+%attr(755,root,root) %{_libdir}/libpng16.so
+%{_libdir}/libpng16.la
+%{_includedir}/libpng16
+%{_pkgconfigdir}/libpng16.pc
+%{_examplesdir}/%{name}-%{version}
+%if %{with default_libpng}
%attr(755,root,root) %{_bindir}/libpng-config
-%attr(755,root,root) %{_libdir}/libpng14.so
%attr(755,root,root) %{_libdir}/libpng.so
-%{_libdir}/libpng14.la
%{_libdir}/libpng.la
-%{_pkgconfigdir}/libpng14.pc
%{_pkgconfigdir}/libpng.pc
-%{_includedir}/libpng14
%{_includedir}/png*.h
%{_mandir}/man3/libpng.3*
%{_mandir}/man3/libpngpf.3*
%{_mandir}/man5/png.5*
-%{_examplesdir}/%{name}-%{version}
+%endif
%files static
%defattr(644,root,root,755)
-%{_libdir}/libpng14.a
+%{_libdir}/libpng16.a
+%if %{with default_libpng}
%{_libdir}/libpng.a
+%endif
+%if %{with default_libpng}
%files progs
%defattr(644,root,root,755)
%attr(755,root,root) %{_bindir}/png2pnm
+%attr(755,root,root) %{_bindir}/pngfix
+%attr(755,root,root) %{_bindir}/png-fix-itxt
%attr(755,root,root) %{_bindir}/pnm2png
+%endif