summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Wright <gienah@gentoo.org>2015-07-07 13:25:35 +0000
committerMark Wright <gienah@gentoo.org>2015-07-07 13:25:35 +0000
commite945fb75817fc0cf73f8f43bc0d13d17efe0128f (patch)
treeeb0bbf279d254b8788c4b12d86fb2dfb1a59f858 /sci-mathematics
parentx86 stable wrt bug #554104 (diff)
downloadgentoo-2-e945fb75817fc0cf73f8f43bc0d13d17efe0128f.tar.gz
gentoo-2-e945fb75817fc0cf73f8f43bc0d13d17efe0128f.tar.bz2
gentoo-2-e945fb75817fc0cf73f8f43bc0d13d17efe0128f.zip
Bump octave to 4.0.0, fixes Bug 550858 - sci-mathematics/octave-4.0 version bump, thanks to Bohdan Trach for reporting. octave 4.0.0 allows llvm 3.5, fixing Bug 531672 - sci-mathematics/octave-3.8.2 USE=jit depends on <sys-devel/llvm-3.5, thanks to Juergen Rose for reporting and eroen for an upstream bug reference. Fix Bug 539886 - sci-mathematics/octave-3.8.2 should depend on x11-libs/fltk[opengl,xft], thanks to Andreas Fink for reporting and the fix.
(Portage version: 2.2.20/cvs/Linux x86_64, signed Manifest commit with key 618E971F)
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/octave/ChangeLog17
-rw-r--r--sci-mathematics/octave/files/octave-4.0.0-imagemagick-configure.patch16
-rw-r--r--sci-mathematics/octave/files/octave-4.0.0-imagemagick.patch139
-rw-r--r--sci-mathematics/octave/files/octave-4.0.0-llvm-3.5.patch130
-rw-r--r--sci-mathematics/octave/octave-3.6.4-r1.ebuild6
-rw-r--r--sci-mathematics/octave/octave-3.6.4.ebuild6
-rw-r--r--sci-mathematics/octave/octave-3.8.1-r1.ebuild4
-rw-r--r--sci-mathematics/octave/octave-3.8.1.ebuild6
-rw-r--r--sci-mathematics/octave/octave-3.8.2.ebuild6
-rw-r--r--sci-mathematics/octave/octave-4.0.0.ebuild164
10 files changed, 479 insertions, 15 deletions
diff --git a/sci-mathematics/octave/ChangeLog b/sci-mathematics/octave/ChangeLog
index 58ab58003200..505268d116fb 100644
--- a/sci-mathematics/octave/ChangeLog
+++ b/sci-mathematics/octave/ChangeLog
@@ -1,6 +1,21 @@
# ChangeLog for sci-mathematics/octave
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.175 2015/07/05 14:47:44 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/ChangeLog,v 1.176 2015/07/07 13:25:35 gienah Exp $
+
+*octave-4.0.0 (07 Jul 2015)
+
+ 07 Jul 2015; Mark Wright <gienah@gentoo.org>
+ +files/octave-4.0.0-imagemagick-configure.patch,
+ +files/octave-4.0.0-imagemagick.patch, +files/octave-4.0.0-llvm-3.5.patch,
+ +octave-4.0.0.ebuild, metadata.xml, octave-3.6.4-r1.ebuild,
+ octave-3.6.4.ebuild, octave-3.8.1-r1.ebuild, octave-3.8.1.ebuild,
+ octave-3.8.2.ebuild:
+ Bump octave to 4.0.0, fixes Bug 550858 - sci-mathematics/octave-4.0 version
+ bump, thanks to Bohdan Trach for reporting. octave 4.0.0 allows llvm 3.5,
+ fixing Bug 531672 - sci-mathematics/octave-3.8.2 USE=jit depends on <sys-
+ devel/llvm-3.5, thanks to Juergen Rose for reporting and eroen for an upstream
+ bug reference. Fix Bug 539886 - sci-mathematics/octave-3.8.2 should depend on
+ x11-libs/fltk[opengl,xft], thanks to Andreas Fink for reporting and the fix.
05 Jul 2015; Michał Górny <mgorny@gentoo.org> octave-3.8.1-r1.ebuild,
octave-3.8.2.ebuild:
diff --git a/sci-mathematics/octave/files/octave-4.0.0-imagemagick-configure.patch b/sci-mathematics/octave/files/octave-4.0.0-imagemagick-configure.patch
new file mode 100644
index 000000000000..4e88ac07b13a
--- /dev/null
+++ b/sci-mathematics/octave/files/octave-4.0.0-imagemagick-configure.patch
@@ -0,0 +1,16 @@
+--- octave-4.0.0-orig/configure.ac 2015-05-27 02:16:39.000000000 +1000
++++ octave-4.0.0/configure.ac 2015-07-06 18:11:43.461136517 +1000
+@@ -1086,11 +1086,11 @@
+ MAGICK_LIBS=
+
+ PKG_CHECK_EXISTS([$magick++], [
+- ## Make sure we only get -I, -L, and -l flags. Some Graphics/ImageMagick++
++ ## Make sure we only get -I, -D, -L, and -l flags. Some Graphics/ImageMagick++
+ ## packages add extra flags that are useful when building
+ ## Graphics/ImageMagick++ extentions. These extra flags break the
+ ## Octave build.
+- MAGICK_CPPFLAGS=`$PKG_CONFIG --cflags-only-I $magick++`
++ MAGICK_CPPFLAGS=`$PKG_CONFIG --cflags $magick++ | sed -e 's/\(-@<:@DI@:>@@<:@^ \t@:>@*\)\|\(-@<:@^ \t@:>@*\)/\1/g'`
+ MAGICK_LDFLAGS=`$PKG_CONFIG --libs-only-L $magick++`
+ MAGICK_LIBS=`$PKG_CONFIG --libs-only-l $magick++`
+
diff --git a/sci-mathematics/octave/files/octave-4.0.0-imagemagick.patch b/sci-mathematics/octave/files/octave-4.0.0-imagemagick.patch
new file mode 100644
index 000000000000..9e3689176cbd
--- /dev/null
+++ b/sci-mathematics/octave/files/octave-4.0.0-imagemagick.patch
@@ -0,0 +1,139 @@
+--- octave-4.0.0-orig/libinterp/dldfcn/__magick_read__.cc 2015-05-24 00:21:53.000000000 +1000
++++ octave-4.0.0/libinterp/dldfcn/__magick_read__.cc 2015-07-06 18:17:52.263146804 +1000
+@@ -38,8 +38,15 @@
+ #include "gripes.h"
+
+ #ifdef HAVE_MAGICK
+-
++#define MAGICKCORE_EXCLUDE_DEPRECATED 1
+ #include <Magick++.h>
++#if !defined(QuantumRange) && defined(MaxRGB)
++#define QuantumRange MaxRGB
++#endif
++#if !defined(MAGICKCORE_QUANTUM_DEPTH) && defined(QuantumDepth)
++#define MAGICKCORE_QUANTUM_DEPTH QuantumDepth
++#endif
++
+ #include <clocale>
+
+ // In theory, it should be enough to check the class:
+@@ -121,12 +128,18 @@
+ get_depth (Magick::Image& img)
+ {
+ octave_idx_type depth = img.depth ();
++#if defined(MagickLibVersion) && (MagickLibVersion <= 0x686)
++#define Magick MagickCore
++#endif
+ if (depth == 8
+ && img.channelDepth (Magick::RedChannel) == 1
+ && img.channelDepth (Magick::CyanChannel) == 1
+ && img.channelDepth (Magick::OpacityChannel) == 1
+ && img.channelDepth (Magick::GrayChannel) == 1)
+ depth = 1;
++#if defined(MagickLibVersion) && (MagickLibVersion <= 0x686)
++#undef Magick
++#endif
+
+ return depth;
+ }
+@@ -350,7 +363,10 @@
+ if (imvec[def_elem].depth () == 32)
+ divisor = std::numeric_limits<uint32_t>::max ();
+ else
+- divisor = MaxRGB / ((uint64_t (1) << imvec[def_elem].depth ()) - 1);
++ {
++ using namespace Magick;
++ divisor = QuantumRange / ((uint64_t (1) << imvec[def_elem].depth ()) - 1);
++ }
+
+ // FIXME: this workaround should probably be fixed in GM by creating a
+ // new ImageType BilevelMatteType
+@@ -484,7 +500,8 @@
+ for (octave_idx_type row = 0; row < nRows; row++)
+ {
+ img_fvec[idx] = pix->red / divisor;
+- a_fvec[idx] = (MaxRGB - pix->opacity) / divisor;
++ using namespace Magick;
++ a_fvec[idx] = (QuantumRange - pix->opacity) / divisor;
+ pix += row_shift;
+ idx++;
+ }
+@@ -563,7 +580,8 @@
+ rbuf[idx] = pix->red / divisor;
+ gbuf[idx] = pix->green / divisor;
+ bbuf[idx] = pix->blue / divisor;
+- a_fvec[a_idx++] = (MaxRGB - pix->opacity) / divisor;
++ using namespace Magick;
++ a_fvec[a_idx++] = (QuantumRange - pix->opacity) / divisor;
+ pix += row_shift;
+ idx++;
+ }
+@@ -650,7 +668,8 @@
+ mbuf[idx] = pix->green / divisor;
+ ybuf[idx] = pix->blue / divisor;
+ kbuf[idx] = pix->opacity / divisor;
+- a_fvec[a_idx++] = (MaxRGB - *apix) / divisor;
++ using namespace Magick;
++ a_fvec[a_idx++] = (QuantumRange - *apix) / divisor;
+ pix += row_shift;
+ idx++;
+ }
+@@ -709,10 +728,11 @@
+ // Restore locale from before GraphicsMagick initialisation
+ setlocale (LC_ALL, locale.c_str ());
+
+- if (QuantumDepth < 32)
++ using namespace Magick;
++ if (MAGICKCORE_QUANTUM_DEPTH < 32)
+ warning_with_id ("Octave:GraphicsMagic-Quantum-Depth",
+ "your version of %s limits images to %d bits per pixel",
+- MagickPackageName, QuantumDepth);
++ MagickPackageName, MAGICKCORE_QUANTUM_DEPTH);
+
+ initialized = true;
+ }
+@@ -1087,8 +1107,9 @@
+ // From GM documentation:
+ // Color arguments are must be scaled to fit the Quantum size according to
+ // the range of MaxRGB
++ using namespace Magick;
+ const double divisor = static_cast<double>((uint64_t (1) << bitdepth) - 1)
+- / MaxRGB;
++ / QuantumRange;
+
+ const P *img_fvec = img.fortran_vec ();
+ const P *a_fvec = alpha.fortran_vec ();
+@@ -1140,8 +1161,9 @@
+ for (octave_idx_type row = 0; row < nRows; row++)
+ {
+ double grey = double (*img_fvec) / divisor;
++ using namespace Magick;
+ Magick::Color c (grey, grey, grey,
+- MaxRGB - (double (*a_fvec) / divisor));
++ QuantumRange - (double (*a_fvec) / divisor));
+ pix[GM_idx] = c;
+ img_fvec++;
+ a_fvec++;
+@@ -1209,10 +1231,11 @@
+ {
+ for (octave_idx_type row = 0; row < nRows; row++)
+ {
++ using namespace Magick;
+ Magick::Color c (double (*img_fvec) / divisor,
+ double (img_fvec[G_offset]) / divisor,
+ double (img_fvec[B_offset]) / divisor,
+- MaxRGB - (double (*a_fvec) / divisor));
++ QuantumRange - (double (*a_fvec) / divisor));
+ pix[GM_idx] = c;
+ img_fvec++;
+ a_fvec++;
+@@ -1290,7 +1313,8 @@
+ double (img_fvec[Y_offset]) / divisor,
+ double (img_fvec[K_offset]) / divisor);
+ pix[GM_idx] = c;
+- ind[GM_idx] = MaxRGB - (double (*a_fvec) / divisor);
++ using namespace Magick;
++ ind[GM_idx] = QuantumRange - (double (*a_fvec) / divisor);
+ img_fvec++;
+ a_fvec++;
+ GM_idx += nCols;
diff --git a/sci-mathematics/octave/files/octave-4.0.0-llvm-3.5.patch b/sci-mathematics/octave/files/octave-4.0.0-llvm-3.5.patch
new file mode 100644
index 000000000000..31b1bed74e2d
--- /dev/null
+++ b/sci-mathematics/octave/files/octave-4.0.0-llvm-3.5.patch
@@ -0,0 +1,130 @@
+diff -r 3797df921988 configure.ac
+--- a/configure.ac Wed Apr 29 17:09:24 2015 -0700
++++ b/configure.ac Sun May 03 22:48:56 2015 +0200
+@@ -815,8 +815,13 @@
+ AC_MSG_NOTICE([using -isystem for LLVM headers])])
+
+ dnl Use -isystem so we don't get warnings from llvm headers
+- LLVM_CPPFLAGS="$LLVM_INCLUDE_FLAG `$LLVM_CONFIG --includedir`"
+- LLVM_CXXFLAGS=
++ AX_CHECK_COMPILE_FLAG([-std=c++11],[
++ LLVM_CPPFLAGS="-std=c++11 $LLVM_INCLUDE_FLAG `$LLVM_CONFIG --includedir`"
++ LLVM_CXXFLAGS="-std=c++11"
++ ],[
++ LLVM_CPPFLAGS="$LLVM_INCLUDE_FLAG `$LLVM_CONFIG --includedir`"
++ LLVM_CXXFLAGS=
++ ])
+ LLVM_LDFLAGS="-L`$LLVM_CONFIG --libdir`"
+
+
+@@ -860,6 +865,8 @@
+ OCTAVE_LLVM_CALLINST_ADDATTRIBUTE_API
+ OCTAVE_LLVM_RAW_FD_OSTREAM_API
+ OCTAVE_LLVM_LEGACY_PASSMANAGER_API
++ OCTAVE_LLVM_DATALAYOUTPASS_API
++
+ AC_LANG_POP(C++)
+ CPPFLAGS="$save_CPPFLAGS"
+ CXXFLAGS="$save_CXXFLAGS"
+diff -r 3797df921988 libinterp/corefcn/jit-typeinfo.cc
+--- a/libinterp/corefcn/jit-typeinfo.cc Wed Apr 29 17:09:24 2015 -0700
++++ b/libinterp/corefcn/jit-typeinfo.cc Sun May 03 22:48:56 2015 +0200
+@@ -1208,7 +1208,7 @@
+ for (int op = 0; op < octave_value::num_binary_ops; ++op)
+ {
+ llvm::Twine fn_name ("octave_jit_binary_any_any_");
+- fn_name = fn_name + llvm::Twine (op);
++ fn_name.concat( llvm::Twine (op) );
+
+ fn = create_internal (fn_name, any, any, any);
+ fn.mark_can_error ();
+diff -r 3797df921988 libinterp/corefcn/pt-jit.cc
+--- a/libinterp/corefcn/pt-jit.cc Wed Apr 29 17:09:24 2015 -0700
++++ b/libinterp/corefcn/pt-jit.cc Sun May 03 22:48:56 2015 +0200
+@@ -59,6 +59,7 @@
+
+ #include <llvm/Bitcode/ReaderWriter.h>
+ #include <llvm/ExecutionEngine/ExecutionEngine.h>
++#include <llvm/ExecutionEngine/MCJIT.h>
+ #include <llvm/ExecutionEngine/JIT.h>
+
+ #ifdef LEGACY_PASSMANAGER
+@@ -83,6 +84,7 @@
+ #include <llvm/IRBuilder.h>
+ #endif
+
++#include <llvm/Support/FileSystem.h>
+ #include <llvm/Support/raw_os_ostream.h>
+ #include <llvm/Support/TargetSelect.h>
+
+@@ -2077,7 +2079,11 @@
+ module_pass_manager->add (llvm::createAlwaysInlinerPass ());
+
+ #ifdef HAVE_LLVM_DATALAYOUT
++#ifdef HAVE_LLVM_DATALAYOUTPASS
++ pass_manager->add (new llvm::DataLayoutPass (*engine->getDataLayout ()));
++#else
+ pass_manager->add (new llvm::DataLayout (*engine->getDataLayout ()));
++#endif
+ #else
+ pass_manager->add (new llvm::TargetData (*engine->getTargetData ()));
+ #endif
+@@ -2192,7 +2198,7 @@
+ std::string error;
+ #ifdef RAW_FD_OSTREAM_ARG_IS_LLVM_SYS_FS
+ llvm::raw_fd_ostream fout ("test.bc", error,
+- llvm::sys::fs::F_Binary);
++ llvm::sys::fs::F_Text);
+ #else
+ llvm::raw_fd_ostream fout ("test.bc", error,
+ llvm::raw_fd_ostream::F_Binary);
+diff -r 3797df921988 m4/acinclude.m4
+--- a/m4/acinclude.m4 Wed Apr 29 17:09:24 2015 -0700
++++ b/m4/acinclude.m4 Sun May 03 22:48:56 2015 +0200
+@@ -1784,10 +1784,11 @@
+ [AC_LANG_PUSH(C++)
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[
++ #include <llvm/Support/FileSystem.h>
+ #include <llvm/Support/raw_os_ostream.h>
+ ]], [[
+ std::string str;
+- llvm::raw_fd_ostream fout ("", str, llvm::sys::fs::F_Binary);
++ llvm::raw_fd_ostream fout ("", str, llvm::sys::fs::F_Text);
+ ]])],
+ octave_cv_raw_fd_ostream_arg_is_llvm_sys_fs=yes,
+ octave_cv_raw_fd_ostream_arg_is_llvm_sys_fs=no)
+@@ -1828,6 +1829,33 @@
+ fi
+ ])
+ dnl
++dnl Check for llvm::DataLayoutPass API
++dnl
++AC_DEFUN([OCTAVE_LLVM_DATALAYOUTPASS_API], [
++ AC_CACHE_CHECK([check for LLVM::DataLayoutPass],
++ [octave_cv_datalayoutpass],
++ [AC_LANG_PUSH(C++)
++ save_LIBS="$LIBS"
++ LIBS="$LLVM_LIBS $LIBS"
++ AC_LINK_IFELSE(
++ [AC_LANG_PROGRAM([[
++ #include <llvm/IR/DataLayout.h>
++ ]], [[
++ llvm::Module *module;
++ llvm::DataLayoutPass *datalayoutpass;
++ datalayoutpass = new llvm::DataLayoutPass (module)
++ ]])],
++ octave_cv_datalayoutpass=yes,
++ octave_cv_datalayoutpass=no)
++ LIBS="$save_LIBS"
++ AC_LANG_POP(C++)
++ ])
++ if test $octave_cv_datalayoutpass = yes; then
++ AC_DEFINE(HAVE_LLVM_DATALAYOUTPASS, 1,
++ [Define to 1 if LLVM::DataLayoutPass exists.])
++ fi
++])
++dnl
+ dnl Check for ar.
+ dnl
+ AC_DEFUN([OCTAVE_PROG_AR], [
diff --git a/sci-mathematics/octave/octave-3.6.4-r1.ebuild b/sci-mathematics/octave/octave-3.6.4-r1.ebuild
index 59b6483d8614..d4e0d1ccd437 100644
--- a/sci-mathematics/octave/octave-3.6.4-r1.ebuild
+++ b/sci-mathematics/octave/octave-3.6.4-r1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.6.4-r1.ebuild,v 1.3 2014/02/24 11:16:44 gienah Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.6.4-r1.ebuild,v 1.4 2015/07/07 13:25:35 gienah Exp $
EAPI=5
@@ -43,7 +43,7 @@ RDEPEND="
media-gfx/transfig )
qhull? ( media-libs/qhull )
qrupdate? ( sci-libs/qrupdate )
- readline? ( sys-libs/readline )
+ readline? ( sys-libs/readline:0 )
sparse? (
sci-libs/arpack
sci-libs/camd
diff --git a/sci-mathematics/octave/octave-3.6.4.ebuild b/sci-mathematics/octave/octave-3.6.4.ebuild
index ff5bada061b5..775a7d4a2a1b 100644
--- a/sci-mathematics/octave/octave-3.6.4.ebuild
+++ b/sci-mathematics/octave/octave-3.6.4.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.6.4.ebuild,v 1.10 2014/02/24 11:16:44 gienah Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.6.4.ebuild,v 1.11 2015/07/07 13:25:35 gienah Exp $
EAPI=5
@@ -43,7 +43,7 @@ RDEPEND="
media-gfx/transfig )
qhull? ( media-libs/qhull )
qrupdate? ( sci-libs/qrupdate )
- readline? ( sys-libs/readline )
+ readline? ( sys-libs/readline:0 )
sparse? (
sci-libs/arpack
sci-libs/camd
diff --git a/sci-mathematics/octave/octave-3.8.1-r1.ebuild b/sci-mathematics/octave/octave-3.8.1-r1.ebuild
index 41bd7cbba23a..0f2a11e786bb 100644
--- a/sci-mathematics/octave/octave-3.8.1-r1.ebuild
+++ b/sci-mathematics/octave/octave-3.8.1-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.8.1-r1.ebuild,v 1.7 2015/07/05 14:47:44 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.8.1-r1.ebuild,v 1.8 2015/07/07 13:25:35 gienah Exp $
EAPI=5
@@ -33,7 +33,7 @@ RDEPEND="
imagemagick? ( || (
media-gfx/graphicsmagick[cxx]
media-gfx/imagemagick[cxx] ) )
- java? ( >=virtual/jre-1.6.0 )
+ java? ( >=virtual/jre-1.6.0:* )
jit? ( <sys-devel/llvm-3.5 )
opengl? (
media-libs/freetype:2=
diff --git a/sci-mathematics/octave/octave-3.8.1.ebuild b/sci-mathematics/octave/octave-3.8.1.ebuild
index 0408eb6fb16c..ea018084658f 100644
--- a/sci-mathematics/octave/octave-3.8.1.ebuild
+++ b/sci-mathematics/octave/octave-3.8.1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2014 Gentoo Foundation
+# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.8.1.ebuild,v 1.2 2014/09/09 13:18:53 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.8.1.ebuild,v 1.3 2015/07/07 13:25:35 gienah Exp $
EAPI=5
@@ -46,7 +46,7 @@ RDEPEND="
media-gfx/transfig )
qhull? ( media-libs/qhull )
qrupdate? ( sci-libs/qrupdate )
- readline? ( sys-libs/readline )
+ readline? ( sys-libs/readline:0 )
sparse? (
sci-libs/arpack
sci-libs/camd
diff --git a/sci-mathematics/octave/octave-3.8.2.ebuild b/sci-mathematics/octave/octave-3.8.2.ebuild
index d3c0b0c9f4c9..f653756498d3 100644
--- a/sci-mathematics/octave/octave-3.8.2.ebuild
+++ b/sci-mathematics/octave/octave-3.8.2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.8.2.ebuild,v 1.9 2015/07/05 14:47:44 mgorny Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-3.8.2.ebuild,v 1.10 2015/07/07 13:25:35 gienah Exp $
EAPI=5
@@ -33,12 +33,12 @@ RDEPEND="
imagemagick? ( || (
media-gfx/graphicsmagick[cxx]
media-gfx/imagemagick[cxx] ) )
- java? ( >=virtual/jre-1.6.0 )
+ java? ( >=virtual/jre-1.6.0:* )
jit? ( <sys-devel/llvm-3.5:0= )
opengl? (
media-libs/freetype:2=
media-libs/fontconfig:1.0=
- >=x11-libs/fltk-1.3:1=[opengl]
+ >=x11-libs/fltk-1.3:1=[opengl,xft]
x11-libs/gl2ps:0=
virtual/glu )
postscript? (
diff --git a/sci-mathematics/octave/octave-4.0.0.ebuild b/sci-mathematics/octave/octave-4.0.0.ebuild
new file mode 100644
index 000000000000..b8b77603bff7
--- /dev/null
+++ b/sci-mathematics/octave/octave-4.0.0.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/octave/octave-4.0.0.ebuild,v 1.1 2015/07/07 13:25:35 gienah Exp $
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_IN_SOURCE_BUILD=1
+
+inherit autotools-utils multilib toolchain-funcs fortran-2 flag-o-matic java-pkg-opt-2 pax-utils
+
+DESCRIPTION="High-level interactive language for numerical computations"
+LICENSE="GPL-3"
+HOMEPAGE="http://www.octave.org/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+SLOT="0/${PV}"
+IUSE="curl doc fftw +glpk gnuplot gui hdf5 +imagemagick java jit opengl
+ postscript +qhull +qrupdate readline +sparse static-libs X zlib"
+KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ app-text/ghostscript-gpl
+ dev-libs/libpcre:3=
+ sys-libs/ncurses:5=
+ virtual/blas
+ virtual/lapack
+ curl? ( net-misc/curl:0= )
+ fftw? ( sci-libs/fftw:3.0= )
+ glpk? ( sci-mathematics/glpk:0= )
+ gnuplot? ( sci-visualization/gnuplot )
+ gui? ( x11-libs/qscintilla:0= )
+ hdf5? ( sci-libs/hdf5:0= )
+ imagemagick? ( || (
+ media-gfx/graphicsmagick[cxx]
+ media-gfx/imagemagick[cxx] ) )
+ java? ( >=virtual/jre-1.6.0:* )
+ jit? ( >=sys-devel/llvm-3.3:0= <sys-devel/llvm-3.6:0= )
+ opengl? (
+ media-libs/freetype:2=
+ media-libs/fontconfig:1.0=
+ >=x11-libs/fltk-1.3:1=[opengl,xft]
+ x11-libs/gl2ps:0=
+ virtual/glu )
+ postscript? (
+ app-text/epstool
+ media-gfx/pstoedit
+ media-gfx/transfig )
+ qhull? ( media-libs/qhull:0= )
+ qrupdate? ( sci-libs/qrupdate:0= )
+ readline? ( sys-libs/readline:0= )
+ sparse? (
+ sci-libs/arpack:0=
+ sci-libs/camd:0=
+ sci-libs/ccolamd:0=
+ sci-libs/cholmod:0=
+ sci-libs/colamd:0=
+ sci-libs/cxsparse:0=
+ sci-libs/umfpack:0= )
+ X? ( x11-libs/libX11:0= )
+ zlib? ( sys-libs/zlib:0= )"
+
+DEPEND="${RDEPEND}
+ qrupdate? ( app-misc/pax-utils )
+ sparse? ( app-misc/pax-utils )
+ java? ( >=virtual/jdk-1.6.0 )
+ doc? (
+ virtual/latex-base
+ dev-texlive/texlive-genericrecommended
+ dev-texlive/texlive-metapost
+ sys-apps/texinfo )
+ dev-util/gperf
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.4.3-texi.patch
+ "${FILESDIR}"/${PN}-3.8.0-disable-getcwd-path-max-test-as-it-is-too-slow.patch
+ "${FILESDIR}"/${PN}-4.0.0-imagemagick-configure.patch
+ "${FILESDIR}"/${PN}-4.0.0-imagemagick.patch
+ "${FILESDIR}"/${PN}-3.8.1-pkgbuilddir.patch
+)
+
+src_prepare() {
+ # nasty prefix hacks for fltk:1 and qt4 linking
+ if use prefix; then
+ use opengl && append-ldflags -Wl,-rpath,"${EPREFIX}/usr/$(get_libdir)/fltk-1"
+ use gui && append-ldflags -Wl,-rpath,"${EPREFIX}/usr/$(get_libdir)/qt4"
+ fi
+
+ has_version ">=sys-devel/llvm-3.5" && \
+ epatch "${FILESDIR}"/${PN}-4.0.0-llvm-3.5.patch
+
+ # Fix bug 501756
+ sed -i \
+ -e 's@A-Za-z0-9@[:alnum:]@g' \
+ -e 's@A-Za-z@[:alpha:]@g' \
+ libinterp/mkbuiltins || die
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ # occasional fail on install, force regeneration (bug #401189)
+ rm doc/interpreter/contributors.texi || die
+
+ # unfortunate dependency on mpi from hdf5 (bug #302621)
+ use hdf5 && has_version sci-libs/hdf5[mpi] && \
+ export CXX=mpicxx CC=mpicc FC=mpif77 F77=mpif77
+
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}/var/state/octave"
+ --with-blas="$($(tc-getPKG_CONFIG) --libs blas)"
+ --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)"
+ --without-64
+ $(use_enable doc docs)
+ $(use_enable java)
+ $(use_enable gui)
+ $(use_enable jit)
+ $(use_enable readline)
+ $(use_with curl)
+ $(use_with fftw fftw3)
+ $(use_with fftw fftw3f)
+ $(use_enable fftw fftw-threads)
+ $(use_with glpk)
+ $(use_with hdf5)
+ $(use_with opengl)
+ $(use_with qhull)
+ $(use_with qrupdate)
+ $(use_with sparse arpack)
+ $(use_with sparse umfpack)
+ $(use_with sparse colamd)
+ $(use_with sparse ccolamd)
+ $(use_with sparse cholmod)
+ $(use_with sparse cxsparse)
+ $(use_with X x)
+ $(use_with zlib z)
+ )
+ if use imagemagick; then
+ if has_version media-gfx/graphicsmagick[cxx]; then
+ myeconfargs+=( "--with-magick=GraphicsMagick" )
+ else
+ myeconfargs+=( "--with-magick=ImageMagick" )
+ fi
+ else
+ myeconfargs+=( "--without-magick" )
+ fi
+ autotools-utils_src_configure
+}
+
+src_compile() {
+ emake
+ if use java || use jit ; then
+ pax-mark m "${S}/src/.libs/octave-cli"
+ fi
+}
+
+src_install() {
+ autotools-utils_src_install
+ use doc && dodoc $(find doc -name \*.pdf)
+ [[ -e test/fntests.log ]] && dodoc test/fntests.log
+ use java && \
+ java-pkg_regjar "${ED}/usr/share/${PN}/${PV}/m/java/octave.jar"
+ echo "LDPATH=${EROOT}usr/$(get_libdir)/${PN}/${PV}" > 99octave
+ doenvd 99octave
+}