forked from pool/lzma-sdk
Luigi Baldoni
37a2d93640
- Update to version 21.06 * Bug in LZMA encoder in file LzmaEnc.c was fixed: LzmaEnc_MemEncode(), LzmaEncode() and LzmaCompress() could work incorrectly, if size value for output buffer is smaller than size required for all compressed data. LzmaEnc_Encode() could work incorrectly, if callback ISeqOutStream::Write() doesn't write all compressed data. NCompress::NLzma::CEncoder::Code() could work incorrectly, if callback ISequentialOutStream::Write() returns error code. * Bug in versions 21.00-21.05 was fixed: 7-Zip didn't set attributes of directories during archive extracting. version 21.04 beta: * 7-Zip now reduces the number of working CPU threads for compression, if RAM size is not enough for compression with big LZMA2 dictionary. * 7-Zip now can create and check "file.sha256" text files that contain the list of file names and SHA-256 checksums in format compatible with sha256sum program. version 21.03 beta: * The maximum dictionary size for LZMA/LZMA2 compressing was increased to 4 GB (3840 MiB). * Minor speed optimizations in LZMA/LZMA2 compressing. version 21.02 alpha: * The speed for LZMA and LZMA2 decompression in arm64 versions was increased by 20%-60%. version 21.01 alpha: * The improvements for speed of ARM64 version using hardware CPU instructions for AES, CRC-32, SHA-1 and SHA-256. * Some bugs were fixed. version 20.02 alpha: * The default number of LZMA2 chunks per solid block in 7z archive was increased to 64. It allows to increase the compression speed for big 7z archives, if there is a big number of CPU cores and threads. * The speed of PPMd compressing/decompressing was increased for 7z archives. * The new -ssp switch. If the switch -ssp is specified, 7-Zip doesn't allow the system to modify "Last Access Time" property of source files for archiving and hashing operations. * Some bugs were fixed. version 20.00 alpha; * 7-Zip now supports new optional match finders for LZMA/LZMA2 compression: bt5 and hc5, that can work faster than bt4 and hc4 match finders for the data with big redundancy. * The compression ratio was improved for Fast and Fastest compression levels with the following default settings: + Fastest level (-mx1) : hc5 match finder with 256 KB dictionary. + Fast level (-mx3) : hc5 match finder with 4 MB dictionary. * Minor speed optimizations in multithreaded LZMA/LZMA2 compression for Normal/Maximum/Ultra compression levels. OBS-URL: https://build.opensuse.org/request/show/934524 OBS-URL: https://build.opensuse.org/package/show/Archiving/lzma-sdk?expand=0&rev=20
100 lines
3.0 KiB
RPMSpec
100 lines
3.0 KiB
RPMSpec
#
|
|
# spec file for package lzma-sdk
|
|
#
|
|
# Copyright (c) 2021 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
%define _sver 2106
|
|
%define _maver 21
|
|
%define _miver 06
|
|
Name: lzma-sdk
|
|
Version: 21.06
|
|
Release: 0
|
|
Summary: An implementation of LZMA compression
|
|
# Actually the site says "Public Domain". See license file.
|
|
License: LGPL-2.1-only
|
|
Group: Productivity/Archiving/Compression
|
|
URL: https://www.7-zip.org/sdk.html
|
|
Source0: https://www.7-zip.org/a/lzma%{_sver}.7z
|
|
Source1: lzma-sdk-LICENSE.fedora
|
|
Patch1: lzma-sdk-shlib.patch
|
|
BuildRequires: automake
|
|
BuildRequires: dos2unix
|
|
BuildRequires: fdupes
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libtool
|
|
BuildRequires: p7zip-full
|
|
BuildRequires: pkg-config
|
|
|
|
%description
|
|
LZMA SDK provides documentation, samples, header files, libraries,
|
|
and tools for developing applications with LZMA support.
|
|
|
|
LZMA uses a dictionary compression algorithm (a variant of LZ77, with
|
|
huge dictionary sizes and special support for repeatedly used match
|
|
distances), whose output is then encoded with a range encoder, using
|
|
a model to make a probability prediction of each bit.
|
|
LZMA yields around 20%% better compression when operating at approximately
|
|
zlib's speed, and around 40%% when trading more time.
|
|
|
|
%package devel
|
|
Summary: Development libraries and headers for %{name}
|
|
Group: Development/Languages/C and C++
|
|
Requires: libclzma-suse0 = %{version}
|
|
|
|
%description devel
|
|
This package contains development libraries and headers for %{name}.
|
|
|
|
%package -n libclzma-suse0
|
|
Summary: LZMA stream encoding/decoding library from 7-Zip
|
|
Group: System/Libraries
|
|
|
|
%description -n libclzma-suse0
|
|
Library for encoding/decoding LZMA streams, using the 7-Zip library
|
|
implementation.
|
|
|
|
%prep
|
|
%setup -q -c -n lzma%{_sver}
|
|
%patch -P 1 -p1
|
|
perl -i -pe 's{AC_INIT.*}{AC_INIT([lzma-sdk], [%version])}' configure.ac
|
|
dos2unix DOC/*.txt
|
|
install -p -m 0644 %{SOURCE1} .
|
|
|
|
%build
|
|
autoreconf -fi
|
|
%configure
|
|
make %{?_smp_mflags}
|
|
|
|
%install
|
|
%make_install
|
|
rm -f "%buildroot/%_libdir"/*.la
|
|
|
|
%post -n libclzma-suse0 -p /sbin/ldconfig
|
|
%postun -n libclzma-suse0 -p /sbin/ldconfig
|
|
|
|
%files -n libclzma-suse0
|
|
%license lzma-sdk-LICENSE.fedora
|
|
%doc DOC/lzma.txt DOC/lzma-history.txt
|
|
%{_libdir}/libclzma-suse.so.0*
|
|
|
|
%files devel
|
|
%license lzma-sdk-LICENSE.fedora
|
|
%doc DOC/7z*.txt DOC/Methods.txt
|
|
%{_includedir}/clzma/
|
|
%{_libdir}/libclzma.so
|
|
%{_libdir}/pkgconfig/clzma.pc
|
|
|
|
%changelog
|