;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 ng0 ;;; ;;; 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 lcs) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (gnu packages) #:use-module (gnu packages maths) #:use-module (guix git-download) #:use-module (guix build-system gnu)) (define-public reducelcs ;; This is the last commit which is available upstream, no ;; tarball release happened since 2010. (let ((commit "474f88deb968061abe8cf11c959e02319b8ae5c0") (revision "1")) (package (name "reducelcs") (version (string-append "0.0.0-" revision "." (string-take commit 7))) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/gdv/Reduce-Expand-for-LCS") (commit commit))) (file-name (string-append name "-" version "-checkout")) (sha256 (base32 "1rllzcfwc042c336mhq262a8ha90x6afq30kvk60r7i4761j4yjm")))) (build-system gnu-build-system) (inputs `(("openlibm" ,openlibm))) (arguments `(#:tests? #f ; no tests #:phases (modify-phases %standard-phases (delete 'configure) ; no configure script (replace 'install ; no install phase either (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) (install-file "Approximation" bin) (install-file "CollectResults" bin) (install-file "GenerateInstances" bin) #t)))))) (synopsis "Approximate Longest Commons Subsequence computation tool") (description "@code{reduceLCS} is an implementation of the Reduce-Expand algorithm for LCS. It is a fast program to compute the approximate Longest Commons Subsequence of a set of strings.") (home-page "http://gianluca.dellavedova.org/software/") (license license:gpl2))))