#
# Conditional build:
%bcond_without tests # don't perform make check
-#
-%define snap alpha
+%bcond_without asm # ix86 asm optimizations
+
+%ifnarch %{ix86}
+# Speed-optimized CRC64 using slicing-by-four algorithm. This uses only i386
+# instructions, but it is optimized for i686 and later (including e.g. Pentium
+# II/III/IV, Athlon XP, and Core 2).
+%undefine with_asm
+%endif
+
+%if "%{pld_release}" == "ac"
+%undefine with_asm
+%endif
+
Summary: LZMA Encoder/Decoder
Summary(pl.UTF-8): Koder/Dekoder LZMA
-Name: lzma
-Version: 4.999.5
-Release: 0.%{snap}.3
+Name: xz
+Version: 5.1.1
+Release: 2
Epoch: 1
License: LGPL v2.1+, helper scripts on GPL v2+
Group: Applications/Archiving
-Source0: http://tukaani.org/lzma/%{name}-%{version}%{snap}.tar.gz
-# Source0-md5: db736e080858a7c34357960254dda280
-Patch0: %{name}-memlimit.patch
-URL: http://tukaani.org/lzma/
+Source0: http://tukaani.org/xz/%{name}-%{version}alpha.tar.gz
+# Source0-md5: bb24436fa12780808e1c142980484104
+Patch0: %{name}-parallel.patch
+URL: http://tukaani.org/xz/
+%{?with_asm:BuildRequires: gcc >= 5:3.4}
+BuildRequires: rpm >= 4.4.9-56
BuildRequires: rpmbuild(macros) >= 1.402
+BuildRequires: sed >= 4.0
+Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+Suggests: mktemp
+Provides: lzma = %{epoch}:%{version}-%{release}
+Obsoletes: lzma < 1:4.999.6
Conflicts: rpm < 4.4.9
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Summary: LZMA shared library
Summary(pl.UTF-8): Biblioteka współdzielona LZMA
Group: Libraries
+Provides: lzma-libs = %{epoch}:%{version}-%{release}
+Obsoletes: lzma-libs < 1:4.999.6
%description libs
LZMA shared library.
Summary(pl.UTF-8): Plik nagłówkowy biblioteki LZMA
Group: Development/Libraries
Requires: %{name}-libs = %{epoch}:%{version}-%{release}
+Provides: lzma-devel = %{epoch}:%{version}-%{release}
+Obsoletes: lzma-devel < 1:4.999.6
%description devel
Header file for LZMA library.
Summary(pl.UTF-8): Biblioteka statyczna LZMA
Group: Development/Libraries
Requires: %{name}-devel = %{epoch}:%{version}-%{release}
+Provides: lzma-static = %{epoch}:%{version}-%{release}
+Obsoletes: lzma-static < 1:4.999.6
%description static
LZMA static library.
Biblioteka statyczna LZMA.
%prep
-%setup -q -n %{name}-%{version}%{snap}
+%setup -q -n %{name}-%{version}alpha
%patch0 -p1
%build
-%configure
-
+%configure \
+ %{!?with_asm:--disable-assembler}
%{__make}
%{?with_tests:%{__make} check}
DESTDIR=$RPM_BUILD_ROOT
mv -f $RPM_BUILD_ROOT%{_libdir}/liblzma.so.* $RPM_BUILD_ROOT/%{_lib}
-ln -sf /%{_lib}/liblzma.so.0.0.0 $RPM_BUILD_ROOT%{_libdir}/liblzma.so
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/liblzma.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/liblzma.so
-echo '#LZMA_OPT="--threads=2"' > $RPM_BUILD_ROOT/etc/env.d/LZMA_OPT
+echo '#XZ_OPT="--threads=2"' > $RPM_BUILD_ROOT/etc/env.d/XZ_OPT
%find_lang %{name}
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
-%files
+%files -f %{name}.lang
%defattr(644,root,root,755)
-%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/LZMA_OPT
-%attr(755,root,root) %{_bindir}/*lz*
+%config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/XZ_OPT
+%attr(755,root,root) %{_bindir}/lz*
+%attr(755,root,root) %{_bindir}/unlzma
+%attr(755,root,root) %{_bindir}/unxz
+%attr(755,root,root) %{_bindir}/xz*
%{_mandir}/man1/lz*.1*
+%{_mandir}/man1/unlzma.1*
+%{_mandir}/man1/unxz.1*
+%{_mandir}/man1/xz*.1*
-%files libs -f %{name}.lang
+%files libs
%defattr(644,root,root,755)
-%doc AUTHORS COPYING README THANKS TODO
-%doc doc/{bugs,faq,file-format,history,lzma-intro}.txt
+%doc AUTHORS COPYING README THANKS
+%doc doc/*.txt
%attr(755,root,root) /%{_lib}/liblzma.so.*.*.*
-%attr(755,root,root) %ghost /%{_lib}/liblzma.so.0
+%attr(755,root,root) %ghost /%{_lib}/liblzma.so.5
%files devel
%defattr(644,root,root,755)
-%doc doc/liblzma-*.txt
%attr(755,root,root) %{_libdir}/liblzma.so
%{_libdir}/liblzma.la
%{_includedir}/lzma.h
%{_includedir}/lzma
-%{_pkgconfigdir}/lzma.pc
+%{_pkgconfigdir}/liblzma.pc
%files static
%defattr(644,root,root,755)