summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-mathematics/reduce')
-rw-r--r--sci-mathematics/reduce/Manifest1
-rw-r--r--sci-mathematics/reduce/files/64reduce-gentoo.el4
-rwxr-xr-xsci-mathematics/reduce/files/csl2
-rwxr-xr-xsci-mathematics/reduce/files/redcsl2
-rw-r--r--sci-mathematics/reduce/metadata.xml16
-rw-r--r--sci-mathematics/reduce/reduce-20110414-r1.ebuild95
6 files changed, 120 insertions, 0 deletions
diff --git a/sci-mathematics/reduce/Manifest b/sci-mathematics/reduce/Manifest
new file mode 100644
index 000000000000..77b02484fac4
--- /dev/null
+++ b/sci-mathematics/reduce/Manifest
@@ -0,0 +1 @@
+DIST reduce-src-20110414.tar.bz2 136783974 SHA256 d6ac7a30e817ea71555d21b03a119a5236967b251eae8946a1817ae9a81cee03
diff --git a/sci-mathematics/reduce/files/64reduce-gentoo.el b/sci-mathematics/reduce/files/64reduce-gentoo.el
new file mode 100644
index 000000000000..2c20bff93ede
--- /dev/null
+++ b/sci-mathematics/reduce/files/64reduce-gentoo.el
@@ -0,0 +1,4 @@
+;; site-init for sci-mathematics/reduce
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'reduce-mode "reduce-mode" "Major mode for REDUCE code editing" t)
+(add-to-list 'auto-mode-alist '("\\.red\\'" . reduce-mode))
diff --git a/sci-mathematics/reduce/files/csl b/sci-mathematics/reduce/files/csl
new file mode 100755
index 000000000000..895b6bd8f4a1
--- /dev/null
+++ b/sci-mathematics/reduce/files/csl
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/lib/reduce/csl $*
diff --git a/sci-mathematics/reduce/files/redcsl b/sci-mathematics/reduce/files/redcsl
new file mode 100755
index 000000000000..ff40e3e073ab
--- /dev/null
+++ b/sci-mathematics/reduce/files/redcsl
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec /usr/lib/reduce/reduce $*
diff --git a/sci-mathematics/reduce/metadata.xml b/sci-mathematics/reduce/metadata.xml
new file mode 100644
index 000000000000..2a54944facce
--- /dev/null
+++ b/sci-mathematics/reduce/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci-mathematics</herd>
+ <maintainer>
+ <email>grozin@gentoo.org</email>
+ <name>Andrey Grozin</name>
+ </maintainer>
+ <longdescription lang="en">
+A general-purpose computer algebra system.
+Powerful, mature and efficient.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">reduce-algebra</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-mathematics/reduce/reduce-20110414-r1.ebuild b/sci-mathematics/reduce/reduce-20110414-r1.ebuild
new file mode 100644
index 000000000000..7394f78f5e66
--- /dev/null
+++ b/sci-mathematics/reduce/reduce-20110414-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit elisp-common multilib
+
+DESCRIPTION="A general-purpose computer algebra system"
+HOMEPAGE="
+ http://reduce-algebra.sourceforge.net/
+ http://reduce-algebra.com/"
+SRC_URI="mirror://sourceforge/${PN}-algebra/${PN}-src-${PV}.tar.bz2"
+
+SLOT="0"
+LICENSE="BSD-2 X? ( LGPL-2.1 )"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc emacs gnuplot X"
+
+RDEPEND="
+ X? (
+ x11-libs/libXrandr
+ x11-libs/libXcursor
+ x11-libs/libXft
+ )
+ gnuplot? ( sci-visualization/gnuplot )
+ emacs? ( virtual/emacs )"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ # If you pass --prefix to this damn configure,
+ # make (not make install!) will try to install stuff
+ # into the live file system => sandbox violation
+ # Therefore, I cannot use econf here
+ # Also, make calls configure in maintainer mode in subdirs *by design*
+ # The trunk sucks less => WONTFIX until the next release
+ ./configure --with-csl $(use_with X gui) || die
+ # psl build requires Internet connection at build time
+ # we cannot support it
+}
+
+src_compile() {
+ emake -j1 STRIP=true
+
+ pushd cslbuild/*/csl/reduce.doc > /dev/null
+ rm -f *.txt *.tex || die
+ popd > /dev/null
+
+ if use emacs; then
+ einfo "Compiling emacs lisp files"
+ elisp-compile generic/emacs/*.el || die "elisp-compile failed"
+ fi
+}
+
+src_test() {
+ emake -j1 testall
+}
+
+src_install() {
+ local lib="$(get_libdir)"
+ dodoc README BUILDING DEPENDENCY_TRACKING
+ pushd bin > /dev/null
+ cp "${FILESDIR}"/redcsl "${FILESDIR}"/csl . || die
+ sed -e "s/lib/${lib}/" -i redcsl || die
+ sed -e "s/lib/${lib}/" -i csl || die
+ dobin redcsl csl
+ popd > /dev/null
+
+ pushd cslbuild/*/csl > /dev/null
+ exeinto /usr/${lib}/${PN}
+ doexe reduce csl
+ insinto /usr/$(get_libdir)/${PN}
+ doins reduce.img csl.img
+ insinto /usr/share/${PN}
+ doins -r ${PN}.doc
+ mv "${D}"usr/share/${PN}/${PN}.doc "${D}"usr/share/${PN}/doc || die
+ dosym /usr/share/${PN}/doc /usr/${lib}/${PN}/${PN}.doc
+ if use X; then
+ doins -r ${PN}.fonts
+ mv "${D}"usr/share/${PN}/${PN}.fonts "${D}"usr/share/${PN}/fonts || die
+ dosym /usr/share/${PN}/fonts /usr/${lib}/${PN}/${PN}.fonts
+ fi
+ popd > /dev/null
+
+ if use doc; then
+ dodoc doc/util/r38.pdf
+ fi
+
+ if use emacs; then
+ pushd generic/emacs > /dev/null
+ elisp-install ${PN} *.el *.elc || die "elisp-install failed"
+ elisp-site-file-install "${FILESDIR}/64${PN}-gentoo.el"
+ popd > /dev/null
+ fi
+}