# Template file for 'octave' pkgname=octave version=4.4.0 revision=1 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="High-level language, primarily intended for numerical computations" maintainer="Diogo Leal " license="GPL-3.0-or-later" homepage="https://gnu.org/software/octave/" distfiles="${GNU_SITE}/octave/octave-${version}.tar.gz" checksum=72f846379fcec7e813d46adcbacd069d72c4f4d8f6003bcd92c3513aafcd6e96 # 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 qt5-tools-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 }