sci-mathematics/octave: Fix bug 566134, thanks to Francisco Vazquez for reporting.
authorMark Wright <gienah@gentoo.org>
Mon, 2 May 2016 14:43:40 +0000 (00:43 +1000)
committerMark Wright <gienah@gentoo.org>
Mon, 2 May 2016 22:38:59 +0000 (08:38 +1000)
Gentoo-bug: 566134

Package-Manager: portage-2.2.28

sci-mathematics/octave/octave-4.0.0-r1.ebuild [new file with mode: 0644]
sci-mathematics/octave/octave-4.0.1-r1.ebuild [new file with mode: 0644]
sci-mathematics/octave/octave-4.0.2.ebuild

diff --git a/sci-mathematics/octave/octave-4.0.0-r1.ebuild b/sci-mathematics/octave/octave-4.0.0-r1.ebuild
new file mode 100644 (file)
index 0000000..88a67af
--- /dev/null
@@ -0,0 +1,175 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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:0=
+       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/autoconf-archive-2015.02.04
+               >=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
+
+       # Octave fails to build with LLVM 3.5 http://savannah.gnu.org/bugs/?41061
+       use jit && \
+               has_version ">=sys-devel/llvm-3.5" && \
+               epatch "${FILESDIR}"/${PN}-4.0.0-llvm-3.5.patch && \
+               epatch "${FILESDIR}"/${PN}-4.0.0-llvm-3.5-gnulib-hg.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)"
+               --disable-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
+       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=${EROOT}usr/$(get_libdir)/${PN}/${PV}" > 99octave
+       doenvd 99octave
+}
diff --git a/sci-mathematics/octave/octave-4.0.1-r1.ebuild b/sci-mathematics/octave/octave-4.0.1-r1.ebuild
new file mode 100644 (file)
index 0000000..88a67af
--- /dev/null
@@ -0,0 +1,175 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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:0=
+       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/autoconf-archive-2015.02.04
+               >=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
+
+       # Octave fails to build with LLVM 3.5 http://savannah.gnu.org/bugs/?41061
+       use jit && \
+               has_version ">=sys-devel/llvm-3.5" && \
+               epatch "${FILESDIR}"/${PN}-4.0.0-llvm-3.5.patch && \
+               epatch "${FILESDIR}"/${PN}-4.0.0-llvm-3.5-gnulib-hg.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)"
+               --disable-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
+       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=${EROOT}usr/$(get_libdir)/${PN}/${PV}" > 99octave
+       doenvd 99octave
+}
index a527708e9561f38d7e157f9101a34e5422229d9c..88a67af087ecf8f5a2ea8a4adf28484e2f47cd34 100644 (file)
@@ -69,8 +69,8 @@ DEPEND="${RDEPEND}
        doc? (
                virtual/latex-base
                dev-texlive/texlive-genericrecommended
-               dev-texlive/texlive-metapost
-               sys-apps/texinfo )
+               dev-texlive/texlive-metapost )
+       sys-apps/texinfo
        dev-util/gperf
        virtual/pkgconfig"
 
@@ -160,7 +160,13 @@ src_compile() {
 
 src_install() {
        autotools-utils_src_install
-       use doc && dodoc $(find doc -name \*.pdf)
+       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"