Update to version 0.8.1
Drop patch xxhash-pkgconfig-version.patch (accepted upstream) Fix compilation on RHEL 7 ppc64le (gcc 4.8) The x86 dispatch code now enables sse2 and avx2 separately, it can now use sse2 on EPEL 7 without trying to use avx2 which is not supported by gcc 4.8 Add documentation package - doxygen mark-up was added
This commit is contained in:
parent
74e1194962
commit
999f4d43ac
43
xxhash-epel7-ppc64le.patch
Normal file
43
xxhash-epel7-ppc64le.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
From 15ce80f9f2760609d8cc68cea76d3f3217ab70e1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mattias Ellert <mattias.ellert@physics.uu.se>
|
||||||
|
Date: Tue, 30 Nov 2021 23:19:38 +0100
|
||||||
|
Subject: [PATCH] Fix compilation on RHEL 7 ppc64le (gcc 4.8)
|
||||||
|
|
||||||
|
---
|
||||||
|
xxhash.h | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/xxhash.h b/xxhash.h
|
||||||
|
index 08ab794..7850622 100644
|
||||||
|
--- a/xxhash.h
|
||||||
|
+++ b/xxhash.h
|
||||||
|
@@ -4129,7 +4129,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
|
||||||
|
const void* XXH_RESTRICT secret)
|
||||||
|
{
|
||||||
|
/* presumed aligned */
|
||||||
|
- unsigned long long* const xacc = (unsigned long long*) acc;
|
||||||
|
+ unsigned int* const xacc = (unsigned int*) acc;
|
||||||
|
xxh_u64x2 const* const xinput = (xxh_u64x2 const*) input; /* no alignment restriction */
|
||||||
|
xxh_u64x2 const* const xsecret = (xxh_u64x2 const*) secret; /* no alignment restriction */
|
||||||
|
xxh_u64x2 const v32 = { 32, 32 };
|
||||||
|
@@ -4145,7 +4145,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
|
||||||
|
/* product = ((xxh_u64x2)data_key & 0xFFFFFFFF) * ((xxh_u64x2)shuffled & 0xFFFFFFFF); */
|
||||||
|
xxh_u64x2 const product = XXH_vec_mulo((xxh_u32x4)data_key, shuffled);
|
||||||
|
/* acc_vec = xacc[i]; */
|
||||||
|
- xxh_u64x2 acc_vec = vec_xl(0, xacc + 2 * i);
|
||||||
|
+ xxh_u64x2 acc_vec = (xxh_u64x2)vec_xl(0, xacc + 4 * i);
|
||||||
|
acc_vec += product;
|
||||||
|
|
||||||
|
/* swap high and low halves */
|
||||||
|
@@ -4155,7 +4155,7 @@ XXH3_accumulate_512_vsx( void* XXH_RESTRICT acc,
|
||||||
|
acc_vec += vec_xxpermdi(data_vec, data_vec, 2);
|
||||||
|
#endif
|
||||||
|
/* xacc[i] = acc_vec; */
|
||||||
|
- vec_xst(acc_vec, 0, xacc + 2 * i);
|
||||||
|
+ vec_xst((xxh_u32x4)acc_vec, 0, xacc + 4 * i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.33.1
|
||||||
|
|
@ -1,13 +0,0 @@
|
|||||||
diff --git a/Makefile b/Makefile
|
|
||||||
index ef24e94..da1ce06 100644
|
|
||||||
--- a/Makefile
|
|
||||||
+++ b/Makefile
|
|
||||||
@@ -437,7 +437,7 @@ libxxhash.pc: libxxhash.pc.in
|
|
||||||
-e 's|@EXECPREFIX@|$(PCEXECDIR)|' \
|
|
||||||
-e 's|@LIBDIR@|$(PCLIBDIR)|' \
|
|
||||||
-e 's|@INCLUDEDIR@|$(PCINCDIR)|' \
|
|
||||||
- -e 's|@VERSION@|$(VERSION)|' \
|
|
||||||
+ -e 's|@VERSION@|$(LIBVER)|' \
|
|
||||||
$< > $@
|
|
||||||
|
|
||||||
|
|
41
xxhash.spec
41
xxhash.spec
@ -1,6 +1,6 @@
|
|||||||
Name: xxhash
|
Name: xxhash
|
||||||
Version: 0.8.0
|
Version: 0.8.1
|
||||||
Release: 4%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Extremely fast hash algorithm
|
Summary: Extremely fast hash algorithm
|
||||||
|
|
||||||
# The source for the library (xxhash.c and xxhash.h) is BSD
|
# The source for the library (xxhash.c and xxhash.h) is BSD
|
||||||
@ -8,12 +8,14 @@ Summary: Extremely fast hash algorithm
|
|||||||
License: BSD and GPLv2+
|
License: BSD and GPLv2+
|
||||||
URL: http://www.xxhash.com/
|
URL: http://www.xxhash.com/
|
||||||
Source0: https://github.com/Cyan4973/xxHash/archive/v%{version}/%{name}-%{version}.tar.gz
|
Source0: https://github.com/Cyan4973/xxHash/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||||
# Fix empty version in .pc file
|
# Fix compilation on RHEL 7 ppc64le (gcc 4.8)
|
||||||
# https://github.com/Cyan4973/xxHash/pull/442
|
# https://github.com/Cyan4973/xxHash/issues/622
|
||||||
Patch0: %{name}-pkgconfig-version.patch
|
# https://github.com/Cyan4973/xxHash/pull/631
|
||||||
|
Patch0: %{name}-epel7-ppc64le.patch
|
||||||
|
|
||||||
BuildRequires: make
|
BuildRequires: make
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
|
BuildRequires: doxygen
|
||||||
|
|
||||||
%description
|
%description
|
||||||
xxHash is an Extremely fast Hash algorithm, running at RAM speed
|
xxHash is an Extremely fast Hash algorithm, running at RAM speed
|
||||||
@ -44,6 +46,14 @@ Provides: %{name}-static = %{version}-%{release}
|
|||||||
%description devel
|
%description devel
|
||||||
Development files for the xxhash library
|
Development files for the xxhash library
|
||||||
|
|
||||||
|
%package doc
|
||||||
|
Summary: Extremely fast hash algorithm - documentation files
|
||||||
|
License: BSD
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description doc
|
||||||
|
Documentation files for the xxhash library
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n xxHash-%{version}
|
%setup -q -n xxHash-%{version}
|
||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
@ -51,18 +61,14 @@ Development files for the xxhash library
|
|||||||
%build
|
%build
|
||||||
# Enable runtime detection of sse2/avx2/avx512 on intel architectures
|
# Enable runtime detection of sse2/avx2/avx512 on intel architectures
|
||||||
%ifarch %{ix86} x86_64
|
%ifarch %{ix86} x86_64
|
||||||
# The compiler version in EPEL 6 and 7 does not support avx
|
|
||||||
%if %{?rhel}%{!?rhel:0} == 6 || %{?rhel}%{!?rhel:0} == 7
|
|
||||||
%global dispatch 0
|
|
||||||
%else
|
|
||||||
%global dispatch 1
|
%global dispatch 1
|
||||||
%endif
|
|
||||||
%else
|
%else
|
||||||
%global dispatch 0
|
%global dispatch 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%make_build MOREFLAGS="%{__global_cflags} %{?__global_ldflags}" \
|
%make_build MOREFLAGS="%{__global_cflags} %{?__global_ldflags}" \
|
||||||
DISPATCH=%{dispatch}
|
DISPATCH=%{dispatch}
|
||||||
|
doxygen
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
%make_install PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
||||||
@ -77,8 +83,8 @@ make test-xxhsum-c
|
|||||||
%files
|
%files
|
||||||
%{_bindir}/xxh*sum
|
%{_bindir}/xxh*sum
|
||||||
%{_mandir}/man1/xxh*sum.1*
|
%{_mandir}/man1/xxh*sum.1*
|
||||||
%license LICENSE
|
%license cli/COPYING
|
||||||
%doc README.md
|
%doc cli/README.md
|
||||||
|
|
||||||
%files libs
|
%files libs
|
||||||
%{_libdir}/libxxhash.so.*
|
%{_libdir}/libxxhash.so.*
|
||||||
@ -91,7 +97,18 @@ make test-xxhsum-c
|
|||||||
%{_libdir}/libxxhash.so
|
%{_libdir}/libxxhash.so
|
||||||
%{_libdir}/pkgconfig/libxxhash.pc
|
%{_libdir}/pkgconfig/libxxhash.pc
|
||||||
|
|
||||||
|
%files doc
|
||||||
|
%doc doxygen/html
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Nov 29 2021 Mattias Ellert <mattias.ellert@physics.uu.se> - 0.8.1-1
|
||||||
|
- Update to version 0.8.1
|
||||||
|
- Drop patch xxhash-pkgconfig-version.patch (accepted upstream)
|
||||||
|
- Fix compilation on RHEL 7 ppc64le (gcc 4.8)
|
||||||
|
- The x86 dispatch code now enables sse2 and avx2 separately, it can now use
|
||||||
|
sse2 on EPEL 7 without trying to use avx2 which is not supported by gcc 4.8
|
||||||
|
- Add documentation package - doxygen mark-up was added
|
||||||
|
|
||||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-4
|
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-4
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user