diff options
Diffstat (limited to 'sci-mathematics/fricas')
-rw-r--r-- | sci-mathematics/fricas/Manifest | 5 | ||||
-rw-r--r-- | sci-mathematics/fricas/files/fricas-sbcl-2.3.9.patch | 22 | ||||
-rw-r--r-- | sci-mathematics/fricas/fricas-1.3.9-r1.ebuild | 111 | ||||
-rw-r--r-- | sci-mathematics/fricas/fricas-1.3.9-r3.ebuild (renamed from sci-mathematics/fricas/fricas-1.3.9-r2.ebuild) | 66 |
4 files changed, 31 insertions, 173 deletions
diff --git a/sci-mathematics/fricas/Manifest b/sci-mathematics/fricas/Manifest index 7c7ce2deacc0..1426de0c38cc 100644 --- a/sci-mathematics/fricas/Manifest +++ b/sci-mathematics/fricas/Manifest @@ -1,5 +1,4 @@ -AUX fricas-sbcl-2.3.9.patch 2340 BLAKE2B 3cada471742b006a072f1d9a732fc78d0be97af762b8b6165ab8e929a9cb34ec631f10c505c90394032e46ea00895f4ff90e52139b9e5acc14dbe16a7708a3fb SHA512 44d722e989f458d83546efb81e7025e32aaafcd0b47c1bf2765f292bc9b01e1890b25ea5be8b4baeda3bedecd3efd9044420ceb866b1e93177357b368e5395e8 +AUX fricas-sbcl-2.3.9.patch 2339 BLAKE2B 484f46de176e5148d7a628551f70fe786f62716c30b20ec2db744e554fb06ceda8a9bc89e8ade987a34f9b92856492590497634886d46ab2917bb4b81a1905c1 SHA512 d16dc7bb46006bd50cf12b7758f58d22902a853a20b8febac2d96f151fe841181831f05a12f5fe88eb213ae9d71d8fe560ba078f214a7bfa961f7aa60ff74dcf DIST fricas-1.3.9-full.tar.bz2 10949173 BLAKE2B c535d2a384fa55db53b6901d3ba5d1cc8eca35ccf67a2664f934da427a808b5adc7a5522b935f5dcff89795c0ca5816818d9cf37399b6f9bdc63cfe4d622a7c3 SHA512 9cfcb8bad52550a46216509154d5c06dac23625bc14d504a1febbea7ff771fd3172f91c2824df51375b8d85adc19959a5cbbfa2b77a0095ca37e8a4d4b8cc405 -EBUILD fricas-1.3.9-r1.ebuild 2474 BLAKE2B e6f86a8f209b3fefb4dd94ca0b89cf67f3d8fdeaccd52b0606f3c86747ed3f4d21310e77f7f177b93575876fdc7ca0d17fa3068789b8e90cb20f81c42cb4f06a SHA512 48f2e2acccf8808ba776468a7c64c1f1f18518ee53bd3d59e5e8d49fcc41071938319883c0b6b1dec44134fbae81e1379c8d5bc997955313790edb044cac7938 -EBUILD fricas-1.3.9-r2.ebuild 2470 BLAKE2B 073fb7b9a284c23914c76c8fefac3ba4f4282d2171dec92d8ec01b26857413a8064f24468143bbc5a420e7f6c29ed26c0b78041b609753a575fa0b0fda4e39de SHA512 27a397054365df927c4812b471c9a27f837736d09205b0d269db2035b4828dfe14afccc6bfee5ff0ddfa9cab04cf92a02285597b3e412df090b7e8198443a680 +EBUILD fricas-1.3.9-r3.ebuild 1988 BLAKE2B 0ca715f2fe05aaff11a0c5ac9958ff3b6fed7185e026fc80f0c8a69d94fad2121cabbbb89691da24bf35f19e3276943c82fd5ccb99d59ea6aea4d5f1a7833afe SHA512 0a4062314e24840031dab9278bf4f5422abe99309bdb7972b4bb6985174d88b1f5d364774dde0ca20afc61fa3241d9d220c52b733c879533c0bbd78659c68b63 MISC metadata.xml 1115 BLAKE2B dc1fcf98b2fb9df013ab256c4f81952ac5808f2761ae66479106482260b5328d337755fcb5208fa67ff7448c368d5db32a0c6c12537eaaa64d22a16cf32962ee SHA512 686316e67d08d27e48be2e544657c27ca20b8303b097b2154d18a2873ce39fe27c33be61a1922a3e61f89fadc9f4f6d204c9f591e670bcbf46ff2c71200f6660 diff --git a/sci-mathematics/fricas/files/fricas-sbcl-2.3.9.patch b/sci-mathematics/fricas/files/fricas-sbcl-2.3.9.patch index 6f7440afecf5..f3a28ed57457 100644 --- a/sci-mathematics/fricas/files/fricas-sbcl-2.3.9.patch +++ b/sci-mathematics/fricas/files/fricas-sbcl-2.3.9.patch @@ -1,12 +1,11 @@ diff --git a/src/lisp/num_gmp.lisp b/src/lisp/num_gmp.lisp -index b58001e..9538e3c 100644 +index b58001e0b..f4a022ad4 100644 --- a/src/lisp/num_gmp.lisp +++ b/src/lisp/num_gmp.lisp -@@ -549,6 +549,20 @@ - ;;; (gmp-bignum-isqrt (expt 10 50)) - ;;; (gmp-bignum-isqrt (expt 2 127)) - #+:sbcl -+ +@@ -646,14 +646,27 @@ + (setf (symbol-function 'orig-isqrt) + (symbol-function 'common-lisp:isqrt))) + +(defmacro negate_bignum(x) + (let ((sym2 + (find-symbol "NEGATE-BIGNUM-NOT-FULLY-NORMALIZED" "SB-BIGNUM"))) @@ -20,10 +19,9 @@ index b58001e..9538e3c 100644 + ) +) + - (defun gmp-bignum-isqrt (x) - (let* ((len-x (sb-bignum::%bignum-length x)) - (len-res (ceiling (+ 1 len-x) 2)) -@@ -652,8 +666,8 @@ + (defun gmp-multiply-bignums0 (a b) + ;;; (declare (type bignum-type a b)) + (let* ((a-plusp (sb-bignum::%bignum-0-or-plusp a (sb-bignum::%bignum-length a))) (b-plusp (sb-bignum::%bignum-0-or-plusp b (sb-bignum::%bignum-length b))) @@ -34,7 +32,7 @@ index b58001e..9538e3c 100644 (len-a (sb-bignum::%bignum-length a)) (len-b (sb-bignum::%bignum-length b)) (len-res (+ len-a len-b)) -@@ -697,10 +711,10 @@ +@@ -697,10 +710,10 @@ (let* ( (nx (if (sb-bignum::%bignum-0-or-plusp x (sb-bignum::%bignum-length x)) (sb-bignum::copy-bignum x) @@ -47,7 +45,7 @@ index b58001e..9538e3c 100644 (xl (sb-bignum::%bignum-length nx)) (yl (sb-bignum::%bignum-length ny)) (rl (if (< xl yl) xl yl)) -@@ -735,9 +749,9 @@ +@@ -735,9 +748,9 @@ (x-plusp (sb-bignum::%bignum-0-or-plusp x (sb-bignum::%bignum-length x))) (y-plusp (sb-bignum::%bignum-0-or-plusp y (sb-bignum::%bignum-length y))) (nx (if x-plusp x diff --git a/sci-mathematics/fricas/fricas-1.3.9-r1.ebuild b/sci-mathematics/fricas/fricas-1.3.9-r1.ebuild deleted file mode 100644 index 0cb3f278366a..000000000000 --- a/sci-mathematics/fricas/fricas-1.3.9-r1.ebuild +++ /dev/null @@ -1,111 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -inherit elisp-common - -DESCRIPTION="FriCAS is a fork of Axiom computer algebra system" -HOMEPAGE="https://fricas.sourceforge.net/ - https://github.com/fricas/fricas - https://fricas.github.io/" -SRC_URI="mirror://sourceforge/${PN}/${PV}/${P}-full.tar.bz2" - -LICENSE="BSD-2" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -# Supported lisps, number 0 is the default -LISPS=( sbcl cmucl gcl ecl clisp clozurecl ) -# Version restrictions, . means no restrictions -REST=( '<dev-lisp/sbcl-2.3.9' . . . . . ) -# command name: . means just ${LISP} -COMS=( . lisp . . . ccl ) - -IUSE="${LISPS[*]} X emacs gmp" -RDEPEND="X? ( x11-libs/libXpm x11-libs/libICE ) - emacs? ( >=app-editors/emacs-23.1:* ) - gmp? ( dev-libs/gmp:= )" - -# Generating lisp deps -n=${#LISPS[*]} -for ((n--; n > 0; n--)); do - LISP=${LISPS[$n]} - if [ "${REST[$n]}" = "." ]; then - DEP="dev-lisp/${LISP}" - else - DEP="${REST[$n]}" - fi - RDEPEND="${RDEPEND} ${LISP}? ( ${DEP}:= ) !${LISP}? (" -done -if [ "${REST[0]}" = "." ]; then - DEP="dev-lisp/${LISPS[0]}" -else - DEP="${REST[0]}" -fi -RDEPEND="${RDEPEND} ${DEP}:=" -n=${#LISPS[*]} -for ((n--; n > 0; n--)); do - RDEPEND="${RDEPEND} )" -done - -DEPEND="${RDEPEND}" - -# necessary for clisp and gcl -RESTRICT="strip" - -src_configure() { - local LISP n GMP - LISP=sbcl - n=${#LISPS[*]} - for ((n--; n > 0; n--)); do - if use ${LISPS[$n]}; then - LISP=${COMS[$n]} - if [ "${LISP}" = "." ]; then - LISP=${LISPS[$n]} - fi - fi - done - einfo "Using lisp: ${LISP}" - - # bug #650788 - if [[ ${LISP} = sbcl || ${LISP} = ccl ]] - then GMP=$(use_with gmp) - else GMP='' - fi - - # aldor is not yet in portage - econf --disable-aldor --with-lisp=${LISP} $(use_with X x) ${GMP} -} - -src_compile() { - # bug #300132 - emake -j1 -} - -src_test() { - emake -j1 all-input -} - -src_install() { - emake -j1 DESTDIR="${D}" install - dodoc README.rst FAQ - - if use emacs; then - sed -e "s|(setq load-path (cons (quote \"/usr/$(get_libdir)/fricas/emacs\") load-path)) ||" \ - -i "${D}"/usr/bin/efricas \ - || die "sed efricas failed" - elisp-install ${PN} "${D}"/usr/$(get_libdir)/${PN}/emacs/*.el - elisp-make-site-file 64${PN}-gentoo.el - else - rm "${D}"/usr/bin/efricas || die "rm efricas failed" - fi - rm -r "${D}"/usr/$(get_libdir)/${PN}/emacs || die "rm -r emacs failed" -} - -pkg_postinst() { - use emacs && elisp-site-regen -} - -pkg_postrm() { - use emacs && elisp-site-regen -} diff --git a/sci-mathematics/fricas/fricas-1.3.9-r2.ebuild b/sci-mathematics/fricas/fricas-1.3.9-r3.ebuild index 07f9242ca06b..6515c133f0ca 100644 --- a/sci-mathematics/fricas/fricas-1.3.9-r2.ebuild +++ b/sci-mathematics/fricas/fricas-1.3.9-r3.ebuild @@ -14,40 +14,18 @@ LICENSE="BSD-2" SLOT="0" KEYWORDS="~amd64 ~x86" -# Supported lisps, number 0 is the default -LISPS=( sbcl cmucl gcl ecl clisp clozurecl ) -# Version restrictions, . means no restrictions -REST=( . . . . . . ) -# command name: . means just ${LISP} -COMS=( . lisp . . . ccl ) - -IUSE="${LISPS[*]} X emacs gmp" -RDEPEND="X? ( x11-libs/libXpm x11-libs/libICE ) +IUSE="+sbcl cmucl gcl ecl clisp clozurecl X emacs gmp" +REQUIRED_USE="^^ ( sbcl cmucl gcl ecl clisp clozurecl ) + gmp? ( ^^ ( sbcl clozurecl ) )" +RDEPEND="sbcl? ( dev-lisp/sbcl:= ) + cmucl? ( dev-lisp/cmucl:= ) + gcl? ( dev-lisp/gcl:= ) + ecl? ( dev-lisp/ecl:= ) + clisp? ( dev-lisp/clisp:= ) + clozurecl? ( dev-lisp/clozurecl:= ) + X? ( x11-libs/libXpm x11-libs/libICE ) emacs? ( >=app-editors/emacs-23.1:* ) gmp? ( dev-libs/gmp:= )" - -# Generating lisp deps -n=${#LISPS[*]} -for ((n--; n > 0; n--)); do - LISP=${LISPS[$n]} - if [ "${REST[$n]}" = "." ]; then - DEP="dev-lisp/${LISP}" - else - DEP="${REST[$n]}" - fi - RDEPEND="${RDEPEND} ${LISP}? ( ${DEP}:= ) !${LISP}? (" -done -if [ "${REST[0]}" = "." ]; then - DEP="dev-lisp/${LISPS[0]}" -else - DEP="${REST[0]}" -fi -RDEPEND="${RDEPEND} ${DEP}:=" -n=${#LISPS[*]} -for ((n--; n > 0; n--)); do - RDEPEND="${RDEPEND} )" -done - DEPEND="${RDEPEND}" PATCHES=( "${FILESDIR}"/${PN}-sbcl-2.3.9.patch ) @@ -56,21 +34,15 @@ PATCHES=( "${FILESDIR}"/${PN}-sbcl-2.3.9.patch ) RESTRICT="strip" src_configure() { - local LISP n GMP - LISP=sbcl - n=${#LISPS[*]} - for ((n--; n > 0; n--)); do - if use ${LISPS[$n]}; then - LISP=${COMS[$n]} - if [ "${LISP}" = "." ]; then - LISP=${LISPS[$n]} - fi - fi - done - einfo "Using lisp: ${LISP}" - - # bug #650788 - if [[ ${LISP} = sbcl || ${LISP} = ccl ]] + local LISP GMP + use sbcl && LISP=sbcl + use cmucl && LISP=lisp + use gcl && LISP=gcl + use ecl && LISP=ecl + use clisp && LISP=clisp + use clozurecl && LISP=ccl + + if use sbcl || use clozurecl then GMP=$(use_with gmp) else GMP='' fi |