import xxhash-0.8.1-3.el8
This commit is contained in:
commit
a584cc7918
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
SOURCES/xxhash-0.8.1.tar.gz
|
1
.xxhash.metadata
Normal file
1
.xxhash.metadata
Normal file
@ -0,0 +1 @@
|
||||
a92c9a9cfbef23e52f2d1b581cb9926c680d261d SOURCES/xxhash-0.8.1.tar.gz
|
129
SOURCES/1-fix-man-page-installation.patch
Normal file
129
SOURCES/1-fix-man-page-installation.patch
Normal file
@ -0,0 +1,129 @@
|
||||
From 836f4e735cf368542f14005e41d2f84ec29dfd60 Mon Sep 17 00:00:00 2001
|
||||
From: Yann Collet <yann.collet.73@gmail.com>
|
||||
Date: Sat, 4 Dec 2021 10:29:49 -0800
|
||||
Subject: [PATCH] fix man page installation
|
||||
|
||||
for variant redirectors (`xxh32sum`, `xxh64sum` and `xxh128sum`).
|
||||
fix #647, reported by @jpalus.
|
||||
|
||||
Also : slightly updated man page text, for clarity and accuracy.
|
||||
---
|
||||
Makefile | 14 ++++++++------
|
||||
cli/xxhsum.1 | 8 ++++----
|
||||
cli/xxhsum.1.md | 8 +++++---
|
||||
3 files changed, 17 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 2fbefbc..63273e1 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -457,6 +457,7 @@ endif
|
||||
|
||||
INSTALL_PROGRAM ?= $(INSTALL)
|
||||
INSTALL_DATA ?= $(INSTALL) -m 644
|
||||
+INSTALL_DIR ?= $(INSTALL) -d -m 755
|
||||
|
||||
|
||||
# Escape special symbols by putting each character into its separate class
|
||||
@@ -496,7 +497,7 @@ libxxhash.pc: libxxhash.pc.in
|
||||
.PHONY: install
|
||||
install: lib libxxhash.pc xxhsum ## install libraries, CLI, links and man page
|
||||
@echo Installing libxxhash
|
||||
- $(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(LIBDIR)
|
||||
+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(LIBDIR)
|
||||
$(Q)$(INSTALL_DATA) libxxhash.a $(DESTDIR)$(LIBDIR)
|
||||
$(Q)$(INSTALL_PROGRAM) $(LIBXXH) $(DESTDIR)$(LIBDIR)
|
||||
$(Q)ln -sf $(LIBXXH) $(DESTDIR)$(LIBDIR)/libxxhash.$(SHARED_EXT_MAJOR)
|
||||
@@ -508,19 +509,20 @@ ifeq ($(DISPATCH),1)
|
||||
$(Q)$(INSTALL_DATA) xxh_x86dispatch.h $(DESTDIR)$(INCLUDEDIR)
|
||||
endif
|
||||
@echo Installing pkgconfig
|
||||
- $(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(PKGCONFIGDIR)/
|
||||
+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(PKGCONFIGDIR)/
|
||||
$(Q)$(INSTALL_DATA) libxxhash.pc $(DESTDIR)$(PKGCONFIGDIR)/
|
||||
@echo Installing xxhsum
|
||||
- $(Q)$(INSTALL) -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MANDIR)/
|
||||
+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(BINDIR)/
|
||||
$(Q)$(INSTALL_PROGRAM) xxhsum $(DESTDIR)$(BINDIR)/xxhsum
|
||||
$(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh32sum
|
||||
$(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh64sum
|
||||
$(Q)ln -sf xxhsum $(DESTDIR)$(BINDIR)/xxh128sum
|
||||
@echo Installing man pages
|
||||
+ $(Q)$(INSTALL_DIR) $(DESTDIR)$(MANDIR)/
|
||||
$(Q)$(INSTALL_DATA) $(MAN) $(DESTDIR)$(MANDIR)/xxhsum.1
|
||||
- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh32sum.1
|
||||
- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh64sum.1
|
||||
- $(Q)ln -sf $(MAN) $(DESTDIR)$(MANDIR)/xxh128sum.1
|
||||
+ $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh32sum.1
|
||||
+ $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh64sum.1
|
||||
+ $(Q)ln -sf xxhsum.1 $(DESTDIR)$(MANDIR)/xxh128sum.1
|
||||
@echo xxhash installation completed
|
||||
|
||||
.PHONY: uninstall
|
||||
diff --git a/cli/xxhsum.1 b/cli/xxhsum.1
|
||||
index 27e6808..715fc4b 100644
|
||||
--- a/cli/xxhsum.1
|
||||
+++ b/cli/xxhsum.1
|
||||
@@ -1,14 +1,14 @@
|
||||
-.TH "XXHSUM" "1" "November 2021" "xxhsum 0.8.1" "User Commands"
|
||||
+.TH "XXHSUM" "1" "December 2021" "xxhsum 0.8.1" "User Commands"
|
||||
.SH "NAME"
|
||||
\fBxxhsum\fR \- print or check xxHash non\-cryptographic checksums
|
||||
.SH "SYNOPSIS"
|
||||
\fBxxhsum [<OPTION>] \|\.\|\.\|\. [<FILE>] \|\.\|\.\|\.\fR \fBxxhsum \-b [<OPTION>] \|\.\|\.\|\.\fR
|
||||
.P
|
||||
-\fBxxh32sum\fR is equivalent to \fBxxhsum \-H0\fR \fBxxh64sum\fR is equivalent to \fBxxhsum \-H1\fR \fBxxh128sum\fR is equivalent to \fBxxhsum \-H2\fR
|
||||
+\fBxxh32sum\fR is equivalent to \fBxxhsum \-H0\fR, \fBxxh64sum\fR is equivalent to \fBxxhsum \-H1\fR, \fBxxh128sum\fR is equivalent to \fBxxhsum \-H2\fR
|
||||
.SH "DESCRIPTION"
|
||||
Print or check xxHash (32, 64 or 128 bits) checksums\. When no \fIFILE\fR, read standard input, except if it\'s the console\. When \fIFILE\fR is \fB\-\fR, read standard input even if it\'s the console\.
|
||||
.P
|
||||
-\fBxxhsum\fR supports a command line syntax similar but not identical to md5sum(1)\. Differences are: \fBxxhsum\fR doesn\'t have text/binary mode switch (\fB\-b\fR, \fB\-t\fR); \fBxxhsum\fR always treats files as binary file; \fBxxhsum\fR has a hash bit width switch (\fB\-H\fR);
|
||||
+\fBxxhsum\fR supports a command line syntax similar but not identical to md5sum(1)\. Differences are: \fBxxhsum\fR doesn\'t have text/binary mode switch (\fB\-b\fR, \fB\-t\fR); \fBxxhsum\fR always treats files as binary file; \fBxxhsum\fR has a hash selection switch (\fB\-H\fR);
|
||||
.P
|
||||
As xxHash is a fast non\-cryptographic checksum algorithm, \fBxxhsum\fR should not be used for security related purposes\.
|
||||
.P
|
||||
@@ -19,7 +19,7 @@ As xxHash is a fast non\-cryptographic checksum algorithm, \fBxxhsum\fR should n
|
||||
Displays xxhsum version and exits
|
||||
.TP
|
||||
\fB\-H\fR\fIHASHTYPE\fR
|
||||
-Hash selection\. \fIHASHTYPE\fR means \fB0\fR=XXH32, \fB1\fR=XXH64, \fB2\fR=XXH128, \fB3\fR=XXH3\. Alternatively, \fIHASHTYPE\fR \fB32\fR=XXH32, \fB64\fR=XXH64, \fB128\fR=XXH128\. Default value is \fB1\fR (64bits)
|
||||
+Hash selection\. \fIHASHTYPE\fR means \fB0\fR=XXH32, \fB1\fR=XXH64, \fB2\fR=XXH128, \fB3\fR=XXH3\. Note that \fB\-H3\fR triggers \fB\-\-tag\fR, which can\'t be skipped (this is to reduce risks of confusion with \fB\-H2\fR (\fBXXH64\fR))\. Alternatively, \fIHASHTYPE\fR \fB32\fR=XXH32, \fB64\fR=XXH64, \fB128\fR=XXH128\. Default value is \fB1\fR (64bits)
|
||||
.TP
|
||||
\fB\-\-tag\fR
|
||||
Output in the BSD style\.
|
||||
diff --git a/cli/xxhsum.1.md b/cli/xxhsum.1.md
|
||||
index 777d1ca..df2cb91 100644
|
||||
--- a/cli/xxhsum.1.md
|
||||
+++ b/cli/xxhsum.1.md
|
||||
@@ -7,8 +7,8 @@ SYNOPSIS
|
||||
`xxhsum [<OPTION>] ... [<FILE>] ...`
|
||||
`xxhsum -b [<OPTION>] ...`
|
||||
|
||||
-`xxh32sum` is equivalent to `xxhsum -H0`
|
||||
-`xxh64sum` is equivalent to `xxhsum -H1`
|
||||
+`xxh32sum` is equivalent to `xxhsum -H0`,
|
||||
+`xxh64sum` is equivalent to `xxhsum -H1`,
|
||||
`xxh128sum` is equivalent to `xxhsum -H2`
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ When <FILE> is `-`, read standard input even if it's the console.
|
||||
Differences are:
|
||||
`xxhsum` doesn't have text/binary mode switch (`-b`, `-t`);
|
||||
`xxhsum` always treats files as binary file;
|
||||
-`xxhsum` has a hash bit width switch (`-H`);
|
||||
+`xxhsum` has a hash selection switch (`-H`);
|
||||
|
||||
As xxHash is a fast non-cryptographic checksum algorithm,
|
||||
`xxhsum` should not be used for security related purposes.
|
||||
@@ -38,6 +38,8 @@ OPTIONS
|
||||
|
||||
* `-H`<HASHTYPE>:
|
||||
Hash selection. <HASHTYPE> means `0`=XXH32, `1`=XXH64, `2`=XXH128, `3`=XXH3.
|
||||
+ Note that `-H3` triggers `--tag`, which can't be skipped
|
||||
+ (this is to reduce risks of confusion with `-H2` (`XXH64`)).
|
||||
Alternatively, <HASHTYPE> `32`=XXH32, `64`=XXH64, `128`=XXH128.
|
||||
Default value is `1` (64bits)
|
||||
|
||||
--
|
||||
2.36.1
|
||||
|
107
SPECS/xxhash.spec
Normal file
107
SPECS/xxhash.spec
Normal file
@ -0,0 +1,107 @@
|
||||
Name: xxhash
|
||||
Version: 0.8.1
|
||||
Release: 3%{?dist}
|
||||
Summary: Extremely fast hash algorithm
|
||||
|
||||
# The source for the library (xxhash.c and xxhash.h) is BSD
|
||||
# The source for the command line tool (xxhsum.c) is GPLv2+
|
||||
License: BSD and GPLv2+
|
||||
URL: http://www.xxhash.com/
|
||||
Source0: https://github.com/Cyan4973/xxHash/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: gcc
|
||||
BuildRequires: doxygen
|
||||
|
||||
Patch0: 1-fix-man-page-installation.patch
|
||||
|
||||
%description
|
||||
xxHash is an Extremely fast Hash algorithm, running at RAM speed
|
||||
limits. It successfully completes the SMHasher test suite which
|
||||
evaluates collision, dispersion and randomness qualities of hash
|
||||
functions. Code is highly portable, and hashes are identical on all
|
||||
platforms (little / big endian).
|
||||
|
||||
%package libs
|
||||
Summary: Extremely fast hash algorithm - library
|
||||
License: BSD
|
||||
|
||||
%description libs
|
||||
xxHash is an Extremely fast Hash algorithm, running at RAM speed
|
||||
limits. It successfully completes the SMHasher test suite which
|
||||
evaluates collision, dispersion and randomness qualities of hash
|
||||
functions. Code is highly portable, and hashes are identical on all
|
||||
platforms (little / big endian).
|
||||
|
||||
%package devel
|
||||
Summary: Extremely fast hash algorithm - development files
|
||||
License: BSD
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
# By setting XXH_INLINE_ALL, xxhash may be used as a header-only library.
|
||||
# Dependent packages that use xxhash this way must BR this virtual Provide:
|
||||
Provides: %{name}-static = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
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
|
||||
%setup -q -n xxHash-%{version}
|
||||
%patch0 -p1
|
||||
|
||||
%build
|
||||
# Enable runtime detection of sse2/avx2/avx512 on intel architectures
|
||||
%ifarch %{ix86} x86_64
|
||||
%global dispatch 1
|
||||
%else
|
||||
%global dispatch 0
|
||||
%endif
|
||||
|
||||
%make_build MOREFLAGS="%{__global_cflags} %{?__global_ldflags}" \
|
||||
DISPATCH=%{dispatch}
|
||||
doxygen
|
||||
|
||||
%install
|
||||
%make_install PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
||||
rm %{buildroot}/%{_libdir}/libxxhash.a
|
||||
|
||||
%check
|
||||
make check
|
||||
make test-xxhsum-c
|
||||
|
||||
%ldconfig_scriptlets libs
|
||||
|
||||
%files
|
||||
%{_bindir}/xxh*sum
|
||||
%{_mandir}/man1/xxh*sum.1*
|
||||
%license cli/COPYING
|
||||
%doc cli/README.md
|
||||
|
||||
%files libs
|
||||
%{_libdir}/libxxhash.so.*
|
||||
%license LICENSE
|
||||
%doc README.md
|
||||
|
||||
%files devel
|
||||
%{_includedir}/xxhash.h
|
||||
%{_includedir}/xxh3.h
|
||||
%{_libdir}/libxxhash.so
|
||||
%{_libdir}/pkgconfig/libxxhash.pc
|
||||
|
||||
%files doc
|
||||
%doc doxygen/html
|
||||
|
||||
%changelog
|
||||
* Mon Jul 18 2022 Vladis Dronov <vdronov@redhat.com> - 0.8.1-3
|
||||
- Fix broken manpages (upstream commit 836f4e735cf3)
|
||||
- Add OSCI testing harness
|
||||
|
||||
* Fri Jun 17 2022 Vladis Dronov <vdronov@redhat.com> - 0.8.1-1
|
||||
- Packaging of xxhash v0.8.1 for CS and RHEL copied from Fedora 36
|
Loading…
Reference in New Issue
Block a user