forked from pool/lz4
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:
parent
7697e50f35
commit
7d4f9e60cc
3
lz4-1.8.1.2.tar.gz
Normal file
3
lz4-1.8.1.2.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:12f3a9e776a923275b2dc78ae138b4967ad6280863b77ff733028ce89b8123f9
|
||||
size 228640
|
@ -1,40 +0,0 @@
|
||||
From: Jan Engelhardt <jengelh@inai.de>
|
||||
Date: 2014-10-01 14:23:22.000000000 +0200
|
||||
References: https://github.com/Cyan4973/lz4/pull/195
|
||||
|
||||
build: make programs use liblz too instead of duplicating object code.
|
||||
|
||||
---
|
||||
programs/Makefile | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
Index: lz4-1.8.0/programs/Makefile
|
||||
===================================================================
|
||||
--- lz4-1.8.0.orig/programs/Makefile
|
||||
+++ lz4-1.8.0/programs/Makefile
|
||||
@@ -41,7 +41,7 @@ LIBVER_MINOR := $(shell echo $(LIBVER_MI
|
||||
LIBVER_PATCH := $(shell echo $(LIBVER_PATCH_SCRIPT))
|
||||
LIBVER := $(shell echo $(LIBVER_SCRIPT))
|
||||
|
||||
-SRCFILES := $(wildcard $(LZ4DIR)/*.c) $(wildcard *.c)
|
||||
+SRCFILES := $(wildcard *.c)
|
||||
OBJFILES := $(patsubst %.c,%.o,$(SRCFILES))
|
||||
|
||||
CPPFLAGS += -I$(LZ4DIR) -DXXH_NAMESPACE=LZ4_
|
||||
@@ -76,14 +76,14 @@ all32: CFLAGS+=-m32
|
||||
all32: all
|
||||
|
||||
lz4: $(OBJFILES)
|
||||
- $(CC) $(FLAGS) $^ -o $@$(EXT)
|
||||
+ $(CC) $(FLAGS) $^ -o $@$(EXT) -L${LZ4DIR} -llz4
|
||||
|
||||
lz4-release: DEBUGFLAGS=
|
||||
lz4-release: lz4
|
||||
|
||||
lz4c32: CFLAGS += -m32
|
||||
lz4c32 : $(SRCFILES)
|
||||
- $(CC) $(FLAGS) $^ -o $@$(EXT)
|
||||
+ $(CC) $(FLAGS) $^ -o $@$(EXT) -L${LZ4DIR} -llz4
|
||||
|
||||
lz4c: lz4
|
||||
ln -s lz4 lz4c
|
53
lz4.changes
53
lz4.changes
@ -1,3 +1,56 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 7 04:32:52 UTC 2018 - avindra@opensuse.org
|
||||
|
||||
- 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
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 25 13:59:49 UTC 2017 - jengelh@inai.de
|
||||
|
||||
|
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
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2ca482ea7a9bb103603108b5a7510b7592b90158c151ff50a28f1ca8389fccf6
|
||||
size 222840
|
Loading…
Reference in New Issue
Block a user