]>
Commit | Line | Data |
---|---|---|
1846bd29 JB |
1 | # |
2 | # Conditional build: | |
56c16b6d JP |
3 | %bcond_without tests # don't perform make check |
4 | %bcond_without asm # ix86 asm optimizations | |
5 | %bcond_without static_libs # static library | |
5c4bddac ER |
6 | |
7 | %ifnarch %{ix86} | |
8 | # Speed-optimized CRC64 using slicing-by-four algorithm. This uses only i386 | |
9 | # instructions, but it is optimized for i686 and later (including e.g. Pentium | |
10 | # II/III/IV, Athlon XP, and Core 2). | |
11 | %undefine with_asm | |
12 | %endif | |
521b5888 ER |
13 | |
14 | %if "%{pld_release}" == "ac" | |
15 | %undefine with_asm | |
16 | %endif | |
17 | ||
82d22baf | 18 | Summary: LZMA Encoder/Decoder |
34fad00c | 19 | Summary(pl.UTF-8): Koder/Dekoder LZMA |
d73f94d2 | 20 | Name: xz |
aee7a0f3 | 21 | Version: 5.4.6 |
b369fe78 AM |
22 | Release: 2 |
23 | Epoch: 2 | |
f1d5f95b | 24 | License: LGPL v2.1+, helper scripts on GPL v2+ |
82d22baf | 25 | Group: Applications/Archiving |
cd154063 | 26 | Source0: https://github.com/tukaani-project/xz/releases/download/v%{version}/%{name}-%{version}.tar.bz2 |
aee7a0f3 AM |
27 | # Source0-md5: 098549e685e27620f2fe2883b02c35f2 |
28 | Patch0: %{name}-parallel.patch | |
29 | Patch1: %{name}-memlimit.patch | |
36228597 | 30 | URL: https://tukaani.org/xz/ |
521b5888 ER |
31 | %{?with_asm:BuildRequires: gcc >= 5:3.4} |
32 | BuildRequires: rpm >= 4.4.9-56 | |
56c16b6d | 33 | BuildRequires: rpmbuild(macros) >= 1.527 |
01610c22 | 34 | Requires: %{name}-libs = %{epoch}:%{version}-%{release} |
521b5888 | 35 | Suggests: mktemp |
99e7eab7 AM |
36 | Provides: lzma = %{epoch}:%{version}-%{release} |
37 | Obsoletes: lzma < 1:4.999.6 | |
521b5888 | 38 | Conflicts: rpm < 4.4.9 |
82d22baf | 39 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
40 | ||
41 | %description | |
42 | LZMA is default and general compression method of 7z format in 7-Zip | |
43 | program. LZMA provides high compression ratio and very fast | |
44 | decompression, so it is very suitable for embedded applications. For | |
45 | example, it can be used for ROM (firmware) compressing. | |
46 | ||
47 | LZMA features: | |
48 | ||
49 | - Compressing speed: 500 KB/s on 1 GHz CPU | |
50 | - Decompressing speed: | |
51 | - 8-12 MB/s on 1 GHz Intel Pentium 3 or AMD Athlon. | |
52 | - 500-1000 KB/s on 100 MHz ARM, MIPS, PowerPC or other simple RISC | |
53 | CPU. | |
2f88d337 | 54 | - Small memory requirements for decompressing: 8-32 KB + dictionary |
55 | size | |
82d22baf | 56 | - Small code size for decompressing: 2-8 KB (depending from speed |
57 | optimizations) | |
58 | ||
fb275d27 JR |
59 | %description -l pl.UTF-8 |
60 | LZMA jest domyślnym i ogólnym algorytmem kompresji formatu 7z | |
61 | stosowanego przez 7-Zip. LZMA zapewnia wysoki stopień kompresji i | |
62 | bardzo szybką dekompresję, więc nadaje się do zastosowań osadzonych. | |
63 | Przykładowo, może być użyty do kompresji ROM-u (firmware'u). | |
82d22baf | 64 | |
65 | Cechy LZMA: | |
66 | ||
fb275d27 JR |
67 | - Szybkość kompresowania: 500 KB/s na 1 GHz procesorze, |
68 | - Szybkość dekompresowania: | |
82d22baf | 69 | - 8-12 MB/s na 1 GHz Pentium 3 lub Athlonie, |
70 | - 500-1000 KB/s na 100 MHz procesorach ARM, MIPS, PowerPC lub innych | |
71 | prostych RISC-ach, | |
fb275d27 JR |
72 | - Mała ilość pamięci potrzebna do dekompresowania: 8-32 KB + rozmiar |
73 | słownika, | |
74 | - Mały rozmiar kodu dekompresującego: 2-8 KB (w zależności od opcji | |
82d22baf | 75 | optymalizacji). |
76 | ||
1010510a ER |
77 | %package libs |
78 | Summary: LZMA shared library | |
34fad00c | 79 | Summary(pl.UTF-8): Biblioteka współdzielona LZMA |
1010510a | 80 | Group: Libraries |
99e7eab7 AM |
81 | Provides: lzma-libs = %{epoch}:%{version}-%{release} |
82 | Obsoletes: lzma-libs < 1:4.999.6 | |
1010510a ER |
83 | |
84 | %description libs | |
84d12552 JB |
85 | LZMA shared library. |
86 | ||
fb275d27 JR |
87 | %description libs -l pl.UTF-8 |
88 | Biblioteka współdzielona LZMA. | |
1010510a | 89 | |
90fc2073 | 90 | %package devel |
84d12552 | 91 | Summary: Header file for LZMA library |
34fad00c | 92 | Summary(pl.UTF-8): Plik nagłówkowy biblioteki LZMA |
d9b6428a | 93 | Group: Development/Libraries |
bf8d00cc | 94 | Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release} |
99e7eab7 AM |
95 | Provides: lzma-devel = %{epoch}:%{version}-%{release} |
96 | Obsoletes: lzma-devel < 1:4.999.6 | |
90fc2073 | 97 | |
98 | %description devel | |
84d12552 | 99 | Header file for LZMA library. |
6e34e97f | 100 | |
fb275d27 JR |
101 | %description devel -l pl.UTF-8 |
102 | Plik nagłówkowy biblioteki LZMA. | |
90fc2073 | 103 | |
1010510a ER |
104 | %package static |
105 | Summary: LZMA static library | |
34fad00c | 106 | Summary(pl.UTF-8): Biblioteka statyczna LZMA |
1010510a | 107 | Group: Development/Libraries |
b8dda4f2 | 108 | Requires: %{name}-devel = %{epoch}:%{version}-%{release} |
99e7eab7 AM |
109 | Provides: lzma-static = %{epoch}:%{version}-%{release} |
110 | Obsoletes: lzma-static < 1:4.999.6 | |
1010510a ER |
111 | |
112 | %description static | |
84d12552 JB |
113 | LZMA static library. |
114 | ||
fb275d27 | 115 | %description static -l pl.UTF-8 |
84d12552 | 116 | Biblioteka statyczna LZMA. |
1010510a | 117 | |
82d22baf | 118 | %prep |
197d6627 | 119 | %setup -q |
aee7a0f3 AM |
120 | %patch0 -p1 |
121 | %patch1 -p1 | |
82d22baf | 122 | |
123 | %build | |
521b5888 | 124 | %configure \ |
56c16b6d JP |
125 | %{!?with_asm:--disable-assembler} \ |
126 | %{__enable_disable static_libs static} | |
92626cfe | 127 | %{__make} |
90fc2073 | 128 | |
b7470431 AM |
129 | %{?with_tests:%{__make} check} |
130 | ||
82d22baf | 131 | %install |
132 | rm -rf $RPM_BUILD_ROOT | |
e2c9b1ff | 133 | install -d $RPM_BUILD_ROOT{/etc/env.d,/%{_lib}} |
bd361cdc | 134 | |
92626cfe AM |
135 | %{__make} install \ |
136 | DESTDIR=$RPM_BUILD_ROOT | |
137 | ||
e2c9b1ff ER |
138 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name} |
139 | ||
140 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
141 | cp -a doc/examples* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
142 | ||
35e87229 | 143 | mv -f $RPM_BUILD_ROOT%{_libdir}/liblzma.so.* $RPM_BUILD_ROOT/%{_lib} |
8ecd375e | 144 | ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/liblzma.so.*.*.*) $RPM_BUILD_ROOT%{_libdir}/liblzma.so |
35e87229 | 145 | |
d73f94d2 | 146 | echo '#XZ_OPT="--threads=2"' > $RPM_BUILD_ROOT/etc/env.d/XZ_OPT |
71b73044 | 147 | |
590de190 | 148 | %find_lang %{name} |
82d22baf | 149 | |
150 | %clean | |
151 | rm -rf $RPM_BUILD_ROOT | |
152 | ||
1010510a ER |
153 | %post libs -p /sbin/ldconfig |
154 | %postun libs -p /sbin/ldconfig | |
155 | ||
590de190 | 156 | %files -f %{name}.lang |
82d22baf | 157 | %defattr(644,root,root,755) |
d73f94d2 | 158 | %config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/XZ_OPT |
590de190 JB |
159 | %attr(755,root,root) %{_bindir}/lz* |
160 | %attr(755,root,root) %{_bindir}/unlzma | |
161 | %attr(755,root,root) %{_bindir}/unxz | |
162 | %attr(755,root,root) %{_bindir}/xz* | |
163 | %{_mandir}/man1/lz*.1* | |
164 | %{_mandir}/man1/unlzma.1* | |
165 | %{_mandir}/man1/unxz.1* | |
166 | %{_mandir}/man1/xz*.1* | |
7fc5fe6b JB |
167 | %lang(de) %{_mandir}/de/man1/lz*.1* |
168 | %lang(de) %{_mandir}/de/man1/unlzma.1* | |
169 | %lang(de) %{_mandir}/de/man1/unxz.1* | |
170 | %lang(de) %{_mandir}/de/man1/xz*.1* | |
7f77f452 JP |
171 | %lang(fr) %{_mandir}/fr/man1/lz*.1* |
172 | %lang(fr) %{_mandir}/fr/man1/unlzma.1* | |
173 | %lang(fr) %{_mandir}/fr/man1/unxz.1* | |
174 | %lang(fr) %{_mandir}/fr/man1/xz*.1* | |
5a44d30f JP |
175 | %lang(ko) %{_mandir}/ko/man1/lz*.1* |
176 | %lang(ko) %{_mandir}/ko/man1/unlzma.1* | |
177 | %lang(ko) %{_mandir}/ko/man1/unxz.1* | |
178 | %lang(ko) %{_mandir}/ko/man1/xz*.1* | |
64306890 JP |
179 | %lang(pt_BR) %{_mandir}/pt_BR/man1/lz*.1* |
180 | %lang(pt_BR) %{_mandir}/pt_BR/man1/unlzma.1* | |
181 | %lang(pt_BR) %{_mandir}/pt_BR/man1/unxz.1* | |
182 | %lang(pt_BR) %{_mandir}/pt_BR/man1/xz*.1* | |
54129fa4 JP |
183 | %lang(ro) %{_mandir}/ro/man1/lz*.1* |
184 | %lang(ro) %{_mandir}/ro/man1/unlzma.1* | |
185 | %lang(ro) %{_mandir}/ro/man1/unxz.1* | |
186 | %lang(ro) %{_mandir}/ro/man1/xz*.1* | |
5a44d30f JP |
187 | %lang(uk) %{_mandir}/uk/man1/lz*.1* |
188 | %lang(uk) %{_mandir}/uk/man1/unlzma.1* | |
189 | %lang(uk) %{_mandir}/uk/man1/unxz.1* | |
190 | %lang(uk) %{_mandir}/uk/man1/xz*.1* | |
590de190 JB |
191 | |
192 | %files libs | |
92626cfe | 193 | %defattr(644,root,root,755) |
f1d5f95b AM |
194 | %doc AUTHORS COPYING README THANKS |
195 | %doc doc/*.txt | |
35e87229 | 196 | %attr(755,root,root) /%{_lib}/liblzma.so.*.*.* |
42322a5b | 197 | %attr(755,root,root) %ghost /%{_lib}/liblzma.so.5 |
1010510a | 198 | |
92626cfe AM |
199 | %files devel |
200 | %defattr(644,root,root,755) | |
9acc8826 JB |
201 | %attr(755,root,root) %{_libdir}/liblzma.so |
202 | %{_libdir}/liblzma.la | |
203 | %{_includedir}/lzma.h | |
fbb952ac | 204 | %{_includedir}/lzma |
d73f94d2 | 205 | %{_pkgconfigdir}/liblzma.pc |
e2c9b1ff | 206 | %{_examplesdir}/%{name}-%{version} |
1010510a | 207 | |
56c16b6d | 208 | %if %{with static_libs} |
92626cfe AM |
209 | %files static |
210 | %defattr(644,root,root,755) | |
9acc8826 | 211 | %{_libdir}/liblzma.a |
56c16b6d | 212 | %endif |