gnu: mpfi: Update to 1.5.4-1.b982534.

* gnu/packages/multiprecision.scm (mpfi): Update to 1.5.4-1.b982534.
[source]: Fetch from git and use latest commit available.
[tests?]: Delete argument, enabling test suite.
[phases]: New argument.
[native-inputs]: New field.
This commit is contained in:
Maxim Cournoyer 2022-10-02 22:07:39 -04:00
parent a001be9664
commit 8ad1978695
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -29,11 +29,14 @@ (define-module (gnu packages multiprecision)
#:use-module (guix licenses)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
#:use-module (gnu packages m4)
#:use-module (gnu packages gcc)
#:use-module (gnu packages texinfo)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix build-system gnu))
@ -158,27 +161,44 @@ (define-public mpc
(home-page "http://www.multiprecision.org/mpc/")))
(define-public mpfi
(package
(name "mpfi")
(version "1.5.4")
(source (origin
(method url-fetch)
(uri (string-append "https://gforge.inria.fr/frs/download.php"
"/latestfile/181/mpfi-" version ".tgz"))
(sha256
(base32
"0mismr1ll3wp788dq2n22s5irm0dziy75byyfdwz22kjbmckhf9v"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;tests are broken in this release
#:configure-flags #~(list "--enable-static=no")))
(native-inputs (list automake autoconf libtool texinfo))
(propagated-inputs
(list gmp mpfr)) ;<mpfi.h> refers to both
(home-page "https://gforge.inria.fr/projects/mpfi/")
(synopsis "C library for arbitrary-precision interval arithmetic")
(description
"@acronym{MPFI, Multiple Precision Floating-point Interval} is a portable C
;; The last release, 1.5.4, lacks source files such as div_ext.c and others
;; (see: https://gitlab.inria.fr/mpfi/mpfi/-/issues/21721). Use the latest
;; commit until a new release is made.
(let ((commit "b9825348f1e723ab0988105599b34f1f9cd5ff3e")
(revision "1"))
(package
(name "mpfi")
(version (git-version "1.5.4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.inria.fr/mpfi/mpfi")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"141pa2ym1azka25bwkx2w1mf6wdcn155ncc45dr5bj5dycw2hj0m"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags #~(list "--enable-static=no")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "mpfi")))
(add-after 'unpack 'disable-problematic-tests
(lambda _
;; XXX: The tdiv_ext and trec_sqrt tests
;; segfaults (not reported upstream; accounts on
;; their gitlab apparently require to be
;; manually created).
(setenv "XFAIL_TESTS" "tdiv_ext trec_sqrt"))))))
(native-inputs (list automake autoconf libtool texinfo))
(propagated-inputs
(list gmp mpfr)) ;<mpfi.h> refers to both
(home-page "https://gitlab.inria.fr/mpfi/mpfi")
(synopsis "C library for arbitrary-precision interval arithmetic")
(description
"@acronym{MPFI, Multiple Precision Floating-point Interval} is a portable C
library for arbitrary-precision interval arithmetic, with intervals represented
using MPFR reliable floating-point numbers. It's based on the @acronym{GMP, GNU
Multiple Precision Arithmetic} and GNU@tie{}@acronym{MPFR, Multiple Precision
@ -187,7 +207,7 @@ (define-public mpfi
The purpose of arbitrary-precision interval arithmetic is to get results that
are both guaranteed, thanks to interval computation, and accurate, thanks to
multiple-precision arithmetic.")
(license lgpl2.1+)))
(license lgpl2.1+))))
(define-public irram
(package