]> git.pld-linux.org Git - packages/xz.git/blobdiff - xz.spec
- rel 2; default parallel compression
[packages/xz.git] / xz.spec
diff --git a/xz.spec b/xz.spec
index 97d88ec483df17aa0773d5a1c4b9663da5429d9b..72d837acde4a0fe4dd75e10dddf29a1304208a84 100644 (file)
--- a/xz.spec
+++ b/xz.spec
@@ -1,16 +1,40 @@
+#
+# Conditional build:
+%bcond_without tests   # don't perform make check
+%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):   Koder/Dekoder LZMA
-Name:          lzma
-Version:       4.06
+Summary(pl.UTF-8):     Koder/Dekoder LZMA
+Name:          xz
+Version:       5.1.1
 Release:       2
-License:       LGPL
+Epoch:         1
+License:       LGPL v2.1+, helper scripts on GPL v2+
 Group:         Applications/Archiving
-Source0:       http://www.7-zip.org/dl/%{name}406.zip
-# Source0-md5: a09378411cba5f786b5c49c9c58496df
-Patch0:                %{name}-quiet.patch
-URL:           http://www.7-zip.org/sdk.html
-BuildRequires: libstdc++-devel
-BuildRequires: gcc >= 5:3.4.0
+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)
 
 %description
@@ -26,62 +50,128 @@ LZMA features:
   - 8-12 MB/s on 1 GHz Intel Pentium 3 or AMD Athlon.
   - 500-1000 KB/s on 100 MHz ARM, MIPS, PowerPC or other simple RISC
     CPU.
-- Small memory requirements for decompressing: 8-32 KB
+- Small memory requirements for decompressing: 8-32 KB + dictionary
+  size
 - Small code size for decompressing: 2-8 KB (depending from speed
   optimizations)
 
-%description -l pl
-LZMA jest domy¶lnym i ogólnym algorytmem kompresji formatu 7z
-stosowanego przez 7-Zip. LZMA zapewnia wysoki stopieñ kompresji i
-bardzo szybk± dekompresjê, wiêc nadaje siê do zastosowañ osadzonych.
-Przyk³adowo, mo¿e byæ u¿yty do kompresji ROM-u (firmware'u).
+%description -l pl.UTF-8
+LZMA jest domyślnym i ogólnym algorytmem kompresji formatu 7z
+stosowanego przez 7-Zip. LZMA zapewnia wysoki stopień kompresji i
+bardzo szybką dekompresję, więc nadaje się do zastosowań osadzonych.
+Przykładowo, może być użyty do kompresji ROM-u (firmware'u).
 
 Cechy LZMA:
 
-- Szybko¶æ kompresowania: 500 KB/s na 1 GHz procesorze,
-- Szybko¶æ dekompresowania:
+- Szybkość kompresowania: 500 KB/s na 1 GHz procesorze,
+- Szybkość dekompresowania:
   - 8-12 MB/s na 1 GHz Pentium 3 lub Athlonie,
   - 500-1000 KB/s na 100 MHz procesorach ARM, MIPS, PowerPC lub innych
     prostych RISC-ach,
-- Ma³a ilo¶æ pamiêci potrzebna do dekompresowania: 8-32 KB,
-- Ma³y rozmiar kodu dekompresuj±cego: 2-8 KB (w zale¿no¶ci od opcji
+- Mała ilość pamięci potrzebna do dekompresowania: 8-32 KB + rozmiar
+  słownika,
+- Mały rozmiar kodu dekompresującego: 2-8 KB (w zależności od opcji
   optymalizacji).
 
+%package libs
+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.
+
+%description libs -l pl.UTF-8
+Biblioteka współdzielona LZMA.
+
+%package devel
+Summary:       Header file for LZMA 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.
+
+%description devel -l pl.UTF-8
+Plik nagłówkowy biblioteki LZMA.
+
+%package static
+Summary:       LZMA static 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.
+
+%description static -l pl.UTF-8
+Biblioteka statyczna LZMA.
+
 %prep
-%setup -q -c
+%setup -q -n %{name}-%{version}alpha
 %patch0 -p1
 
 %build
-cd SRC/7zip/Compress/LZMA_Alone
-%{__make} \
-       CXX="%{__cxx}" \
-       CFLAGS="%{rpmcflags} -fprofile-arcs -c" \
-       LDFLAGS="%{rpmldflags} -fprofile-arcs"
-
-cat ../LZMA/* > test1
-cat lzma *.o > test2
-./lzma e test1 test3
-./lzma e test2 test4
-./lzma d test3 test5
-./lzma d test4 test6
-
-%{__make} clean
-
-%{__make} \
-       CXX="%{__cxx}" \
-       CFLAGS="%{rpmcflags} -fprofile-use -c" \
-       LDFLAGS="%{rpmldflags} -fprofile-use"
+%configure \
+       %{!?with_asm:--disable-assembler}
+%{__make}
+
+%{?with_tests:%{__make} check}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_bindir}
+install -d $RPM_BUILD_ROOT/{etc/env.d,%{_lib}}
+
+%{__make} install \
+       DESTDIR=$RPM_BUILD_ROOT
+
+mv -f $RPM_BUILD_ROOT%{_libdir}/liblzma.so.* $RPM_BUILD_ROOT/%{_lib}
+ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/liblzma.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/liblzma.so
 
-install SRC/7zip/Compress/LZMA_Alone/lzma $RPM_BUILD_ROOT%{_bindir}
+echo '#XZ_OPT="--threads=2"' > $RPM_BUILD_ROOT/etc/env.d/XZ_OPT
+
+%find_lang %{name}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%files
+%post  libs -p /sbin/ldconfig
+%postun        libs -p /sbin/ldconfig
+
+%files -f %{name}.lang
+%defattr(644,root,root,755)
+%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
+%defattr(644,root,root,755)
+%doc AUTHORS COPYING README THANKS
+%doc doc/*.txt
+%attr(755,root,root) /%{_lib}/liblzma.so.*.*.*
+%attr(755,root,root) %ghost /%{_lib}/liblzma.so.5
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liblzma.so
+%{_libdir}/liblzma.la
+%{_includedir}/lzma.h
+%{_includedir}/lzma
+%{_pkgconfigdir}/liblzma.pc
+
+%files static
 %defattr(644,root,root,755)
-%doc history.txt lzma.txt
-%attr(755,root,root) %{_bindir}/*
+%{_libdir}/liblzma.a
This page took 0.033776 seconds and 4 git commands to generate.