octave-vl.spec 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363
  1. %define pkg_name octave
  2. %define pkg_version 4.2.1
  3. %define pkg_release 1%{?_dist_release}
  4. %define gui 1
  5. %define sound 1
  6. # %if %{?_dist_release} == "vl6"
  7. # %define openjdk_ver 1.6.0
  8. # %endif
  9. # %if %{?_dist_release} >= "vl7"
  10. # %define openjdk_ver 1.8.0
  11. # %endif
  12. Summary: GNU Octave -- a high-level language for numerical computations
  13. Summary(ja): 数値計算のための高級言語
  14. Name: %{pkg_name}
  15. Version: %{pkg_version}
  16. Release: %{pkg_release}
  17. License: GPL
  18. Group: Applications/Edutainment
  19. URL: http://www.gnu.org/software/octave/
  20. # Source0: ftp://ftp.octave.org/gnu/octave/%{name}-%{version}.tar.gz
  21. Source0: ftp://ftp.octave.org/gnu/octave/%{name}-%{version}.tar.lz
  22. Buildroot: %{_tmppath}/%{name}-%{version}-root
  23. BuildRequires: gcc-gfortran
  24. BuildRequires: bison flex gperf texinfo less
  25. BuildRequires: gnuplot
  26. BuildRequires: ghostscript-devel
  27. BuildRequires: mesa-libOSMesa-devel
  28. BuildRequires: blas-devel lapack-devel
  29. BuildRequires: pcre-devel
  30. BuildRequires: readline-devel
  31. BuildRequires: arpack
  32. BuildRequires: curl-devel
  33. BuildRequires: fftw3-devel
  34. BuildRequires: fontconfig-devel
  35. BuildRequires: freetype-devel
  36. BuildRequires: glpk-devel
  37. BuildRequires: GraphicsMagick-c++-devel
  38. BuildRequires: hdf5-devel
  39. # BuildRequires: java-%{openjdk_ver}-openjdk-devel
  40. BuildRequires: java-devel
  41. BuildRequires: qhull-devel
  42. BuildRequires: qrupdate
  43. BuildRequires: suitesparse-devel
  44. BuildRequires: zlib-devel
  45. BuildRequires: xz-devel
  46. BuildRequires: libtool-ltdl-devel
  47. BuildRequires: libXext-devel
  48. BuildRequires: openssl-devel
  49. %if %{gui}
  50. BuildRequires: desktop-file-utils
  51. BuildRequires: freeglut-devel
  52. BuildRequires: fltk-devel
  53. BuildRequires: gl2ps-devel
  54. BuildRequires: qt4-devel
  55. BuildRequires: qscintilla-devel
  56. %endif
  57. %if %{sound}
  58. BuildRequires: portaudio-devel
  59. BuildRequires: libsndfile-devel
  60. %endif
  61. BuildRequires: lzip
  62. Requires: ghostscript
  63. Requires: blas lapack
  64. Requires: pcre
  65. Requires: readline
  66. Requires: mesa-libOSMesa
  67. Requires: gnuplot
  68. Requires: arpack
  69. Requires: curl
  70. Requires: fftw3
  71. Requires: fontconfig
  72. Requires: freetype
  73. Requires: glpk
  74. Requires: GraphicsMagick-c++
  75. Requires: hdf5
  76. Requires: qhull
  77. Requires: qrupdate
  78. Requires: suitesparse
  79. Requires: zlib
  80. Requires: openssl
  81. Requires: pstoedit epstool transfig
  82. %if %{gui}
  83. Requires: freeglut
  84. Requires: fltk
  85. Requires: gl2ps
  86. Requires: qt4
  87. Requires: qscintilla
  88. %endif
  89. %if %{sound}
  90. Requires: portaudio
  91. Requires: libsndfile
  92. %endif
  93. Requires(post): /sbin/install-info
  94. Requires(postun): /sbin/ldconfig
  95. Requires(post): /sbin/ldconfig
  96. Requires(preun): /sbin/install-info
  97. Vendor: Project Vine
  98. Distribution: Vine Linux
  99. Packager: ara_t
  100. %description
  101. GNU Octave is a high-level language, primarily intended for numerical
  102. computations. It provides a convenient command line interface for
  103. solving linear and nonlinear problems numerically, and for performing
  104. other numerical experiments using a language that is mostly compatible
  105. with Matlab. It may also be used as a batch-oriented language.
  106. Octave has extensive tools for solving common numerical linear algebra
  107. problems, finding the roots of nonlinear equations, integrating
  108. ordinary functions, manipulating polynomials, and integrating ordinary
  109. differential and differential-algebraic equations. It is easily
  110. extensible and customizable via user-defined functions written in
  111. Octave's own language, or using dynamically loaded modules written in
  112. C++, C, Fortran, or other languages.
  113. # '
  114. %description -l ja
  115. GNU Octave は数値計算用に開発の始められた高級言語です。線形問題や非線形
  116. 問題を数値的に解いたり、その他のMatlab と互換性の高い言語を用いた数値計算
  117. を行うための使いやすいコマンドライン・インタフェースを備えています。
  118. バッチ指向言語としても使うこともできます。Octave は多機能なツールで、
  119. 一般的な線形幾何の問題の数値解や、通常の関数の積分・微分、多項式の操作等を
  120. 行うことができます。
  121. Octave の言語でユーザが関数を定義したり、C++, C, Fortran その他の言語で
  122. 書いた動的ライブラリを用いて容易に拡張やカスタマイズを行うことができます。
  123. %if %{gui}
  124. (注意)
  125. デフォルトではグラフの描画にOpenGL/fltkを使用してます。
  126. もし不安定な場合には、
  127. gnuplotをデフォルトとするために ~/.octaverc に
  128. graphics_toolkit("gnuplot");
  129. を追加してから起動して下さい。
  130. %endif
  131. %prep
  132. %{__rm} -rf ${RPM_BUILD_ROOT}
  133. %setup -q
  134. %build
  135. %{configure} \
  136. CPPFLAGS="-I%{_includedir}/pcre" \
  137. --with-x \
  138. --with-magick=GraphicsMagick \
  139. --with-curl-includedir=%{_includedir}/curl \
  140. --with-glpk-includedir=%{_includedir}/glpk \
  141. --with-qhull-includedir=%{_includedir}/qhull \
  142. --with-amd-includedir=%{_includedir}/suitesparse \
  143. --with-camd-includedir=%{_includedir}/suitesparse \
  144. --with-colamd-includedir=%{_includedir}/suitesparse \
  145. --with-ccolamd-includedir=%{_includedir}/suitesparse \
  146. --with-cholmod-includedir=%{_includedir}/suitesparse \
  147. --with-cxsparse-includedir=%{_includedir}/suitesparse \
  148. --with-umfpack-includedir=%{_includedir}/suitesparse \
  149. --enable-java \
  150. %if !%{gui}
  151. --disable-gui \
  152. --without-opengl \
  153. --without-fltk \
  154. %endif
  155. %if !%{sound}
  156. --without-sndfile --without-portaudio \
  157. %endif
  158. %{__make} %{?_smp_mflags}
  159. %install
  160. %{make_install}
  161. %{__rm} -f ${RPM_BUILD_ROOT}%{_infodir}/dir
  162. find %{buildroot} -name "*.oct" | xargs strip
  163. # Make library links
  164. %{__mkdir_p} ${RPM_BUILD_ROOT}/etc/ld.so.conf.d
  165. echo "%{_libdir}/octave-%{version}" > \
  166. ${RPM_BUILD_ROOT}/etc/ld.so.conf.d/octave-%{_arch}.conf
  167. %if %{gui}
  168. # Create desktop file
  169. %{__mv} \
  170. ${RPM_BUILD_ROOT}%{_datadir}/applications/www.octave.org-octave.desktop \
  171. ${RPM_BUILD_ROOT}%{_datadir}/applications/octave.desktop
  172. %{__perl} -pi -e s/"Education;Science;Math;"/"Education;Science;"/g \
  173. ${RPM_BUILD_ROOT}%{_datadir}/applications/octave.desktop
  174. %endif
  175. # rename %{_datadir}/appdata/*
  176. %{__mv} \
  177. ${RPM_BUILD_ROOT}%{_datadir}/appdata/www.octave.org-octave.appdata.xml \
  178. ${RPM_BUILD_ROOT}%{_datadir}/appdata/octave.appdata.xml
  179. %check
  180. %{__make} %{?_smp_mflags} check
  181. %clean
  182. %{__rm} -rf ${RPM_BUILD_ROOT}
  183. %post
  184. %{_syssbindir}/ldconfig
  185. /sbin/install-info --info-dir=%{_infodir} --section="Programming" \
  186. %{_infodir}/octave.info.gz || :
  187. %preun
  188. if [ "$1" = "0" ]; then
  189. /sbin/install-info --delete --info-dir=%{_infodir} \
  190. %{_infodir}/octave.info.gz || :
  191. fi
  192. %postun -p %{_syssbindir}/ldconfig
  193. %files
  194. %defattr(-,root,root)
  195. %doc AUTHORS BUGS CITATION COPYING ChangeLog NEWS README
  196. %doc examples doc/interpreter/octave.p* doc/refcard
  197. %config(noreplace) /etc/ld.so.conf.d/
  198. %{_bindir}/
  199. %{_libdir}/octave
  200. %{_includedir}/octave-%{version}
  201. %{_datadir}/appdata/
  202. %if %{gui}
  203. %{_datadir}/applications/
  204. %endif
  205. %{_datadir}/icons/
  206. %{_datadir}/octave
  207. %{_libexecdir}/octave
  208. %{_mandir}/man*/*
  209. %{_infodir}/octave*
  210. %{_infodir}/liboctave.info*
  211. %changelog
  212. * Mon Feb 27 2017 Toshiaki Ara <ara_t@384.jp> 4.2.1-1
  213. - update to 4.2.1
  214. * Sat Nov 19 2016 Toshiaki Ara <ara_t@384.jp> 4.2.0-1
  215. - update to 4.2.0
  216. - add make check
  217. - add BuildRequires: lzip
  218. - change BuildRequires: java-devel
  219. * Mon Jul 18 2016 Toshiaki Ara <ara_t@384.jp> 4.0.3-1
  220. - update to 4.0.3
  221. - change BuildRequires: java-1.8.0-openjdk-devel for VineSeed
  222. * Wed May 11 2016 Toshiaki Ara <ara_t@384.jp> 4.0.2-1
  223. - update to 4.0.2
  224. - add BuildRequires: openssl-devel
  225. - add Requires: openssl
  226. * Wed Apr 13 2016 Toshiaki Ara <ara_t@384.jp> 4.0.1-1
  227. - update to 4.0.1
  228. - change dependencies
  229. * Sun Oct 05 2014 Toshiaki Ara <ara_t@384.jp> 3.6.4-2
  230. - [BTS:0002801] add configure option --with-magick=Magick
  231. - delete BuildRequires: texlive-collection-texinfo
  232. - add BuildRequires: texlive-collection-plainextra
  233. - add BuildRequires: texlive-collection-latexextra
  234. - add BuildRequires: texlive-collection-fontsrecommended
  235. - for VineSeed
  236. * Wed Mar 06 2013 Toshiaki Ara <ara_t@384.jp> 3.6.4-1
  237. - update to 3.6.4
  238. - add BuildRequires: freeglut-devel and Requires: freeglut for VineSeed
  239. * Tue Sep 11 2012 Toshiaki Ara <ara_t@384.jp> 3.6.2-2
  240. - delete octave from menu (programming)
  241. * Tue Aug 28 2012 Toshiaki Ara <ara_t@384.jp> 3.6.2-1
  242. - update to 3.6.2
  243. - correct spec file for version 3.6.2
  244. - add BuildRequires: pcre-devel fltk-devel
  245. - add BuildRequires: ImageMagick-devel ImageMagick-c++-devel
  246. - add BuildRequires: gcc-gfortran
  247. - add BuildRequires: texlive texlive-common texlive-collection-basic
  248. - add BuildRequires: texlive-collection-texinfo texlive-collection-genericrecommended
  249. - chanfe Group to Applications/Edutainment
  250. * Sat Aug 23 2008 Shu KONNO <owa@bg.wakwak.com> 3.0.2-1vl5
  251. - update to 3.0.2
  252. - applied new versioning policy, spec in utf-8
  253. * Sun Feb 03 2008 NAKAMURA Kenta <kenta@vinelinux.org> 3.0.0-0vl1
  254. - update to 3.0.0
  255. * Sat Aug 18 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 2.9.13-0vl2
  256. - rebuilt for VineSeed
  257. * Fri Aug 17 2007 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 2.9.13-0vl1
  258. - update to 2.9.13
  259. - rebuilt with new toolchain and environment
  260. * Sun Apr 20 2003 Ryoichi INAGAKI <ryo1@bc.wakwak.com> 2.0.17-0vl1
  261. - update to 2.0.17
  262. - rebuild with new toolchains
  263. - add BuildRequires: gcc295, gcc295-c++
  264. * Sun Mar 3 2002 Jun Nishii <jun@vinelinux.org> 2.1.35-0vl1
  265. - ver.up
  266. * Tue Sep 26 2000 Jun Nishii <jun@vinelinux.org> 2.0.16-0vl1
  267. - build for Vine Linux 2.1
  268. * Mon Aug 07 2000 Frederic Lepied <flepied@mandrakesoft.com> 2.0.16-5mdk
  269. - automatically added BuildRequires
  270. * Wed Jul 26 2000 Vincent Saugey <vince@mandrakesoft.com> 2.0.16-4mdk
  271. - Macros, BM, add multiple icons sizes
  272. * Wed Apr 12 2000 Vincent Saugey <vince@mandrakesoft.com> 2.0.16-3mdk
  273. - strip oct file
  274. - add menu entry
  275. * Tue Mar 21 2000 Vincent Saugey <vince@mandrakesoft.com> 2.0.16-2mdk
  276. - corrected for new groups
  277. * Thu Mar 09 2000 Lenny Cartier <lenny@mandrakesoft.com>
  278. - mandrake build
  279. - v2.0.16
  280. * Fri Oct 23 1998 Jeff Johnson <jbj@redhat.com>
  281. - update to 2.0.13.90
  282. * Thu Jul 9 1998 Jeff Johnson <jbj@redhat.com>
  283. - repackage in powertools.
  284. * Thu Jun 11 1998 Andrew Veliath <andrewtv@usa.net>
  285. - Add %attr, build as user.
  286. * Mon Jun 1 1998 Andrew Veliath <andrewtv@usa.net>
  287. - Add BuildRoot, installinfo, require gnuplot, description from
  288. Octave's web page, update to Octave 2.0.13.
  289. - Adapt from existing spec file.
  290. * Tue Dec 2 1997 Otto Hammersmith <otto@redhat.com>
  291. - removed libreadline stuff from the file list
  292. * Mon Nov 24 1997 Otto Hammersmith <otto@redhat.com>
  293. - changed configure command to put things in $RPM_ARCH-rehat-linux,
  294. rather than genereated one... was causing problems between building
  295. on i686 build machine.
  296. * Mon Nov 17 1997 Otto Hammersmith <otto@redhat.com>
  297. - moved buildroot from /tmp to /var/tmp
  298. * Mon Sep 22 1997 Mike Wangsmo <wanger@redhat.com>
  299. - Upgraded to version 2.0.9 and built for glibc system
  300. * Thu May 01 1997 Michael Fulbright <msf@redhat.com>
  301. - Updated to version 2.0.5 and changed to build using a BuildRoot