[packages/lzma-sdk] - initial: old-fashioned LZMA SDK, with pure API (no zlib-like wrapper)
qboosh
qboosh at pld-linux.org
Sun Mar 29 20:47:28 CEST 2020
commit be19ee5e58d818ff0df6c54023275f9ff6ffdb48
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sun Mar 29 20:47:06 2020 +0200
- initial: old-fashioned LZMA SDK, with pure API (no zlib-like wrapper)
lzma-sdk.spec | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 147 insertions(+)
---
diff --git a/lzma-sdk.spec b/lzma-sdk.spec
new file mode 100644
index 0000000..b138fe3
--- /dev/null
+++ b/lzma-sdk.spec
@@ -0,0 +1,147 @@
+Summary: LZMA Encoder/Decoder
+Summary(pl.UTF-8): Koder/Dekoder LZMA
+Name: lzma-sdk
+Version: 19.00
+%define fver %(echo %{version} | tr -d .)
+Release: 1
+License: Public Domain
+Group: Applications/Archiving
+Source0: https://www.7-zip.org/a/lzma%{fver}.7z
+# Source0-md5: 9d0411963b9d604a73833e1cc8289522
+URL: https://www.7-zip.org/sdk.html
+BuildRequires: libstdc++-devel
+BuildRequires: libtool
+BuildRequires: p7zip
+# does not need -libs, due apps being not linked with shared lib
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+LZMA is an improved version of famous LZ77 compression algorithm. It
+was improved in way of maximum increasing of compression ratio,
+keeping high decompression speed and low memory requirements for
+decompressing.
+
+LZMA features:
+- compressing speed: ~2MB/s on 2 GHz CPU
+- decompressing speed:
+ - 20-30 MB/s on modern 2 GHz CPU
+ - 1-2 MB/s on 200 MHz simple RISC CPU (ARM, MIPS, PowerPC)
+- small memory requirements for decompressing: 16 kB + dictionary
+ size
+- small code size for decompressing: 5-8 kB
+
+%description -l pl.UTF-8
+LZMA to ulepszona wersja słynnego algorytmu kompresji LZ77. Został
+poprawiony, aby maksymalnie zwiększyć stopień kompresji, utrzymując
+wysoką szybkość i małe wymagania pamięciowe dekompresji.
+
+Cechy LZMA:
+- szybkość kompresowania: ~2MB/s na 2 GHz procesorze,
+- szybkość dekompresowania:
+ - 20-30 MB/s na współczesnym 2 GHz procesorze,
+ - 1-2 MB/s na prostym procesorze RISC 200 MHz (ARM, MIPS, PowerPC)
+- mała ilość pamięci potrzebna do dekompresowania: 16 kB + rozmiar
+ słownika,
+- mały rozmiar kodu dekompresującego: 5-8 kB
+
+%package libs
+Summary: LZMA SDK shared library
+Summary(pl.UTF-8): Biblioteka współdzielona LZMA SDK
+Group: Libraries
+
+%description libs
+LZMA SDK shared library.
+
+%description libs -l pl.UTF-8
+Biblioteka współdzielona LZMA SDK.
+
+%package devel
+Summary: Header file for LZMA SDK library
+Summary(pl.UTF-8): Plik nagłówkowy biblioteki LZMA SDK
+Group: Development/Libraries
+Requires: %{name}-libs = %{version}-%{release}
+
+%description devel
+Header file for LZMA SDK library.
+
+%description devel -l pl.UTF-8
+Plik nagłówkowy biblioteki LZMA SDK.
+
+%package static
+Summary: LZMA SDK static library
+Summary(pl.UTF-8): Biblioteka statyczna LZMA SDK
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+LZMA SDK static library.
+
+%description static -l pl.UTF-8
+Biblioteka statyczna LZMA SDK.
+
+%prep
+%setup -q -c
+
+%build
+LIBFILES="Alloc LzFind LzmaDec LzmaEnc LzmaLib"
+for f in $LIBFILES ; do
+ libtool --tag CC --mode=compile %{__cc} -o ${f}.lo %{rpmcflags} %{rpmcppflags} -D_7ZIP_ST -c C/${f}.c
+done
+libtool --tag CC --mode=link %{__cc} -o liblzmasdk.la %{rpmldflags} %{rpmcflags} *.lo -rpath %{_libdir}
+
+%{__make} -C C/Util/7z -f makefile.gcc \
+ CXX="%{__cc}" \
+ CFLAGS="%{rpmcflags} %{rpmcppflags} -Wall -c" \
+ LDFLAGS="%{rpmldflags}"
+
+%{__make} -C C/Util/Lzma -f makefile.gcc \
+ CXX="%{__cc}" \
+ CFLAGS="%{rpmcflags} %{rpmcppflags} -Wall -D_7ZIP_ST -c" \
+ LDFLAGS="%{rpmldflags}"
+
+%{__make} -C CPP/7zip/Bundles/LzmaCon -f makefile.gcc \
+ CXX="%{__cxx}" \
+ CXX_C="%{__cc}" \
+ CFLAGS="%{rpmcflags} %{rpmcppflags} -Wall -D_7ZIP_ST -c" \
+ LDFLAGS="%{rpmldflags}"
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_bindir},%{_includedir}/lzma-sdk,%{_libdir}}
+
+libtool --mode=install install liblzmasdk.la $RPM_BUILD_ROOT%{_libdir}
+# no external dependencies
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/liblzmasdk.la
+
+cp -p C/{7zTypes,LzmaLib}.h $RPM_BUILD_ROOT%{_includedir}/lzma-sdk
+
+cp -p C/Util/7z/7zDec $RPM_BUILD_ROOT%{_bindir}
+cp -p C/Util/Lzma/lzma $RPM_BUILD_ROOT%{_bindir}/lzma-c
+cp -p CPP/7zip/Bundles/LzmaCon/lzma $RPM_BUILD_ROOT%{_bindir}/lzma-cpp
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post libs -p /sbin/ldconfig
+%postun libs -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc DOC/{7zFormat,Methods,lzma,lzma-history,lzma-sdk,lzma-specification}.txt
+%attr(755,root,root) %{_bindir}/7zDec
+%attr(755,root,root) %{_bindir}/lzma-c
+%attr(755,root,root) %{_bindir}/lzma-cpp
+
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liblzmasdk.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/liblzmasdk.so.0
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liblzmasdk.so
+%{_includedir}/lzma-sdk
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/liblzmasdk.a
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/lzma-sdk.git/commitdiff/be19ee5e58d818ff0df6c54023275f9ff6ffdb48
More information about the pld-cvs-commit
mailing list