Sync from SUSE:SLFO:Main lz4 revision b07e480c6feec1fa2456601b8ae5447c

This commit is contained in:
Adrian Schröter 2024-05-03 16:28:06 +02:00
commit 841cc06c1b
6 changed files with 377 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
baselibs.conf Normal file
View File

@ -0,0 +1 @@
liblz4-1

21
lz-export.diff Normal file
View File

@ -0,0 +1,21 @@
[ 9s] bench.o: In function `BMK_benchMem':
[ 9s] /home/abuild/rpmbuild/BUILD/lz4-1.8.0/programs/bench.c:221: undefined reference to `LZ4_XXH64'
---
lib/xxhash.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: lz4-1.9.1/lib/xxhash.h
===================================================================
--- lz4-1.9.1.orig/lib/xxhash.h
+++ lz4-1.9.1/lib/xxhash.h
@@ -107,7 +107,7 @@ typedef enum { XXH_OK=0, XXH_ERROR } XXH
# define XXH_PUBLIC_API static
# endif
#else
-# define XXH_PUBLIC_API /* do nothing */
+# define XXH_PUBLIC_API __attribute__((visibility("default"))) /* do nothing */
#endif /* XXH_INLINE_ALL || XXH_PRIVATE_API */
/*! XXH_NAMESPACE, aka Namespace Emulation :

228
lz4.changes Normal file
View File

@ -0,0 +1,228 @@
-------------------------------------------------------------------
Wed Mar 8 09:55:21 UTC 2023 - Martin Pluskal <mpluskal@suse.com>
- Build AVX2 enabled hwcaps library for x86_64-v3
-------------------------------------------------------------------
Tue Aug 16 07:20:23 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
- Update to release 1.9.4
* Decompression speed on high-end ARM64 platform is improved,
by ~+20%.
* For the specific scenario of data compressed with -BD4
setting (small blocks, <= 64 KB, linked) decompressed
block-by-block into a flush buffer (like lz4 CLI does),
decompression speed is improved ~+70%.
* For compressed data employing the lz4frame format (native
format of lz4 CLI), it's possible to ignore checksum
validation during decompression, resulting in speed
improvements of ~+40% . This capability is exposed at both
CLI (see --no-crc) and library levels.
-------------------------------------------------------------------
Mon Oct 4 07:04:27 UTC 2021 - pgajdos@suse.com
- version 1.9.3 fixes also CVE-2021-3520 [bsc#1185438]
-------------------------------------------------------------------
Mon Nov 16 06:14:25 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
- Update to release 1.9.3
* api: LZ4_decompress_safe_partial() now supports unknown
compressed size
* api: improved LZ4F_compressBound() with automatic flushing
* cli: multiple files are compressed now using the legacy format
-------------------------------------------------------------------
Wed Oct 16 08:51:54 UTC 2019 - pgajdos@suse.com
- enable testsuite
- verbose build
-------------------------------------------------------------------
Tue Oct 15 14:48:45 UTC 2019 - pgajdos@suse.com
- version update to 1.9.2
* decompression functions were reading a few bytes beyond input size
* api: lz4frame initializers compatibility with c++, reported by @degski
* cli : added command --list, based on a patch by @gabrielstedman
* fixes CVE-2019-17543 [bsc#1153936]
-------------------------------------------------------------------
Thu Jun 6 18:26:39 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Update to new upstream release 1.9.1
* Decompression speed was improved by about 12% (x86/x64).
* New option `lz4 --list` to inspect the block type, checksum
information, compressed and decompressed sizes (if present). The
command is limited to single-frame files for the time being.
-------------------------------------------------------------------
Fri Oct 12 22:04:52 UTC 2018 - astieger@suse.com
- lz4 1.8.3:
* minor decompression speed improvement (~+2%) with gcc
* fix corruption in v1.8.2 at level 9 for files > 64KB under
rare conditions
* Add new command --fast
* api: LZ4_decompress_safe_partial() now decodes exactly the
number of bytes requested
-------------------------------------------------------------------
Thu Jun 28 09:38:39 UTC 2018 - astieger@suse.com
- lz4 1.8.2:
* speed inprovemtns for compression and decompression
* fix compression compatible with low memory addresses
* fix decompression segfault when provided with NULL input
* cli: new command --favor-decSpeed
* cli: benchmark mode more accurate for small inputs
-------------------------------------------------------------------
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
- partial cleanup with spec-cleaner
- 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
- Update to new upstream release 1.8.0
* cli: fix: do not modify /dev/null's permissions.
* cli: added POSIX separator "--" for specifying that all
following arguments are non-options.
* cli: restored -BX command enabling block checksum.
* API: added LZ4_compress_HC_destSize() and
LZ4F_resetDecompressionContext().
* API: lz4frame: negative compression levels trigger fast
acceleration.
* API: lz4frame: ability to control block checksum and
dictionary ID.
* API: fix: expose obsolete decoding functions
* API: experimental: lz4frame_static.h:
new dictionary compression API
* doc: Updated LZ4 Frame format to v1.6.0, restoring
Dictionary ID field in header.
- Add lz-export.diff
-------------------------------------------------------------------
Tue Aug 15 17:35:16 UTC 2017 - ddiss@suse.com
- Use official upstream repository; (boo#1053910)
-------------------------------------------------------------------
Wed Jul 5 22:51:53 UTC 2017 - jengelh@inai.de
- Update to new upstrema release 1.7.5 (2017-01-03)
* back to the old version scheme
* lz4hc: new compression levels 10-12
- Remove lz4-soversion.diff (not needed),
lz4-killdate.diff (no longer needed)
-------------------------------------------------------------------
Mon Jan 16 07:57:03 UTC 2017 - dimstar@opensuse.org
- Add baselibs.conf: provide liblz4-1_7 as -32bit compatibility
package, required by systemd-32bit.
-------------------------------------------------------------------
Sat Apr 2 19:26:32 UTC 2016 - jengelh@inai.de
- Update to new upstream release 131 (library 1.7) (boo#973735)
* slightly improved decoding speed
* lz4frame API is included in liblz4
* new -m command line option to compress multiple files
* new lz4 and lz4hc compression API (old one retained)
-------------------------------------------------------------------
Fri Nov 28 19:02:06 UTC 2014 - jengelh@inai.de
- Update to version 1.4+svn124
* LZ4F_compressBound() may be called with NULL preferencesPtr
* LZ4_loadDict now returns the dictionary size instead of 1
on success
- Add lz4-soversion.diff to address ABI changes
-------------------------------------------------------------------
Wed Oct 1 12:18:15 UTC 2014 - jengelh@inai.de
- Update to version 1.3.1+svn123
* Added a pkgconfig file
* Fix a LZ4HC streaming bug
* Updated the framing specificaiton to 1.4.1
-------------------------------------------------------------------
Wed Jul 16 14:34:44 UTC 2014 - jengelh@inai.de
- Update to svn revision 119, set version to 1.2.0 (based upon
Makefile contents; it's still odd to see the 1.4 Windows release)
* Provide LZ4 as a shared library
- Remove lz4-automake.diff (no longer deemed necessary)
- Add lz4-use-shlib.diff
-------------------------------------------------------------------
Mon Nov 25 23:07:48 UTC 2013 - dsterba@suse.com
- update to svn 108, set version to 1.4 (current windows release)
- added manpage
- minor code updates
-------------------------------------------------------------------
Tue Sep 3 16:48:31 UTC 2013 - jengelh@inai.de
- Update to new snapshot svn102; set version as 1.3.3 in accordance
with latest Windows releases.
* Add lz4-killdate.diff (kill the ungodly __DATE__s)
-------------------------------------------------------------------
Thu Feb 21 05:52:43 UTC 2013 - jengelh@inai.de
- I hate %makeinstall (it fails all the SLES builds), kill it!
-------------------------------------------------------------------
Sat Mar 17 15:21:31 UTC 2012 - jengelh@medozas.de
- Initial package for build.opensuse.org

101
lz4.spec Normal file
View File

@ -0,0 +1,101 @@
#
# spec file for package lz4
#
# Copyright (c) 2022 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 lname liblz4-1
Name: lz4
Version: 1.9.4
Release: 0
Summary: Hash-based Predictive LempelZiv compressor
License: BSD-2-Clause AND GPL-2.0-or-later
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
Source99: baselibs.conf
Patch2: lz-export.diff
BuildRequires: pkgconfig
%{?suse_build_hwcaps_libs}
%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
%autosetup -p1
%build
V=1 %make_build 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"
# TS fails on its own help output
%make_build check -k || :
%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

BIN
v1.9.4.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.