diff options
Diffstat (limited to 'sci-mathematics/fricas')
-rw-r--r-- | sci-mathematics/fricas/Manifest | 1 | ||||
-rw-r--r-- | sci-mathematics/fricas/fricas-1.3.7.ebuild | 110 |
2 files changed, 111 insertions, 0 deletions
diff --git a/sci-mathematics/fricas/Manifest b/sci-mathematics/fricas/Manifest index 7e6fb084499d..b6a551069a71 100644 --- a/sci-mathematics/fricas/Manifest +++ b/sci-mathematics/fricas/Manifest @@ -1 +1,2 @@ DIST fricas-1.3.6-full.tar.bz2 10422732 BLAKE2B c406907bbd8be66104db0ba52cfb49740a54daa53cbcb5949c4a4f090c7c978e8a5d345988544d4e93219be8c66a4c50b586ce4d99f32f8d020b1f015fe94b76 SHA512 5732a9645a15886a14b5778c3b2bd813462693e67ef2cd807742b325edd1ac4c3edbd671e25cc568c20e0a01b82d09defdac0b9eb7e355355461316be29d631c +DIST fricas-1.3.7-full.tar.bz2 38008318 BLAKE2B 079a0e2739c0f28c7fb76681e9562802cd7d6f16a0a0bcd8310bb11a6678b2aeabca9cc8effdf81d9464742bf4a20d07845f870717326afbd87feb48fe408493 SHA512 fd3742eb56c279adcdbae62a8eb5843781d0da4318f1b6e55310a9ac243c712b24fef214414c8d656b222be890ec4d9d30ad243b77b8eeaeea95e0ae3dda890a diff --git a/sci-mathematics/fricas/fricas-1.3.7.ebuild b/sci-mathematics/fricas/fricas-1.3.7.ebuild new file mode 100644 index 000000000000..eefad5493a0a --- /dev/null +++ b/sci-mathematics/fricas/fricas-1.3.7.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit multilib elisp-common + +DESCRIPTION="FriCAS is a fork of Axiom computer algebra system" +HOMEPAGE="http://fricas.sourceforge.net/ + https://github.com/fricas/fricas + https://fricas.github.io/" +SRC_URI="mirror://sourceforge/${PN}/${P}-full.tar.bz2" +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +# Supported lisps, number 0 is the default +LISPS=( sbcl cmucl gcl ecls clisp clozurecl ) +# Version restrictions, . means no restrictions +REST=( . . . . . . ) +# command name: . means just ${LISP} +COMS=( . lisp . ecl . 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-site-file-install "${FILESDIR}"/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 +} |