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