# Template file for 'octave'
pkgname=octave
version=4.0.0
revision=2
build_style=gnu-configure
hostmakedepends="perl gcc-fortran pkg-config gnuplot"
makedepends="pcre-devel blas-devel lapack-devel readline-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.xz"
checksum=cf6be2fac6796fda68971e249c96d026ce4a1b0ed074ce49a5791365a958c474
nocross=yes
nopie=yes

# Package build options
# TODO: some options are still missing, such as java
build_options="
	arpack
	curl
	fftw3
	graphicsmagick
	gui
	hdf5
	imagemagick
	opengl
	openmp
	qhull
	zlib
"

vopt_conflict graphicsmagick imagemagick

desc_option_arpack="Provides 'eigs' and 'svds' functions."
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_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
	curl
	fftw3
	graphicsmagick
	gui
	hdf5
	opengl
	openmp
	qhull
	zlib
"

makedepends+="
	$(vopt_if arpack arpack-ng-devel)
	$(vopt_if curl libcurl-devel)
	$(vopt_if fftw3 fftw-devel)
	$(vopt_if graphicsmagick libgraphicsmagick-devel)
	$(vopt_if gui qt-devel)
	$(vopt_if hdf5 hdf5-devel)
	$(vopt_if imagemagick libmagick-devel)
	$(vopt_if opengl "glu-devel fltk-devel fontconfig-devel freetype-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
}
