summaryrefslogtreecommitdiff
path: root/extra/octave
diff options
context:
space:
mode:
Diffstat (limited to 'extra/octave')
-rw-r--r--extra/octave/PKGBUILD26
-rw-r--r--extra/octave/buildfix.diff85
-rw-r--r--extra/octave/octave-gethelp.patch13
3 files changed, 117 insertions, 7 deletions
diff --git a/extra/octave/PKGBUILD b/extra/octave/PKGBUILD
index 2dbc969da..8aa1bde8a 100644
--- a/extra/octave/PKGBUILD
+++ b/extra/octave/PKGBUILD
@@ -1,32 +1,44 @@
-# $Id: PKGBUILD 161971 2012-06-17 19:52:12Z ronald $
+# $Id: PKGBUILD 168608 2012-10-13 11:48:28Z andyrtr $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor : shining <shiningxc.at.gmail.com>
# Contributor : cyberdune <cyberdune@gmail.com>
pkgname=octave
pkgver=3.6.2
-pkgrel=1
+pkgrel=2
pkgdesc="A high-level language, primarily intended for numerical computations."
arch=('i686' 'x86_64')
url="http://www.octave.org"
license=('GPL')
-depends=('fftw' 'pcre' 'curl' 'lapack' 'libx11' 'graphicsmagick' 'glpk' 'hdf5' 'gcc-libs' 'qhull' 'fltk' 'suitesparse')
+depends=('fftw' 'pcre' 'curl' 'lapack' 'libx11' 'graphicsmagick' 'glpk' 'hdf5' 'gcc-libs' 'qhull' 'fltk' 'suitesparse')
makedepends=('texinfo' 'graphicsmagick' 'gcc-fortran' 'suitesparse' 'texlive-core')
optdepends=('texinfo: for help-support in octave'
'gnuplot: alternative plotting')
-source=("ftp://ftp.gnu.org/gnu/octave/octave-$pkgver.tar.bz2")
+source=("ftp://ftp.gnu.org/gnu/octave/octave-$pkgver.tar.bz2"
+ buildfix.diff
+ octave-gethelp.patch)
options=('!emptydirs')
install=octave.install
-sha1sums=('145fef0122268086727a60e1c33e29d56fd546d7')
-
+sha1sums=('145fef0122268086727a60e1c33e29d56fd546d7'
+ 'a7cdba1e05fbdd182facdd804aeec37729255551'
+ 'd39d54763ac86114029f8bc5d60763d2adce27bb')
+
build() {
cd ${srcdir}/${pkgname}-${pkgver}
+ # patch by Gentoo http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sci-mathematics/octave/files/octave-3.4.3-gets.patch?view=log
+ patch -Np0 -i ${srcdir}/buildfix.diff
+ # http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sci-mathematics/octave/files/octave-3.4.3-help.patch?view=log
+ patch -Np0 -i ${srcdir}/octave-gethelp.patch
+
+ autoreconf -vfi
+
# http://www.nabble.com/Random-rounding-errors-td16010966.html
FFLAGS="-O -ffloat-store" \
./configure --prefix=/usr --libexecdir=/usr/lib \
- --enable-shared --disable-static
+ --enable-shared --disable-static \
+ --with-umfpack="-lumfpack -lsuitesparseconfig" # https://mailman.cae.wisc.edu/pipermail/help-octave/2012-September/053991.html
LANG=C make
}
diff --git a/extra/octave/buildfix.diff b/extra/octave/buildfix.diff
new file mode 100644
index 000000000..8288b7bec
--- /dev/null
+++ b/extra/octave/buildfix.diff
@@ -0,0 +1,85 @@
+--- libgnu/stdio.in.h.origs 2012-05-24 12:46:13.000000000 -0600
++++ libgnu/stdio.in.h 2012-05-24 16:29:54.813734894 -0600
+@@ -1,12 +1,10 @@
+-/* -*- buffer-read-only: t -*- vi: set ro: */
+-/* DO NOT EDIT! GENERATED AUTOMATICALLY! */
+ /* A GNU-like <stdio.h>.
+
+ Copyright (C) 2004, 2007-2012 Free Software Foundation, Inc.
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+- the Free Software Foundation; either version 3, or (at your option)
++ the Free Software Foundation; either version 2, or (at your option)
+ any later version.
+
+ This program is distributed in the hope that it will be useful,
+@@ -15,8 +13,7 @@
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+- along with this program; if not, write to the Free Software Foundation,
+- Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
++ along with this program; if not, see <http://www.gnu.org/licenses/>. */
+
+ #if __GNUC__ >= 3
+ @PRAGMA_SYSTEM_HEADER@
+@@ -55,7 +52,8 @@
+ #include <stddef.h>
+
+ /* Get off_t and ssize_t. Needed on many systems, including glibc 2.8
+- and eglibc 2.11.2. */
++ and eglibc 2.11.2.
++ May also define off_t to a 64-bit type on native Windows. */
+ #include <sys/types.h>
+
+ /* The __attribute__ feature is available in gcc versions 2.5 and later.
+@@ -701,22 +699,11 @@ _GL_WARN_ON_USE (getline, "getline is un
+ # endif
+ #endif
+
+-#if @GNULIB_GETS@
+-# if @REPLACE_STDIO_READ_FUNCS@ && @GNULIB_STDIO_H_NONBLOCKING@
+-# if !(defined __cplusplus && defined GNULIB_NAMESPACE)
+-# undef gets
+-# define gets rpl_gets
+-# endif
+-_GL_FUNCDECL_RPL (gets, char *, (char *s) _GL_ARG_NONNULL ((1)));
+-_GL_CXXALIAS_RPL (gets, char *, (char *s));
+-# else
+-_GL_CXXALIAS_SYS (gets, char *, (char *s));
+-# undef gets
+-# endif
+-_GL_CXXALIASWARN (gets);
+ /* It is very rare that the developer ever has full control of stdin,
+- so any use of gets warrants an unconditional warning. Assume it is
+- always declared, since it is required by C89. */
++ so any use of gets warrants an unconditional warning; besides, C11
++ removed it. */
++#undef gets
++#if HAVE_RAW_DECL_GETS
+ _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
+ #endif
+
+@@ -781,7 +768,7 @@ _GL_CXXALIASWARN (pclose);
+ #elif defined GNULIB_POSIXCHECK
+ # undef pclose
+ # if HAVE_RAW_DECL_PCLOSE
+-_GL_WARN_ON_USE (pclose, "popen is unportable - "
++_GL_WARN_ON_USE (pclose, "pclose is unportable - "
+ "use gnulib module pclose for more portability");
+ # endif
+ #endif
+@@ -1056,9 +1043,9 @@ _GL_WARN_ON_USE (snprintf, "snprintf is
+ # endif
+ #endif
+
+-/* Some people would argue that sprintf should be handled like gets
+- (for example, OpenBSD issues a link warning for both functions),
+- since both can cause security holes due to buffer overruns.
++/* Some people would argue that all sprintf uses should be warned about
++ (for example, OpenBSD issues a link warning for it),
++ since it can cause security holes due to buffer overruns.
+ However, we believe that sprintf can be used safely, and is more
+ efficient than snprintf in those safe cases; and as proof of our
+ belief, we use sprintf in several gnulib modules. So this header
diff --git a/extra/octave/octave-gethelp.patch b/extra/octave/octave-gethelp.patch
new file mode 100644
index 000000000..c0e693abc
--- /dev/null
+++ b/extra/octave/octave-gethelp.patch
@@ -0,0 +1,13 @@
+Help parallel compilation
+patch by Sebastien Fabbro
+--- scripts/Makefile.am.orig 2011-06-09 22:27:22.688268651 +0100
++++ scripts/Makefile.am 2011-02-08 10:00:51.000000000 +0000
+@@ -316,7 +316,7 @@
+
+ gethelp_SOURCES = gethelp.cc
+
+-.DOCSTRINGS: $(FCN_FILES) $(GEN_FCN_FILES) mkdoc $(gethelp_SOURCES) Makefile
++.DOCSTRINGS: $(FCN_FILES) $(GEN_FCN_FILES) mkdoc $(gethelp_SOURCES) Makefile gethelp
+ @$(MAKE) $(AM_MAKEFLAGS) gethelp$(BUILD_EXEEXT)
+ if [ "x$(srcdir)" != "x." ] && [ -f $(srcdir)/DOCSTRINGS ] && [ ! -f DOCSTRINGS ]; then \
+ cp $(srcdir)/DOCSTRINGS DOCSTRINGS; \