Gentoo Archives: gentoo-commits

From: Andrey Grozin <grozin@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-mathematics/maxima/
Date: Tue, 12 Mar 2019 18:32:22
Message-Id: 1552415524.d91daa1d72ad93431908a869d466b334e813cbb1.grozin@gentoo
1 commit: d91daa1d72ad93431908a869d466b334e813cbb1
2 Author: Andrey Grozin <grozin <AT> gentoo <DOT> org>
3 AuthorDate: Tue Mar 12 18:32:04 2019 +0000
4 Commit: Andrey Grozin <grozin <AT> gentoo <DOT> org>
5 CommitDate: Tue Mar 12 18:32:04 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d91daa1d
7
8 sci-mathematics/maxima: bump to 5.42.2
9
10 Package-Manager: Portage-2.3.62, Repoman-2.3.12
11 Signed-off-by: Andrey Grozin <grozin <AT> gentoo.org>
12
13 sci-mathematics/maxima/Manifest | 1 +
14 sci-mathematics/maxima/maxima-5.42.2.ebuild | 212 ++++++++++++++++++++++++++++
15 2 files changed, 213 insertions(+)
16
17 diff --git a/sci-mathematics/maxima/Manifest b/sci-mathematics/maxima/Manifest
18 index ff5d542a946..1d01cae2071 100644
19 --- a/sci-mathematics/maxima/Manifest
20 +++ b/sci-mathematics/maxima/Manifest
21 @@ -1,3 +1,4 @@
22 DIST maxima-5.38.1.tar.gz 38641257 BLAKE2B 0244b5dbdd337e64d4f7c3e7f6b946463b0246a9fd0660588798f7891fd1599cf400369fe0d1ce3433d01ce2e4b8bc86ad405d3f8368b429cd028362ec66a1b4 SHA512 abca10984dbb22a48bae481b2e803cb5bee6776e974b4bb9271773aa035fb5e49f34b2458aabca01f0a681a07179e57c012273be6f8d53c615b3309b1034abf9
23 DIST maxima-5.41.0.tar.gz 41540226 BLAKE2B ff726044c9026bc58d04832fa6382146ed7e7d61d801fa7131b1e7e2ed386b99e238e039481697f9aa24cea59ffd0f6811675cd28818c9fe53f023f965f9d149 SHA512 1b93ae2db055ba7fb4a95924a896667f0cfa1c675c603c104181662aeb32b10b006158526b2f3ad93a59688a23eacdc82e870bb8ffb182a89e1e51de013ec209
24 DIST maxima-5.42.1.tar.gz 41865510 BLAKE2B d3b8a50594dc0cef0c354c42be1aee96df77a4e222dbe457edeb47d7fe77a8fe376b10ce8da9e4ff6c447242e9c53a32286d09a64d8600112f6feda92f1fb58d SHA512 79c5e70119b0384d9dd8aa47c7e96a0ccb7e6367526b8a14d21f00137a1c2f0c8b7990bb7231d7c90ffa0090f67c1fa30a418d013d9c5982030ae68de9717f48
25 +DIST maxima-5.42.2.tar.gz 41840181 BLAKE2B bca8a94366f1fe2f508436fdef8de80107b19c9b267a4b72dc6f56870078d35b3feb7dbdda384589b38c5351d6eeede1b9738a5ec2152063de2afacd1ced48c4 SHA512 5033b02272121f6aacff5ededf90eaad5e644a06d0c62aafd745401c08429da979ecd8274f7aa12596a0e32ddb614659af14e4273f59d372fe1ecbec081e7829
26
27 diff --git a/sci-mathematics/maxima/maxima-5.42.2.ebuild b/sci-mathematics/maxima/maxima-5.42.2.ebuild
28 new file mode 100644
29 index 00000000000..f55566f6504
30 --- /dev/null
31 +++ b/sci-mathematics/maxima/maxima-5.42.2.ebuild
32 @@ -0,0 +1,212 @@
33 +# Copyright 1999-2019 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=6
37 +
38 +inherit autotools elisp-common eutils xdg-utils
39 +
40 +DESCRIPTION="Free computer algebra environment based on Macsyma"
41 +HOMEPAGE="http://maxima.sourceforge.net/"
42 +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
43 +
44 +LICENSE="GPL-2 GPL-2+"
45 +SLOT="0"
46 +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
47 +
48 +# Supported lisps
49 +LISPS=( sbcl cmucl gcl ecls clozurecl clisp )
50 +# <lisp> supports readline: . - no, y - yes
51 +SUPP_RL=( . . y . . y )
52 +# . - just --enable-<lisp>, <flag> - --enable-<flag>
53 +CONF_FLAG=( . . . ecl ccl . )
54 +# patch file version; . - no patch
55 +PATCH_V=( 2 1 . 3 2 1 )
56 +
57 +IUSE="emacs tk nls unicode X ${LISPS[*]}"
58 +
59 +# Languages
60 +LANGS="de es pt pt_BR"
61 +for lang in ${LANGS}; do
62 + IUSE="${IUSE} l10n_${lang/_/-}"
63 +done
64 +
65 +# texlive-latexrecommended needed by imaxima for breqn.sty
66 +RDEPEND="!app-emacs/imaxima
67 + X? ( x11-misc/xdg-utils
68 + sci-visualization/gnuplot[gd]
69 + tk? ( dev-lang/tk:0 ) )
70 + emacs? ( virtual/emacs
71 + virtual/latex-base
72 + app-emacs/auctex
73 + app-text/ghostscript-gpl
74 + dev-texlive/texlive-latexrecommended )"
75 +
76 +# generating lisp dependencies
77 +depends() {
78 + local LISP DEP
79 + LISP=${LISPS[$1]}
80 + DEP="dev-lisp/${LISP}:="
81 + if [ "${SUPP_RL[$1]}" = "." ]; then
82 + DEP="${DEP} app-misc/rlwrap"
83 + fi
84 + echo ${DEP}
85 +}
86 +
87 +n=${#LISPS[*]}
88 +for ((n--; n >= 0; n--)); do
89 + LISP=${LISPS[${n}]}
90 + RDEPEND="${RDEPEND} ${LISP}? ( $(depends ${n}) )"
91 + DEF_DEP="${DEF_DEP} !${LISP}? ( "
92 +done
93 +
94 +# default lisp
95 +DEF_LISP=0 # sbcl
96 +ARM_LISP=2 # gcl
97 +DEF_DEP="${DEF_DEP} arm? ( `depends ${ARM_LISP}` ) !arm? ( `depends ${DEF_LISP}` )"
98 +
99 +n=${#LISPS[*]}
100 +for ((n--; n >= 0; n--)); do
101 + DEF_DEP="${DEF_DEP} )"
102 +done
103 +
104 +unset LISP
105 +
106 +RDEPEND="${RDEPEND}
107 + ${DEF_DEP}"
108 +
109 +DEPEND="${RDEPEND}
110 + sys-apps/texinfo"
111 +
112 +TEXMF="${EPREFIX}"/usr/share/texmf-site
113 +
114 +pkg_setup() {
115 + local n=${#LISPS[*]}
116 +
117 + for ((n--; n >= 0; n--)); do
118 + use ${LISPS[${n}]} && NLISPS="${NLISPS} ${n}"
119 + done
120 +
121 + if [ -z "${NLISPS}" ]; then
122 + use arm && DEF_LISP=${ARM_LISP}
123 + ewarn "No lisp specified in USE flags, choosing ${LISPS[${DEF_LISP}]} as default"
124 + NLISPS=${DEF_LISP}
125 + fi
126 +}
127 +
128 +src_prepare() {
129 + local n PATCHES v
130 + PATCHES=( emacs-0 rmaxima-0 wish-2 xdg-utils-1 )
131 +
132 + n=${#PATCHES[*]}
133 + for ((n--; n >= 0; n--)); do
134 + eapply "${FILESDIR}"/${PATCHES[${n}]}.patch
135 + done
136 +
137 + n=${#LISPS[*]}
138 + for ((n--; n >= 0; n--)); do
139 + v=${PATCH_V[${n}]}
140 + if [ "${v}" != "." ]; then
141 + eapply "${FILESDIR}"/${LISPS[${n}]}-${v}.patch
142 + fi
143 + done
144 +
145 + eapply_user
146 +
147 + # bug #343331
148 + rm share/Makefile.in || die
149 + rm src/Makefile.in || die
150 + touch src/*.mk
151 + touch src/Makefile.am
152 + eautoreconf
153 +}
154 +
155 +src_configure() {
156 + local CONFS CONF n lang
157 + for n in ${NLISPS}; do
158 + CONF=${CONF_FLAG[${n}]}
159 + if [ ${CONF} = . ]; then
160 + CONF=${LISPS[${n}]}
161 + fi
162 + CONFS="${CONFS} --enable-${CONF}"
163 + done
164 +
165 + # enable existing translated doc
166 + if use nls; then
167 + for lang in ${LANGS}; do
168 + if use "l10n_${lang/_/-}"; then
169 + CONFS="${CONFS} --enable-lang-${lang}"
170 + use unicode && CONFS="${CONFS} --enable-lang-${lang}-utf8"
171 + fi
172 + done
173 + fi
174 +
175 + econf ${CONFS} \
176 + $(use_with tk wish) \
177 + $(use_enable emacs) \
178 + --with-lispdir="${EPREFIX}/${SITELISP}/${PN}"
179 +}
180 +
181 +src_compile() {
182 + emake
183 + if use emacs; then
184 + pushd interfaces/emacs/emaxima > /dev/null
185 + elisp-compile *.el
186 + popd > /dev/null
187 + pushd interfaces/emacs/imaxima > /dev/null
188 + BYTECOMPFLAGS="-L . -L ../emaxima"
189 + elisp-compile *.el
190 + popd > /dev/null
191 + fi
192 +}
193 +
194 +src_install() {
195 + docompress -x /usr/share/info
196 + emake DESTDIR="${D}" emacsdir="${EPREFIX}/${SITELISP}/${PN}" install
197 +
198 + use tk && make_desktop_entry xmaxima xmaxima \
199 + /usr/share/${PN}/${PV}/xmaxima/maxima-new.png \
200 + "Science;Math;Education"
201 +
202 + # do not use dodoc because interfaces can't read compressed files
203 + # read COPYING before attempt to remove it from dodoc
204 + insinto /usr/share/${PN}/${PV}/doc
205 + doins AUTHORS COPYING README README.lisps
206 + dodir /usr/share/doc
207 + dosym ../${PN}/${PV}/doc /usr/share/doc/${PF}
208 +
209 + if use emacs; then
210 + elisp-install ${PN} interfaces/emacs/{emaxima,imaxima}/*.{el,elc,lisp}
211 + elisp-site-file-install "${FILESDIR}"/50maxima-gentoo-1.el
212 +
213 + rm "${ED}"/${SITELISP}/${PN}/emaxima.sty || die
214 + insinto ${TEXMF}/tex/latex/emaxima
215 + doins interfaces/emacs/emaxima/emaxima.sty
216 +
217 + insinto /usr/share/${PN}/${PV}/doc/imaxima
218 + doins interfaces/emacs/imaxima/README
219 + doins -r interfaces/emacs/imaxima/imath-example
220 + fi
221 +
222 + # if we use ecls, build an ecls library for maxima
223 + if use ecls; then
224 + ECLLIB=`ecl -eval "(princ (SI:GET-LIBRARY-PATHNAME))" -eval "(quit)"`
225 + insinto "${ECLLIB#${EPREFIX}}"
226 + doins src/binary-ecl/maxima.fas
227 + fi
228 +}
229 +
230 +pkg_postinst() {
231 + xdg_mimeinfo_database_update
232 + if use emacs; then
233 + elisp-site-regen
234 + mktexlsr
235 + fi
236 +}
237 +
238 +pkg_postrm() {
239 + xdg_mimeinfo_database_update
240 + if use emacs; then
241 + elisp-site-regen
242 + mktexlsr
243 + fi
244 +}