From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46235) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eVOfl-0002ue-Cm for guix-patches@gnu.org; Sat, 30 Dec 2017 16:28:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eVOfj-0006z8-1o for guix-patches@gnu.org; Sat, 30 Dec 2017 16:28:05 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:49506) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1eVOfi-0006xX-UF for guix-patches@gnu.org; Sat, 30 Dec 2017 16:28:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1eVOfi-0000AT-Fx for guix-patches@gnu.org; Sat, 30 Dec 2017 16:28:02 -0500 Subject: [bug#29911] [PATCH] gnu: Add xxhash. Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46061) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eVOfJ-0002pQ-Qw for guix-patches@gnu.org; Sat, 30 Dec 2017 16:27:39 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eVOfG-000639-9N for guix-patches@gnu.org; Sat, 30 Dec 2017 16:27:37 -0500 Received: from tobias.gr ([2001:470:cc92::1]:33812) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1eVOfF-00060A-U0 for guix-patches@gnu.org; Sat, 30 Dec 2017 16:27:34 -0500 Received: by tobias.gr (OpenSMTPD) with ESMTP id 6a5eeec7 for ; Sat, 30 Dec 2017 21:27:31 +0000 (UTC) Received: by submission.tobias.gr (OpenSMTPD) with ESMTPSA id c81defd3 (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128:NO) for ; Sat, 30 Dec 2017 21:27:30 +0000 (UTC) From: Tobias Geerinckx-Rice Date: Sat, 30 Dec 2017 22:30:10 +0100 Message-Id: <20171230213010.7934-1-me@tobias.gr> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 29911@debbugs.gnu.org * gnu/packages/digest.scm: New file (xxhash): New public variable. * gnu/local.mk (GNU_SYSTEM_MODULES): Add new file. --- Guix, This adds both a blazin' new hash and a brand-new file, since I couldn't find a suitable existing one. crypto.scm is out: xxHash is explicitly non-that. Happy times, T G-R gnu/local.mk | 1 + gnu/packages/digest.scm | 55 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 gnu/packages/digest.scm diff --git a/gnu/local.mk b/gnu/local.mk index 346c8285e..68f9fdf11 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -119,6 +119,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/dejagnu.scm \ %D%/packages/dico.scm \ %D%/packages/dictionaries.scm \ + %D%/packages/digest.scm \ %D%/packages/direct-connect.scm \ %D%/packages/disk.scm \ %D%/packages/display-managers.scm \ diff --git a/gnu/packages/digest.scm b/gnu/packages/digest.scm new file mode 100644 index 000000000..5f14ab913 --- /dev/null +++ b/gnu/packages/digest.scm @@ -0,0 +1,55 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages digest) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu)) + +(define-public xxhash + (package + (name "xxhash") + (version "0.6.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Cyan4973/xxHash/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "08nv9h3jzg6y85ysy2dj3qvvfsdz0rwkk497a2366syz278wqw25")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list "CC=gcc" + "XXH_FORCE_MEMORY_ACCESS=1" ; improved performance with GCC + (string-append "prefix=" (assoc-ref %outputs "out"))) + #:test-target "test" + #:phases + (modify-phases %standard-phases + (delete 'configure)))) ; no configure script + (home-page "https://cyan4973.github.io/xxHash/") + (synopsis "Extremely fast hash algorithm") + (description + "xxHash is an extremely fast non-cryptographic hash algorithm. It works +at speeds close to RAM limits, and comes in both 32- and 64-bit flavours. +The code is highly portable, and hashes of the same length are identical on all +platforms (both big and little endian).") + (license (list license:bsd-2 ; xxhash library (xxhash.[ch]) + license:gpl2+)))) ; xxhsum.c -- 2.15.0