mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 22:08:16 -05:00
gnu: gmp: Update to 6.3.0 and streamline definition.
* gnu/packages/multiprecision.scm (gmp): Update to 6.3.0. Fix indentation. [arguments]: Use gexps. Remove obsolete phase. Change-Id: I99a0c8173ebc4a4a45512771ccf17782d6ddfe14
This commit is contained in:
parent
935470e13c
commit
42aad100af
1 changed files with 36 additions and 53 deletions
|
@ -8,7 +8,7 @@
|
||||||
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
|
||||||
;;; Copyright © 2018, 2019, 2021, 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2018, 2019, 2021, 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
|
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
|
||||||
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
;;; Copyright © 2022, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||||
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
|
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||||
;;;
|
;;;
|
||||||
|
@ -45,63 +45,46 @@ (define-module (gnu packages multiprecision)
|
||||||
|
|
||||||
(define-public gmp
|
(define-public gmp
|
||||||
(package
|
(package
|
||||||
(name "gmp")
|
(name "gmp")
|
||||||
(version "6.2.1")
|
(version "6.3.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri
|
(uri
|
||||||
(string-append "mirror://gnu/gmp/gmp-"
|
(string-append "mirror://gnu/gmp/gmp-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1wml97fdmpcynsbw9yl77rj29qibfp652d0w3222zlfx5j8jjj7x"))
|
"1648ad1mr7c1r8lkkqshrv1jfjgfdb30plsadxhni7mq041bihm3"))
|
||||||
(patches (search-patches "gmp-faulty-test.patch"))))
|
(patches (search-patches "gmp-faulty-test.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs (list m4))
|
(native-inputs (list m4))
|
||||||
(outputs '("out" "debug"))
|
(outputs '("out" "debug"))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:parallel-tests? #f ; mpz/reuse fails otherwise
|
(list
|
||||||
|
#:parallel-tests? #f ; mpz/reuse fails otherwise
|
||||||
#:configure-flags
|
#:configure-flags
|
||||||
'(;; Build a "fat binary", with routines for several
|
#~(list
|
||||||
;; sub-architectures.
|
;; Build a "fat binary", with routines for several sub-architectures.
|
||||||
"--enable-fat"
|
"--enable-fat"
|
||||||
"--enable-cxx"
|
"--enable-cxx"
|
||||||
,@(cond ((target-mingw?)
|
$#@(cond
|
||||||
;; Static and shared cannot be built in one go:
|
((target-mingw?)
|
||||||
;; they produce different headers. We need shared.
|
;; Static and shared cannot be built in one go: they produce
|
||||||
`("--disable-static"
|
;; different headers. We need shared.
|
||||||
"--enable-shared"))
|
'("--disable-static"
|
||||||
((target-x32?)
|
"--enable-shared"))
|
||||||
`("ABI=x32"))
|
((target-x32?)
|
||||||
(else '())))
|
`("ABI=x32"))
|
||||||
;; Remove after core-updates merge.
|
(else '())))))
|
||||||
;; Workaround for gcc-7 transition breakage, -system and cross-build,
|
(synopsis "Multiple-precision arithmetic library")
|
||||||
;; Note: See <http://bugs.gnu.org/22186> for why not 'CPATH'.
|
(description
|
||||||
;; Note: See <http://bugs.gnu.org/30756> for why not 'C_INCLUDE_PATH' & co.
|
"The @acronym{GMP, the GNU Multiple Precision Arithmetic} library performs
|
||||||
,@(if (target-mingw?)
|
|
||||||
`(#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-before 'configure 'setenv
|
|
||||||
(lambda _
|
|
||||||
(let ((gcc (assoc-ref %build-inputs "cross-gcc"))
|
|
||||||
(libc (assoc-ref %build-inputs "cross-libc")))
|
|
||||||
(setenv "CROSS_CPLUS_INCLUDE_PATH"
|
|
||||||
(string-append gcc "/include/c++"
|
|
||||||
":" gcc "/include"
|
|
||||||
":" libc "/include"))
|
|
||||||
(format #t "environment variable `CROSS_CPLUS_INCLUDE_PATH' set to `~a'\n"
|
|
||||||
(getenv "CROSS_CPLUS_INCLUDE_PATH"))
|
|
||||||
#t)))))
|
|
||||||
'())))
|
|
||||||
(synopsis "Multiple-precision arithmetic library")
|
|
||||||
(description
|
|
||||||
"The @acronym{GMP, the GNU Multiple Precision Arithmetic} library performs
|
|
||||||
arbitrary-precision arithmetic on signed integers, rational numbers and floating
|
arbitrary-precision arithmetic on signed integers, rational numbers and floating
|
||||||
point numbers. The precision is only limited by the available memory.
|
point numbers. The precision is only limited by the available memory.
|
||||||
The library is highly optimized, with a design focus on execution speed.
|
The library is highly optimized, with a design focus on execution speed.
|
||||||
It is aimed at use in, for example, cryptography and computational algebra.")
|
It is aimed at use in, for example, cryptography and computational algebra.")
|
||||||
(license lgpl3+)
|
(license lgpl3+)
|
||||||
(home-page "https://gmplib.org/")))
|
(home-page "https://gmplib.org/")))
|
||||||
|
|
||||||
(define-public gmp-6.0
|
(define-public gmp-6.0
|
||||||
;; We keep this one around to bootstrap GCC, to work around a compilation
|
;; We keep this one around to bootstrap GCC, to work around a compilation
|
||||||
|
|
Loading…
Reference in a new issue