summaryrefslogtreecommitdiff
path: root/sci-mathematics
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-10-07 11:03:14 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-10-07 11:03:14 +0100
commit957235cf19a691360c720f7913672adda4258ed0 (patch)
tree812bba7928f4293ead05a7ee9c1ac39c5ef9f12e /sci-mathematics
parent62f67115b5c46134c34f88f4b1cbdacc19384c0a (diff)
gentoo resync : 07.10.2018
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/Manifest.gzbin14992 -> 14997 bytes
-rw-r--r--sci-mathematics/maxima/Manifest3
-rw-r--r--sci-mathematics/maxima/files/ecls-3.patch48
-rw-r--r--sci-mathematics/maxima/maxima-5.42.0.ebuild212
4 files changed, 263 insertions, 0 deletions
diff --git a/sci-mathematics/Manifest.gz b/sci-mathematics/Manifest.gz
index 6227b47f8d34..16da0672bb28 100644
--- a/sci-mathematics/Manifest.gz
+++ b/sci-mathematics/Manifest.gz
Binary files differ
diff --git a/sci-mathematics/maxima/Manifest b/sci-mathematics/maxima/Manifest
index 01c4fec0fd5d..1eedb1109b1e 100644
--- a/sci-mathematics/maxima/Manifest
+++ b/sci-mathematics/maxima/Manifest
@@ -3,6 +3,7 @@ AUX clisp-1.patch 1194 BLAKE2B b64764d80b5908a35081b9bb7114e18de266156cb80bae1c7
AUX clozurecl-2.patch 1505 BLAKE2B c5550f79e67dd007c970759c5e734009d1cb4fa0af728d414ce271175770ed32bd2cf5e58c9738e32afa76b0053b2eee77c886650b0ba99c7e0e3176bc946d69 SHA512 41664b77eae0f2c3cc0e551bd2c26c02769faed339b5725dc790691929094cd5d5008169eba9788515392d9fed00919aaacbb24ee91b76f5d51eb6468335cf9c
AUX cmucl-1.patch 1336 BLAKE2B 59767907f9f2734fa43e8d9c0e876cf2bf1f2cb0e360976ddd08b4eda9685cd1b862aa072a2f0202733db5ab91958bf0d6b48af3d20e6748f4de2e6b366f49ed SHA512 3b8c01ecbbcd87101e4e31356293216d9c2a018ddabc076905a8b87eeda27bea6cd36242ab6b9caf7553fb9187544beb620b739211c63e21afa1b2f050ef318e
AUX ecls-2.patch 1612 BLAKE2B 1f06a895ed09844e8d42f462e4541a49de46762a3e9189073a7624785937da2b5ec0e5c54e230652f80bc47a359793c1ed25209061787c3e2b0da76025bdbc86 SHA512 cd37e62c24f24e49f264d63526615537cb088386cfc48f3eac8fcc746d16f6d79c585dee6f24c664fca355f539728a1a23cc75f3672c240a210a407e87b73141
+AUX ecls-3.patch 2147 BLAKE2B d454b620f01d734d6a774f64dbac67f0996aeacc2a029225cc8a9269211169e7b69237f8b734b92b1f037b5abdcd7ec3ba374924b498fdc63025a1eca5a0d9e6 SHA512 1fcaa4a79d4aaf08dd4162c6d59f8f168909320575a43dcb435cbd758338244ac3b89888501f4cb1fc0f9d8d43b3abe587bc898aacb45c19ba0858f74512366e
AUX emacs-0.patch 807 BLAKE2B 82c879f9c252c4efefb007f8553e845ddc52d76af5cbeab740a1f2bde459b5e87957e0f3e5a9d76d5c1e879ddbebdfb9a6d6b80745cc40e3ddc4379887f4e9b2 SHA512 f62d364651838ed196a2e8965930b42313cb73f912b898b953b526ffc5dc0135841b53618fbbb6a32d21d3412ba5f2bfb253bf41c640a136f68d830f43628ac4
AUX emacs-27.patch 667 BLAKE2B 2482b30a6940b4d217c9e19485c825435ec37bd030a835ce6aaad3cf3c50170c14cb831a0aef246e75c1b5508a1a6d2e5a6e2642d2a03cea58d0ac482e254125 SHA512 8dc34146327e5ff2ab0fb84e39b240e6ee25ee4457e756e6fba6d521615b2fa9c0c86d1bd3980db6153ea1651399d359aac7a17189ad8a7f40f76392aade8bb2
AUX rmaxima-0.patch 552 BLAKE2B 8b8ceb5ea671049490ab006be31f6e81f85d9e43950296db920b3a0d4eb8b19cd14b8b599c98e1dc82f69d441d04c631c4aec2315eaee68f791ddce75dc7ed56 SHA512 a60c8c5ac23b0342823fbcd15e27f44ea85652640271ea845e383796422fa416b221dd036eb0a1639f70f9b09473471657612c7a5f99892cfb214d52156a6907
@@ -12,7 +13,9 @@ AUX xdg-utils-0.patch 1090 BLAKE2B 7a342a9e0bfd5b3aae1e3f8c45046c4fcaffea277cb68
AUX xdg-utils-1.patch 1313 BLAKE2B 35d6f88c505c5b1bb5ecf5691e17522b427a3f035f64de095ba088fa9c6a6076e4c0f7f57794804b588798c2289d36397a95101bde890c363aee9675bf8401e7 SHA512 5e5ab3196cf012ee768d108cc47da25c5afbaffca6f9a1aed9338a7154d377e6baf791d2c7bbe9191b823e056056379f190d8bf7b8ce689f44db892f5e375116
DIST maxima-5.38.1.tar.gz 38641257 BLAKE2B 0244b5dbdd337e64d4f7c3e7f6b946463b0246a9fd0660588798f7891fd1599cf400369fe0d1ce3433d01ce2e4b8bc86ad405d3f8368b429cd028362ec66a1b4 SHA512 abca10984dbb22a48bae481b2e803cb5bee6776e974b4bb9271773aa035fb5e49f34b2458aabca01f0a681a07179e57c012273be6f8d53c615b3309b1034abf9
DIST maxima-5.41.0.tar.gz 41540226 BLAKE2B ff726044c9026bc58d04832fa6382146ed7e7d61d801fa7131b1e7e2ed386b99e238e039481697f9aa24cea59ffd0f6811675cd28818c9fe53f023f965f9d149 SHA512 1b93ae2db055ba7fb4a95924a896667f0cfa1c675c603c104181662aeb32b10b006158526b2f3ad93a59688a23eacdc82e870bb8ffb182a89e1e51de013ec209
+DIST maxima-5.42.0.tar.gz 41902466 BLAKE2B ff09294ee66fc407845b1713e5762d28597bda067fdcaca942a61e6f07365965a9cdeb3f6d7369d9a074f5835cf64d9724d1ac8f2ad84033b84483f3cb619476 SHA512 dedd86838b254c9932166eb161589187f353e986ecd398e9405db43b5159597ba87369e9d7afa8bbfd18288c1213818812fe27881b5f5e99efc63bf31a1d7854
EBUILD maxima-5.38.1.ebuild 4823 BLAKE2B e2f4aa9b01a251b0ff0250df56a9b9cb904ea1d859ff32414fc38f48d9cd772ebe5bab5dbe02fdfe87f6c70c848ad9b2b0b724a8dcbd8aecf459d492cbfa6132 SHA512 88dfd3edcef7450247c1c62b1c9c8759a8816ff6ba6691074088253d5ae3922afa828b21e543978617cc022701a2dfc82e2d2436c21430da1249949393cf6e12
EBUILD maxima-5.41.0-r1.ebuild 4890 BLAKE2B 5aa2a97dfd4dc72718a544c7de8a058d7a5ed102086b52e51906421cc69182df0252b336a7e4c2469cbe51fb761154088812edb764355859e3718eaa1b574783 SHA512 a2bfb607dfe6faa7098ae880ca4f3b7e3db808ecfa714611947df5d4fe00d7fdc6b9f7477ae9ccd3d83f25ae70c7eeffd0295105b5043ebbaeaa4c7f1bea8ee3
EBUILD maxima-5.41.0-r2.ebuild 4919 BLAKE2B 3f0de627f910ab9f749983c1dda434834738c2d9fed5749260a7d97bef9af64de6347a236a185e61312bd851afbd98d3fbbe769cbdff135188a99d7269011a6f SHA512 4cd6fff9032366c57bdc314716c58f72a2bfe61961db813cd3eab3b8a1c31349215ec338927dfface779d3386a85b32802a46beb90a3096690da8e4880a69902
+EBUILD maxima-5.42.0.ebuild 4910 BLAKE2B aa4d06f09fd352360b361b935e2484a7d2787beced1d9bf2aadc2bdee148f1465ed05a370e987d45381bfa877fe447a26e246d540ab5af1826986e37d58ac504 SHA512 9c8293d6dedf745389f528ae8570f1fa842bf5ab7767b4f7088368307a6da1088cdaa5670096a59a806008e42ad6206cb3c675ce38bf70be786c30377784c9e8
MISC metadata.xml 1521 BLAKE2B 5b42a6b4f68699a032b2a1cc43a34b8b7a1050e41b1875f758eb8ffd82151825d3f920587cf89e25f4f692c8fc587e5b405ca8e2fb3e842b7d7ce61e068f0dc4 SHA512 d2db86fcab10cabb9533954838babc9cee4ebb26b99604ebe0cb995b1239ac2a462455cc72d6311dab142290fbf460eaec920138c09045003b46dd382ed8cbf3
diff --git a/sci-mathematics/maxima/files/ecls-3.patch b/sci-mathematics/maxima/files/ecls-3.patch
new file mode 100644
index 000000000000..b44dea4d09a8
--- /dev/null
+++ b/sci-mathematics/maxima/files/ecls-3.patch
@@ -0,0 +1,48 @@
+diff -r -U3 maxima-5.42.0.orig/src/maxima.in maxima-5.42.0/src/maxima.in
+--- maxima-5.42.0.orig/src/maxima.in 2018-09-21 08:21:11.000000000 +0700
++++ maxima-5.42.0/src/maxima.in 2018-10-01 21:49:23.551633882 +0700
+@@ -236,7 +236,7 @@
+ fi
+
+ elif [ "$MAXIMA_LISP" = "ecl" ]; then
+- exec "$maxima_image_base" --frame-stack 4096 --lisp-stack 65536 $MAXIMA_LISP_OPTIONS -- "$@"
++ exec "$maxima_image_base" --frame-stack 4096 --lisp-stack 65536 $MAXIMA_LISP_OPTIONS -norc -- "$@"
+
+ elif [ "$MAXIMA_LISP" = "sbcl" ]; then
+ # Use executable image if it exists.
+diff -r -U3 maxima-5.42.0.orig/src/maxima.system maxima-5.42.0/src/maxima.system
+--- maxima-5.42.0.orig/src/maxima.system 2016-12-04 05:27:40.000000000 +0700
++++ maxima-5.42.0/src/maxima.system 2018-10-01 22:01:08.068604254 +0700
+@@ -59,6 +59,14 @@
+ (c:build-fasl output :lisp-files (list object-output)))))
+
+ #+ecl
++(defun split-ld-flags-for-ecl (string &aux space)
++ (setf string (string-trim '(#\Space) string))
++ (if (setf space (position #\Space string))
++ (cons (subseq string 0 space)
++ (split-ld-flags-for-ecl (subseq string (1+ space))))
++ (cons string nil)))
++
++#+ecl
+ (defun build-maxima-lib ()
+ (labels ((list-all-objects (module)
+ (if (eql (mk::component-type module) :file)
+@@ -75,11 +83,16 @@
+ ;; Convert dir/foo.fas to dir/foo.o
+ (make-pathname :type "o" :defaults p))
+ files)))
++ (c::build-fasl "binary-ecl/maxima" :lisp-files obj
++ :ld-flags
++ (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*"
++ (find-package "MAXIMA")))))
++ (if (and x (not (string= x ""))) (split-ld-flags-for-ecl x))))
+ (c::build-program "binary-ecl/maxima" :lisp-files obj
+ :ld-flags
+ (let ((x (symbol-value (find-symbol "*AUTOCONF-LD-FLAGS*"
+ (find-package "MAXIMA")))))
+- (if (and x (not (string= x ""))) (list x)))
++ (if (and x (not (string= x ""))) (split-ld-flags-for-ecl x)))
+ :epilogue-code '(progn (require :defsystem)
+ (cl-user::run)))))))
+
diff --git a/sci-mathematics/maxima/maxima-5.42.0.ebuild b/sci-mathematics/maxima/maxima-5.42.0.ebuild
new file mode 100644
index 000000000000..1c0c67e3ac6e
--- /dev/null
+++ b/sci-mathematics/maxima/maxima-5.42.0.ebuild
@@ -0,0 +1,212 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools elisp-common eutils xdg-utils
+
+DESCRIPTION="Free computer algebra environment based on Macsyma"
+HOMEPAGE="http://maxima.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2 GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+
+# Supported lisps
+LISPS=( sbcl cmucl gcl ecls clozurecl clisp )
+# <lisp> supports readline: . - no, y - yes
+SUPP_RL=( . . y . . y )
+# . - just --enable-<lisp>, <flag> - --enable-<flag>
+CONF_FLAG=( . . . ecl ccl . )
+# patch file version; . - no patch
+PATCH_V=( 2 1 . 3 2 1 )
+
+IUSE="emacs tk nls unicode X ${LISPS[*]}"
+
+# Languages
+LANGS="de es pt pt_BR"
+for lang in ${LANGS}; do
+ IUSE="${IUSE} l10n_${lang/_/-}"
+done
+
+# texlive-latexrecommended needed by imaxima for breqn.sty
+RDEPEND="!app-emacs/imaxima
+ X? ( x11-misc/xdg-utils
+ sci-visualization/gnuplot[gd]
+ tk? ( dev-lang/tk:0 ) )
+ emacs? ( virtual/emacs
+ virtual/latex-base
+ app-emacs/auctex
+ app-text/ghostscript-gpl
+ dev-texlive/texlive-latexrecommended )"
+
+# generating lisp dependencies
+depends() {
+ local LISP DEP
+ LISP=${LISPS[$1]}
+ DEP="dev-lisp/${LISP}:="
+ 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}) )"
+ DEF_DEP="${DEF_DEP} !${LISP}? ( "
+done
+
+# default lisp
+DEF_LISP=0 # sbcl
+ARM_LISP=2 # gcl
+DEF_DEP="${DEF_DEP} arm? ( `depends ${ARM_LISP}` ) !arm? ( `depends ${DEF_LISP}` )"
+
+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
+ use arm && DEF_LISP=${ARM_LISP}
+ ewarn "No lisp specified in USE flags, choosing ${LISPS[${DEF_LISP}]} as default"
+ NLISPS=${DEF_LISP}
+ fi
+}
+
+src_prepare() {
+ local n PATCHES v
+ PATCHES=( emacs-0 rmaxima-0 wish-2 xdg-utils-1 )
+
+ n=${#PATCHES[*]}
+ for ((n--; n >= 0; n--)); do
+ eapply "${FILESDIR}"/${PATCHES[${n}]}.patch
+ done
+
+ n=${#LISPS[*]}
+ for ((n--; n >= 0; n--)); do
+ v=${PATCH_V[${n}]}
+ if [ "${v}" != "." ]; then
+ eapply "${FILESDIR}"/${LISPS[${n}]}-${v}.patch
+ fi
+ done
+
+ eapply_user
+
+ # bug #343331
+ rm share/Makefile.in || die
+ rm src/Makefile.in || die
+ touch src/*.mk
+ touch src/Makefile.am
+ 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 "l10n_${lang/_/-}"; then
+ CONFS="${CONFS} --enable-lang-${lang}"
+ use unicode && CONFS="${CONFS} --enable-lang-${lang}-utf8"
+ fi
+ done
+ fi
+
+ econf ${CONFS} \
+ $(use_with tk wish) \
+ $(use_enable emacs) \
+ --with-lispdir="${EPREFIX}/${SITELISP}/${PN}"
+}
+
+src_compile() {
+ emake
+ if use emacs; then
+ pushd interfaces/emacs/emaxima > /dev/null
+ elisp-compile *.el
+ popd > /dev/null
+ pushd interfaces/emacs/imaxima > /dev/null
+ BYTECOMPFLAGS="-L . -L ../emaxima"
+ elisp-compile *.el
+ popd > /dev/null
+ fi
+}
+
+src_install() {
+ docompress -x /usr/share/info
+ emake DESTDIR="${D}" emacsdir="${EPREFIX}/${SITELISP}/${PN}" install
+
+ use tk && make_desktop_entry xmaxima xmaxima \
+ /usr/share/${PN}/${PV}/xmaxima/maxima-new.png \
+ "Science;Math;Education"
+
+ # 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
+ dodir /usr/share/doc
+ dosym ../${PN}/${PV}/doc /usr/share/doc/${PF}
+
+ if use emacs; then
+ elisp-install ${PN} interfaces/emacs/{emaxima,imaxima}/*.{el,elc,lisp}
+ elisp-site-file-install "${FILESDIR}"/50maxima-gentoo-1.el
+
+ rm "${ED}"/${SITELISP}/${PN}/emaxima.sty || die
+ insinto ${TEXMF}/tex/latex/emaxima
+ doins interfaces/emacs/emaxima/emaxima.sty
+
+ insinto /usr/share/${PN}/${PV}/doc/imaxima
+ doins interfaces/emacs/imaxima/README
+ doins -r interfaces/emacs/imaxima/imath-example
+ fi
+
+ # if we use ecls, build an ecls library for maxima
+ if use ecls; then
+ ECLLIB=`ecl -eval "(princ (SI:GET-LIBRARY-PATHNAME))" -eval "(quit)"`
+ insinto "${ECLLIB#${EPREFIX}}"
+ doins src/binary-ecl/maxima.fas
+ fi
+}
+
+pkg_postinst() {
+ xdg_mimeinfo_database_update
+ if use emacs; then
+ elisp-site-regen
+ mktexlsr
+ fi
+}
+
+pkg_postrm() {
+ xdg_mimeinfo_database_update
+ if use emacs; then
+ elisp-site-regen
+ mktexlsr
+ fi
+}