Message ID | ZNS6dEpq4OT9xX6u@jurong |
---|---|
State | New |
Headers | show |
Series | [bug#65200] Update gmp to 6.3.0 | expand |
On Thu, Aug 10, 2023 at 6:24 AM Andreas Enge <andreas@enge.fr> wrote: > [...] > There are close to 20000 dependent packages, but as far as I can see > bootstrapping is not concerned, which starts from gmp-6.0. > [...] Can this be combined with other C/C++ updates such as glibc, boost, cmake, etc.? Perhaps in a C/C++ team branch? I would be interested in helping with this endeavor, and have some patches which I could submit to the mailing list shortly. Greg
Am Thu, Aug 10, 2023 at 12:22:44PM +0200 schrieb Andreas Enge: > It would be interesting to try whether we can bootstrap directly from > 6.3.0 now, that is, whether the comment > ;; We keep this one around to bootstrap GCC, to work around a compilation > ;; issue on ARM. See > ;; <https://gmplib.org/list-archives/gmp-bugs/2015-December/003848.html>. > is still valid; it might let us drop the two gmp patches altogether. At least not in a straightforward way; already on x86_64, it fails to replace all occurrences of gmp-6.0 in commencement.scm by gmp. Am Tue, Aug 15, 2023 at 10:59:20AM -0400 schrieb Greg Hogan: > Can this be combined with other C/C++ updates such as glibc, boost, > cmake, etc.? Perhaps in a C/C++ team branch? I would be interested in > helping with this endeavor, and have some patches which I could submit > to the mailing list shortly. It should at least be combined with a pending MPFR update: https://sympa.inria.fr/sympa/arc/mpfr/2023-08/msg00008.html I have no opinion on the other packages. I expect the gmp/mpfr update to be rather smooth, but to just require a lot of rebuilds. This may not be the case for a glibc update. Andreas
With an additional commit on the wip-gmp branch, I have enabled parallel tests. The package builds on x86_64, i686, aarch64 and armhf. Andreas
Similar updates have been done by other persons on the previous core-updates branch; closing this bug. I still think we could enable parallel tests, but it may not be worth testing this given the high amounts of rebuilds. Maybe next time the package is updated. The bootstrapping question is also still open; maybe we can drop the previous gmp version and its patches. Andreas
diff --git a/gnu/packages/multiprecision.scm b/gnu/packages/multiprecision.scm index 3aa5dccfab..cf11c81635 100644 --- a/gnu/packages/multiprecision.scm +++ b/gnu/packages/multiprecision.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2015, 2018 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2015, 2018, 2023 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> @@ -45,7 +45,7 @@ (define-module (gnu packages multiprecision) (define-public gmp (package (name "gmp") - (version "6.2.1") + (version "6.3.0") (source (origin (method url-fetch) (uri @@ -53,8 +53,7 @@ (define-public gmp version ".tar.xz")) (sha256 (base32 - "1wml97fdmpcynsbw9yl77rj29qibfp652d0w3222zlfx5j8jjj7x")) - (patches (search-patches "gmp-faulty-test.patch")))) + "1648ad1mr7c1r8lkkqshrv1jfjgfdb30plsadxhni7mq041bihm3")))) (build-system gnu-build-system) (native-inputs (list m4)) (outputs '("out" "debug")) @@ -70,26 +69,7 @@ (define-public gmp ;; 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))))) - '()))) + (else '()))))) (synopsis "Multiple-precision arithmetic library") (description "The @acronym{GMP, the GNU Multiple Precision Arithmetic} library performs
The attached patch updates gmp to the latest release 6.3.0. I have tested it on x86_64 and the x86_64-w64-mingw32 cross-compilation target, since I have taken out a work-around for this target. There are close to 20000 dependent packages, but as far as I can see bootstrapping is not concerned, which starts from gmp-6.0. It would be interesting to try whether we can bootstrap directly from 6.3.0 now, that is, whether the comment ;; We keep this one around to bootstrap GCC, to work around a compilation ;; issue on ARM. See ;; <https://gmplib.org/list-archives/gmp-bugs/2015-December/003848.html>. is still valid; it might let us drop the two gmp patches altogether. Andreas From 2955ea78db15dee770a70fac51ea40016b13b4ef Mon Sep 17 00:00:00 2001 Message-ID: <2955ea78db15dee770a70fac51ea40016b13b4ef.1691662380.git.andreas@enge.fr> From: Andreas Enge <andreas@enge.fr> Date: Thu, 10 Aug 2023 12:12:48 +0200 Subject: [PATCH] gnu: gmp: Update to 6.3.0. * gnu/packages/multiprecision.scm (gmp)[source]: Update to 6.3.0. Disable patch. [arguments]: Remove 'setenv phase. --- gnu/packages/multiprecision.scm | 28 ++++------------------------ 1 file changed, 4 insertions(+), 24 deletions(-) base-commit: 90e34d25d5e7c14b7f3293a78f3cdad676c0d035