commit:     3613246e32e9e7d129f8b2bb981b816bdc6dd8c4
Author:     Jouni Kosonen <jouni.kosonen <AT> tukesoft <DOT> com>
AuthorDate: Wed Mar 21 15:51:38 2018 +0000
Commit:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Wed Mar 21 22:04:45 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3613246e

sci-mathematics/octave: version bump to 4.2.2.

Closes: https://bugs.gentoo.org/650974
Closes: https://github.com/gentoo/gentoo/pull/7534

 sci-mathematics/octave/Manifest                    |   1 +
 .../octave-4.2.2-fix-qscintilla-detection.patch    |  14 ++
 .../files/octave-4.2.2-imagemagick-configure.patch |  16 ++
 .../files/octave-4.2.2-ncurses-pkgconfig.patch     |  37 ++++
 sci-mathematics/octave/octave-4.2.2.ebuild         | 187 +++++++++++++++++++++
 5 files changed, 255 insertions(+)

diff --git a/sci-mathematics/octave/Manifest b/sci-mathematics/octave/Manifest
index 071b0414714..7bc14e5915b 100644
--- a/sci-mathematics/octave/Manifest
+++ b/sci-mathematics/octave/Manifest
@@ -1 +1,2 @@
 DIST octave-4.2.1.tar.gz 25409651 BLAKE2B 
c53dd025cbad023d4d343d47ff13051f6f66bc8cfeece6c56eda83a80c92d2256fd1e75d5574ae024e42d707eb22b60420269f91a4930642aec8e3391a17b035
 SHA512 
c437c57eb145ddea7b97124dc6406d130fd91c9141198b93bc756bb05cb3f7645a7c591443faeb65e69edf6abc2b8d5612e515f7703a04eed27213a2133009b7
+DIST octave-4.2.2.tar.gz 25624087 BLAKE2B 
c46de90d9a985c2b6b4f87b94b56f2ba4fb648ca0a0aff1f64e9b9d27a6d791e8657c2bff0c4daa3de5ac3622c23b34724e740ec1fe0f1a71d8f416c9f58d88a
 SHA512 
b94edd79adc0e19229bb654037910201b51b6cfa373d63de5e3aa69e9b659b2e2790e2d2b4b5e8d2f12b26846c20ba5c12eae657155c8329e85e970f738d08c2

diff --git 
a/sci-mathematics/octave/files/octave-4.2.2-fix-qscintilla-detection.patch 
b/sci-mathematics/octave/files/octave-4.2.2-fix-qscintilla-detection.patch
new file mode 100644
index 00000000000..80fc2801323
--- /dev/null
+++ b/sci-mathematics/octave/files/octave-4.2.2-fix-qscintilla-detection.patch
@@ -0,0 +1,14 @@
+In Gentoo, QScintilla for Qt5 has the same library name
+as its Qt4 variant.
+
+--- a/m4/acinclude.m4
++++ b/m4/acinclude.m4
+@@ -1460,7 +1460,7 @@
+     ;;
+     5)
+       QT_MODULES="Qt5Core Qt5Gui Qt5Network Qt5OpenGL Qt5PrintSupport"
+-      octave_qscintilla_libnames="qscintilla2-qt5 qscintilla2_qt5 
qt5scintilla2"
++      octave_qscintilla_libnames="qscintilla2_qt5 qscintilla2"
+     ;;
+     *)
+       AC_MSG_ERROR([Unrecognized Qt version $qt_version])

diff --git 
a/sci-mathematics/octave/files/octave-4.2.2-imagemagick-configure.patch 
b/sci-mathematics/octave/files/octave-4.2.2-imagemagick-configure.patch
new file mode 100644
index 00000000000..d80c23ec422
--- /dev/null
+++ b/sci-mathematics/octave/files/octave-4.2.2-imagemagick-configure.patch
@@ -0,0 +1,16 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -1560,11 +1560,11 @@ if test $check_magick = yes; then
+   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++ | $SED -e 's/^ 
*$//')"
++    MAGICK_CPPFLAGS="$($PKG_CONFIG --cflags-only-I $magick++ | $SED -e 's/^ 
*$//' | $SED -e 's/\(-@<:@DI@:>@@<:@^ \t@:>@*\)\|\(-@<:@^ \t@:>@*\)/\1/g')"
+     MAGICK_LDFLAGS="$($PKG_CONFIG --libs-only-L $magick++ | $SED -e 's/^ 
*$//')"
+     MAGICK_LIBS="$($PKG_CONFIG --libs-only-l $magick++ | $SED -e 's/^ *$//')"
+ 

diff --git a/sci-mathematics/octave/files/octave-4.2.2-ncurses-pkgconfig.patch 
b/sci-mathematics/octave/files/octave-4.2.2-ncurses-pkgconfig.patch
new file mode 100644
index 00000000000..d20fef5c56e
--- /dev/null
+++ b/sci-mathematics/octave/files/octave-4.2.2-ncurses-pkgconfig.patch
@@ -0,0 +1,37 @@
+--- a/m4/acinclude.m4
++++ b/m4/acinclude.m4
+@@ -1327,32 +1327,8 @@
+ dnl Find a suitable termlib to use.
+ dnl
+ AC_DEFUN([OCTAVE_CHECK_LIB_TERMLIB], [
+-  TERM_LIBS=
+-  ac_octave_save_LIBS="$LIBS"
+-  AC_SEARCH_LIBS([tputs],
+-                 [ncurses curses termcap terminfo termlib],
+-                 [], [])
+-  LIBS="$ac_octave_save_LIBS"
+-  case "$ac_cv_search_tputs" in
+-    -l*)
+-      TERM_LIBS="$ac_cv_search_tputs"
+-    ;;
+-    no)
+-      warn_termlibs="I couldn't find -ltermcap, -lterminfo, -lncurses, 
-lcurses, or -ltermlib!"
+-      AC_MSG_WARN([$warn_termlibs])
+-    ;;
+-  esac
+-
+-dnl  Old code (9/9/2012).  Delete when new code is definitely proven.
+-dnl
+-dnl  for _termlib in ncurses curses termcap terminfo termlib; do
+-dnl    AC_CHECK_LIB([${_termlib}], [tputs], [
+-dnl      TERM_LIBS="-l${termlib}"
+-dnl      octave_cv_lib_found_termlib=yes
+-dnl      break])
+-dnl  done
+-
+-  AC_SUBST(TERM_LIBS)
++  PKG_CHECK_MODULES([TERM], [ncurses])
++  CPPFLAGS="${CPPFLAGS} ${TERM_CFLAGS}"
+ ])
+ dnl
+ dnl Check for the Qhull version.

diff --git a/sci-mathematics/octave/octave-4.2.2.ebuild 
b/sci-mathematics/octave/octave-4.2.2.ebuild
new file mode 100644
index 00000000000..f120643f017
--- /dev/null
+++ b/sci-mathematics/octave/octave-4.2.2.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic fortran-2 java-pkg-opt-2 pax-utils 
toolchain-funcs xdg-utils
+
+DESCRIPTION="High-level interactive language for numerical computations"
+LICENSE="GPL-3"
+HOMEPAGE="http://www.octave.org/";
+SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
+
+SLOT="0/${PV}"
+IUSE="curl doc fftw +glpk gnuplot graphicsmagick gui hdf5 +imagemagick java 
opengl openssl
+       portaudio postscript +qhull +qrupdate readline sndfile +sparse 
static-libs X zlib"
+KEYWORDS="amd64 ~arm hppa ppc ppc64 x86 ~x86-fbsd ~amd64-linux ~x86-linux"
+
+RDEPEND="
+       app-arch/bzip2
+       app-text/ghostscript-gpl
+       dev-libs/libpcre:3=
+       sys-libs/ncurses:0=
+       sys-libs/zlib
+       virtual/blas
+       virtual/lapack
+       curl? ( net-misc/curl:0= )
+       fftw? ( sci-libs/fftw:3.0= )
+       glpk? ( sci-mathematics/glpk:0= )
+       gnuplot? ( sci-visualization/gnuplot )
+       hdf5? ( sci-libs/hdf5:0= )
+       imagemagick? (
+               !graphicsmagick? ( media-gfx/imagemagick:=[cxx] )
+               graphicsmagick? ( media-gfx/graphicsmagick:=[cxx] )
+       )
+       java? ( >=virtual/jre-1.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
+       )
+       openssl? ( dev-libs/openssl:0= )
+       portaudio? ( media-libs/portaudio )
+       postscript? (
+               app-text/epstool
+               media-gfx/pstoedit
+               media-gfx/transfig
+       )
+       qhull? ( media-libs/qhull:0= )
+       qrupdate? ( sci-libs/qrupdate:0= )
+       gui? (
+               dev-qt/qtcore:5
+               dev-qt/qtgui:5
+               dev-qt/qtnetwork:5
+               dev-qt/qtopengl:5
+               >=x11-libs/qscintilla-2.9.3-r2:=[qt5(+)]
+       )
+       readline? ( sys-libs/readline:0= )
+       sndfile? ( media-libs/libsndfile )
+       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= )"
+DEPEND="${RDEPEND}
+       gui? ( dev-qt/linguist-tools:5 )
+       qrupdate? ( app-misc/pax-utils )
+       sparse? ( app-misc/pax-utils )
+       java? ( >=virtual/jdk-1.6.0 )
+       doc? (
+               virtual/latex-base
+               dev-texlive/texlive-fontsrecommended
+               || ( dev-texlive/texlive-plaingeneric 
dev-texlive/texlive-genericrecommended )
+               dev-texlive/texlive-metapost
+       )
+       sys-apps/texinfo
+       dev-util/gperf
+       virtual/pkgconfig"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-4.2.0-texi.patch
+       
"${FILESDIR}"/${PN}-4.2.0-disable-getcwd-path-max-test-as-it-is-too-slow.patch
+       "${FILESDIR}"/${P}-imagemagick-configure.patch
+       "${FILESDIR}"/${PN}-4.2.0-imagemagick.patch
+       "${FILESDIR}"/${PN}-4.2.0-pkgbuilddir.patch
+       "${FILESDIR}"/${P}-ncurses-pkgconfig.patch
+       "${FILESDIR}"/${PN}-4.2.0-zlib-underlinking.patch
+       "${FILESDIR}"/${P}-fix-qscintilla-detection.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"
+       fi
+
+       # occasional fail on install, force regeneration (bug #401189)
+       rm doc/interpreter/contributors.texi || die
+
+       default
+       eautoreconf
+}
+
+src_configure() {
+       # [QA] detect underlinking #593670
+       append-ldflags $(test-flags-CXX -Wl,-z,defs)
+
+       # 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
+
+       econf \
+               --localstatedir="${EPREFIX}/var/state/octave" \
+               --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \
+               --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)" \
+               --disable-64 \
+               --disable-jit \
+               --enable-shared \
+               --with-z \
+               --with-bz2 \
+               --without-OSMesa \
+               $(use_enable static-libs static) \
+               $(use_enable doc docs) \
+               $(use_enable java) \
+               $(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 imagemagick magick $(usex graphicsmagick 
GraphicsMagick ImageMagick)) \
+               $(use_with opengl) \
+               $(use_with opengl fltk) \
+               $(use_with openssl) \
+               $(use_with portaudio) \
+               $(use_with qhull) \
+               $(use_with qrupdate) \
+               $(use_with gui qt 5) \
+               $(use_with sndfile) \
+               $(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)
+}
+
+src_compile() {
+       default
+       if use java; then
+               pax-mark m "${S}/src/.libs/octave-cli"
+       fi
+}
+
+src_install() {
+       default
+       if use doc; then
+               dodoc $(find doc -name '*.pdf')
+       else
+               # bug 566134, macros.texi is installed by make install if use 
doc
+               insinto /usr/share/${PN}/${PV}/etc
+               doins doc/interpreter/macros.texi
+       fi
+       [[ -e test/fntests.log ]] && dodoc test/fntests.log
+       use java && \
+               java-pkg_regjar 
"${ED%/}/usr/share/${PN}/${PV}/m/java/octave.jar"
+       echo "LDPATH=${EPREFIX}/usr/$(get_libdir)/${PN}/${PV}" > 99octave || die
+       doenvd 99octave
+}
+
+pkg_postinst() {
+       xdg_mimeinfo_database_update
+       xdg_desktop_database_update
+}
+
+pkg_postrm() {
+       xdg_mimeinfo_database_update
+       xdg_desktop_database_update
+}

Reply via email to