octave: add missing dependencies

+ 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
This commit is contained in:
Piraty 2018-03-08 15:54:23 +01:00 committed by Toyam Cox
parent f4e01923a8
commit 6cbb6072e6
3 changed files with 38 additions and 6 deletions

View file

@ -3118,3 +3118,6 @@ libdazzle-1.0.so.0 libdazzle-3.28.0_1
libjsonrpc-glib-1.0.so.1 jsonrpc-glib-3.28.0_1
libtemplate_glib-1.0.so.0 template-glib-3.28.0_1
libeog.so eog-3.28.0_4
liboctave.so.4 octave-4.2.1_8
liboctinterp.so.4 octave-4.2.1_8
liboctgui.so.2 octave-4.2.1_8

View file

@ -0,0 +1,14 @@
# reason: configure looks for the wrong filename
# note: should be fixed in the next release
--- configure
+++ configure
@@ -34701,7 +34701,7 @@
;;
5)
QT_MODULES="Qt5Core Qt5Gui Qt5Network Qt5OpenGL Qt5PrintSupport"
- octave_qscintilla_libnames="qscintilla2-qt5 qt5scintilla2"
+ octave_qscintilla_libnames="qscintilla2-qt5 qt5scintilla2 qscintilla2_qt5"
;;
*)
as_fn_error $? "Unrecognized Qt version $qt_version" "$LINENO" 5

View file

@ -1,12 +1,13 @@
# Template file for 'octave'
pkgname=octave
version=4.2.1
revision=7
revision=8
build_style=gnu-configure
configure_args=" --with-blas=openblas --with-lapack=openblas "
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"
lcms2-devel glpk-devel"
short_desc="A high-level language, primarily intended for numerical computations"
maintainer="Diogo Leal <diogo@diogoleal.com>"
license="GPL-3"
@ -15,15 +16,18 @@ distfiles="${GNU_SITE}/octave/octave-${version}.tar.gz"
checksum=80c28f6398576b50faca0e602defb9598d6f7308b0903724442c2a35a605333b
# Package build options
# TODO: some options are still missing, such as java
# 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
@ -33,18 +37,21 @@ build_options="
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
@ -58,13 +65,14 @@ build_options_default="
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 qt-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")
$(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)
@ -73,8 +81,15 @@ makedepends+="
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
}