andreas pushed a commit to branch wip-sage2 in repository guix. commit 3a947a946ee74dbd883259c223bf4ed1225fd7cb Author: Andreas Enge <andr...@enge.fr> AuthorDate: Wed Feb 12 10:19:15 2025 +0100
gnu: Add maxima-ecl. * gnu/packages/maths.scm (maxima-ecl): New variable. Change-Id: I71a14d064e67aa34fdd7f6eb8499dfbd1dea11b9 --- gnu/packages/maths.scm | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 4a1637b952..4dcf986ccc 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2019, 2020, 2023, 2024 Andreas Enge <andr...@enge.fr> +;;; Copyright © 2013, 2014, 2015, 2016, 2019, 2020, 2023, 2024, 2025 Andreas Enge <andr...@enge.fr> ;;; Copyright © 2013 Nikita Karetnikov <nik...@karetnikov.org> ;;; Copyright © 2014, 2016, 2017 John Darrington <j...@gnu.org> ;;; Copyright © 2014-2022 Eric Bavier <bav...@posteo.net> @@ -5511,6 +5511,40 @@ point numbers.") ;; GPLv2 only is therefore the smallest subset. (license license:gpl2))) +(define-public maxima-ecl + (package/inherit maxima + (name "maxima-ecl") + (inputs + (modify-inputs (package-inputs maxima) + (delete "sbcl") + (prepend ecl))) + (arguments + (substitute-keyword-arguments (package-arguments maxima) + ((#:configure-flags flags) + #~(list "--enable-ecl")) + ((#:phases phases) + #~(modify-phases #$phases + (add-after 'install 'install-lib + (lambda _ + (let ((lib (string-append + #$output "/lib/maxima/" + #$(package-version this-package) + "/binary-ecl"))) + (install-file "src/binary-ecl/maxima.fas" lib)))) + (replace 'check + (lambda _ + (invoke "sh" "-c" + (string-append + "./maxima-local " + "--lisp=ecl " + "--batch-string=\"run_testsuite();\" " + "| grep -q \"No unexpected errors found\"")))))))) + (description + (string-append + (package-description maxima) + " This package variant uses ECL as the underlying Lisp +implementation.")))) + (define-public wxmaxima (package (name "wxmaxima")