]> git.pld-linux.org Git - packages/octave.git/blob - octave.spec
- rel 4
[packages/octave.git] / octave.spec
1 Summary:        GNU Octave - a high-level language for numerical computations
2 Summary(cs.UTF-8):      GNU Octave - vyšší programovací jazyk pro numerické výpočty
3 Summary(da.UTF-8):      GNU Octave - et højniveausprog for numeriske beregninger
4 Summary(de.UTF-8):      GNU Octave - eine höhere Programmiersprache für nummerische Berechnungen
5 Summary(es.UTF-8):      GNU Octave - lenguaje de alto nivel para cálculos numéricos
6 Summary(fr.UTF-8):      GNU Octave - langage haut niveau pour les calculs numériques
7 Summary(it.UTF-8):      GNU Octave - linguaggio di alto livello per calcoli numerici
8 Summary(ja.UTF-8):      GNU Octave 数値計算用の高級言語
9 Summary(ko.UTF-8):      GNU Octave 산술 계산을 위한 고차원 언어
10 Summary(nb.UTF-8):      GNU Octave - et høynivåspråk for numeriske beregninger
11 Summary(pl.UTF-8):      GNU Octave - język programowania do obliczeń numerycznych
12 Summary(pt.UTF-8):      GNU Octave - uma linguagem de alto nível para cálculos numéricos
13 Summary(pt_BR.UTF-8):   GNU Octave - um programa para cálculo numérico e matricial
14 Summary(ru.UTF-8):      GNU Octave - Язык высокого уровня для выполнения математических расчетов
15 Summary(sv.UTF-8):      GNU Octave - ett högninvåspråk för numeriska beräkningar
16 Summary(zh_CN.UTF-8):   GNU Octave - 用于数字计算的高级语言。
17 Name:           octave
18 Version:        3.0.3
19 Release:        4
20 Epoch:          2
21 License:        GPL v3+
22 Group:          Applications/Math
23 Source0:        ftp://ftp.octave.org/pub/octave/%{name}-%{version}.tar.bz2
24 # Source0-md5:  38d258d60242cf4844e3c4350691ccff
25 Source1:        %{name}.desktop
26 Patch0:         %{name}-info.patch
27 Patch1:         %{name}-as_needed.patch
28 Patch2:         %{name}-ncurses.patch
29 Patch3:         %{name}-gcc.patch
30 URL:            http://www.octave.org/
31 BuildRequires:  AMD-devel
32 BuildRequires:  CAMD-devel
33 BuildRequires:  CCOLAMD-devel
34 BuildRequires:  CHOLMOD-devel
35 BuildRequires:  COLAMD-devel
36 BuildRequires:  CXSparse-devel
37 BuildRequires:  UMFPACK-devel
38 BuildRequires:  bison >= 1.31
39 BuildRequires:  blas-devel
40 BuildRequires:  curl-devel
41 BuildRequires:  fftw3-devel
42 BuildRequires:  flex >= 2.5.4
43 BuildRequires:  gcc-fortran
44 BuildRequires:  glpk-devel
45 BuildRequires:  gperf >= 3.0.1
46 BuildRequires:  hdf5-devel >= 1.6.0
47 BuildRequires:  lapack-devel >= 3.1.1-3
48 BuildRequires:  libstdc++-devel
49 BuildRequires:  ncurses-devel >= 5.0
50 BuildRequires:  qhull-devel
51 BuildRequires:  readline-devel
52 BuildRequires:  texinfo-texi2dvi
53 BuildRequires:  zlib-devel
54 Requires(post,postun):  /sbin/ldconfig
55 Requires:       gnuplot
56 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57
58 %description
59 GNU Octave is a high-level language, primarily intended for numerical
60 computations. It provides a convenient command line interface for
61 solving linear and nonlinear problems numerically, and for performing
62 other numerical experiments using a language that is mostly compatible
63 with Matlab. It may also be used as a batch-oriented language.
64
65 Octave has extensive tools for solving common numerical linear algebra
66 problems, finding the roots of nonlinear equations, integrating
67 ordinary functions, manipulating polynomials, and integrating ordinary
68 differential and differential-algebraic equations. It is easily
69 extensible and customizable via user-defined functions written in
70 Octave's own language, or using dynamically loaded modules written in
71 C++, C, Fortran, or other languages.
72
73 %description -l cs.UTF-8
74 GNU Octave je vyšší programovací jazyk, primárně určený pro numerické
75 výpočty. Poskytuje pohodlné rozhraní příkazového řádku pro numerické
76 řešení lineárních a nelineárních problémů a pro provádění jiných
77 numerických experimentů za používání jazyku, který je téměř plně
78 kompatibilní s programem Matlab. Může být používán i jako dávkový
79 jazyk.
80
81 Octave má rozsáhlé nástroje pro řešení obvyklých numerických úloh v
82 lineární algebře, nalezení kořenů nelineárních rovnic, integrování
83 běžných funkcí, polynomiální manipulace, integrování základních
84 diferenciálních a algebraicko-diferenciálních rovnic. Je jednoduše
85 rozšiřitelný a přizpůsobitelný pomocí uživatelsky definovaných funkcí
86 napsaných v jeho vlastním jazyku. Může používat dynamicky zaváděné
87 moduly napsané v jazycích C++, C, Fortran a jiných.
88
89 %description -l da.UTF-8
90 GNU Octave er et høgniveausprog, hovedsakligen beregnet til for
91 numeriska beregningar. Det har et bekvæmt kommandoradsgrænseflade for
92 at løsa linjæra og ickelinjæra problem numeriskt, og for at utføra
93 andra numeriske experiment med et sprog som i stora dele er
94 kompatibelt med Matlab. Det kan også bruges som et sprog for satsvis
95 bearbejdning.
96
97 Octave har omfattende værktøj for at løsa almindelige problem inom
98 numerisk linjær algebra, finde røtter for ickelinjæra ekvationer,
99 integrere normala funktioner, behandle polynom, og integrere ordinære
100 differential og differentialalgebraiska ekvationer. Det er let at
101 utvidga og anpassa via brugerdefinierede funktioner skrivna i Octaves
102 eget sprog, og via dynamisk laddade moduler skriven i C++, C, Fortran,
103 eller andra sprog.
104
105 %description -l de.UTF-8
106 GNU Octave ist eine High-Level-Programmiersprache, die hauptsächlich
107 für nummerische Berechnungen vorgesehen ist. Sie verfügt über eine
108 benutzerfreundliche Befehlszeilenoberfläche zur nummerischen Lösung
109 von linearen und nichtlinearen Aufgaben und zum Ausführen weiterer
110 nummerischer Experimente unter Verwendung einer Programmiersprache,
111 die größtenteils mit Matlab kompatibel ist. Die Programmiersprache
112 kann auch als Batch-orientierte Sprache verwendet werden.
113
114 Octave verfügt über umfangreiche Tools zum Lösen allgemeiner
115 nummerischer linearer algebraischer Aufgaben, zum Ermitteln der
116 Lösungen von nichtlinearen Gleichungen, zum Integrieren gewöhnlicher
117 Funktionen, zum Bearbeiten von Polynomen und zum Integrieren
118 gewöhnlicher Differential- und Differential-algebraischer Gleichungen.
119 Octave kann mit benutzerdefinierten Funktionen, die in der speziellen
120 Programmiersprache von Octave geschrieben sind, oder mit dynamisch
121 geladenen, in C++, C, Fortran oder einer anderen Programmiersprache
122 geschriebenen Modulen erweitert und angepasst werden.
123
124 %description -l es.UTF-8
125 GNU Octave lenguaje de alto nivel, pensado para cálculos numéricos.
126 Provee un interfaz de línea de comando para resolver problemas
127 lineales y no lineales numéricamente, y para realizar otros
128 experimentos numéricos usando un lenguaje casi compatible con Matlab.
129 Puede utilizarse también fuera de la línea de comandos.
130
131 Octave tiene herramientas para resolver problemas numéricos de algebra
132 lineal común, encontrar raices de ecuaciones no-lineales, integración
133 de funciones ordinarias, manipulación de polinomios, e integrar
134 ecuaciones diferenciales ordinarias y algebraícas diferenciales. Es
135 facilmente extensible y configurable via funciones de usuario escritas
136 en el lenguaje Octave, o usando módulos dinámicos cargables escritos
137 en C++, C, Fortran u otros lenguajes.
138
139 %description -l fr.UTF-8
140 GNU Octave est un langage haut niveau conçu pour le calcul numérique.
141 Il offre une interface de ligne de commande pratique permettant de
142 résoudre numériquement des problèmes linéaires et non linéaires et
143 d'effectuer d'autres expériences numériques à l'aide d'un langage
144 presque totalement compatible avec Matlab. Il peut également être
145 utilisé comme langage à orientation par lots.
146
147 Octave comporte des outils étendus permettant de résoudre des
148 problèmes communs d'algèbre linéaire numérique, en trouvant les
149 racines d'équations non linéaires, en intégrant des fonctions
150 ordinaires, en manipulant des polynômes et en intégrant des équations
151 différentielles ordinaires et différentielles algébriques. Il est
152 facilement extensible et personnalisable au moyen de fonctions
153 définies par l'utilisateur, écrites dans le langage d'Octave, ou à
154 l'aide de modules chargés dynamiquement, écrits en C++, C, Fortran ou
155 autres langages.
156
157 %description -l it.UTF-8
158 GNU Octave è un linguaggio di alto livello per il calcolo numerico.
159 Fornisce una interfaccia basata sulla linea di comando per la
160 risoluzione numerica di problemi lineari e non lineari e per eseguire
161 altri esperimenti numerici usando un linguaggio per lo più compatibile
162 con Matlab. Può inoltre essere utilizzato come linguaggio orientato al
163 batch.
164
165 Octave possiede vari tool per risolvere problemi di algebra lineare,
166 per la ricerca di radici di equazioni non lineari, per il calcolo di
167 integrali di funzioni, per l'elaborazione di polinomi, per le
168 equazioni differenziali ordinarie e algebriche. Può essere facilmente
169 esteso e personalizzato tramite nuove funzioni definite dall'utente e
170 scritte nel linguaggio di Octave o tramite moduli caricati in modo
171 dinamico scritti in C, C++, Fortran o altri linguaggi.
172
173 %description -l ja.UTF-8
174 GNU Octave は、主として数値計算を目的とした高レベル言語です。
175 GNU Octave は、線型/非線型問題を数値的に解いたり、Matlab
176 との大部分の互換性を持った言語を使用してその他の数値的実験を行
177 ったりするための便利なコマンドラインインターフェイスを提供します。
178 バッチ指向の言語として使用することもできます。Octave は、
179 共通の数値線型代数問題を解いたり、非線型方程式の根を見つけたり、
180 通常の関数を積分したり、多項式を操作したり、常微分方程式や代数
181 微分方程式を積分したりするための広範なツールを備えています。Octave
182 独自の言語で書かれたユーザー定義の関数や、C++、C、Fortlan、その他の
183 言語で書かれた動的にロードされるモジュールを使用すれば、容易に拡張
184 およびカスタマイズすることができます。
185
186 %description -l pl.UTF-8
187 GNU Octave jest językiem programowania wysokiego poziomu przeznaczonym
188 głównie do obliczeń numerycznych. Octave jest w dużym stopniu
189 kompatybilny z językiem Matlab. Pracować można wprost z linii poleceń
190 lub uruchamiać programy stworzone za pomocą zewnętrznego edytora.
191
192 %description -l pt.UTF-8
193 O Octave da GNU é uma linguagem de alto nível, vocacionada
194 principalmente para o cálculo numérico. Oferece uma interface de linha
195 de comandos para resolver problemas lineares e não-lineares
196 numericamente, e para realizar outras experiências numéricas usando
197 uma linguagem que é relativamente compatível com o Matlab. Pode também
198 ser usado como uma linguagem orientada por lotes.
199
200 O Octave tem ferramentas extensivas para resolver problemas comuns de
201 álgebra linear, descobrir as raizes de equações não-lineares, integrar
202 funções ordinárias, manipular polinómios e integrar equações
203 diferenciais ordinárias e diferenciais algébricas. É facilmente
204 extensível e personalizável através de funções definidas pelo
205 utilizador, escritas na própria linguagem do Octave, ou usando módulos
206 carregados dinamicamente e feitos em C, C++, Fortran ou outras
207 linguagens."
208
209 %description -l pt_BR.UTF-8
210 GNU Octave - Um programa de cálculo numérico e matricial. Possui
211 linguagem de alto nível e ambiente interativo para computação numérica
212 semelhantes ao do Matlab.
213
214 %description -l ru.UTF-8
215 GNU Octave - это язык высокого уровня, предназначенный для выполнения
216 математических вычислений. Он предоставляет удобный коммандный
217 интерфейс для решения линейных и нелинейных математических задач и для
218 проведения других арифметических экспериментов, используя язык, в
219 большенстве случаев совместимый с Mathlab.
220
221 Кроме того, Octave может использоваться для пакетной обработки и имеет
222 средства расширения для решения линейных алгебраических задач,
223 нахождения корней нелинейных уравнений, интегрирование функций, работу
224 с полиномами и решение различных дифференциальных уравнений. Язык
225 можно легко расширить при помощи собственно языка Octave или используя
226 динамически загружаемые модули, написанные на языках C, C++, Фортран и
227 др.
228
229 %description -l sv.UTF-8
230 GNU Octave är ett högnivåspråk, huvudsakligen avsett för numeriska
231 beräkningar. Det har ett bekvämt kommandoradsgränssnitt för att lösa
232 linjära och ickelinjära problem numeriskt, och för att utföra andra
233 numeriska experiment med ett språk som i stora delar är kompatibelt
234 med Matlab. Det kan också användas som ett språk för satsvis
235 bearbetning.
236
237 Octave har omfattande verktyg för att lösa vanliga problem inom
238 numerisk linjär algebra, hitta rötter för ickelinjära ekvationer,
239 integrera normala funktioner, hantera polynom, och integrera ordinära
240 differential och differentialalgebraiska ekvationer. Det är lätt att
241 utvidga och anpassa via användardefinierade funktioner skrivna i
242 Octaves eget språk, och via dynamiskt laddade moduler skrivan i C++,
243 C, Fortran, eller andra språk.
244
245 %package devel
246 Summary:        Header files and devel docs for Octave
247 Summary(pl.UTF-8):      Pliki nagłówkowe i dodatkowa dokumentacja Octave
248 Group:          Development/Libraries
249 Requires:       %{name} = %{epoch}:%{version}-%{release}
250 Requires:       hdf5-devel >= 1.6.0
251
252 %description devel
253 Header files and devel docs for Octave.
254
255 %description devel -l pl.UTF-8
256 Pliki nagłówkowe i dodatkowa dokumentacja Octave.
257
258 %package -n xemacs-octave-mode-pkg
259 Summary:        XEmacs mode for Octave
260 Summary(pl.UTF-8):      Tryb edycji plików Octave dla XEmacsa
261 Group:          Applications/Editors/Emacs
262 Requires:       xemacs
263
264 %description -n xemacs-octave-mode-pkg
265 XEmacs mode for Octave.
266
267 %description -n xemacs-octave-mode-pkg -l pl.UTF-8
268 Tryb edycji plików Octave dla XEmacsa.
269
270 %prep
271 %setup -q
272 %patch0 -p1
273 %patch1 -p1
274 %patch2 -p1
275 %patch3 -p1
276
277 %build
278 cp -f /usr/share/automake/config.sub .
279 CFLAGS="%{rpmcflags} -I/usr/include/ncurses" ; export CFLAGS
280 CPPFLAGS="%{rpmcflags} -I/usr/include/ncurses -DH5_USE_16_API" ; export CPPFLAGS
281 %{__autoconf}
282 %configure \
283         --with-f77=gfortran \
284         --enable-dl \
285         --enable-shared \
286         --enable-static=no \
287         --enable-rpath \
288         --enable-lite-kernel
289
290 %{__make}
291 %{__make} -C doc/faq Octave-FAQ.info
292 %{__make} -C doc/liboctave liboctave.info
293
294 %install
295 rm -rf $RPM_BUILD_ROOT
296 install -d $RPM_BUILD_ROOT{%{_infodir},%{_desktopdir}}
297
298 %{__make} install \
299         DESTDIR=$RPM_BUILD_ROOT \
300         octincludedir=%{_includedir} \
301         octlibdir=%{_libdir}
302
303 ln -sf %{_includedir}/%{name} $RPM_BUILD_ROOT%{_includedir}/%{name}-%{version}
304
305 install doc/liboctave/*.info* $RPM_BUILD_ROOT%{_infodir}
306 install doc/faq/*.info* $RPM_BUILD_ROOT%{_infodir}
307 install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
308
309 # site dirs
310 install -d $RPM_BUILD_ROOT$(./octave-config --oct-site-dir)
311 install -d $RPM_BUILD_ROOT$(./octave-config --m-site-dir)
312
313 # Create directory for add-on packages
314 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/packages
315 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/packages
316 touch $RPM_BUILD_ROOT%{_datadir}/%{name}/octave_packages
317
318 ## xemacs-octave-mode-pkg
319 install -d $RPM_BUILD_ROOT%{_datadir}/xemacs-packages/lisp/octave-mode
320 cp -a emacs/*.el $RPM_BUILD_ROOT%{_datadir}/xemacs-packages/lisp/octave-mode
321 # add otags script or not (additional Requires: ctags)???
322 #cp -a emacs/otags $RPM_BUILD_ROOT%{_bindir}
323 cat <<'EOF' >$RPM_BUILD_ROOT%{_datadir}/xemacs-packages/lisp/octave-mode/auto-autoloads.el
324 (autoload 'run-octave "octave-inf" nil t)
325 (autoload 'octave-help "octave-hlp" nil t)
326 (autoload 'octave-mode "octave-mod" nil t)
327 (setq auto-mode-alist
328       (cons '("\\.m$" . octave-mode) auto-mode-alist))
329 EOF
330
331 %clean
332 rm -rf $RPM_BUILD_ROOT
333
334 %post   -p /sbin/postshell
335 /sbin/ldconfig
336 -/usr/sbin/fix-info-dir -c %{_infodir}
337
338 %postun -p /sbin/postshell
339 /sbin/ldconfig
340 -/usr/sbin/fix-info-dir -c %{_infodir}
341
342 %post   devel -p /sbin/postshell
343 -/usr/sbin/fix-info-dir -c %{_infodir}
344
345 %postun devel -p /sbin/postshell
346 -/usr/sbin/fix-info-dir -c %{_infodir}
347
348 %files
349 %defattr(644,root,root,755)
350 %doc ChangeLog NEWS THANKS PROJECTS
351 %doc emacs examples doc/faq/*.html doc/interpreter/HTML
352 %attr(755,root,root) %{_bindir}/*
353 %attr(755,root,root) %{_libdir}/libcruft.so.*.*.*
354 %attr(755,root,root) %{_libdir}/liboctave.so.*.*.*
355 %attr(755,root,root) %{_libdir}/liboctinterp.so.*.*.*
356 %{_libdir}/octave
357 %{_infodir}/octave.info*
358 %{_infodir}/Octave-FAQ.info*
359 %{_mandir}/man1/*
360 %{_datadir}/octave
361 %{_desktopdir}/*.desktop
362
363 %files devel
364 %defattr(644,root,root,755)
365 %doc doc/refcard/refcard{-a4,}.* doc/liboctave/HTML
366 %attr(755,root,root) %{_libdir}/libcruft.so
367 %attr(755,root,root) %{_libdir}/liboctave.so
368 %attr(755,root,root) %{_libdir}/liboctinterp.so
369 %{_includedir}/%{name}*
370 %{_infodir}/liboctave.info*
371
372 %files -n xemacs-octave-mode-pkg
373 %defattr(644,root,root,755)
374 %{_datadir}/xemacs-packages/lisp/*
This page took 0.063162 seconds and 3 git commands to generate.