aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/algebra.scm
diff options
context:
space:
mode:
authorAndreas Enge <andreas@enge.fr>2019-06-18 10:38:57 +0200
committerAndreas Enge <andreas@enge.fr>2019-06-18 19:57:05 +0200
commitf0fbb31d0175ec37f4c76addbfddf5a546361f6d (patch)
tree3a0a4546875a6026089fb56f263af7b42fe3fa89 /gnu/packages/algebra.scm
parentcc908fde64799eaa60e1e63be75697a12f7cb017 (diff)
downloadguix-f0fbb31d0175ec37f4c76addbfddf5a546361f6d.tar
guix-f0fbb31d0175ec37f4c76addbfddf5a546361f6d.tar.gz
gnu: Add givaro.
* gnu/packages/algebra.scm (givaro): New variable.
Diffstat (limited to 'gnu/packages/algebra.scm')
-rw-r--r--gnu/packages/algebra.scm40
1 files changed, 40 insertions, 0 deletions
diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index 20ecc71b81..449ca7b189 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -1094,3 +1094,43 @@ objects.")
;; means that the gpl2+ licence of GAP itself applies, but to be on the
;; safe side, we drop them for now.
(license license:gpl2+)))
+
+(define-public givaro
+ (package
+ (name "givaro")
+ (version "4.1.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/linbox-team/givaro")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11wz57q6ijsvfs5r82masxgr319as92syi78lnl9lgdblpc6xigk"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)))
+ (propagated-inputs
+ `(("gmp" ,gmp))) ; gmp++.h includes gmpxx.h
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'bootstrap 'setenv
+ ;; Prevent the autogen.sh script to carry out the configure
+ ;; script, which has not yet been patched to replace /bin/sh.
+ (lambda _
+ (setenv "NOCONFIGURE" "yes")
+ #t)))))
+ (synopsis "Algebraic computations with exact rings and fields")
+ (description
+ "Givaro is a C++ library implementing the basic arithmetic of various
+algebraic objects: prime fields, extension fields, finite fields, finite
+rings, polynomials, algebraic numbers, arbitrary precision integers and
+rationals (C++ wrappers over gmp), fixed precision integers. It also
+provides data-structures and templated classes for the manipulation of
+compound objects, such as vectors, matrices and univariate polynomials.")
+ (license license:cecill-b)
+ (home-page "https://github.com/linbox-team/givaro")))