]>
Commit | Line | Data |
---|---|---|
b50c99e2 JB |
1 | # |
2 | # Conditional build: | |
ea43cc24 | 3 | %bcond_without openmp # OpenMP multi-threading |
b50c99e2 JB |
4 | %bcond_with llvm # LLVM based JIT compiler |
5 | %bcond_without gui # Qt GUI | |
b41b0e23 | 6 | %bcond_with qt4 # Qt4 instead of Qt5 |
b50c99e2 JB |
7 | %bcond_without java # Java interface |
8 | # | |
cfeccd1e | 9 | Summary: GNU Octave - a high-level language for numerical computations |
0ecc96f6 ER |
10 | Summary(cs.UTF-8): GNU Octave - vyšší programovací jazyk pro numerické výpočty |
11 | Summary(da.UTF-8): GNU Octave - et højniveausprog for numeriske beregninger | |
12 | Summary(de.UTF-8): GNU Octave - eine höhere Programmiersprache für nummerische Berechnungen | |
13 | Summary(es.UTF-8): GNU Octave - lenguaje de alto nivel para cálculos numéricos | |
14 | Summary(fr.UTF-8): GNU Octave - langage haut niveau pour les calculs numériques | |
15 | Summary(it.UTF-8): GNU Octave - linguaggio di alto livello per calcoli numerici | |
16 | Summary(ja.UTF-8): GNU Octave 数値計算用の高級言語 | |
17 | Summary(ko.UTF-8): GNU Octave 산술 계산을 위한 고차원 언어 | |
18 | Summary(nb.UTF-8): GNU Octave - et høynivåspråk for numeriske beregninger | |
19 | Summary(pl.UTF-8): GNU Octave - język programowania do obliczeń numerycznych | |
20 | Summary(pt.UTF-8): GNU Octave - uma linguagem de alto nível para cálculos numéricos | |
21 | Summary(pt_BR.UTF-8): GNU Octave - um programa para cálculo numérico e matricial | |
22 | Summary(ru.UTF-8): GNU Octave - Язык высокого уровня для выполнения математических расчетов | |
23 | Summary(sv.UTF-8): GNU Octave - ett högninvåspråk för numeriska beräkningar | |
24 | Summary(zh_CN.UTF-8): GNU Octave - 用于数字计算的高级语言。 | |
3d5955ae | 25 | Name: octave |
523f4b14 JB |
26 | Version: 4.4.1 |
27 | Release: 1 | |
ad79357e | 28 | Epoch: 2 |
da117854 | 29 | License: GPL v3+ |
3d5955ae | 30 | Group: Applications/Math |
523f4b14 JB |
31 | Source0: https://ftp.gnu.org/gnu/octave/%{name}-%{version}.tar.lz |
32 | # Source0-md5: e0d9556caafd83e4276af49b06c5c994 | |
5c330fd0 | 33 | Source1: %{name}.desktop |
c7ad6272 | 34 | Patch0: %{name}-info.patch |
489a52fa | 35 | Patch1: %{name}-build.patch |
94d732b6 | 36 | Patch2: %{name}-suitesparse.patch |
5a8e2ead | 37 | Patch3: octdirs.patch |
23702b6d JB |
38 | Patch4: %{name}-c++.patch |
39 | Patch5: %{name}-no-tex-docs.patch | |
ebfdd94c | 40 | Patch6: %{name}-qthelp-texinfo7.patch |
5fa50ca1 | 41 | URL: http://www.octave.org/ |
ebfdd94c | 42 | # TODO: SUNDIALS NVECTOR, IDA libraries |
94d732b6 | 43 | BuildRequires: AMD-devel >= 2.4.0 |
d0814e56 JR |
44 | BuildRequires: CAMD-devel |
45 | BuildRequires: CCOLAMD-devel | |
94d732b6 | 46 | BuildRequires: CHOLMOD-devel >= 2.2.0 |
d0814e56 | 47 | BuildRequires: COLAMD-devel |
ebfdd94c | 48 | # CXSparse >= 2.2, but package has version 0 |
d0814e56 | 49 | BuildRequires: CXSparse-devel |
a195d247 | 50 | BuildRequires: GraphicsMagick-c++-devel |
ebfdd94c | 51 | BuildRequires: KLU-devel |
ea43cc24 JB |
52 | BuildRequires: Mesa-libOSMesa-devel >= 9.0.0 |
53 | BuildRequires: OpenGL-devel | |
54 | BuildRequires: OpenGL-GLU-devel | |
84904e40 | 55 | BuildRequires: UMFPACK-devel |
ebfdd94c | 56 | # arpack-ng >= 3.3.0 |
3ec70e67 | 57 | BuildRequires: arpack-devel >= 2.1-8 |
ea43cc24 | 58 | BuildRequires: autoconf >= 2.63 |
2e65311a | 59 | BuildRequires: automake >= 1:1.11 |
df98f95a | 60 | #BuildRequires: bison >= 1.31 |
84904e40 | 61 | BuildRequires: blas-devel |
ebfdd94c | 62 | BuildRequires: bzip2-devel |
84904e40 | 63 | BuildRequires: curl-devel |
ea43cc24 | 64 | BuildRequires: desktop-file-utils |
57de1412 | 65 | BuildRequires: fftw3-devel |
3ec70e67 | 66 | BuildRequires: fftw3-single-devel |
b50c99e2 JB |
67 | #BuildRequires: flex >= 2.5.4 |
68 | BuildRequires: fltk-devel | |
3ca7f614 | 69 | BuildRequires: fltk-gl-devel |
b50c99e2 | 70 | BuildRequires: fontconfig-devel |
ebfdd94c | 71 | # pkgconfig(freetype2) >= 9.03 |
94d732b6 | 72 | BuildRequires: freetype-devel >= 2.0.9 |
3ca7f614 | 73 | BuildRequires: gcc-fortran >= 6:4.0 |
b50c99e2 | 74 | BuildRequires: gl2ps-devel |
3ca7f614 | 75 | BuildRequires: glpk-devel >= 4.14 |
b50c99e2 | 76 | BuildRequires: gnuplot |
df98f95a | 77 | #BuildRequires: gperf >= 3.0.1 |
5201de26 | 78 | BuildRequires: hdf5-devel >= 1.6.0 |
f78a5c3e | 79 | %{?with_java:BuildRequires: jdk >= 1.5} |
8e980008 | 80 | BuildRequires: lapack-devel >= 3.1.1-3 |
0c7a7181 | 81 | %{?with_openmp:BuildRequires: libgomp-devel} |
ea43cc24 | 82 | BuildRequires: libsndfile-devel |
ebfdd94c | 83 | BuildRequires: libstdc++-devel >= 6:4.7 |
2e65311a | 84 | BuildRequires: libtool >= 2:2.2.2 |
b50c99e2 | 85 | %{?with_llvm:BuildRequires: llvm-devel} |
523f4b14 | 86 | BuildRequires: lzip |
214cc87a | 87 | BuildRequires: ncurses-devel >= 5.0 |
3ec70e67 | 88 | BuildRequires: pcre-devel |
ea43cc24 | 89 | BuildRequires: perl-base |
b50c99e2 | 90 | BuildRequires: pkgconfig |
ea43cc24 | 91 | BuildRequires: portaudio-devel |
6b967a72 | 92 | BuildRequires: qhull-devel >= 2011.1 |
ebfdd94c JB |
93 | # this octave version doesn't check for libqhull_r instead of libqhull |
94 | BuildRequires: qhull-devel < 2020 | |
489a52fa | 95 | BuildRequires: qrupdate-devel |
256970ce | 96 | BuildRequires: readline-devel |
df98f95a | 97 | BuildRequires: sed >= 4.0 |
523f4b14 | 98 | BuildRequires: tar >= 1:1.22 |
b50c99e2 | 99 | BuildRequires: texinfo |
53637031 | 100 | BuildRequires: texinfo-texi2dvi |
3ca7f614 | 101 | BuildRequires: xorg-lib-libX11-devel |
b50c99e2 | 102 | BuildRequires: xorg-lib-libXft-devel |
09469247 | 103 | BuildRequires: zlib-devel |
b41b0e23 JB |
104 | %if %{with gui} |
105 | %if %{with qt4} | |
106 | BuildRequires: QtCore-devel >= 4 | |
107 | BuildRequires: QtGui-devel >= 4 | |
108 | BuildRequires: QtNetwork-devel >= 4 | |
109 | BuildRequires: qscintilla2-qt4-devel >= 2.6.0 | |
110 | BuildRequires: qt4-assistant >= 4 | |
111 | BuildRequires: qt4-build >= 4 | |
112 | BuildRequires: qt4-linguist >= 4 | |
113 | %else | |
114 | BuildRequires: Qt5Core-devel >= 5 | |
115 | BuildRequires: Qt5Gui-devel >= 5 | |
116 | BuildRequires: Qt5Help-devel >= 5 | |
117 | BuildRequires: Qt5Network-devel >= 5 | |
118 | BuildRequires: Qt5PrintSupport-devel >= 5 | |
119 | BuildRequires: Qt5Widgets-devel >= 5 | |
120 | BuildRequires: qscintilla2-qt5-devel >= 2.6.0 | |
121 | BuildRequires: qt5-assistant >= 5 | |
122 | BuildRequires: qt5-build >= 5 | |
123 | BuildRequires: qt5-linguist >= 5 | |
124 | %endif | |
125 | %endif | |
09469247 | 126 | Requires(post,postun): /sbin/ldconfig |
94d732b6 JB |
127 | Requires: AMD >= 2.4.0 |
128 | Requires: CHOLMOD >= 2.2.0 | |
129 | Requires: freetype >= 2.0.9 | |
3d5955ae | 130 | Requires: gnuplot |
00574c69 | 131 | Suggests: GraphicsMagick |
b3bee75d | 132 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
15d9cea1 | 133 | |
ebfdd94c | 134 | %define api_dir api-v52 |
b50c99e2 | 135 | |
15d9cea1 | 136 | %description |
137 | GNU Octave is a high-level language, primarily intended for numerical | |
2e344e40 | 138 | computations. It provides a convenient command line interface for |
139 | solving linear and nonlinear problems numerically, and for performing | |
140 | other numerical experiments using a language that is mostly compatible | |
141 | with Matlab. It may also be used as a batch-oriented language. | |
15d9cea1 | 142 | |
143 | Octave has extensive tools for solving common numerical linear algebra | |
2e344e40 | 144 | problems, finding the roots of nonlinear equations, integrating |
145 | ordinary functions, manipulating polynomials, and integrating ordinary | |
146 | differential and differential-algebraic equations. It is easily | |
147 | extensible and customizable via user-defined functions written in | |
148 | Octave's own language, or using dynamically loaded modules written in | |
149 | C++, C, Fortran, or other languages. | |
15d9cea1 | 150 | |
227fa4a8 JR |
151 | %description -l cs.UTF-8 |
152 | GNU Octave je vyšší programovací jazyk, primárně určený pro numerické | |
153 | výpočty. Poskytuje pohodlné rozhraní příkazového řádku pro numerické | |
154 | řešení lineárních a nelineárních problémů a pro provádění jiných | |
155 | numerických experimentů za používání jazyku, který je téměř plně | |
156 | kompatibilní s programem Matlab. Může být používán i jako dávkový | |
cfeccd1e | 157 | jazyk. |
158 | ||
227fa4a8 JR |
159 | Octave má rozsáhlé nástroje pro řešení obvyklých numerických úloh v |
160 | lineární algebře, nalezení kořenů nelineárních rovnic, integrování | |
161 | běžných funkcí, polynomiální manipulace, integrování základních | |
162 | diferenciálních a algebraicko-diferenciálních rovnic. Je jednoduše | |
163 | rozšiřitelný a přizpůsobitelný pomocí uživatelsky definovaných funkcí | |
164 | napsaných v jeho vlastním jazyku. Může používat dynamicky zaváděné | |
165 | moduly napsané v jazycích C++, C, Fortran a jiných. | |
166 | ||
167 | %description -l da.UTF-8 | |
168 | GNU Octave er et høgniveausprog, hovedsakligen beregnet til for | |
169 | numeriska beregningar. Det har et bekvæmt kommandoradsgrænseflade for | |
170 | at løsa linjæra og ickelinjæra problem numeriskt, og for at utføra | |
cfeccd1e | 171 | andra numeriske experiment med et sprog som i stora dele er |
227fa4a8 | 172 | kompatibelt med Matlab. Det kan også bruges som et sprog for satsvis |
cfeccd1e | 173 | bearbejdning. |
174 | ||
227fa4a8 JR |
175 | Octave har omfattende værktøj for at løsa almindelige problem inom |
176 | numerisk linjær algebra, finde røtter for ickelinjæra ekvationer, | |
177 | integrere normala funktioner, behandle polynom, og integrere ordinære | |
cfeccd1e | 178 | differential og differentialalgebraiska ekvationer. Det er let at |
179 | utvidga og anpassa via brugerdefinierede funktioner skrivna i Octaves | |
180 | eget sprog, og via dynamisk laddade moduler skriven i C++, C, Fortran, | |
181 | eller andra sprog. | |
182 | ||
227fa4a8 JR |
183 | %description -l de.UTF-8 |
184 | GNU Octave ist eine High-Level-Programmiersprache, die hauptsächlich | |
185 | für nummerische Berechnungen vorgesehen ist. Sie verfügt über eine | |
186 | benutzerfreundliche Befehlszeilenoberfläche zur nummerischen Lösung | |
187 | von linearen und nichtlinearen Aufgaben und zum Ausführen weiterer | |
cfeccd1e | 188 | nummerischer Experimente unter Verwendung einer Programmiersprache, |
227fa4a8 | 189 | die größtenteils mit Matlab kompatibel ist. Die Programmiersprache |
cfeccd1e | 190 | kann auch als Batch-orientierte Sprache verwendet werden. |
191 | ||
227fa4a8 | 192 | Octave verfügt über umfangreiche Tools zum Lösen allgemeiner |
cfeccd1e | 193 | nummerischer linearer algebraischer Aufgaben, zum Ermitteln der |
227fa4a8 | 194 | Lösungen von nichtlinearen Gleichungen, zum Integrieren gewöhnlicher |
cfeccd1e | 195 | Funktionen, zum Bearbeiten von Polynomen und zum Integrieren |
227fa4a8 | 196 | gewöhnlicher Differential- und Differential-algebraischer Gleichungen. |
cfeccd1e | 197 | Octave kann mit benutzerdefinierten Funktionen, die in der speziellen |
198 | Programmiersprache von Octave geschrieben sind, oder mit dynamisch | |
199 | geladenen, in C++, C, Fortran oder einer anderen Programmiersprache | |
200 | geschriebenen Modulen erweitert und angepasst werden. | |
201 | ||
227fa4a8 JR |
202 | %description -l es.UTF-8 |
203 | GNU Octave lenguaje de alto nivel, pensado para cálculos numéricos. | |
204 | Provee un interfaz de línea de comando para resolver problemas | |
205 | lineales y no lineales numéricamente, y para realizar otros | |
206 | experimentos numéricos usando un lenguaje casi compatible con Matlab. | |
207 | Puede utilizarse también fuera de la línea de comandos. | |
208 | ||
209 | Octave tiene herramientas para resolver problemas numéricos de algebra | |
210 | lineal común, encontrar raices de ecuaciones no-lineales, integración | |
211 | de funciones ordinarias, manipulación de polinomios, e integrar | |
212 | ecuaciones diferenciales ordinarias y algebraícas diferenciales. Es | |
cfeccd1e | 213 | facilmente extensible y configurable via funciones de usuario escritas |
227fa4a8 | 214 | en el lenguaje Octave, o usando módulos dinámicos cargables escritos |
cfeccd1e | 215 | en C++, C, Fortran u otros lenguajes. |
216 | ||
227fa4a8 JR |
217 | %description -l fr.UTF-8 |
218 | GNU Octave est un langage haut niveau conçu pour le calcul numérique. | |
cfeccd1e | 219 | Il offre une interface de ligne de commande pratique permettant de |
227fa4a8 JR |
220 | résoudre numériquement des problèmes linéaires et non linéaires et |
221 | d'effectuer d'autres expériences numériques à l'aide d'un langage | |
222 | presque totalement compatible avec Matlab. Il peut également être | |
223 | utilisé comme langage à orientation par lots. | |
224 | ||
225 | Octave comporte des outils étendus permettant de résoudre des | |
226 | problèmes communs d'algèbre linéaire numérique, en trouvant les | |
227 | racines d'équations non linéaires, en intégrant des fonctions | |
228 | ordinaires, en manipulant des polynômes et en intégrant des équations | |
229 | différentielles ordinaires et différentielles algébriques. Il est | |
cfeccd1e | 230 | facilement extensible et personnalisable au moyen de fonctions |
227fa4a8 JR |
231 | définies par l'utilisateur, écrites dans le langage d'Octave, ou à |
232 | l'aide de modules chargés dynamiquement, écrits en C++, C, Fortran ou | |
cfeccd1e | 233 | autres langages. |
234 | ||
227fa4a8 JR |
235 | %description -l it.UTF-8 |
236 | GNU Octave è un linguaggio di alto livello per il calcolo numerico. | |
cfeccd1e | 237 | Fornisce una interfaccia basata sulla linea di comando per la |
238 | risoluzione numerica di problemi lineari e non lineari e per eseguire | |
227fa4a8 JR |
239 | altri esperimenti numerici usando un linguaggio per lo più compatibile |
240 | con Matlab. Può inoltre essere utilizzato come linguaggio orientato al | |
cfeccd1e | 241 | batch. |
242 | ||
243 | Octave possiede vari tool per risolvere problemi di algebra lineare, | |
244 | per la ricerca di radici di equazioni non lineari, per il calcolo di | |
245 | integrali di funzioni, per l'elaborazione di polinomi, per le | |
227fa4a8 | 246 | equazioni differenziali ordinarie e algebriche. Può essere facilmente |
cfeccd1e | 247 | esteso e personalizzato tramite nuove funzioni definite dall'utente e |
248 | scritte nel linguaggio di Octave o tramite moduli caricati in modo | |
249 | dinamico scritti in C, C++, Fortran o altri linguaggi. | |
250 | ||
227fa4a8 JR |
251 | %description -l ja.UTF-8 |
252 | GNU Octave は、主として数値計算を目的とした高レベル言語です。 | |
253 | GNU Octave は、線型/非線型問題を数値的に解いたり、Matlab | |
254 | との大部分の互換性を持った言語を使用してその他の数値的実験を行 | |
255 | ったりするための便利なコマンドラインインターフェイスを提供します。 | |
256 | バッチ指向の言語として使用することもできます。Octave は、 | |
257 | 共通の数値線型代数問題を解いたり、非線型方程式の根を見つけたり、 | |
258 | 通常の関数を積分したり、多項式を操作したり、常微分方程式や代数 | |
259 | 微分方程式を積分したりするための広範なツールを備えています。Octave | |
260 | 独自の言語で書かれたユーザー定義の関数や、C++、C、Fortlan、その他の | |
261 | 言語で書かれた動的にロードされるモジュールを使用すれば、容易に拡張 | |
262 | およびカスタマイズすることができます。 | |
263 | ||
264 | %description -l pl.UTF-8 | |
265 | GNU Octave jest językiem programowania wysokiego poziomu przeznaczonym | |
266 | głównie do obliczeń numerycznych. Octave jest w dużym stopniu | |
267 | kompatybilny z językiem Matlab. Pracować można wprost z linii poleceń | |
268 | lub uruchamiać programy stworzone za pomocą zewnętrznego edytora. | |
269 | ||
270 | %description -l pt.UTF-8 | |
271 | O Octave da GNU é uma linguagem de alto nível, vocacionada | |
272 | principalmente para o cálculo numérico. Oferece uma interface de linha | |
273 | de comandos para resolver problemas lineares e não-lineares | |
274 | numericamente, e para realizar outras experiências numéricas usando | |
275 | uma linguagem que é relativamente compatível com o Matlab. Pode também | |
cfeccd1e | 276 | ser usado como uma linguagem orientada por lotes. |
277 | ||
278 | O Octave tem ferramentas extensivas para resolver problemas comuns de | |
227fa4a8 JR |
279 | álgebra linear, descobrir as raizes de equações não-lineares, integrar |
280 | funções ordinárias, manipular polinómios e integrar equações | |
281 | diferenciais ordinárias e diferenciais algébricas. É facilmente | |
282 | extensível e personalizável através de funções definidas pelo | |
283 | utilizador, escritas na própria linguagem do Octave, ou usando módulos | |
cfeccd1e | 284 | carregados dinamicamente e feitos em C, C++, Fortran ou outras |
285 | linguagens." | |
286 | ||
227fa4a8 JR |
287 | %description -l pt_BR.UTF-8 |
288 | GNU Octave - Um programa de cálculo numérico e matricial. Possui | |
289 | linguagem de alto nível e ambiente interativo para computação numérica | |
52934cde | 290 | semelhantes ao do Matlab. |
291 | ||
227fa4a8 JR |
292 | %description -l ru.UTF-8 |
293 | GNU Octave - это язык высокого уровня, предназначенный для выполнения | |
294 | математических вычислений. Он предоставляет удобный коммандный | |
295 | интерфейс для решения линейных и нелинейных математических задач и для | |
296 | проведения других арифметических экспериментов, используя язык, в | |
297 | большенстве случаев совместимый с Mathlab. | |
298 | ||
299 | Кроме того, Octave может использоваться для пакетной обработки и имеет | |
300 | средства расширения для решения линейных алгебраических задач, | |
301 | нахождения корней нелинейных уравнений, интегрирование функций, работу | |
302 | с полиномами и решение различных дифференциальных уравнений. Язык | |
303 | можно легко расширить при помощи собственно языка Octave или используя | |
304 | динамически загружаемые модули, написанные на языках C, C++, Фортран и | |
305 | др. | |
306 | ||
307 | %description -l sv.UTF-8 | |
308 | GNU Octave är ett högnivåspråk, huvudsakligen avsett för numeriska | |
309 | beräkningar. Det har ett bekvämt kommandoradsgränssnitt för att lösa | |
310 | linjära och ickelinjära problem numeriskt, och för att utföra andra | |
311 | numeriska experiment med ett språk som i stora delar är kompatibelt | |
312 | med Matlab. Det kan också användas som ett språk för satsvis | |
cfeccd1e | 313 | bearbetning. |
314 | ||
227fa4a8 JR |
315 | Octave har omfattande verktyg för att lösa vanliga problem inom |
316 | numerisk linjär algebra, hitta rötter för ickelinjära ekvationer, | |
317 | integrera normala funktioner, hantera polynom, och integrera ordinära | |
318 | differential och differentialalgebraiska ekvationer. Det är lätt att | |
319 | utvidga och anpassa via användardefinierade funktioner skrivna i | |
320 | Octaves eget språk, och via dynamiskt laddade moduler skrivan i C++, | |
321 | C, Fortran, eller andra språk. | |
cfeccd1e | 322 | |
b50c99e2 JB |
323 | %package gui |
324 | Summary: Qt based GUI for Octave | |
325 | Summary(pl.UTF-8): Oparty na Qt graficzny interfejs do Octave | |
326 | Group: Applications/Math | |
327 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
328 | ||
329 | %description gui | |
330 | Qt based GUI for Octave. | |
331 | ||
332 | %description gui -l pl.UTF-8 | |
333 | Oparty na Qt graficzny interfejs do Octave. | |
334 | ||
3085d145 JB |
335 | %package java |
336 | Summary: Java interface for Octave | |
337 | Summary(pl.UTF-8): Interfejs do Javy dla Octave | |
338 | Group: Applications/Math | |
339 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
340 | Requires: jre | |
341 | ||
342 | %description java | |
343 | Java interface for Octave. | |
344 | ||
345 | %description java -l pl.UTF-8 | |
346 | Interfejs do Javy dla Octave. | |
347 | ||
2b6d110b | 348 | %package devel |
349 | Summary: Header files and devel docs for Octave | |
0ecc96f6 | 350 | Summary(pl.UTF-8): Pliki nagłówkowe i dodatkowa dokumentacja Octave |
2e344e40 | 351 | Group: Development/Libraries |
998919ae | 352 | Requires: %{name} = %{epoch}:%{version}-%{release} |
f061f8f6 | 353 | Requires: hdf5-devel >= 1.6.0 |
2b6d110b | 354 | |
2e41e3a3 JB |
355 | %description devel |
356 | Header files and devel docs for Octave. | |
357 | ||
227fa4a8 JR |
358 | %description devel -l pl.UTF-8 |
359 | Pliki nagłówkowe i dodatkowa dokumentacja Octave. | |
2b6d110b | 360 | |
15d9cea1 | 361 | %prep |
b7c21012 | 362 | %setup -q |
2b6d110b | 363 | %patch0 -p1 |
489a52fa | 364 | %patch1 -p1 |
f78a5c3e | 365 | %patch2 -p1 |
5a8e2ead | 366 | %patch3 -p1 |
23702b6d JB |
367 | %patch4 -p1 |
368 | %patch5 -p1 | |
ebfdd94c | 369 | %patch6 -p1 |
15d9cea1 | 370 | |
371 | %build | |
489a52fa JR |
372 | %{__libtoolize} |
373 | %{__aclocal} -I m4 | |
d0814e56 | 374 | %{__autoconf} |
489a52fa JR |
375 | %{__autoheader} |
376 | %{__automake} | |
8cc92b36 JB |
377 | # to find local sources |
378 | export CLASSPATH=. | |
379 | # Note: configure defaults to {moc,uic,rcc,lrelease}-qt5 tools, | |
380 | # but gets only qt4 (QtCore, QtGui, QtNetwork) libraries; | |
381 | # pass qt4 tools for consistency (qt5 tools refer to e.g. Qt5 specific headers) | |
09469247 | 382 | %configure \ |
8cc92b36 JB |
383 | MOC=moc-qt4 \ |
384 | UIC=uic-qt4 \ | |
385 | RCC=rcc \ | |
386 | LRELEASE=lrelease-qt4 \ | |
489a52fa JR |
387 | --with-amd-includedir=%{_includedir}/amd \ |
388 | --with-camd-includedir=%{_includedir}/camd \ | |
389 | --with-cholmod-includedir=%{_includedir}/cholmod \ | |
390 | --with-colamd-includedir=%{_includedir}/colamd \ | |
391 | --with-ccolamd-includedir=%{_includedir}/ccolamd \ | |
392 | --with-cxsparse-includedir=%{_includedir}/cxsparse \ | |
393 | --with-umfpack-includedir=%{_includedir}/umfpack \ | |
3d5955ae | 394 | --enable-dl \ |
b41b0e23 | 395 | %{?with_gui:--with-qt=%{?with_qt4:4}%{!?with_qt4:5}} \ |
b50c99e2 JB |
396 | %{!?with_gui:--disable-gui} \ |
397 | %{!?with_java:--disable-java} \ | |
398 | %{?with_llvm:--enable-jit} \ | |
ea43cc24 JB |
399 | %{!?with_openmp:--disable-openmp} \ |
400 | --enable-shared \ | |
401 | --disable-silent-rules | |
ed3eaa1d | 402 | |
5a8e2ead | 403 | %{__make} |
15d9cea1 | 404 | |
405 | %install | |
406 | rm -rf $RPM_BUILD_ROOT | |
c68703d9 | 407 | |
52934cde | 408 | %{__make} install \ |
5a8e2ead | 409 | DESTDIR=$RPM_BUILD_ROOT |
3d5955ae | 410 | |
20062c0f | 411 | install -d $RPM_BUILD_ROOT%{_desktopdir} |
f78a5c3e | 412 | cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir} |
14c811ac | 413 | |
6f78d282 JR |
414 | # Create directory for add-on packages |
415 | install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/packages | |
416 | install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/packages | |
417 | touch $RPM_BUILD_ROOT%{_datadir}/%{name}/octave_packages | |
418 | ||
20062c0f | 419 | %{__rm} -f $RPM_BUILD_ROOT%{_desktopdir}/www.octave.org-octave.desktop |
489a52fa | 420 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la |
b50c99e2 JB |
421 | # API not exported |
422 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/liboctgui.so | |
2e344e40 | 423 | |
15d9cea1 | 424 | %clean |
425 | rm -rf $RPM_BUILD_ROOT | |
426 | ||
5efa75e0 | 427 | %post -p /sbin/postshell |
3d5955ae | 428 | /sbin/ldconfig |
5efa75e0 | 429 | -/usr/sbin/fix-info-dir -c %{_infodir} |
15d9cea1 | 430 | |
5efa75e0 | 431 | %postun -p /sbin/postshell |
c68703d9 | 432 | /sbin/ldconfig |
5efa75e0 | 433 | -/usr/sbin/fix-info-dir -c %{_infodir} |
15d9cea1 | 434 | |
a8260fac | 435 | %post devel -p /sbin/postshell |
604a1218 | 436 | -/usr/sbin/fix-info-dir -c %{_infodir} |
2b6d110b | 437 | |
a8260fac | 438 | %postun devel -p /sbin/postshell |
604a1218 | 439 | -/usr/sbin/fix-info-dir -c %{_infodir} |
2b6d110b | 440 | |
bf203277 AO |
441 | %post gui -p /sbin/postshell |
442 | /sbin/ldconfig | |
443 | ||
444 | %postun gui -p /sbin/postshell | |
445 | /sbin/ldconfig | |
446 | ||
15d9cea1 | 447 | %files |
3d5955ae | 448 | %defattr(644,root,root,755) |
ebfdd94c | 449 | %doc AUTHORS BUGS ChangeLog NEWS README examples doc/interpreter/*.{html,pdf} doc/refcard/refcard-a4.pdf |
6b967a72 JB |
450 | %attr(755,root,root) %{_bindir}/mkoctfile |
451 | %attr(755,root,root) %{_bindir}/mkoctfile-%{version} | |
452 | %attr(755,root,root) %{_bindir}/octave | |
453 | %attr(755,root,root) %{_bindir}/octave-%{version} | |
8cc92b36 JB |
454 | %attr(755,root,root) %{_bindir}/octave-cli |
455 | %attr(755,root,root) %{_bindir}/octave-cli-%{version} | |
6b967a72 | 456 | %attr(755,root,root) %{_libdir}/liboctave.so.*.*.* |
ebfdd94c | 457 | %attr(755,root,root) %ghost %{_libdir}/liboctave.so.6 |
6b967a72 | 458 | %attr(755,root,root) %{_libdir}/liboctinterp.so.*.*.* |
ebfdd94c JB |
459 | %attr(755,root,root) %ghost %{_libdir}/liboctinterp.so.6 |
460 | %if "%{_libexecdir}" != "%{_libdir}" | |
b3f50533 AM |
461 | %dir %{_libexecdir}/octave |
462 | %dir %{_libexecdir}/octave/%{version} | |
ebfdd94c JB |
463 | %dir %{_libexecdir}/octave/%{version}/site |
464 | %dir %{_libexecdir}/octave/site | |
465 | %endif | |
b3f50533 AM |
466 | %dir %{_libexecdir}/octave/%{version}/exec |
467 | %dir %{_libexecdir}/octave/%{version}/exec/*-pld-linux-gnu* | |
b3f50533 AM |
468 | %dir %{_libexecdir}/octave/%{version}/site/exec |
469 | %dir %{_libexecdir}/octave/%{version}/site/exec/*-pld-linux-gnu* | |
470 | %dir %{_libexecdir}/octave/%{api_dir} | |
471 | %dir %{_libexecdir}/octave/%{api_dir}/site | |
472 | %dir %{_libexecdir}/octave/%{api_dir}/site/exec | |
473 | %dir %{_libexecdir}/octave/%{api_dir}/site/exec/*-pld-linux-gnu* | |
b3f50533 AM |
474 | %dir %{_libexecdir}/octave/site/exec |
475 | %dir %{_libexecdir}/octave/site/exec/*-pld-linux-gnu* | |
b50c99e2 JB |
476 | %dir %{_libdir}/octave |
477 | %dir %{_libdir}/octave/%{version} | |
b50c99e2 | 478 | %dir %{_libdir}/octave/%{version}/oct |
913c4872 JR |
479 | %dir %{_libdir}/octave/%{version}/oct/*-pld-linux-gnu* |
480 | %{_libdir}/octave/%{version}/oct/*-pld-linux-gnu*/*.oct | |
481 | %{_libdir}/octave/%{version}/oct/*-pld-linux-gnu*/PKG_ADD | |
b50c99e2 | 482 | %dir %{_libdir}/octave/%{version}/site |
b50c99e2 | 483 | %dir %{_libdir}/octave/%{version}/site/oct |
913c4872 | 484 | %dir %{_libdir}/octave/%{version}/site/oct/*-pld-linux-gnu* |
b50c99e2 JB |
485 | %dir %{_libdir}/octave/packages |
486 | %dir %{_libdir}/octave/site | |
b50c99e2 | 487 | %dir %{_libdir}/octave/site/oct |
913c4872 | 488 | %dir %{_libdir}/octave/site/oct/*-pld-linux-gnu* |
b50c99e2 | 489 | %dir %{_libdir}/octave/site/oct/%{api_dir} |
913c4872 | 490 | %dir %{_libdir}/octave/site/oct/%{api_dir}/*-pld-linux-gnu* |
2b0adfad | 491 | %{_infodir}/octave.info* |
6b967a72 JB |
492 | %{_mandir}/man1/mkoctfile.1* |
493 | %{_mandir}/man1/octave.1* | |
8cc92b36 | 494 | %{_mandir}/man1/octave-cli.1* |
b50c99e2 JB |
495 | %dir %{_datadir}/octave |
496 | %dir %{_datadir}/octave/%{version} | |
f78a5c3e JR |
497 | %dir %{_datadir}/octave/%{version}/data |
498 | %{_datadir}/octave/%{version}/data/penny.mat | |
b50c99e2 JB |
499 | %dir %{_datadir}/octave/%{version}/etc |
500 | %{_datadir}/octave/%{version}/etc/CITATION | |
501 | %{_datadir}/octave/%{version}/etc/NEWS | |
502 | %{_datadir}/octave/%{version}/etc/built-in-docstrings | |
b50c99e2 JB |
503 | %{_datadir}/octave/%{version}/etc/doc-cache |
504 | %{_datadir}/octave/%{version}/etc/macros.texi | |
c16b5894 | 505 | %{_datadir}/octave/%{version}/etc/profiler |
b50c99e2 JB |
506 | %{_datadir}/octave/%{version}/etc/tests |
507 | %{_datadir}/octave/%{version}/imagelib | |
3085d145 | 508 | %dir %{_datadir}/octave/%{version}/m |
ebfdd94c | 509 | %{_datadir}/octave/%{version}/m/+containers |
3085d145 JB |
510 | %{_datadir}/octave/%{version}/m/@ftp |
511 | %{_datadir}/octave/%{version}/m/audio | |
512 | %{_datadir}/octave/%{version}/m/deprecated | |
513 | %{_datadir}/octave/%{version}/m/elfun | |
514 | %{_datadir}/octave/%{version}/m/general | |
515 | %{_datadir}/octave/%{version}/m/geometry | |
516 | %{_datadir}/octave/%{version}/m/gui | |
517 | %{_datadir}/octave/%{version}/m/help | |
518 | %{_datadir}/octave/%{version}/m/image | |
519 | %{_datadir}/octave/%{version}/m/io | |
520 | %{_datadir}/octave/%{version}/m/linear-algebra | |
521 | %{_datadir}/octave/%{version}/m/miscellaneous | |
c16b5894 | 522 | %{_datadir}/octave/%{version}/m/ode |
3085d145 JB |
523 | %{_datadir}/octave/%{version}/m/optimization |
524 | %{_datadir}/octave/%{version}/m/path | |
525 | %{_datadir}/octave/%{version}/m/pkg | |
526 | %{_datadir}/octave/%{version}/m/plot | |
527 | %{_datadir}/octave/%{version}/m/polynomial | |
528 | %{_datadir}/octave/%{version}/m/prefs | |
c16b5894 | 529 | %{_datadir}/octave/%{version}/m/profiler |
3085d145 JB |
530 | %{_datadir}/octave/%{version}/m/set |
531 | %{_datadir}/octave/%{version}/m/signal | |
532 | %{_datadir}/octave/%{version}/m/sparse | |
533 | %{_datadir}/octave/%{version}/m/specfun | |
534 | %{_datadir}/octave/%{version}/m/special-matrix | |
535 | %{_datadir}/octave/%{version}/m/startup | |
536 | %{_datadir}/octave/%{version}/m/statistics | |
537 | %{_datadir}/octave/%{version}/m/strings | |
538 | %{_datadir}/octave/%{version}/m/testfun | |
539 | %{_datadir}/octave/%{version}/m/time | |
ebfdd94c | 540 | %ghost %{_datadir}/octave/octave_packages |
b50c99e2 JB |
541 | %dir %{_datadir}/octave/%{version}/site |
542 | %dir %{_datadir}/octave/%{version}/site/m | |
b50c99e2 JB |
543 | %dir %{_datadir}/octave/packages |
544 | %dir %{_datadir}/octave/site | |
545 | %dir %{_datadir}/octave/site/%{api_dir} | |
546 | %dir %{_datadir}/octave/site/%{api_dir}/m | |
547 | %dir %{_datadir}/octave/site/m | |
548 | %dir %{_datadir}/octave/site/m/startup | |
549 | %{_datadir}/octave/site/m/startup/octaverc | |
489a52fa | 550 | %{_desktopdir}/octave.desktop |
2b6d110b | 551 | |
b50c99e2 JB |
552 | %if %{with gui} |
553 | %files gui | |
554 | %defattr(644,root,root,755) | |
555 | %attr(755,root,root) %{_libdir}/liboctgui.so.*.*.* | |
ebfdd94c | 556 | %attr(755,root,root) %ghost %{_libdir}/liboctgui.so.4 |
b3f50533 | 557 | %attr(755,root,root) %{_libexecdir}/octave/%{version}/exec/*-pld-linux-gnu*/octave-gui |
ebfdd94c JB |
558 | %dir %{_datadir}/octave/%{version}/doc |
559 | %{_datadir}/octave/%{version}/doc/octave_interpreter.qch | |
560 | %{_datadir}/octave/%{version}/doc/octave_interpreter.qhc | |
b50c99e2 | 561 | %{_datadir}/octave/%{version}/etc/default-qt-settings |
ebfdd94c JB |
562 | # TODO: FreeSans*.otf - use system? |
563 | %{_datadir}/octave/%{version}/fonts | |
b50c99e2 JB |
564 | %dir %{_datadir}/octave/%{version}/locale |
565 | %lang(be) %{_datadir}/octave/%{version}/locale/be_BY.qm | |
ebfdd94c | 566 | %lang(ca) %{_datadir}/octave/%{version}/locale/ca_ES.qm |
b50c99e2 JB |
567 | %lang(de) %{_datadir}/octave/%{version}/locale/de_DE.qm |
568 | %lang(en) %{_datadir}/octave/%{version}/locale/en_US.qm | |
569 | %lang(es) %{_datadir}/octave/%{version}/locale/es_ES.qm | |
ebfdd94c | 570 | %lang(eu) %{_datadir}/octave/%{version}/locale/eu_ES.qm |
b50c99e2 | 571 | %lang(fr) %{_datadir}/octave/%{version}/locale/fr_FR.qm |
f78a5c3e JR |
572 | %lang(it) %{_datadir}/octave/%{version}/locale/it_IT.qm |
573 | %lang(ja) %{_datadir}/octave/%{version}/locale/ja_JP.qm | |
b50c99e2 JB |
574 | %lang(nl) %{_datadir}/octave/%{version}/locale/nl_NL.qm |
575 | %lang(pt_BR) %{_datadir}/octave/%{version}/locale/pt_BR.qm | |
576 | %lang(pt) %{_datadir}/octave/%{version}/locale/pt_PT.qm | |
577 | %lang(ru) %{_datadir}/octave/%{version}/locale/ru_RU.qm | |
578 | %lang(uk) %{_datadir}/octave/%{version}/locale/uk_UA.qm | |
94d732b6 | 579 | %lang(zh_CN) %{_datadir}/octave/%{version}/locale/zh_CN.qm |
ebfdd94c JB |
580 | %{_datadir}/metainfo/org.octave.Octave.appdata.xml |
581 | %{_desktopdir}/org.octave.Octave.desktop | |
f78a5c3e JR |
582 | %{_iconsdir}/hicolor/*x*/apps/octave.png |
583 | %{_iconsdir}/hicolor/scalable/apps/octave.svg | |
b50c99e2 JB |
584 | %endif |
585 | ||
3085d145 JB |
586 | %if %{with java} |
587 | %files java | |
588 | %defattr(644,root,root,755) | |
589 | %{_datadir}/octave/%{version}/m/java | |
590 | %endif | |
591 | ||
2b6d110b | 592 | %files devel |
593 | %defattr(644,root,root,755) | |
489a52fa | 594 | %doc doc/liboctave/liboctave.{html,pdf} |
6b967a72 JB |
595 | %attr(755,root,root) %{_bindir}/octave-config |
596 | %attr(755,root,root) %{_bindir}/octave-config-%{version} | |
da117854 JB |
597 | %attr(755,root,root) %{_libdir}/liboctave.so |
598 | %attr(755,root,root) %{_libdir}/liboctinterp.so | |
ebfdd94c | 599 | %{_includedir}/%{name} |
6b967a72 | 600 | %{_mandir}/man1/octave-config.1* |
2b0adfad | 601 | %{_infodir}/liboctave.info* |