Accepting request 573568 from home:avindra
- Update to new upstream release 1.8.1.2 * Most visible new feature is support for dictionary compression * Support is now more formally added on the API side within lib/lz4frame_static.h. It's early days, and this new API is tagged "experimental" for the time being. * Support is also added in the command line utility lz4, using the new command -D. The behavior of this command is identical to zstd, should you be already familiar. * lz4 doesn't specify how to build a dictionary. All it says is that it can be any file up to 64 KB. * This approach is compatible with zstd dictionary builder, which can be instructed to create a 64 KB dictionary. * Improved performance at ultra settings (levels 10+). * These levels receive a new code, called optimal parser, available in lib/lz4_opt.h. * New parser uses less memory (from 384KB to 256KB), performs faster, compresses a little bit better (not much, as it was already close to theoretical limit), and resists pathological patterns which could destroy performance. * New parser is directly compatible with lower compression levels, which brings additional benefits: + Compatibility with LZ4_*_destSize() variant, which reverses the logic by trying to fit as much data as possible into a predefined limited size buffer. + Compatibility with Dictionary compression, as it uses the same tables as regular HC mode * In the future, this compatibility will also allow dynamic change of compression level. * Small set of bug fixes and improvements: + perf : faster and stronger ultra modes (levels 10+) + perf : slightly faster compression and decompression speed + perf : fix bad degenerative case + fix : decompression failed when using a combination of extDict + low memory address + cli : support for dictionary compression (-D) + cli : fix : lz4 -d --rm preserves timestamp + cli : fix : do not modify /dev/null permission as root + api : _destSize() variant supported for all compression levels + build : make and make test compatible with parallel build -jX + build : can control LZ4LIB_VISIBILITY macro + install: fix man page directory - partial cleanup with spec-cleaner - rebase lz4-use-shlib.diff - drop lz4-use-shlib.diff, breaks build - misc spec cleanups - remove Makefile fix - build and install separately - New URL OBS-URL: https://build.opensuse.org/request/show/573568 OBS-URL: https://build.opensuse.org/package/show/Archiving/lz4?expand=0&rev=34
This commit is contained in:
29
lz4.spec
29
lz4.spec
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package lz4
|
||||
#
|
||||
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -16,22 +16,20 @@
|
||||
#
|
||||
|
||||
|
||||
Name: lz4
|
||||
%define lname liblz4-1
|
||||
Version: 1.8.0
|
||||
Name: lz4
|
||||
Version: 1.8.1.2
|
||||
Release: 0
|
||||
Summary: Hash-based Predictive Lempel–Ziv compressor
|
||||
License: GPL-2.0+ and BSD-2-Clause
|
||||
Group: Productivity/Archiving/Compression
|
||||
Url: http://lz4.org/
|
||||
Url: https://lz4.github.io/lz4/
|
||||
|
||||
#Git-Clone: https://github.com/lz4/lz4
|
||||
Source: https://github.com/lz4/lz4/archive/v%version.tar.gz
|
||||
Source: https://github.com/lz4/lz4/archive/v%version.tar.gz#/%{name}-%{version}.tar.gz
|
||||
Source99: baselibs.conf
|
||||
Patch1: lz4-use-shlib.diff
|
||||
Patch2: lz-export.diff
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: pkg-config
|
||||
BuildRequires: pkgconfig
|
||||
|
||||
%description
|
||||
LZ4 is a lossless data compression algorithm that is focused on
|
||||
@@ -70,20 +68,14 @@ applications that want to make use of liblz4.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch -P 1 -P 2 -p1
|
||||
%patch -P 2 -p1
|
||||
|
||||
%build
|
||||
# Goddammit, lz4
|
||||
perl -i -pe 's{^\t@}{\t}g' Makefile */Makefile
|
||||
# don't bother building here, because make install builds it again - unconditionally :-(
|
||||
make %{?_smp_mflags} CFLAGS="%optflags"
|
||||
|
||||
%install
|
||||
make install CFLAGS="%optflags" DESTDIR="%buildroot" \
|
||||
PREFIX="%_prefix" LIBDIR="%_libdir"
|
||||
%make_install PREFIX="%_prefix" LIBDIR="%_libdir"
|
||||
rm -f "%buildroot/%_libdir"/*.a
|
||||
mkdir -p "%buildroot/%_mandir/man1"
|
||||
# duh, it was right in 1.7.5
|
||||
mv "%buildroot/%_mandir"/*.1 "%buildroot/%_mandir/man1/"
|
||||
|
||||
%check
|
||||
LD_LIBRARY_PATH="%buildroot/%_libdir" ldd -r "%buildroot/%_bindir/lz4"
|
||||
@@ -92,17 +84,14 @@ LD_LIBRARY_PATH="%buildroot/%_libdir" ldd -r "%buildroot/%_bindir/lz4"
|
||||
%postun -n %lname -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%_bindir/lz4*
|
||||
%_bindir/unlz4
|
||||
%_mandir/man1/*.1*
|
||||
|
||||
%files -n %lname
|
||||
%defattr(-,root,root)
|
||||
%_libdir/liblz4.so.1*
|
||||
|
||||
%files -n liblz4-devel
|
||||
%defattr(-,root,root)
|
||||
%_includedir/lz4*.h
|
||||
%_libdir/liblz4.so
|
||||
%_libdir/pkgconfig/*.pc
|
||||
|
Reference in New Issue
Block a user