# # spec file for package xxhash # # Copyright (c) 2021 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/ # Name: xxhash Version: 0.8.0 Release: 2.2 Summary: Non-cryptographic hash algorithm License: BSD-2-Clause AND GPL-2.0-only Group: Productivity/Security URL: https://github.com/Cyan4973/xxHash Source0: https://github.com/Cyan4973/xxHash/archive/v%{version}.tar.gz#/xxHash-%{version}.tar.gz Patch0: xxhash-avoid-armv6-unaligned-access.patch BuildRequires: c++_compiler BuildRequires: pkgconfig %description xxHash is a hash algorithm. It completes the SMHasher test suite which evaluates collision, dispersion and randomness qualities of hash functions. Hashes are identical on all platforms. %package -n libxxhash0 Summary: Shared library for xxHash - a non-cryptographic hash algorithm License: BSD-2-Clause Group: System/Libraries %description -n libxxhash0 Shared library for xxHash - a hash algorithm. It completes the SMHasher test suite which evaluates collision, dispersion and randomness qualities of hash functions. Hashes are identical on all platforms. %package devel Summary: Development files for xxHash - a non-cryptographic hash algorithm License: BSD-2-Clause Group: Development/Libraries/C and C++ Requires: %{name} = %{version} Requires: libxxhash0 = %{version} %description devel Development files for xxHash - a hash algorithm. It completes the SMHasher test suite which evaluates collision, dispersion and randomness qualities of hash functions. Hashes are identical on all platforms. %prep %setup -q -n xxHash-%{version} %patch0 -p1 %build make %{?_smp_mflags} prefix=%{_prefix} libdir=%{_libdir} %install %make_install prefix=%{_prefix} libdir=%{_libdir} rm -rf %{buildroot}%{_libdir}/libxxhash.a %check make test %post -n libxxhash0 -p /sbin/ldconfig %postun -n libxxhash0 -p /sbin/ldconfig %files %license LICENSE %doc README.md %{_bindir}/xxhsum %{_bindir}/xxh32sum %{_bindir}/xxh64sum %{_bindir}/xxh128sum %{_mandir}/man1/xxh32sum.* %{_mandir}/man1/xxh64sum.* %{_mandir}/man1/xxh128sum.* %{_mandir}/man1/xxhsum.* %files -n libxxhash0 %{_libdir}/libxxhash.so.* %files devel %{_includedir}/xxhash.h %{_includedir}/xxh3.h %{_libdir}/pkgconfig/libxxhash.pc %{_libdir}/libxxhash.so %changelog * Tue Jul 6 2021 ro@suse.de - add patch xxhash-avoid-armv6-unaligned-access.patch do not expect unaligned accesses to work on armv6, it breaks in our build setup using aarch64 kernels * Mon Aug 3 2020 Ismail Dönmez - Update to version 0.8.0 * api : stabilize XXH3 * cli : xxhsum can produce BSD-style lines, with command --tag * cli : xxhsum can parse and check BSD-style lines, using command --check * cli : xxhsum - accepts console input * cli : xxhsum accepts -- separator * cli : fix : print correct default algo for symlinked helpers - Add BR on c++_compiler, needed for test programs * Thu Dec 19 2019 Stefan Brüns - Enable test suite run in %%check * Tue Dec 17 2019 Michał Rostecki - Update to version 0.7.2 * Fixed collision ratio of XXH128 for some specific input lengths * Improved VSX and NEON variants * Improved performance of scalar code path (XXH_VECTOR=0), * xxhsum: can generate 128-bit hash with command -H2 (note: for experimental purposes only! XXH128 is not yet frozen) * xxhsum: option -q removes status notifications * Thu Sep 26 2019 simmphonie@opensuse.org - update to version 0.7.1 - XXH3 updates: * Secret first : the algorithm computation can be altered by providing a "secret", which is any blob of bytes, of size >= XXH3_SECRET_SIZE_MIN. * seed is still available, and acts as a secret generator * As a consequence of these changes, note that new return values of XXH3 are not compatible with v0.7.0 * updated ARM NEON variant * Streaming implementation is available * Improve compatibility and performance with Visual Studio * Better integration when using XXH_INLINE_ALL : do not pollute host namespace, use its own macros, such as XXH_ASSERT(), XXH_ALIGN, etc. * 128-bits variant provide helper function, for comparison of hashes. - general improvements: * Better clang generation of rotl instruction * XXH_REROLL build macro, to reduce binary size * Improved cmake script * Full benchmark program provided in /tests/bench - update to version 0.7.0 - Add XXH3 hash algorithm * Thu Dec 6 2018 Michał Rostecki - Remove false information from description - xxHash does not derive from Argon2 algorithm. * Mon Dec 3 2018 Jan Engelhardt - Trim bias from description * Tue Oct 16 2018 t.gruner@katodev.de - update to version 0.6.5 - Improved performance on small keys, thanks to suggestions from Jens Bauer - New build macro, XXH_INLINE_ALL, extremely effective for small keys of fixed length (see this article for details) - XXH32() : better performance on OS-X clang by disabling auto-vectorization - Improved benchmark measurements accuracy on small keys - Included xxHash specification document * Sun Jan 21 2018 bugs@vdm-design.de - Initial package of version 0.6.4