mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
sci-mathematics/octave: add 11.1.0
Closes: https://bugs.gentoo.org/958428 Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST octave-11.1.0.tar.xz 28265804 BLAKE2B d7f16f8e613c2835543baa8835d32d31fbb416b622c42752fc3dd5c3cd86b33875f991fbe44826d21e1baa4487154dfa626a30cf6eed519aa659e0b3282d1ad6 SHA512 f24c95d43a749fad99af45fefd07f1b7872b72b55888110d39d9a9e26f4b1dba8bbf5d313c1cf43313d4d8fbdb9a0aedcac07b016e18f82ba9098ee1c31e5db6
|
||||
DIST octave-9.2.0.tar.xz 27425184 BLAKE2B 55480201037871d878090972bf89d5ff43508276f41e77accdd16b752758775e883fe3875d19ea4fc2b33cf8a9a9f39684f05c85e027ca53ee2cdfda6c6bae72 SHA512 cb1667cd6557d48ecd7ae191bc44c9b9fd4f79e7cf4bf6c917093d120c4312e9594e6dddc5287661627ac053e9f23faaec40a1286d792d859f1fefbfdb3eeb8c
|
||||
|
||||
221
sci-mathematics/octave/octave-11.1.0.ebuild
Normal file
221
sci-mathematics/octave/octave-11.1.0.ebuild
Normal file
@@ -0,0 +1,221 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit flag-o-matic fortran-2 java-pkg-opt-2 pax-utils qmake-utils toolchain-funcs xdg
|
||||
|
||||
DESCRIPTION="High-level interactive language for numerical computations"
|
||||
HOMEPAGE="https://www.gnu.org/software/octave/"
|
||||
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0/${PV}"
|
||||
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~x86"
|
||||
|
||||
IUSE="curl doc fftw +glpk gnuplot gui hdf5 imagemagick java json klu portaudio postscript +qhull +qrupdate readline sndfile +sparse spqr ssl sundials zlib"
|
||||
|
||||
# Although it is listed in INSTALL.OCTAVE as a build tool, Octave runs
|
||||
# "makeinfo" from sys-apps/texinfo at runtime to convert its texinfo
|
||||
# documentation to text (see scripts/help/help.m).
|
||||
#
|
||||
# (un)zip isn't mentioned, but there's a test that uses it (bug #775254).
|
||||
#
|
||||
# The use of USE=imagemagick to pull in media-gfx/graphicsmagick is not
|
||||
# ideal, but both "graphicsmagick" and "imagemagick" are global USE
|
||||
# flags whose existing descriptions conflict with the obvious way we
|
||||
# would want to use them in octave. In any case, upstream doesn't really
|
||||
# support imagemagick, only graphicsmagick (bug 864785).
|
||||
COMMON_DEPS="
|
||||
app-arch/bzip2
|
||||
app-arch/unzip
|
||||
app-arch/zip
|
||||
app-text/ghostscript-gpl
|
||||
sys-apps/texinfo
|
||||
dev-libs/libpcre2
|
||||
sys-libs/ncurses:=
|
||||
virtual/zlib:=
|
||||
virtual/blas
|
||||
virtual/lapack
|
||||
curl? ( net-misc/curl:= )
|
||||
fftw? ( sci-libs/fftw:3.0= )
|
||||
glpk? ( sci-mathematics/glpk:= )
|
||||
gnuplot? ( sci-visualization/gnuplot )
|
||||
hdf5? ( sci-libs/hdf5:= )
|
||||
imagemagick? ( media-gfx/graphicsmagick:=[cxx] )
|
||||
json? ( dev-libs/rapidjson )
|
||||
klu? ( sci-libs/klu:= )
|
||||
portaudio? ( media-libs/portaudio )
|
||||
postscript? (
|
||||
app-text/epstool
|
||||
media-gfx/pstoedit
|
||||
>=media-gfx/fig2dev-3.2.9-r1
|
||||
)
|
||||
gui? (
|
||||
dev-qt/qt5compat:6
|
||||
dev-qt/qtbase:6[gui,opengl,network,widgets]
|
||||
media-libs/fontconfig:=
|
||||
media-libs/freetype:=
|
||||
virtual/glu
|
||||
x11-libs/gl2ps:=
|
||||
x11-libs/libX11:=
|
||||
>=x11-libs/qscintilla-2.14.1-r1:=[qt6(+)]
|
||||
)
|
||||
qhull? ( media-libs/qhull:= )
|
||||
qrupdate? ( sci-libs/qrupdate:= )
|
||||
readline? ( sys-libs/readline:= )
|
||||
sndfile? ( media-libs/libsndfile )
|
||||
sparse? (
|
||||
sci-libs/arpack:=
|
||||
sci-libs/camd:=
|
||||
sci-libs/ccolamd:=
|
||||
sci-libs/cholmod:=
|
||||
sci-libs/colamd:=
|
||||
sci-libs/cxsparse:=
|
||||
sci-libs/umfpack:=
|
||||
)
|
||||
spqr? ( sci-libs/spqr:= )
|
||||
ssl? ( dev-libs/openssl:= )
|
||||
sundials? (
|
||||
klu? ( >=sci-libs/sundials-4:=[sparse] )
|
||||
!klu? ( >=sci-libs/sundials-4:= )
|
||||
)
|
||||
"
|
||||
RDEPEND="${COMMON_DEPS}
|
||||
java? ( >=virtual/jre-1.8:* )"
|
||||
DEPEND="${COMMON_DEPS}
|
||||
java? ( >=virtual/jdk-1.8:* )"
|
||||
BDEPEND="
|
||||
dev-util/gperf
|
||||
virtual/pkgconfig
|
||||
doc? (
|
||||
dev-texlive/texlive-fontsrecommended
|
||||
dev-texlive/texlive-plaingeneric
|
||||
dev-texlive/texlive-metapost
|
||||
virtual/latex-base
|
||||
)
|
||||
gui? (
|
||||
dev-qt/qttools:6[linguist]
|
||||
doc? ( dev-qt/qttools:6[assistant] )
|
||||
)
|
||||
qrupdate? ( app-misc/pax-utils )
|
||||
sparse? ( app-misc/pax-utils )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-5.1.0-pkgbuilddir.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# occasional fail on install, force regeneration (bug #401189)
|
||||
rm doc/interpreter/contributors.texi || die
|
||||
|
||||
# bug 956766
|
||||
rm build-aux/texinfo.tex || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# libstdc++ bug, bug #887815
|
||||
append-cxxflags -U_GLIBCXX_ASSERTIONS
|
||||
|
||||
# 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
|
||||
|
||||
# Some of these use_with flags are a bit mismatched. The configure
|
||||
# script offers only --without-foo, and detects "foo" automatically
|
||||
# unless --without-foo is specified. Passing --with-foo is not an
|
||||
# error, however, so it kind of works. We wind up with, for example,
|
||||
#
|
||||
# --with-sundials_ida (no-op) with USE="sundials"
|
||||
# --without-sundials_ida (disables it) with USE="-sundials"
|
||||
#
|
||||
local myeconfargs=(
|
||||
--localstatedir="${EPREFIX}/var/state/octave"
|
||||
--with-blas="$($(tc-getPKG_CONFIG) --libs blas)"
|
||||
--with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)"
|
||||
--disable-64
|
||||
--enable-shared
|
||||
--with-z
|
||||
--with-bz2
|
||||
--without-fltk
|
||||
|
||||
# bug #901965
|
||||
--without-libiconv-prefix
|
||||
--without-libreadline-prefix
|
||||
|
||||
$(use_enable doc docs)
|
||||
$(use_enable java)
|
||||
$(use_enable json rapidjson)
|
||||
$(use_enable readline)
|
||||
$(use_with curl)
|
||||
$(use_with fftw fftw3)
|
||||
$(use_with fftw fftw3f)
|
||||
$(use_enable fftw fftw-threads)
|
||||
$(use_with glpk)
|
||||
$(use_with gui opengl)
|
||||
$(use_with gui qt 6)
|
||||
$(use_with gui x)
|
||||
$(use_with hdf5)
|
||||
$(use_with imagemagick magick GraphicsMagick++)
|
||||
$(use_with klu)
|
||||
$(use_with portaudio)
|
||||
$(use_with qhull qhull_r)
|
||||
$(use_with qrupdate)
|
||||
$(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 spqr)
|
||||
$(use_with ssl openssl)
|
||||
$(use_with sundials sundials_ida)
|
||||
$(use_with sundials sundials_nvecserial)
|
||||
)
|
||||
|
||||
# Tell autoconf where to find qt binaries, fix bug #837752
|
||||
if use gui ; then
|
||||
export MOC="$(qt6_get_libexecdir)/moc" \
|
||||
UIC="$(qt6_get_libexecdir)/uic" \
|
||||
RCC="$(qt6_get_libexecdir)/rcc" \
|
||||
LRELEASE="$(qt6_get_bindir)/lrelease" \
|
||||
QHELPGENERATOR="$(qt6_get_libexecdir)/qhelpgenerator"
|
||||
fi
|
||||
|
||||
econf "${myeconfargs[@]}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Otherwise it will write to /var/cache/fonts/ and trip sandbox
|
||||
export VARTEXFONTS="${T}/fonts"
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
find "${ED}" -type f -name '*.la' -delete || die
|
||||
}
|
||||
Reference in New Issue
Block a user