lz4/lz4.spec
Jan Engelhardt 7d4f9e60cc 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
2018-02-07 13:33:33 +00:00

100 lines
3.0 KiB
RPMSpec
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#
# spec file for package lz4
#
# 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
# 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 http://bugs.opensuse.org/
#
%define lname liblz4-1
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: https://lz4.github.io/lz4/
#Git-Clone: https://github.com/lz4/lz4
Source: https://github.com/lz4/lz4/archive/v%version.tar.gz#/%{name}-%{version}.tar.gz
Source99: baselibs.conf
Patch2: lz-export.diff
BuildRequires: pkgconfig
%description
LZ4 is a lossless data compression algorithm that is focused on
compression and decompression speed. It belongs to the LZ77
(LempelZiv) family of byte-oriented compression schemes. It is a
LZP2 fork and provides better compression ratio for text files.
This subpackage provides a GPL command-line utility to make use of
the LZ4 algorithm.
%package -n %lname
Summary: Hash-based predictive Lempel-Ziv compressor
License: BSD-2-Clause
Group: System/Libraries
%description -n %lname
LZ4 is a lossless data compression algorithm that is focused on
compression and decompression speed. It belongs to the LZ77
(LempelZiv) family of byte-oriented compression schemes. It is a
This subpackage contains the (de)compressor code as a shared library.
%package -n liblz4-devel
Summary: Development files for the LZ4 compressor
License: BSD-2-Clause
Group: Development/Libraries/C and C++
Requires: %lname = %version
%description -n liblz4-devel
LZ4 is a lossless data compression algorithm that is focused on
compression and decompression speed. It belongs to the LZ77
(LempelZiv) family of byte-oriented compression schemes. It is a
This subpackage contains libraries and header files for developing
applications that want to make use of liblz4.
%prep
%setup -q
%patch -P 2 -p1
%build
make %{?_smp_mflags} CFLAGS="%optflags"
%install
%make_install PREFIX="%_prefix" LIBDIR="%_libdir"
rm -f "%buildroot/%_libdir"/*.a
%check
LD_LIBRARY_PATH="%buildroot/%_libdir" ldd -r "%buildroot/%_bindir/lz4"
%post -n %lname -p /sbin/ldconfig
%postun -n %lname -p /sbin/ldconfig
%files
%_bindir/lz4*
%_bindir/unlz4
%_mandir/man1/*.1*
%files -n %lname
%_libdir/liblz4.so.1*
%files -n liblz4-devel
%_includedir/lz4*.h
%_libdir/liblz4.so
%_libdir/pkgconfig/*.pc
%changelog