]>
Commit | Line | Data |
---|---|---|
2741c093 JB |
1 | # |
2 | # Conditional build: | |
3 | %bcond_without emacs # Emacs mode | |
4 | ||
a486c981 | 5 | Summary: Maxima Symbolic Computation Program |
8753da3b | 6 | Summary(pl.UTF-8): Program do obliczeń symbolicznych Maxima |
a486c981 | 7 | Name: maxima |
203151ae | 8 | Version: 5.46.0 |
133d8cf7 | 9 | Release: 1 |
d907bd06 | 10 | Epoch: 1 |
203151ae | 11 | License: GPL v2+ |
a486c981 | 12 | Group: Applications/Math |
203151ae JB |
13 | Source0: https://downloads.sourceforge.net/maxima/%{name}-%{version}.tar.gz |
14 | # Source0-md5: 3c01f1daa6936e11d8713fef7751d3fe | |
29fde64e | 15 | Source2: %{name}-mode-init.el |
7189a287 | 16 | Patch0: %{name}-info.patch |
a51927e1 | 17 | Patch1: %{name}-missed-files.patch |
88f300a0 KK |
18 | Patch3: x%{name}-doc.patch |
19 | Patch4: %{name}-install.patch | |
da1eff4f | 20 | Patch5: %{name}-info-compressed.patch |
203151ae | 21 | URL: https://maxima.sourceforge.io/ |
2741c093 | 22 | BuildRequires: autoconf >= 2.50 |
a486c981 | 23 | BuildRequires: automake |
24 | BuildRequires: clisp | |
2741c093 JB |
25 | %{?with_emacs:BuildRequires: emacs} |
26 | BuildRequires: gettext-tools | |
27 | BuildRequires: perl-base >= 5 | |
28 | BuildRequires: python >= 2 | |
29 | BuildRequires: rpmbuild(macros) >= 1.311 | |
7189a287 | 30 | BuildRequires: texinfo |
8918acd0 | 31 | %requires_eq clisp |
da1eff4f | 32 | Requires: gzip |
dca43053 | 33 | Suggests: gnuplot |
a486c981 | 34 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
35 | ||
6b0f39ab JB |
36 | # sources are in (c)lisp |
37 | %define _debugsource_packages 0 | |
38 | ||
a486c981 | 39 | %description |
40 | Maxima is a full symbolic computation program. It is full featured | |
41 | doing symbolic manipulation of polynomials, matrices, rational | |
42 | functions, integration, Todd-coxeter, graphing, bigfloats. It has a | |
43 | symbolic debugger source level debugger for maxima code. Maxima is | |
44 | based on the original Macsyma developed at MIT in the 1970's. It is | |
45 | quite reliable, and has good garbage collection, and no memory leaks. | |
46 | It comes with hundreds of self tests. William Schelter at University | |
47 | of Texas, has been responsible for development since the mid 1980's. | |
48 | See http://www.ma.utexas.edu/maxima.html for more information. He has | |
49 | recently been able to get DOE to allow him to distribute Maxima under | |
50 | the GPL. | |
51 | ||
abdbe5c9 JR |
52 | %description -l pl.UTF-8 |
53 | Maxima jest pakietem do pełnych obliczeń matematycznych. Ma duże | |
54 | możliwości symbolicznych obliczeń na wielomianach, macierzach, | |
55 | funkcjach wymiernych, całkowania, stosowania metody Todda-Coxetera, | |
56 | rysowania, obliczeń na wielkich liczbach. Posiada symboliczny debugger | |
57 | kodu źródłowego w maximie. Maxima bazuje na oryginalnej Macsyma | |
58 | utworzonej w MIT w roku 1970. Ma dobrą obsługę błędów, nie ma wycieków | |
59 | pamięci. Przychodzi z setkami testów. Od połowy lat 80-tych za rozwój | |
60 | projektu odpowiada William Schelter z University of Texas. Więcej | |
3a9b294c | 61 | informacji na stronie http://www.ma.utexas.edu/maxima.html. Ostatnio |
abdbe5c9 | 62 | udało mu się uzyskać pozwolenie DOE na opublikowanie Maximy na |
3a9b294c | 63 | licencji GPL. |
a486c981 | 64 | |
2741c093 JB |
65 | %package -n bash-completion-maxima |
66 | Summary: Bash completion for Maxima | |
67 | Summary(pl.UTF-8): Bashowe dopełnianie parametrów dla Maximy | |
68 | Group: Applications/Shells | |
69 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
70 | Requires: bash-completion >= 2.0 | |
71 | ||
72 | %description -n bash-completion-maxima | |
73 | Bash completion for Maxima. | |
74 | ||
75 | %description -n bash-completion-maxima -l pl.UTF-8 | |
76 | Bashowe dopełnianie parametrów dla Maximy. | |
77 | ||
d73f5fe5 | 78 | %package xmaxima |
9856ac96 JB |
79 | Summary: Tcl/Tk GUI interface for Maxima |
80 | Summary(pl.UTF-8): Graficzny interfejs Tcl/Tk dla Maximy | |
d73f5fe5 KK |
81 | Group: Applications/Math |
82 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
2741c093 | 83 | Requires: shared-mime-info |
d73f5fe5 KK |
84 | Requires: tk |
85 | ||
86 | %description xmaxima | |
87 | Tcl/Tk GUI interface for maxima. | |
88 | ||
9856ac96 JB |
89 | %description xmaxima -l pl.UTF-8 |
90 | Graficzny interfejs Tcl/Tk dla Maximy. | |
91 | ||
2741c093 JB |
92 | %package -n bash-completion-xmaxima |
93 | Summary: Bash completion for XMaxima | |
94 | Summary(pl.UTF-8): Bashowe dopełnianie parametrów dla XMaximy | |
95 | Group: Applications/Shells | |
96 | Requires: %{name}-xmaxima = %{epoch}:%{version}-%{release} | |
97 | Requires: bash-completion >= 2.0 | |
98 | ||
99 | %description -n bash-completion-xmaxima | |
100 | Bash completion for XMaxima. | |
101 | ||
102 | %description -n bash-completion-xmaxima -l pl.UTF-8 | |
103 | Bashowe dopełnianie parametrów dla XMaximy. | |
104 | ||
88f300a0 KK |
105 | %package src |
106 | Summary: Maxima lisp source code | |
107 | Summary(pl.UTF-8): Pliki źródłowe Maximy | |
108 | Group: Development | |
109 | ||
110 | %description src | |
111 | Maxima lisp source code. | |
112 | ||
113 | %description src -l pl.UTF-8 | |
114 | Pliki źródłowe Maximy. | |
115 | ||
116 | %package doc | |
117 | Summary: Maxima documentation | |
118 | Summary(pl.UTF-8): Dokumentacja dla Maximy | |
119 | Group: Documentation | |
120 | ||
121 | %description doc | |
122 | Maxima documentation. | |
123 | ||
124 | %description doc -l pl.UTF-8 | |
125 | Dokumentacja dla Maximy. | |
126 | ||
0fb92146 | 127 | %package -n emacs-maxima-pkg |
29fde64e KK |
128 | Summary: Emacs mode for Maxima |
129 | Summary(pl.UTF-8): Tryb Maximy dla Emacsa | |
130 | Group: Applications/Math | |
131 | Requires: emacs-common | |
132 | ||
0fb92146 | 133 | %description -n emacs-maxima-pkg |
29fde64e KK |
134 | Emacs mode files for Maxima. |
135 | ||
0fb92146 | 136 | %description -n emacs-maxima-pkg -l pl.UTF-8 |
29fde64e KK |
137 | Tryb Maximy dla Emacsa. |
138 | ||
a486c981 | 139 | %prep |
a486c981 | 140 | %setup -q |
2741c093 | 141 | %patch0 -p1 |
a51927e1 | 142 | %patch1 -p1 |
a78f7303 | 143 | touch doc/info/{maximahtml.mk,category-macros.texi} src/{clisp,cmucl,gcl}-depends.mk |
a486c981 | 144 | |
88f300a0 | 145 | %patch3 -p1 |
8aad2b3a | 146 | %patch4 -p1 |
147 | %patch5 -p1 | |
27ecc881 | 148 | |
a486c981 | 149 | %build |
150 | %{__aclocal} | |
151 | %{__automake} | |
152 | %{__autoconf} | |
b6298b99 | 153 | %configure \ |
2741c093 | 154 | --enable-clisp \ |
133d8cf7 JR |
155 | --enable-gettext \ |
156 | --with-emacs-prefix=%{_emacs_lispdir}/%{name} | |
2741c093 | 157 | |
203151ae | 158 | # TODO: --enable-lang-de --enable-lang-es --enable-lang-pt --enable-lang-pt_BR --enable-lang-ru |
2741c093 | 159 | # for localized info pages |
a486c981 | 160 | |
161 | %{__make} | |
162 | ||
163 | %install | |
164 | rm -rf $RPM_BUILD_ROOT | |
3831be7f | 165 | |
d907bd06 | 166 | %{__make} install \ |
203151ae JB |
167 | DESTDIR=$RPM_BUILD_ROOT \ |
168 | %{!?with_emacs:emacsdir=/emacs} | |
d907bd06 | 169 | |
170 | rm -f $RPM_BUILD_ROOT%{_infodir}/dir* | |
a486c981 | 171 | |
2741c093 JB |
172 | install -Dp doc/man/ru/maxima.1 $RPM_BUILD_ROOT%{_mandir}/ru/man1/maxima.1 |
173 | ||
174 | %if %{with emacs} | |
175 | install -d $RPM_BUILD_ROOT%{_emacs_lispdir}/site-start.d | |
29fde64e | 176 | install %{SOURCE2} $RPM_BUILD_ROOT%{_emacs_lispdir}/site-start.d |
2741c093 | 177 | %else |
203151ae JB |
178 | %{__rm} -r $RPM_BUILD_ROOT/emacs |
179 | %{__rm} -r $RPM_BUILD_ROOT%{_infodir}/imaxima.info* | |
2741c093 JB |
180 | %endif |
181 | ||
182 | %find_lang %{name} | |
29fde64e | 183 | |
a486c981 | 184 | %clean |
185 | rm -rf $RPM_BUILD_ROOT | |
186 | ||
9856ac96 | 187 | %post -p /sbin/postshell |
b8fe1c77 | 188 | -/usr/sbin/fix-info-dir -c %{_infodir} |
7189a287 | 189 | |
9856ac96 | 190 | %postun -p /sbin/postshell |
b8fe1c77 | 191 | -/usr/sbin/fix-info-dir -c %{_infodir} |
7189a287 | 192 | |
2741c093 JB |
193 | %post xmaxima |
194 | %update_mime_database | |
195 | [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1 | |
a34cc624 | 196 | |
2741c093 JB |
197 | %postun xmaxima |
198 | %update_mime_database | |
199 | [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1 | |
a34cc624 | 200 | |
203151ae JB |
201 | %post -n emacs-maxima-pkg -p /sbin/postshell |
202 | -/usr/sbin/fix-info-dir -c %{_infodir} | |
203 | ||
204 | %postun -n emacs-maxima-pkg -p /sbin/postshell | |
205 | -/usr/sbin/fix-info-dir -c %{_infodir} | |
206 | ||
88f300a0 KK |
207 | %triggerin doc -- %{name} = %{epoch}:%{version} |
208 | if [ -d %{_docdir}/%{name}-doc-%{version} ]; then | |
1d552e05 | 209 | ln -snf %{_docdir}/%{name}-doc-%{version} %{_datadir}/%{name}/%{version}/doc |
88f300a0 KK |
210 | fi |
211 | ||
212 | %triggerun doc -- %{name} = %{epoch}:%{version} | |
213 | rm %{_datadir}/%{name}/%{version}/doc || : | |
214 | ||
215 | %triggerpostun doc -- %{name} = %{epoch}:%{version} | |
216 | if [ -d %{_docdir}/%{name}-doc-%{version} -a \ | |
1d552e05 TP |
217 | -d %{_datadir}/%{name}/%{version} ]; then |
218 | ln -snf %{_docdir}/%{name}-doc-%{version} %{_datadir}/%{name}/%{version}/doc | |
88f300a0 KK |
219 | fi |
220 | ||
2741c093 | 221 | %files -f %{name}.lang |
a486c981 | 222 | %defattr(644,root,root,755) |
203151ae | 223 | %doc AUTHORS COPYING README |
d73f5fe5 KK |
224 | %attr(755,root,root) %{_bindir}/maxima |
225 | %attr(755,root,root) %{_bindir}/rmaxima | |
2741c093 JB |
226 | %dir %{_libdir}/%{name} |
227 | %dir %{_libdir}/%{name}/%{version} | |
2741c093 JB |
228 | %dir %{_libdir}/%{name}/%{version}/binary-clisp |
229 | %attr(755,root,root) %{_libdir}/%{name}/%{version}/binary-clisp/lisp.run | |
230 | %{_libdir}/%{name}/%{version}/binary-clisp/maxima.mem | |
17f2bc25 JB |
231 | %if "%{_libexecdir}" != "%{_libdir}" |
232 | %dir %{_libexecdir}/%{name} | |
233 | %dir %{_libexecdir}/%{name}/%{version} | |
234 | %endif | |
235 | %attr(755,root,root) %{_libexecdir}/%{name}/%{version}/mgnuplot | |
d73f5fe5 KK |
236 | %dir %{_datadir}/%{name} |
237 | %dir %{_datadir}/%{name}/%{version} | |
88f300a0 | 238 | %{_datadir}/%{name}/%{version}/demo |
88f300a0 KK |
239 | %{_datadir}/%{name}/%{version}/share |
240 | %{_datadir}/%{name}/%{version}/tests | |
2741c093 | 241 | %{_mandir}/man1/maxima.1* |
203151ae | 242 | %lang(ru) %{_mandir}/de/man1/maxima.1* |
2741c093 | 243 | %lang(ru) %{_mandir}/ru/man1/maxima.1* |
7189a287 | 244 | %{_infodir}/maxima.info* |
da1eff4f | 245 | %{_infodir}/maxima-index.lisp |
2741c093 JB |
246 | # packages |
247 | %{_infodir}/abs_integrate.info* | |
248 | %{_infodir}/drawutils.info* | |
249 | %{_infodir}/kovacicODE.info* | |
250 | %{_infodir}/logic.info* | |
203151ae | 251 | %{_infodir}/symplectic_ode.info* |
2741c093 JB |
252 | |
253 | %files -n bash-completion-maxima | |
254 | %defattr(644,root,root,755) | |
255 | %{_datadir}/bash-completion/completions/maxima | |
256 | %{_datadir}/bash-completion/completions/rmaxima | |
d73f5fe5 KK |
257 | |
258 | %files xmaxima | |
259 | %defattr(644,root,root,755) | |
260 | %attr(755,root,root) %{_bindir}/xmaxima | |
2741c093 | 261 | %{_datadir}/%{name}/%{version}/xmaxima |
133d8cf7 JR |
262 | %{_desktopdir}/net.sourceforge.maxima.xmaxima.desktop |
263 | %{_datadir}/metainfo/net.sourceforge.maxima.xmaxima.appdata.xml | |
a5afb6de | 264 | %{_infodir}/xmaxima.info* |
2741c093 JB |
265 | %{_datadir}/mime/packages/x-mac.xml |
266 | %{_datadir}/mime/packages/x-maxima-out.xml | |
133d8cf7 JR |
267 | %{_pixmapsdir}/net.sourceforge.maxima.png |
268 | %{_pixmapsdir}/net.sourceforge.maxima.svg | |
2741c093 JB |
269 | %{_pixmapsdir}/text-x-maxima-out.svg |
270 | %{_pixmapsdir}/text-x-maximasession.svg | |
271 | ||
272 | %files -n bash-completion-xmaxima | |
273 | %defattr(644,root,root,755) | |
274 | %{_datadir}/bash-completion/completions/xmaxima | |
88f300a0 | 275 | |
2741c093 | 276 | %if %{with emacs} |
0fb92146 | 277 | %files -n emacs-maxima-pkg |
29fde64e KK |
278 | %defattr(644,root,root,755) |
279 | %{_emacs_lispdir}/%{name} | |
280 | %{_emacs_lispdir}/site-start.d/%{name}-mode-init.el | |
203151ae | 281 | %{_infodir}/imaxima.info* |
2741c093 | 282 | %endif |
29fde64e | 283 | |
88f300a0 KK |
284 | %files doc |
285 | %defattr(644,root,root,755) | |
286 | %{_docdir}/%{name}-doc-%{version} | |
287 | ||
288 | %files src | |
289 | %defattr(644,root,root,755) | |
290 | %{_usrsrc}/maxima-%{version} |