aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/multiprecision.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-03-30 12:17:33 +0200
committerMarius Bakke <mbakke@fastmail.com>2020-03-30 12:17:33 +0200
commitae0badf5bb791428423a98d4e4e2b8d297a5d4be (patch)
tree4282d243db3e90839a5f7d3b5878674ccd0e2e14 /gnu/packages/multiprecision.scm
parentee401ed9249fbe284ef1b9b437d39207ca88131b (diff)
parent927f3655662b41f25225ea03baa3ded687aa7cbb (diff)
downloadguix-ae0badf5bb791428423a98d4e4e2b8d297a5d4be.tar
guix-ae0badf5bb791428423a98d4e4e2b8d297a5d4be.tar.gz
Merge branch 'master' into core-updates
Conflicts: gnu/packages/admin.scm gnu/packages/commencement.scm gnu/packages/guile.scm gnu/packages/linux.scm gnu/packages/package-management.scm gnu/packages/pulseaudio.scm gnu/packages/web.scm
Diffstat (limited to 'gnu/packages/multiprecision.scm')
-rw-r--r--gnu/packages/multiprecision.scm46
1 files changed, 33 insertions, 13 deletions
diff --git a/gnu/packages/multiprecision.scm b/gnu/packages/multiprecision.scm
index deafd87404..2848e63d60 100644
--- a/gnu/packages/multiprecision.scm
+++ b/gnu/packages/multiprecision.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2018 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
-;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
@@ -50,18 +50,38 @@
(build-system gnu-build-system)
(native-inputs `(("m4" ,m4)))
(outputs '("out" "debug"))
- (arguments `(#:parallel-tests? #f ; mpz/reuse fails otherwise
- #:configure-flags
- '(;; Build a "fat binary", with routines for several
- ;; sub-architectures.
- "--enable-fat"
- "--enable-cxx"
- ,@(cond ((target-mingw?)
- ;; Static and shared cannot be built in one go:
- ;; they produce different headers. We need shared.
- `("--disable-static"
- "--enable-shared"))
- (else '())))))
+ (arguments
+ `(#:parallel-tests? #f ; mpz/reuse fails otherwise
+ #:configure-flags
+ '(;; Build a "fat binary", with routines for several
+ ;; sub-architectures.
+ "--enable-fat"
+ "--enable-cxx"
+ ,@(cond ((target-mingw?)
+ ;; Static and shared cannot be built in one go:
+ ;; they produce different headers. We need shared.
+ `("--disable-static"
+ "--enable-shared"))
+ (else '())))
+ ;; Remove after core-updates merge.
+ ;; Workaround for gcc-7 transition breakage, -system and cross-build,
+ ;; Note: See <http://bugs.gnu.org/22186> for why not 'CPATH'.
+ ;; Note: See <http://bugs.gnu.org/30756> for why not 'C_INCLUDE_PATH' & co.
+ ,@(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