octave: make optional features declarative in default.nix

Instead of in all-packages.nix .
This commit is contained in:
Doron Behar 2020-02-26 10:09:07 +02:00
parent f93a4389b9
commit 3fa64cd5de
2 changed files with 9 additions and 48 deletions

View File

@ -1,7 +1,6 @@
{ stdenv
, fetchurl
, gfortran
, readline
, ncurses
, perl
, flex
@ -31,18 +30,23 @@
, glpk ? null
, suitesparse ? null
, gnuplot ? null
# - Include support for GNU readline:
, enableReadline ? true
, readline ? null
# - Build Java interface:
, enableJava ? true
, jdk ? null
, python ? null
, overridePlatforms ? null
, sundials_2 ? null
# Qt / GUI is disabled by default
# - Build Octave Qt GUI:
, enableQt ? false
, qtbase ? null
, qtsvg ? null
, qtscript ? null
, qscintilla ? null
, qttools ? null
# JIT is disabled by default
# - JIT compiler for loops:
, enableJIT ? false
, llvm ? null
}:
@ -98,7 +102,7 @@ stdenv.mkDerivation rec {
++ (stdenv.lib.optional (hdf5 != null) hdf5)
++ (stdenv.lib.optional (glpk != null) glpk)
++ (stdenv.lib.optional (suitesparse != null) suitesparse)
++ (stdenv.lib.optional (jdk != null) jdk)
++ (stdenv.lib.optional (enableJava) jdk)
++ (stdenv.lib.optional (sundials_2 != null) sundials_2)
++ (stdenv.lib.optional (gnuplot != null) gnuplot)
++ (stdenv.lib.optional (python != null) python)
@ -128,10 +132,10 @@ stdenv.mkDerivation rec {
F77_INTEGER_8_FLAG = if openblas.blas64 then "-fdefault-integer-8" else "";
configureFlags = [
"--enable-readline"
"--with-blas=openblas"
"--with-lapack=openblas"
]
++ stdenv.lib.optionals enableReadline [ "--enable-readline" ]
++ stdenv.lib.optionals openblas.blas64 [ "--enable-64" ]
++ stdenv.lib.optionals stdenv.isDarwin [ "--with-x=no" ]
++ stdenv.lib.optionals enableQt [ "--with-qt=5" ]

View File

@ -9220,58 +9220,15 @@ in
git = gitMinimal;
};
# Build summary for this flavor
# - Build Octave Qt GUI: no (missing:QtCore QtGui QtNetwork QtHelp QtXml)
# - JIT compiler for loops: no
# - Build Java interface: yes
# - Build static libraries: no
# - Build shared libraries: yes
# - Dynamic Linking API: dlopen
# - Include support for GNU readline: yes
# - 64-bit array dims and indexing: yes
# - 64-bit BLAS array dims and indexing: yes
# - OpenMP SMP multithreading: yes
# - Truncate intermediate FP results: yes
# - Build cross tools: no
# - Build docs: yes
octave = callPackage ../development/interpreters/octave {
python = python3;
openblas = if stdenv.isDarwin then openblasCompat else openblas;
};
# Build summary for this flavor
# - Build Octave Qt GUI: no (missing:QtCore QtGui QtNetwork QtHelp QtXml)
# - JIT compiler for loops: yes
# - Build Java interface: yes
# - Build static libraries: no
# - Build shared libraries: yes
# - Dynamic Linking API: dlopen
# - Include support for GNU readline: yes
# - 64-bit array dims and indexing: yes
# - 64-bit BLAS array dims and indexing: yes
# - OpenMP SMP multithreading: yes
# - Truncate intermediate FP results: yes
# - Build cross tools: no
# - Build docs: yes
octave-jit = callPackage ../development/interpreters/octave {
python = python3;
openblas = if stdenv.isDarwin then openblasCompat else openblas;
enableJIT = true;
};
# Build summary for this flavor
# - Build Octave Qt GUI: yes
# - JIT compiler for loops: no
# - Build Java interface: yes
# - Build static libraries: no
# - Build shared libraries: yes
# - Dynamic Linking API: dlopen
# - Include support for GNU readline: yes
# - 64-bit array dims and indexing: yes
# - 64-bit BLAS array dims and indexing: yes
# - OpenMP SMP multithreading: yes
# - Truncate intermediate FP results: yes
# - Build cross tools: no
# - Build docs: yes
# Build summary for this flavor
octaveFull = (lowPrio (libsForQt512.callPackage ../development/interpreters/octave {
python = python3;
openblas = if stdenv.isDarwin then openblasCompat else openblas;