diff options
-rw-r--r-- | academic/octave/README | 22 | ||||
-rw-r--r-- | academic/octave/octave.SlackBuild | 31 | ||||
-rw-r--r-- | academic/octave/octave.info | 10 | ||||
-rw-r--r-- | academic/octave/patches/compressed-info.diff | 13 | ||||
-rw-r--r-- | academic/octave/patches/umfpack-cppflags.diff | 31 |
5 files changed, 80 insertions, 27 deletions
diff --git a/academic/octave/README b/academic/octave/README index 4f13a945ac9da..9a4a2ab7b4653 100644 --- a/academic/octave/README +++ b/academic/octave/README @@ -4,10 +4,20 @@ linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with Matlab. It may also be used as a batch-oriented language. -These optional dependencies will be used if found: -AMD, CAMD, COLAMD, CCOLAMD, CHOLMOD, UMFPACK, CXSparse, glpk, -arpack, qrupdate, qhull, HDF5, fltk, ftgl, and GraphicsMagick +These optional dependencies will be used if found. See INSTALL.OCTAVE (in the +Octave source) for a description of what each dependency offers. -ImageMagick (part of Slackware) will be used instead of GraphicsMagick by -default. To override this, use: -WITH_MAGICK=GraphicsMagick ./octave.SlackBuild +AMD, CAMD, COLAMD, CCOLAMD, CHOLMOD, UMFPACK, CXSparse, glpk, arpack-ng, +qrupdate, qhull, HDF5, fltk, ftgl, gl2ps, jdk, GraphicsMagick + +Octave can use ImageMagick (part of Slackware) or GraphicsMagick (available +from SBo) for some functionality. ImageMagick 6.8.6-10 from Slackware 14.1 +appears to be incompatible (build failure). Octave searches for +GraphicsMagick by default, and previous versions of this script changed the +default to ImageMagick to avoid the need for yet another dependency. If you +need this functionality, or if Octave decides to compile against ImageMagick +for some reason, try installing GraphicsMagick. + +If you have arpack installed and the configure script segfaults when trying to +detect arpack, try switching to arpack-ng (which is partly maintained by +Octave developers). diff --git a/academic/octave/octave.SlackBuild b/academic/octave/octave.SlackBuild index 9ed28fb1b2ff5..68eded862f1e0 100644 --- a/academic/octave/octave.SlackBuild +++ b/academic/octave/octave.SlackBuild @@ -2,7 +2,7 @@ # Slackware build script for octave -# Copyright 2012-2013 Kyle Guinn <elyk03@gmail.com>, USA +# Copyright 2012-2014 Kyle Guinn <elyk03@gmail.com>, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -23,7 +23,7 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=octave -VERSION=${VERSION:-3.6.4} +VERSION=${VERSION:-3.8.0} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -40,7 +40,7 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -DOCS="AUTHORS BUGS COPYING ChangeLog INSTALL* NEWS README" +DOCS="AUTHORS BUGS CITATION COPYING ChangeLog INSTALL* NEWS README" if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" @@ -56,16 +56,8 @@ else LIBDIRSUFFIX="" fi -# Default to use ImageMagick (shipped with Slackware) instead of -# GraphicsMagick so that octave will have at least some sort of image -# reading capabilities. It's unclear if one is recommended over the other. -# -# ImageMagick uses 16 bits per pixel quantum (each of the red, green, blue, -# and alpha components) by default; GraphicsMagick uses 8 bits by default. -# If you require more, add '--with-quantum-depth=N' (where N is 8, 16, or 32) -# to the ./configure step of either Magick package when you build it. -# Larger values will make your Magick package slower and use more memory. -WITH_MAGICK=${WITH_MAGICK:-ImageMagick} # alternatively, "GraphicsMagick" +# TODO: ImageMagick 6.8.6-10 from Slackware 14.1 is not compatible. +# Newer versions might work, so try offering that alternative again later. # umfpack.h includes amd.h, which may be installed outside of the standard # search dirs if you use the SBo packages. This ensures UMFPACK is found. @@ -86,6 +78,15 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +# Allow Octave to find compressed info files. +# https://savannah.gnu.org/bugs/?41054 +patch -p1 < $CWD/patches/compressed-info.diff + +# Fix several configure checks due to the above umfpack.h -> amd.h issue. +# https://savannah.gnu.org/bugs/?41209 +patch -p1 < $CWD/patches/umfpack-cppflags.diff +autoreconf -vif + CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ FFLAGS="$SLKCFLAGS" \ @@ -97,10 +98,8 @@ FFLAGS="$SLKCFLAGS" \ --mandir=/usr/man \ --infodir=/usr/info \ --docdir=/usr/doc/$PRGNAM-$VERSION \ - --enable-shared \ - --disable-static \ + --disable-dependency-tracking \ --enable-strict-warning-flags \ - --with-magick=$WITH_MAGICK \ --with-amd-includedir=$WITH_AMD_INCLUDEDIR \ --build=$ARCH-slackware-linux diff --git a/academic/octave/octave.info b/academic/octave/octave.info index e39f690fda507..38427ac2a7d91 100644 --- a/academic/octave/octave.info +++ b/academic/octave/octave.info @@ -1,10 +1,10 @@ PRGNAM="octave" -VERSION="3.6.4" -HOMEPAGE="http://www.gnu.org/software/octave/" -DOWNLOAD="ftp://ftp.gnu.org/gnu/octave/octave-3.6.4.tar.bz2" -MD5SUM="e0d3e5e3d38a66d3f8593ba065c6e2fd" +VERSION="3.8.0" +HOMEPAGE="https://www.gnu.org/software/octave/" +DOWNLOAD="ftp://ftp.gnu.org/gnu/octave/octave-3.8.0.tar.bz2" +MD5SUM="442fe5205ba6322f7a69145b79fca85e" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="%README% lapack" +REQUIRES="%README% blas lapack" MAINTAINER="Kyle Guinn" EMAIL="elyk03@gmail.com" diff --git a/academic/octave/patches/compressed-info.diff b/academic/octave/patches/compressed-info.diff new file mode 100644 index 0000000000000..48178d773f1e9 --- /dev/null +++ b/academic/octave/patches/compressed-info.diff @@ -0,0 +1,13 @@ +diff --git a/scripts/help/doc.m b/scripts/help/doc.m +--- a/scripts/help/doc.m ++++ b/scripts/help/doc.m +@@ -80,7 +80,8 @@ + if (err < 0) + info_file_name = info_file (); + +- if (! exist (info_file_name, "file")) ++ if (! exist (info_file_name, "file") ++ && ! exist ([info_file_name ".gz"], "file")) + __gripe_missing_component__ ("doc", "info-file"); + endif + endif diff --git a/academic/octave/patches/umfpack-cppflags.diff b/academic/octave/patches/umfpack-cppflags.diff new file mode 100644 index 0000000000000..d56ba1f8ebdf5 --- /dev/null +++ b/academic/octave/patches/umfpack-cppflags.diff @@ -0,0 +1,31 @@ +diff --git a/configure.ac b/configure.ac +--- a/configure.ac ++++ b/configure.ac +@@ -1512,7 +1512,9 @@ + + if test -n "$UMFPACK_LIBS"; then + ## SuiteSparse >= 4.0 needs additional link library for SuiteSparse_time() ++ save_CPPFLAGS="$CPPFLAGS" + save_LIBS="$LIBS"; ++ CPPFLAGS="$UMFPACK_CPPFLAGS $AMD_CPPFLAGS $CPPFLAGS" + LIBS="$UMFPACK_LIBS $AMD_LDFLAGS $AMD_LIBS $BLAS_LIBS $FLIBS $LIBS" + xtra_libs= + OCTAVE_UMFPACK_NEED_SUITESPARSE_TIME +@@ -1535,13 +1537,17 @@ + esac + fi + LIBS="$save_LIBS" ++ CPPFLAGS="$save_CPPFLAGS" + + ## Check for UMFPACK separately split complex matrix and RHS. + if test -n "$UMFPACK_LIBS"; then ++ save_CPPFLAGS="$CPPFLAGS" + save_LIBS="$LIBS"; ++ CPPFLAGS="$UMFPACK_CPPFLAGS $AMD_CPPFLAGS $CPPFLAGS" + LIBS="$UMFPACK_LIBS $CHOLMOD_LDFLAGS $CHOLMOD_LIBS $AMD_LDFLAGS $AMD_LIBS $COLAMD_LDFLAGS $COLAMD_LIBS $LAPACK_LIBS $BLAS_LIBS $FLIBS $LIBS $xtra_libs" + OCTAVE_UMFPACK_SEPARATE_SPLIT + LIBS="$save_LIBS" ++ CPPFLAGS="$save_CPPFLAGS" + fi + fi + |