+ move to qt5 + enable octave's editor via qscintilla-qt5 (it was missing!) + provide support for solving linear programs via glpk + provide support for audio file handling + provide support for openGL->ghostscript printing via gl2ps + provide option for large arrays (but needs 64bit BLAS) + add gui launcher script, see: https://savannah.gnu.org/bugs/?53034 https://www.gnu.org/software/octave/doc/interpreter/External-Packages.html#External-Packages
95 lines
2.7 KiB
Bash
95 lines
2.7 KiB
Bash
# Template file for 'octave'
|
|
pkgname=octave
|
|
version=4.2.1
|
|
revision=8
|
|
build_style=gnu-configure
|
|
configure_args=" --with-blas=openblas --with-lapack=openblas
|
|
$(vopt_if largearrays --enable-64)"
|
|
hostmakedepends="perl gcc-fortran pkg-config gnuplot"
|
|
makedepends="pcre-devel openblas-devel readline-devel libSM-devel libltdl-devel
|
|
lcms2-devel glpk-devel"
|
|
short_desc="A high-level language, primarily intended for numerical computations"
|
|
maintainer="Diogo Leal <diogo@diogoleal.com>"
|
|
license="GPL-3"
|
|
homepage="https://gnu.org/software/octave/"
|
|
distfiles="${GNU_SITE}/octave/octave-${version}.tar.gz"
|
|
checksum=80c28f6398576b50faca0e602defb9598d6f7308b0903724442c2a35a605333b
|
|
|
|
# Package build options
|
|
# TODO: some options are still missing, such as
|
|
# java, qrupdate, suitesparse
|
|
build_options="
|
|
arpack
|
|
audio
|
|
curl
|
|
fftw3
|
|
graphicsmagick
|
|
gui
|
|
hdf5
|
|
imagemagick
|
|
largearrays
|
|
opengl
|
|
openmp
|
|
qhull
|
|
zlib
|
|
"
|
|
|
|
vopt_conflict graphicsmagick imagemagick
|
|
|
|
desc_option_arpack="Provides 'eigs' and 'svds' functions."
|
|
desc_option_audio="Provides audiofile related functionality."
|
|
desc_option_curl="Provides 'urlread' and 'urlwrite' functions and the 'ftp' class."
|
|
desc_option_fftw3="Improves performance on discrete Fourier transforms."
|
|
desc_option_gui="Graphical User Interface."
|
|
desc_option_graphicsmagick="Provides 'imread' and 'imwrite' functions."
|
|
desc_option_hdf5="Support for HDF data files."
|
|
desc_option_imagemagick="Provides 'imread' and 'imwrite' functions."
|
|
desc_option_largearrays="Enable large array (64bit pointers)." #req. 64bit BLAS
|
|
desc_option_qhull="Provides 'convhull{,n}', 'delaunay{,n}' and 'voronoi{,n}' functions."
|
|
desc_option_openmp="Enable support for OpenMP SMP multi-threading"
|
|
desc_option_zlib="Support for compressed data."
|
|
|
|
build_options_default="
|
|
arpack
|
|
audio
|
|
curl
|
|
fftw3
|
|
graphicsmagick
|
|
gui
|
|
hdf5
|
|
opengl
|
|
openmp
|
|
qhull
|
|
zlib
|
|
"
|
|
|
|
makedepends+="
|
|
$(vopt_if arpack arpack-ng-devel)
|
|
$(vopt_if audio 'libsndfile-devel portaudio-devel')
|
|
$(vopt_if curl libcurl-devel)
|
|
$(vopt_if fftw3 fftw-devel)
|
|
$(vopt_if graphicsmagick libgraphicsmagick-devel)
|
|
$(vopt_if gui 'qt5-devel qscintilla-qt5-devel')
|
|
$(vopt_if hdf5 hdf5-devel)
|
|
$(vopt_if imagemagick libmagick-devel)
|
|
$(vopt_if opengl "glu-devel fltk-devel fontconfig-devel freetype-devel gl2ps-devel")
|
|
$(vopt_if openmp libgomp-devel)
|
|
$(vopt_if qhull libqhull-devel)
|
|
$(vopt_if zlib zlib-devel)
|
|
"
|
|
|
|
pre_build() {
|
|
chmod +x build-aux/mk-opts.pl
|
|
}
|
|
|
|
post_build() {
|
|
# Remove references to hardening -specs.
|
|
sed -e "s|\(-specs=.*hardened-ld\)||g" -e "s|\(-specs=.*hardened-cc1\)||g" \
|
|
-i src/mkoctfile.cc libinterp/build-env.cc
|
|
}
|
|
|
|
post_install() {
|
|
# add helper to launch octave from dmenu etc.
|
|
printf "#!/bin/sh\noctave --force-gui" > octave-gui
|
|
vbin octave-gui
|
|
}
|