From fea30e12f7b0810c90b278127a7d3c75ef59cec7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 24 Nov 2019 19:16:50 +0200 Subject: gnu: sparsehash: Don't use unstable tarball. * gnu/packages/datastructures.scm (sparsehash)[source]: Download using git-fetch. --- gnu/packages/datastructures.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'gnu/packages/datastructures.scm') diff --git a/gnu/packages/datastructures.scm b/gnu/packages/datastructures.scm index dabb1f421e..7eab65fd5f 100644 --- a/gnu/packages/datastructures.scm +++ b/gnu/packages/datastructures.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2015, 2016, 2019 Ricardo Wurmus ;;; Copyright © 2016, 2017, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018 Meiyo Peng +;;; Copyright © 2019 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -80,12 +81,14 @@ (define-public sparsehash (name "sparsehash") (version "2.0.3") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/sparsehash/sparsehash/" - "archive/sparsehash-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/sparsehash/sparsehash.git") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "133szz0ldwch0kd91l0sa57qsnl020njn622szd9cxrjqyjqds85")))) + "0m3f0cnpnpf6aak52wn8xbrrdw8p0yhq8csgc8nlvf9zp8c402na")))) (build-system gnu-build-system) (synopsis "Memory-efficient hashtable implementations") (description -- cgit v1.2.3 From 3546771cc8e5a24de89965e69f74c1d20027fefd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 25 Nov 2019 10:55:01 +0200 Subject: gnu: libdivsufsort: Move to datastructures.scm. * gnu/packages/bioinformatics.scm (libdivsufsort): Move to ... * gnu/packages/datastructures.scm: ... here. --- gnu/packages/bioinformatics.scm | 29 ----------------------------- gnu/packages/datastructures.scm | 31 ++++++++++++++++++++++++++++++- 2 files changed, 30 insertions(+), 30 deletions(-) (limited to 'gnu/packages/datastructures.scm') diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index beb442ebe0..616fcedc35 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -11572,35 +11572,6 @@ (define-public libgff dependency like SeqAn.") (license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt")))) -(define-public libdivsufsort - (package - (name "libdivsufsort") - (version "2.0.1") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/y-256/libdivsufsort.git") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0fgdz9fzihlvjjrxy01md1bv9vh12rkgkwbm90b1hj5xpbaqp7z2")))) - (build-system cmake-build-system) - (arguments - '(#:tests? #f ; there are no tests - #:configure-flags - ;; Needed for rapmap and sailfish. - '("-DBUILD_DIVSUFSORT64=ON"))) - (home-page "https://github.com/y-256/libdivsufsort") - (synopsis "Lightweight suffix-sorting library") - (description "libdivsufsort is a software library that implements a -lightweight suffix array construction algorithm. This library provides a -simple and an efficient C API to construct a suffix array and a -Burrows-Wheeler transformed string from a given string over a constant-size -alphabet. The algorithm runs in O(n log n) worst-case time using only 5n+O(1) -bytes of memory space, where n is the length of the string.") - (license license:expat))) - (define-public sailfish (package (name "sailfish") diff --git a/gnu/packages/datastructures.scm b/gnu/packages/datastructures.scm index 7eab65fd5f..3ead3ac2c4 100644 --- a/gnu/packages/datastructures.scm +++ b/gnu/packages/datastructures.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2016, 2019 Ricardo Wurmus +;;; Copyright © 2015, 2016, 2018, 2019 Ricardo Wurmus ;;; Copyright © 2016, 2017, 2019 Tobias Geerinckx-Rice ;;; Copyright © 2018 Meiyo Peng ;;; Copyright © 2019 Efraim Flashner @@ -229,3 +229,32 @@ (define-public sdsl-lite complexity of an operation performed on the classical data structure and the equivalent succinct data structure are (most of the time) identical.") (license license:gpl3+))) + +(define-public libdivsufsort + (package + (name "libdivsufsort") + (version "2.0.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/y-256/libdivsufsort.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0fgdz9fzihlvjjrxy01md1bv9vh12rkgkwbm90b1hj5xpbaqp7z2")))) + (build-system cmake-build-system) + (arguments + '(#:tests? #f ; there are no tests + #:configure-flags + ;; Needed for rapmap and sailfish. + '("-DBUILD_DIVSUFSORT64=ON"))) + (home-page "https://github.com/y-256/libdivsufsort") + (synopsis "Lightweight suffix-sorting library") + (description "libdivsufsort is a software library that implements a +lightweight suffix array construction algorithm. This library provides a +simple and an efficient C API to construct a suffix array and a +Burrows-Wheeler transformed string from a given string over a constant-size +alphabet. The algorithm runs in O(n log n) worst-case time using only 5n+O(1) +bytes of memory space, where n is the length of the string.") + (license license:expat))) -- cgit v1.2.3 From 2b04bb3b4ede92907228a2d5940e63b6684aff45 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 25 Nov 2019 09:59:38 +0200 Subject: gnu: sdsl-lite: Remove unused inputs. Documentation also wants graphviz, which drastically increases 'guiz size sdsl-lite'. * gnu/packages/datastructures.scm (sdsl-lite)[native-inputs]: Remove doxygen. --- gnu/packages/datastructures.scm | 3 --- 1 file changed, 3 deletions(-) (limited to 'gnu/packages/datastructures.scm') diff --git a/gnu/packages/datastructures.scm b/gnu/packages/datastructures.scm index 3ead3ac2c4..36a135c606 100644 --- a/gnu/packages/datastructures.scm +++ b/gnu/packages/datastructures.scm @@ -21,7 +21,6 @@ (define-module (gnu packages datastructures) #:use-module (gnu packages) - #:use-module (gnu packages documentation) #:use-module (gnu packages perl) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) @@ -216,8 +215,6 @@ (define-public sdsl-lite (base32 "1v86ivv3mmdy802i9xkjpxb4cggj3s27wb19ja4sw1klnivjj69g")))) (build-system cmake-build-system) - (native-inputs - `(("doxygen" ,doxygen))) (home-page "https://github.com/simongog/sdsl-lite") (synopsis "Succinct data structure library") (description "The Succinct Data Structure Library (SDSL) is a powerful and -- cgit v1.2.3 From aca2bf51b767bfdc152896430f83b7c1124c346d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 25 Nov 2019 09:58:15 +0200 Subject: gnu: sdsl-lite: Don't use bundled libraries. * gnu/packages/datastructures.scm (sdsl-lite)[source]: Remove bundled libraries in a snippet. Add patch to link to external libraries. [arguments]: Add phase to install static library. [native-inputs]: Add libdivsufsort. --- gnu/packages/datastructures.scm | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'gnu/packages/datastructures.scm') diff --git a/gnu/packages/datastructures.scm b/gnu/packages/datastructures.scm index 36a135c606..e7833b8e70 100644 --- a/gnu/packages/datastructures.scm +++ b/gnu/packages/datastructures.scm @@ -213,8 +213,31 @@ (define-public sdsl-lite ".tar.gz.offline.install.gz")) (sha256 (base32 - "1v86ivv3mmdy802i9xkjpxb4cggj3s27wb19ja4sw1klnivjj69g")))) + "1v86ivv3mmdy802i9xkjpxb4cggj3s27wb19ja4sw1klnivjj69g")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "external") #t)) + (patches + (list (origin + (method url-fetch) + (uri "https://salsa.debian.org/science-team/libsdsl/raw/debian/2.1.1+dfsg-2/debian/patches/0001-Patch-cmake-files.patch") + (file-name "sdsl-lite-dont-use-bundled-libraries.patch") + (sha256 + (base32 + "0m542xpys54bni29zibgrfpgpd0zgyny4h131virxsanixsbz52z"))))))) (build-system cmake-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-static-library + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (copy-file "lib/libsdsl_static.a" + (string-append out "/lib/libsdsl.a"))) + #t))))) + (native-inputs + `(("libdivsufsort" ,libdivsufsort))) (home-page "https://github.com/simongog/sdsl-lite") (synopsis "Succinct data structure library") (description "The Succinct Data Structure Library (SDSL) is a powerful and -- cgit v1.2.3