aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/sagemath.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/sagemath.scm')
-rw-r--r--gnu/packages/sagemath.scm43
1 files changed, 43 insertions, 0 deletions
diff --git a/gnu/packages/sagemath.scm b/gnu/packages/sagemath.scm
index d264eb560f..43da5c636a 100644
--- a/gnu/packages/sagemath.scm
+++ b/gnu/packages/sagemath.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -429,3 +430,45 @@ used as internal storage type for polynomial structures.")
zeta function and its twists by quadratic characters.")
(license license:gpl2+)
(home-page "https://gitlab.com/sagemath/sage")))
+
+(define-public ratpoints
+ (package
+ (name "ratpoints")
+ (version "2.1.3")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://www.mathe2.uni-bayreuth.de/stoll/programs/"
+ "ratpoints-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0zhad84sfds7izyksbqjmwpfw4rvyqk63yzdjd3ysd32zss5bgf4"))
+ (patches
+ ;; Taken from
+ ;; <https://git.sagemath.org/sage.git/plain/build/pkgs/ratpoints/patches/>
+ (search-patches "ratpoints-sturm_and_rp_private.patch"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:test-target "test"
+ #:make-flags
+ (list (string-append "INSTALL_DIR=" (assoc-ref %outputs "out"))
+ "CCFLAGS=-fPIC")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ;no configure script
+ (add-before 'install 'create-install-directories
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (mkdir-p out)
+ (with-directory-excursion out
+ (for-each (lambda (d) (mkdir-p d))
+ '("bin" "include" "lib"))))
+ #t)))))
+ (inputs
+ `(("gmp" ,gmp)))
+ (home-page "http://www.mathe2.uni-bayreuth.de/stoll/programs/")
+ (synopsis "Find rational points on hyperelliptic curves")
+ (description "Ratpoints tries to find all rational points within
+a given height bound on a hyperelliptic curve in a very efficient way,
+by using an optimized quadratic sieve algorithm.")
+ (license license:gpl2+)))