summaryrefslogtreecommitdiff
path: root/sci-mathematics/octave
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
committerV3n3RiX <venerix@koprulu.sector>2022-05-12 16:42:50 +0300
commit752d6256e5204b958b0ef7905675a940b5e9172f (patch)
tree330d16e6362a49cbed8875a777fe641a43376cd3 /sci-mathematics/octave
parent0c100b7dd2b30e75b799d806df4ef899fd98e1ea (diff)
gentoo resync : 12.05.2022
Diffstat (limited to 'sci-mathematics/octave')
-rw-r--r--sci-mathematics/octave/Manifest7
-rw-r--r--sci-mathematics/octave/files/octave-6.4.0-omit-qtchooser-qtver.patch22
-rw-r--r--sci-mathematics/octave/metadata.xml1
-rw-r--r--sci-mathematics/octave/octave-6.4.0-r2.ebuild (renamed from sci-mathematics/octave/octave-6.4.0.ebuild)20
-rw-r--r--sci-mathematics/octave/octave-7.1.0.ebuild211
5 files changed, 253 insertions, 8 deletions
diff --git a/sci-mathematics/octave/Manifest b/sci-mathematics/octave/Manifest
index e914e45678a0..def3e7cb3c01 100644
--- a/sci-mathematics/octave/Manifest
+++ b/sci-mathematics/octave/Manifest
@@ -2,9 +2,12 @@ AUX octave-4.2.0-disable-getcwd-path-max-test-as-it-is-too-slow.patch 199 BLAKE2
AUX octave-4.2.2-ncurses-pkgconfig.patch 1034 BLAKE2B 244a96ab7cfd47203e7d23774c52f54e105f209edf79c869e6ce253a9cec7a3373a8dd0c98196ba3271f9b2b066ad3de3784151072055f2319ebbb4d1b68a475 SHA512 d2d6fe57a11f0493f86378bc4e1fc71378ae6d1878d17a367b77aa16a29880e37134e61343ba081f7ab2c4d127d93611491bef1320d6cd202eff0d78681cd4cc
AUX octave-4.4.0-texi.patch 570 BLAKE2B 83863f20e995eb4512944d6766b09a648b0d00b434f98f25db214ef6b3bcfa504d316dad984e7330ed51d972e5caec69c42797f703595a39d6acab7128270313 SHA512 e2d0390e586e001182a31a840ed6a93b4fb6ce0dd581f64460dcf3947783dd4755a8bd277f4babb6328f04cf653f02ac681952610d7eb70165936a9d79998c3f
AUX octave-5.1.0-pkgbuilddir.patch 1565 BLAKE2B 7b2968139e080aaa20b5372b400ac84c1754296767834011bcdda5258e7859c48ffaedcade17e8b23e2d23635a546c6a726061e8b4679913ff5b204a26cd0ef4 SHA512 28dcebc3a904cf048cb0568591c6c55616d40f6ca80982a232489a51ec92505dca186043ee3750d8a3f3782149ef1861332a8486466fba2898f0084adf0acb90
+AUX octave-6.4.0-omit-qtchooser-qtver.patch 765 BLAKE2B 2f889e8278e48489f2eab1c399b0bf7af26be7f79e35c29fc2963124852067429f7ee25325402ad6983c047398a5c43c2d9f44d3a96e5c3db49282f826ecab82 SHA512 a1edd69d06aadd5c9772b12f32468bcd25b181883d3c303cd5ff58175e95021ed661d363137002a50073ec9c90564442c8b968ea1a3ad6fe56a80cf27e2efc3a
AUX octave-6.4.0-slibtool.patch 1416 BLAKE2B e4b487481490b41a4da499bb5eceff0f6a25a7e25d4f6c76088c3703259ab4899a354b0cf67eecb989bf4c4c05836be09881cce72145b3badca1393bd386a85f SHA512 cac0d183b3c555a25db37df250b2517ae4b762b7bc0d65ba0cb1093133f6f7ada42f6745b060d17f59c2177976841dafabcda61cf03d9cd14028399472f28ed7
DIST octave-5.2.0.tar.gz 33360285 BLAKE2B 6d53a48a7fbe929e372fd51d084c0269befd3140341f3f3a1f2cae02f9f085ed434c3336c770c9a856081197c93ee306f481dd116b958685175bc294e4db62ae SHA512 fa2076fb22415e0797964c66cfb8d24643f178f45eb9c14ebb4c082767e0a53509fde550f579fa4a816348bd0f7cbc74f24144f9a30a5b9c09ebe1b3949db498
DIST octave-6.4.0.tar.gz 32873157 BLAKE2B afa729c3c9917f724e7d97fe3af42986f323d3ff849e0a33ac9f183237e68d989d4f3dacd644405b648ec050ad07d8973abddbd8657b810de6f65d5b5ae37c02 SHA512 91ff031f6dfff8506fa738fd4f1f07276501fdfe003f8ed992cccf91da14d9d33da6d08923322b0dae5f5b696b49856b0f5c5065e26b0701b0d1630173807435
+DIST octave-7.1.0.tar.gz 34187598 BLAKE2B da4c1b47e0d71f05edc47036b9b10fb83aa6edb8aa911ff22f77a013935ea37295f776f5c478e198c38102b8d1ad68edada818c9b46ad1061a466b5c77eeed58 SHA512 042a68bd2c5c873ccc846c6de13743c6fddd166e8b062948daf184133eb774a05e29ab6132829886411a5ba330126d20a3d0700a606819a424c3db6e57471888
EBUILD octave-5.2.0.ebuild 5403 BLAKE2B c84884673c5ae98b97e18f93763932b28c01945957a56b6b5b79ac2e194ebaf01194dc96d53d0cff2ec79da04aa888f0999dd9df448cda0a6bfe1de61bbfb340 SHA512 eca18c92da4e6a76639ba1d421e648f8ed6b2fb903be02bb466038746ced17ad2c1e0cd3cea6a6ce467ba23728b5df1eb5e6bd6c9bd37d112cc63183cbc0aeda
-EBUILD octave-6.4.0.ebuild 5552 BLAKE2B 812230e7263273c4db7e2e0c928323aab58a030ce8563d7c14aed90478d48203244999bb5d102c07ff24015af8e7d52657837f5295601771b33e36d83da06bd0 SHA512 694e05ed20b2f3ce7e3df25c668d84869f99f7a4e771a7b0d997da700f561aec593f3af63d604e0749c61b7ada6b0555788933217659ab696ad85abe9ee5c1ee
-MISC metadata.xml 1154 BLAKE2B 34f491369b5ef047f0540be74994b9d6507310db475dc25868e2320e5c4474ebeaba2f80ba90759df53c15294c71ad9631e5f98ad81d2098d3e86e308d5c9eaf SHA512 9f73af69e5318693db98720836f0df25518c4bc3ac9ff72071aa04aaca1147e2c21d14a299b199689e926bff059c33c20f39b9f85062d1e1227e466b2b8b3446
+EBUILD octave-6.4.0-r2.ebuild 5995 BLAKE2B ed94a76a9ce898c58add76c3470062115ed26263dbe61b49c4c480908e2034f2903d54884ef873b1e4b8ca9c251250555fe0f4bfd27034786edfcca6bbd57ddd SHA512 789710b0a71797ef2dbf536959d03bae3da5ba569601e9b91f2e0054f560af78b1ae6c4d8d8c52533eb88b7dffaab8e24f6f3f0d94c626d9edc6df194b50c27e
+EBUILD octave-7.1.0.ebuild 5920 BLAKE2B dd66f57ea2f1c1b61f6837e1964a79deeb35ad81fd42e40ebd2f9f20256f9f4b490e0b2f1d637ec32c561658dbbe045af9f315636ea6e14d29c4155b76ceca95 SHA512 adef7ac2c481acf24be8cb30369745ee0a24dccf21667ed00b0706e4ed6734c9500242cb4aa3b12c56662855993fe6e51dac185b19072663ea6ea0ee7386fcc2
+MISC metadata.xml 1262 BLAKE2B 39736c6913fb3241bed38c5dd9218190d570a3e914a01d1d06fff2cdd68c3c07296a19e2a35305a67aa776a12636445e523b3e349daeffbf67ab60b074a25fed SHA512 177539fd369e2eee0db21ef46d64f8e9f30b39eb4648c5224ff221465c55cd554ac142940f32171ec36b9561b68243761f4e3cbcfb6b06896d45986cbb568c82
diff --git a/sci-mathematics/octave/files/octave-6.4.0-omit-qtchooser-qtver.patch b/sci-mathematics/octave/files/octave-6.4.0-omit-qtchooser-qtver.patch
new file mode 100644
index 000000000000..2b16fbf411e1
--- /dev/null
+++ b/sci-mathematics/octave/files/octave-6.4.0-omit-qtchooser-qtver.patch
@@ -0,0 +1,22 @@
+https://bugs.gentoo.org/839285
+--- a/m4/acinclude.m4
++++ b/m4/acinclude.m4
+@@ -2095,9 +2071,6 @@ AC_DEFUN([OCTAVE_CHECK_QT_TOOL], [
+ if test -z "$m4_toupper([$1])_QTVER"; then
+ AC_CHECK_TOOLS(m4_toupper([$1]), [$1])
+ if test -n "$m4_toupper([$1])"; then
+- if test -n "$QTCHOOSER"; then
+- m4_toupper([$1])FLAGS="-qt=$qt_version"
+- fi
+ QT_TOOLS_AVAILABLE="$QT_TOOLS_AVAILABLE $1"
+ else
+ QT_TOOLS_MISSING="$QT_TOOLS_MISSING $1"
+@@ -2167,8 +2167,6 @@ AC_DEFUN([OCTAVE_CHECK_QT_VERSION], [AC_MSG_CHECKING([Qt version $1])
+ QT_TOOLS_MISSING=
+
+ if test $build_qt_gui = yes; then
+- AC_CHECK_TOOLS(QTCHOOSER, [qtchooser])
+-
+ OCTAVE_CHECK_QT_TOOL([moc])
+ OCTAVE_CHECK_QT_TOOL([uic])
+ OCTAVE_CHECK_QT_TOOL([rcc])
diff --git a/sci-mathematics/octave/metadata.xml b/sci-mathematics/octave/metadata.xml
index cfb2c2525f7c..759ec5c83e0f 100644
--- a/sci-mathematics/octave/metadata.xml
+++ b/sci-mathematics/octave/metadata.xml
@@ -10,6 +10,7 @@
</longdescription>
<use>
<flag name="glpk">Add support for <pkg>sci-mathematics/glpk</pkg> for linear programming</flag>
+ <flag name="json">Allow using jsonencode and jsondecode commands via <pkg>dev-libs/rapidjson</pkg></flag>
<flag name="qhull">Add support for <pkg>media-libs/qhull</pkg>, to allow `delaunay', `convhull', and related functions</flag>
<flag name="qrupdate">Add support for <pkg>sci-libs/qrupdate</pkg>for QR and Cholesky update functions</flag>
<flag name="sparse">Add enhanced support for sparse matrix algebra with SuiteSparse</flag>
diff --git a/sci-mathematics/octave/octave-6.4.0.ebuild b/sci-mathematics/octave/octave-6.4.0-r2.ebuild
index bc0547dacdd3..fc956ca314bf 100644
--- a/sci-mathematics/octave/octave-6.4.0.ebuild
+++ b/sci-mathematics/octave/octave-6.4.0-r2.ebuild
@@ -1,9 +1,9 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+EAPI=8
-inherit autotools flag-o-matic fortran-2 java-pkg-opt-2 pax-utils toolchain-funcs xdg-utils
+inherit autotools flag-o-matic fortran-2 java-pkg-opt-2 pax-utils qmake-utils toolchain-funcs xdg-utils
DESCRIPTION="High-level interactive language for numerical computations"
LICENSE="GPL-3"
@@ -76,7 +76,7 @@ RDEPEND="
sci-libs/umfpack:0=
)
ssl? (
- dev-libs/openssl:0=
+ dev-libs/openssl:0=
)
sundials? ( >=sci-libs/sundials-4:0= )
X? ( x11-libs/libX11:0= )"
@@ -92,15 +92,19 @@ DEPEND="${RDEPEND}
gui? ( dev-qt/linguist-tools:5 )
java? ( >=virtual/jdk-1.6.0 )
qrupdate? ( app-misc/pax-utils )
- sparse? ( app-misc/pax-utils )"
+ sparse? ( app-misc/pax-utils )
+ || ( media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] )"
PATCHES=(
"${FILESDIR}"/${PN}-5.1.0-pkgbuilddir.patch
"${FILESDIR}"/${PN}-4.2.2-ncurses-pkgconfig.patch
"${FILESDIR}/${PN}-6.4.0-slibtool.patch"
+ "${FILESDIR}"/${PN}-6.4.0-omit-qtchooser-qtver.patch
)
src_prepare() {
+ default
+
# nasty prefix hacks for fltk:1 linking
if use prefix; then
use opengl && append-ldflags -Wl,-rpath,"${EPREFIX}/usr/$(get_libdir)/fltk-1"
@@ -109,7 +113,6 @@ src_prepare() {
# occasional fail on install, force regeneration (bug #401189)
rm doc/interpreter/contributors.texi || die
- default
eautoreconf
}
@@ -118,6 +121,11 @@ src_configure() {
use hdf5 && has_version sci-libs/hdf5[mpi] && \
export CXX=mpicxx CC=mpicc FC=mpif77 F77=mpif77
+ # tell autoconf where to find qt binaries, fix bug #837752
+ export MOC="$(qt5_get_bindir)/moc" UIC="$(qt5_get_bindir)/uic" RCC="$(qt5_get_bindir)/rcc" \
+ LRELEASE="$(qt5_get_bindir)/lrelease" QCOLLECTIONGENERATOR="$(qt5_get_bindir)/qcollectiongenerator" \
+ QHELPGENERATOR="$(qt5_get_bindir)/qhelpgenerator"
+
# 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
@@ -187,7 +195,7 @@ src_install() {
fi
[[ -e test/fntests.log ]] && dodoc test/fntests.log
use java && \
- java-pkg_regjar "${ED%/}/usr/share/${PN}/${PV}/m/java/octave.jar"
+ java-pkg_regjar "${ED}/usr/share/${PN}/${PV}/m/java/octave.jar"
echo "LDPATH=${EPREFIX}/usr/$(get_libdir)/${PN}/${PV}" > 99octave || die
doenvd 99octave
}
diff --git a/sci-mathematics/octave/octave-7.1.0.ebuild b/sci-mathematics/octave/octave-7.1.0.ebuild
new file mode 100644
index 000000000000..b04de9f52552
--- /dev/null
+++ b/sci-mathematics/octave/octave-7.1.0.ebuild
@@ -0,0 +1,211 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools 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.gz"
+
+LICENSE="GPL-3"
+SLOT="0/${PV}"
+IUSE="curl doc fftw +glpk gnuplot gui hdf5 java json opengl
+ portaudio postscript +qhull +qrupdate readline sndfile +sparse
+ ssl static-libs sundials X zlib"
+# Issue when building w/ SSL needs investigation
+#KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
+
+# 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).
+#
+RDEPEND="
+ app-arch/bzip2
+ app-arch/unzip
+ app-arch/zip
+ app-text/ghostscript-gpl
+ sys-apps/texinfo
+ 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 )
+ gui? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qthelp:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtwidgets:5
+ x11-libs/qscintilla:=
+ )
+ hdf5? ( sci-libs/hdf5:0= )
+ java? ( >=virtual/jre-1.8:* )
+ json? ( dev-libs/rapidjson )
+ opengl? (
+ media-libs/freetype:2=
+ media-libs/fontconfig:1.0=
+ virtual/glu
+ >=x11-libs/fltk-1.3:1=[opengl,xft]
+ x11-libs/gl2ps: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= )
+ 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=
+ )
+ ssl? (
+ dev-libs/openssl:0=
+ )
+ sundials? ( >=sci-libs/sundials-4:0= )
+ X? ( x11-libs/libX11:0= )"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-util/gperf
+ virtual/pkgconfig
+ virtual/imagemagick-tools
+ doc? (
+ dev-texlive/texlive-fontsrecommended
+ dev-texlive/texlive-plaingeneric
+ dev-texlive/texlive-metapost
+ virtual/latex-base
+ )
+ gui? ( dev-qt/linguist-tools:5 )
+ java? ( >=virtual/jdk-1.8:* )
+ qrupdate? ( app-misc/pax-utils )
+ sparse? ( app-misc/pax-utils )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.1.0-pkgbuilddir.patch
+ "${FILESDIR}"/${PN}-4.2.2-ncurses-pkgconfig.patch
+ "${FILESDIR}"/${PN}-6.4.0-slibtool.patch
+ "${FILESDIR}"/${PN}-6.4.0-omit-qtchooser-qtver.patch
+)
+
+src_prepare() {
+ default
+
+ # nasty prefix hacks for fltk:1 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
+
+ eautoreconf
+}
+
+src_configure() {
+ # 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
+
+ # tell autoconf where to find qt binaries, fix bug #837752
+ export MOC="$(qt5_get_bindir)/moc" UIC="$(qt5_get_bindir)/uic" RCC="$(qt5_get_bindir)/rcc" \
+ LRELEASE="$(qt5_get_bindir)/lrelease" QCOLLECTIONGENERATOR="$(qt5_get_bindir)/qcollectiongenerator" \
+ QHELPGENERATOR="$(qt5_get_bindir)/qhelpgenerator"
+
+ # 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"
+ #
+ # The --enable-link-all-dependencies flag is needed because
+ # otherwise, the build system appends --no-undefined to LDFLAGS and
+ # then proceeds to undefine things. GNU libtool ignores this, but
+ # slibtool (for example) does not (bug #776583).
+ econf \
+ --localstatedir="${EPREFIX}/var/state/octave" \
+ --with-blas="$($(tc-getPKG_CONFIG) --libs blas)" \
+ --with-lapack="$($(tc-getPKG_CONFIG) --libs lapack)" \
+ --disable-64 \
+ --enable-link-all-dependencies \
+ --enable-shared \
+ --with-z \
+ --with-bz2 \
+ $(use_enable static-libs static) \
+ $(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 hdf5) \
+ $(use_with opengl) \
+ $(use_with opengl fltk) \
+ $(use_with ssl openssl) \
+ $(use_with portaudio) \
+ $(use_with qhull qhull_r) \
+ $(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 sundials sundials_ida) \
+ $(use_with X x)
+}
+
+src_compile() {
+ export VARTEXFONTS="${T}/fonts" # otherwise it will write to /var/cache/fonts/ and trip sandbox
+
+ 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
+
+ find "${ED}" -type f -name '*.la' -delete || die
+}