summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/fricas/Manifest1
-rw-r--r--sci-mathematics/fricas/fricas-1.3.4.ebuild108
2 files changed, 109 insertions, 0 deletions
diff --git a/sci-mathematics/fricas/Manifest b/sci-mathematics/fricas/Manifest
index 7a7016d1828a..87e485c04582 100644
--- a/sci-mathematics/fricas/Manifest
+++ b/sci-mathematics/fricas/Manifest
@@ -1,2 +1,3 @@
DIST fricas-1.3.2-full.tar.bz2 10523665 BLAKE2B 23de3147177e7c3c75dafa6de0f4f17432f323512aa38aef85e27c8cf1b9e335009870dc608219f0e1c4f53f1790a41b00b915aedd71633459f789cfda9f5244 SHA512 679dffbe8a991d4ae3d6667a6163337ffa24d48b9d1d776ba1a39569cb3b9f17e8d484075746b75b7eb6bbe5b9d26af3e526850a19118274988b9e88ad52a679
DIST fricas-1.3.3-full.tar.bz2 10506559 BLAKE2B 1a9822f0a94db5c7e7a3e2a52287b475c382caaaf9c5e1830621a17b6634f6f72958f0c81995463d135b4567a74c588f33c88d51a83b0a8749479d65645de4bc SHA512 74ac88ffbbacba33883498a75382ef351003ce8499f6b458367ca0de3041a9bba496693eb90f798945aa6e11c5072137227efa385ee6d8e2051f93dfea6d7fbe
+DIST fricas-1.3.4-full.tar.bz2 10381144 BLAKE2B caff50ef2b2d8e9ef76448c265316ac8878010c505f9d871aa5579210ab2de3915f56a44687d3f96aba1f857efc8b3ec182b9b6c5c390e38dbdaf7cdba188dcc SHA512 efee0d8a05979c806182e9e45f81b56037d1a660909971d6b94af1f97732cfb7b689709d8af4229b7f649506860b1ed915dd5afb91378f4c9d8a6e960a248170
diff --git a/sci-mathematics/fricas/fricas-1.3.4.ebuild b/sci-mathematics/fricas/fricas-1.3.4.ebuild
new file mode 100644
index 000000000000..b844cb78f7b6
--- /dev/null
+++ b/sci-mathematics/fricas/fricas-1.3.4.ebuild
@@ -0,0 +1,108 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit multilib elisp-common
+
+DESCRIPTION="FriCAS is a fork of Axiom computer algebra system"
+HOMEPAGE="http://${PN}.sourceforge.net/"
+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? ( virtual/emacs )
+ 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 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
+}