SHA256
1
0
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:
Jan Engelhardt 2018-02-07 13:33:33 +00:00 committed by Git OBS Bridge
parent 7697e50f35
commit 7d4f9e60cc
5 changed files with 65 additions and 63 deletions

3
lz4-1.8.1.2.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:12f3a9e776a923275b2dc78ae138b4967ad6280863b77ff733028ce89b8123f9
size 228640

View File

@ -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

View File

@ -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

View File

@ -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 LempelZiv 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

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2ca482ea7a9bb103603108b5a7510b7592b90158c151ff50a28f1ca8389fccf6
size 222840