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