diff options
author | Andrey Grozin <grozin@gentoo.org> | 2010-09-17 11:23:55 +0000 |
---|---|---|
committer | Andrey Grozin <grozin@gentoo.org> | 2010-09-17 11:23:55 +0000 |
commit | 9fa4957625a402d81705ae16f5c86f0500387179 (patch) | |
tree | 2b73188ece94bdc31d5abe6731a5da5a05c17590 /sci-mathematics/maxima | |
parent | Remove virtual/glu where already virtual/opengl is stated. (diff) | |
download | gentoo-2-9fa4957625a402d81705ae16f5c86f0500387179.tar.gz gentoo-2-9fa4957625a402d81705ae16f5c86f0500387179.tar.bz2 gentoo-2-9fa4957625a402d81705ae16f5c86f0500387179.zip |
Version bump. Ebuild re-written in a more table-driven fashion, for easier maintainance. Improvements by François Bissey <f.r.bissey@massey.ac.nz> imported from the science overlay, thus fixing #255673, many thanks.
(Portage version: 2.2_rc82/cvs/Linux i686)
Diffstat (limited to 'sci-mathematics/maxima')
-rw-r--r-- | sci-mathematics/maxima/ChangeLog | 12 | ||||
-rw-r--r-- | sci-mathematics/maxima/files/maxima-5.22.1-emacs-version.patch | 12 | ||||
-rw-r--r-- | sci-mathematics/maxima/files/maxima-5.22.1.patch | 32 | ||||
-rw-r--r-- | sci-mathematics/maxima/files/maxima-imaxima.patch | 5 | ||||
-rw-r--r-- | sci-mathematics/maxima/files/maxima-rmaxima.patch | 19 | ||||
-rw-r--r-- | sci-mathematics/maxima/files/maxima-wish.patch | 33 | ||||
-rw-r--r-- | sci-mathematics/maxima/maxima-5.22.1.ebuild | 185 | ||||
-rw-r--r-- | sci-mathematics/maxima/metadata.xml | 20 |
8 files changed, 309 insertions, 9 deletions
diff --git a/sci-mathematics/maxima/ChangeLog b/sci-mathematics/maxima/ChangeLog index 446e78023b17..c40cd3ce8096 100644 --- a/sci-mathematics/maxima/ChangeLog +++ b/sci-mathematics/maxima/ChangeLog @@ -1,6 +1,16 @@ # ChangeLog for sci-mathematics/maxima # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/maxima/ChangeLog,v 1.81 2010/09/14 17:26:32 bicatali Exp $ +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/maxima/ChangeLog,v 1.82 2010/09/17 11:23:55 grozin Exp $ + +*maxima-5.22.1 (17 Sep 2010) + + 17 Sep 2010; Andrey Grozin <grozin@gentoo.org> +maxima-5.22.1.ebuild, + +files/maxima-5.22.1-emacs-version.patch, +files/maxima-5.22.1.patch, + +files/maxima-imaxima.patch, +files/maxima-rmaxima.patch, + +files/maxima-wish.patch, metadata.xml: + Version bump. Ebuild re-written in a more table-driven fashion, for easier + maintainance. Improvements by François Bissey <f.r.bissey@massey.ac.nz> + imported from the science overlay, thus fixing #255673, many thanks. 14 Sep 2010; Sébastien Fabbro <bicatali@gentoo.org> maxima-5.21.1-r1.ebuild: diff --git a/sci-mathematics/maxima/files/maxima-5.22.1-emacs-version.patch b/sci-mathematics/maxima/files/maxima-5.22.1-emacs-version.patch new file mode 100644 index 000000000000..d0ab0a5e768d --- /dev/null +++ b/sci-mathematics/maxima/files/maxima-5.22.1-emacs-version.patch @@ -0,0 +1,12 @@ +http://bugs.gentoo.org/307349 + +--- maxima-5.20.1-orig/interfaces/emacs/emaxima/maxima.el ++++ maxima-5.20.1/interfaces/emacs/emaxima/maxima.el +@@ -2109,6 +2109,7 @@ + ;;; The next functions are from comint.el in cvs emacs + (if (and + (not maxima-running-xemacs) ++ (<= emacs-major-version 21) + (or + (< emacs-major-version 21) + (< emacs-minor-version 3))) diff --git a/sci-mathematics/maxima/files/maxima-5.22.1.patch b/sci-mathematics/maxima/files/maxima-5.22.1.patch new file mode 100644 index 000000000000..9f6920a0b3b7 --- /dev/null +++ b/sci-mathematics/maxima/files/maxima-5.22.1.patch @@ -0,0 +1,32 @@ +diff -U1 -r maxima-5.22.1.orig//configure.in maxima-5.22.1//configure.in +--- maxima-5.22.1.orig//configure.in 2010-08-12 10:21:49.000000000 +0700 ++++ maxima-5.22.1//configure.in 2010-09-17 23:20:49.000000000 +0700 +@@ -276,3 +276,3 @@ + dnl n.b. openmcl_default_name is hardcoded in "with" message +-openmcl_default_name=openmcl ++openmcl_default_name=ccl + AC_ARG_ENABLE(openmcl,[ --enable-openmcl Use OpenMCL], +diff -U1 -r maxima-5.22.1.orig//src/maxima.in maxima-5.22.1//src/maxima.in +--- maxima-5.22.1.orig//src/maxima.in 2010-08-01 23:58:57.000000000 +0700 ++++ maxima-5.22.1//src/maxima.in 2010-09-17 23:10:40.000000000 +0700 +@@ -137,5 +137,5 @@ + if [ "$layout_autotools" = "true" ]; then +- exec "$MAXIMA_IMAGESDIR/binary-$MAXIMA_LISP/@CLISP_RUNTIME@" $MAXIMA_LISP_OPTIONS -q -M "$maxima_image_base.mem" "" -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" ++ exec "$MAXIMA_IMAGESDIR/binary-$MAXIMA_LISP/@CLISP_RUNTIME@" $MAXIMA_LISP_OPTIONS -q -norc -M "$maxima_image_base.mem" "" -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" + else +- exec "@CLISP_NAME@" $MAXIMA_LISP_OPTIONS -q -M "$maxima_image_base.mem" "" -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" ++ exec "@CLISP_NAME@" $MAXIMA_LISP_OPTIONS -q -norc -M "$maxima_image_base.mem" "" -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" + fi +@@ -143,5 +143,5 @@ + if [ "$layout_autotools" = "true" ]; then +- exec "$MAXIMA_IMAGESDIR/binary-$MAXIMA_LISP/@CMUCL_RUNTIME@" $MAXIMA_LISP_OPTIONS -quiet -core "$maxima_image_base.core" -eval '(cl-user::run)' -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" ++ exec "$MAXIMA_IMAGESDIR/binary-$MAXIMA_LISP/@CMUCL_RUNTIME@" $MAXIMA_LISP_OPTIONS -quiet -nositeinit -noinit -core "$maxima_image_base.core" -eval '(cl-user::run)' -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" + else +- exec "@CMUCL_NAME@" $MAXIMA_LISP_OPTIONS -quiet -core "$maxima_image_base.core" -eval '(cl-user::run)' -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" ++ exec "@CMUCL_NAME@" $MAXIMA_LISP_OPTIONS -quiet -nositeinit -noinit -core "$maxima_image_base.core" -eval '(cl-user::run)' -- "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" + fi +@@ -166,3 +166,3 @@ + elif [ "$MAXIMA_LISP" = "sbcl" ]; then +- exec "@SBCL_NAME@" --core "$maxima_image_base.core" --noinform $MAXIMA_LISP_OPTIONS --end-runtime-options --eval '(cl-user::run)' --end-toplevel-options "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" ++ exec "@SBCL_NAME@" --core "$maxima_image_base.core" --noinform $MAXIMA_LISP_OPTIONS --end-runtime-options --no-sysinit --no-userinit --eval '(cl-user::run)' --end-toplevel-options "$arg1" "$arg2" "$arg3" "$arg4" "$arg5" "$arg6" "$arg7" "$arg8" "$arg9" + else diff --git a/sci-mathematics/maxima/files/maxima-imaxima.patch b/sci-mathematics/maxima/files/maxima-imaxima.patch new file mode 100644 index 000000000000..fe607b240d13 --- /dev/null +++ b/sci-mathematics/maxima/files/maxima-imaxima.patch @@ -0,0 +1,5 @@ +--- interfaces/emacs/Makefile.am.orig 2010-02-01 22:11:44.809941160 +1300 ++++ interfaces/emacs/Makefile.am 2010-02-01 22:12:06.608062346 +1300 +@@ -1 +1 @@ +-SUBDIRS = emaxima misc imaxima ++SUBDIRS = emaxima misc diff --git a/sci-mathematics/maxima/files/maxima-rmaxima.patch b/sci-mathematics/maxima/files/maxima-rmaxima.patch new file mode 100644 index 000000000000..db8e87380591 --- /dev/null +++ b/sci-mathematics/maxima/files/maxima-rmaxima.patch @@ -0,0 +1,19 @@ +--- src/Makefile.am.orig 2010-02-01 21:58:17.353941395 +1300 ++++ src/Makefile.am 2010-02-01 22:09:12.859975783 +1300 +@@ -3,8 +3,16 @@ + if WIN32 + bin_SCRIPTS = maxima maxima-command.ico maxima.bat set_lang.vbs + else ++if CLISP ++bin_SCRIPTS = maxima ++else ++if GCL ++bin_SCRIPTS = maxima ++else + bin_SCRIPTS = maxima rmaxima + endif ++endif ++endif + + LOADDEFSYSTEM = (load "$(top_srcdir)/lisp-utils/defsystem.lisp") + LOADMAKEPROCLAIM = (load "$(top_srcdir)/lisp-utils/make-proclaim.lisp") diff --git a/sci-mathematics/maxima/files/maxima-wish.patch b/sci-mathematics/maxima/files/maxima-wish.patch new file mode 100644 index 000000000000..a5d9a2989e42 --- /dev/null +++ b/sci-mathematics/maxima/files/maxima-wish.patch @@ -0,0 +1,33 @@ +--- configure.in.orig 2010-06-28 15:55:47.187614440 +1200 ++++ configure.in 2010-06-28 16:08:30.704615168 +1200 +@@ -724,11 +724,17 @@ + [posix_shell_list="/bin/sh /bin/bash /usr/bin/bash /usr/local/bin/bash"]) + + AC_ARG_WITH(wish, +- [ --with-wish=<prog> Use <prog> for Tk wish shell (default wish)], +- [WISH="${withval}"], +- [WISH="wish"]) ++ [ --with-wish=<prog> Use <prog> for Tk wish shell (default wish)], ++ [], ++ [with_wish="wish"]) ++ ++case "${with_wish}" in ++ no) WISH="none" ;; ++ yes) WISH="wish" ;; ++ *) WISH="${with_wish}" ;; ++esac + AC_SUBST(WISH) +- ++AM_CONDITIONAL(WANT_TK, test x"${with_wish}" != xno) + + AC_MSG_CHECKING(POSIX shell to see that it contains getopts) + cat <<EOF > conftest-posix-shell.sh +--- interfaces/Makefile.am.orig 2010-06-28 16:09:04.235614065 +1200 ++++ interfaces/Makefile.am 2010-06-28 16:11:29.590613301 +1200 +@@ -1,2 +1,6 @@ ++if WANT_TK + SUBDIRS = emacs xmaxima ++else ++SUBDIRS = emacs ++endif + EXTRA_DIST = bin/xmaxima.iss diff --git a/sci-mathematics/maxima/maxima-5.22.1.ebuild b/sci-mathematics/maxima/maxima-5.22.1.ebuild new file mode 100644 index 000000000000..a3b564aa36bc --- /dev/null +++ b/sci-mathematics/maxima/maxima-5.22.1.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2010 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/maxima/maxima-5.22.1.ebuild,v 1.1 2010/09/17 11:23:55 grozin Exp $ + +EAPI=3 + +inherit autotools elisp-common + +DESCRIPTION="Free computer algebra environment based on Macsyma" +HOMEPAGE="http://maxima.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" + +# Supported lisps (the first one is the default) +LISPS=( sbcl cmucl gcl ecls clozurecl clisp ) +# . - just dev-lisp/<lisp>, <version> - >= dev-lisp/<lisp>-<version> +MIN_VER=( . . 2.6.8_pre[ansi] 10 . . ) +# <lisp> supports readline: . - no, y - yes +SUPP_RL=( . . y . . y ) +# . - just --enable-<lisp>, <flag> - --enable-<flag> +CONF_FLAG=( . . . ecl ccl . ) + +IUSE="latex emacs tk nls unicode xemacs X ${LISPS[*]}" + +# Languages +LANGS="es pt pt_BR" +for lang in ${LANGS}; do + IUSE="${IUSE} linguas_${lang}" +done + +RDEPEND="X? ( x11-misc/xdg-utils + sci-visualization/gnuplot[gd] + tk? ( dev-lang/tk ) ) + latex? ( virtual/latex-base ) + emacs? ( virtual/emacs + latex? ( app-emacs/auctex ) ) + xemacs? ( app-editors/xemacs + latex? ( app-emacs/auctex ) )" + +PDEPEND="emacs? ( app-emacs/imaxima )" + +# generating lisp dependencies +depends() { + local LISP DEP + LISP=${LISPS[$1]} + DEP=${MIN_VER[$1]} + if [ "${DEP}" = "." ]; then + DEP="dev-lisp/${LISP}" + else + DEP=">=dev-lisp/${LISP}-${DEP}" + fi + if [ "${SUPP_RL[$1]}" = "." ]; then + DEP="${DEP} app-misc/rlwrap" + fi + echo ${DEP} +} + +n=${#LISPS[*]} +for ((n--; n >= 0; n--)); do + LISP=${LISPS[${n}]} + RDEPEND="${RDEPEND} ${LISP}? ( $(depends ${n}) )" + if (( ${n} > 0 )); then + DEF_DEP="${DEF_DEP} !${LISP}? ( " + fi +done + +DEF_DEP="${DEF_DEP} `depends 0`" + +n=${#LISPS[*]} +for ((n--; n > 0; n--)); do + DEF_DEP="${DEF_DEP} )" +done + +unset LISP + +RDEPEND="${RDEPEND} + ${DEF_DEP}" + +DEPEND="${RDEPEND} + sys-apps/texinfo" + +TEXMF="${EPREFIX}"/usr/share/texmf-site + +pkg_setup() { + local n=${#LISPS[*]} + + for ((n--; n >= 0; n--)); do + use ${LISPS[${n}]} && NLISPS="${NLISPS} ${n}" + done + + if [ -z "${NLISPS}" ]; then + ewarn "No lisp specified in USE flags, choosing ${LISPS[0]} as default" + NLISPS=0 + fi +} + +src_prepare() { + # use xdg-open to view ps, pdf + epatch "${FILESDIR}"/${PN}-xdg-utils.patch + + # Don't use lisp init files + # ClozureCL (former OpenMCL) executable name is ccl + epatch "${FILESDIR}"/${P}.patch + + # make xmaxima conditional on tk (wish) + epatch "${FILESDIR}"/${PN}-wish.patch + + # don't install imaxima, since we have a separate package for it + epatch "${FILESDIR}"/${PN}-imaxima.patch + + # remove rmaxima if not needed + epatch "${FILESDIR}/${PN}-rmaxima.patch" + + epatch "${FILESDIR}"/${P}-emacs-version.patch + + eautoreconf +} + +src_configure() { + local CONFS CONF n lang + for n in ${NLISPS}; do + CONF=${CONF_FLAG[${n}]} + if [ ${CONF} = . ]; then + CONF=${LISPS[${n}]} + fi + CONFS="${CONFS} --enable-${CONF}" + done + + # enable existing translated doc + if use nls; then + for lang in ${LANGS}; do + if use "linguas_${lang}"; then + CONFS="${CONFS} --enable-lang-${lang}" + use unicode && CONFS="${CONFS} --enable-lang-${lang}-utf8" + fi + done + fi + + econf ${CONFS} $(use_with tk wish) --with-lispdir="${SITELISP}"/${PN} +} + +src_install() { + einstall emacsdir="${ED}${SITELISP}/${PN}" || die "einstall failed" + + use tk && make_desktop_entry xmaxima xmaxima \ + /usr/share/${PN}/${PV}/xmaxima/maxima-new.png \ + "Science;Math;Education" + + if use latex; then + insinto ${TEXMF}/tex/latex/emaxima + doins interfaces/emacs/emaxima/emaxima.sty + fi + + # do not use dodoc because interfaces can't read compressed files + # read COPYING before attempt to remove it from dodoc + insinto /usr/share/${PN}/${PV}/doc + doins AUTHORS COPYING README README.lisps || die + dodir /usr/share/doc + dosym ../${PN}/${PV}/doc /usr/share/doc/${PF} || die + + if use emacs; then + elisp-site-file-install "${FILESDIR}"/50maxima-gentoo.el || die + fi +} + +pkg_preinst() { + # some lisps do not read compress info files (bug #176411) + local infofile + for infofile in "${ED}"/usr/share/info/*.bz2 ; do + bunzip2 "${infofile}" + done +} + +pkg_postinst() { + use emacs && elisp-site-regen + use latex && mktexlsr +} + +pkg_postrm() { + use emacs && elisp-site-regen + use latex && mktexlsr +} diff --git a/sci-mathematics/maxima/metadata.xml b/sci-mathematics/maxima/metadata.xml index 3d6382d82cb7..9fc821b0fc7a 100644 --- a/sci-mathematics/maxima/metadata.xml +++ b/sci-mathematics/maxima/metadata.xml @@ -13,17 +13,21 @@ and can plot functions and data in two and three dimensions. </longdescription> <use> - <flag name='clisp'>Add support for GNU CLISP + <flag name='clisp'>Compile maxima with GNU CLISP (<pkg>dev-lisp/clisp</pkg>)</flag> - <flag name='cmucl'>Add support for CMU Common Lisp + <flag name='clozurecl'>Compile maxima with Clozure Common Lisp + (<pkg>dev-lisp/clozurecl</pkg>)</flag> + <flag name='cmucl'>Compile maxima with CMU Common Lisp (<pkg>dev-lisp/cmucl</pkg>)</flag> - <flag name='gcl'>Add support for GNU Common Lisp - (<pkg>dev-lisp/gcl</pkg>)</flag> - <flag name='sbcl'>Add support for Steel Bank Common Lisp - (<pkg>dev-lisp/sbcl</pkg>)</flag> - <flag name='ecl'>Add support for Embeddable Common Lisp + <flag name='ecl'>Compile maxima with Embeddable Common Lisp + (<pkg>dev-lisp/ecls</pkg>)</flag> + <flag name='ecls'>Compile maxima with Embeddable Common Lisp (<pkg>dev-lisp/ecls</pkg>)</flag> - <flag name='openmcl'>Add support for Clozure Common Lisp + <flag name='gcl'>Compile maxima with GNU Common Lisp + (<pkg>dev-lisp/gcl</pkg>)</flag> + <flag name='openmcl'>Compile maxima with Clozure Common Lisp (former OpenMCL, <pkg>dev-lisp/closurecl</pkg>)</flag> + <flag name='sbcl'>Compile maxima with Steel Bank Common Lisp + (<pkg>dev-lisp/sbcl</pkg>)</flag> </use> </pkgmetadata> |