octave: upgrade 7.2.0 -> 11.3.0 + rework + pcre -> pcre2

This new version works with pcre2. The other dependencies only got sorted.
Now, Octave provides xz compressed tarballs, which are much smaller.

Unfortunately, Octave generates source code files during the build with
multiple variables from the build environment which are end up in the
binaries.

Signed-off-by: Jörg Sommer <joerg.sommer@navimatix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
This commit is contained in:
Jörg Sommer
2026-06-19 14:27:01 +02:00
committed by Khem Raj
parent 3662a3a732
commit 0064775a71
3 changed files with 69 additions and 74 deletions
@@ -1,18 +0,0 @@
Upstream-Status: Pending
diff -Naur octave-4.4.1.orig/configure.ac octave-4.4.1/configure.ac
--- octave-4.4.1.orig/configure.ac 2019-02-23 10:46:24.287240571 +0000
+++ octave-4.4.1/configure.ac 2019-02-23 10:46:42.255249333 +0000
@@ -762,6 +762,12 @@
AC_MSG_ERROR([BLAS and LAPACK libraries are required])
fi
+if ac_fn_f77_try_run "$LINENO"; then :
+ ax_blas_integer_size=8
+else
+ ax_blas_integer_size=4
+fi
+
case $ax_blas_integer_size in
4)
HAVE_64_BIT_BLAS=no
@@ -0,0 +1,69 @@
SUMMARY = "High-level language, primarily intended for numerical computations"
DESCRIPTION = "\
GNU Octave is a scientific programming language with powerful \
mathematics-oriented syntax with built-in 2D/3D plotting and visualization \
tools, which is drop-in compatible with many Matlab scripts. \
"
HOMEPAGE = "https://octave.org/"
BUGTRACKER = "https://bugs.octave.org/"
SECTION = "math"
LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
# To build, add 'FORTRAN:forcevariable = ",fortran"' to your local.conf (or use
# meta-mortsgna as distro :)
DEPENDS = "\
curl \
fftw \
fltk \
fontconfig \
freetype \
gperf-native \
hdf5 \
lapack \
libglu \
libsndfile1 \
pcre2 \
readline \
texinfo \
"
inherit autotools pkgconfig texinfo gettext gtk-icon-cache mime-xdg features_check
# File /usr/lib/octave/11.3.0/liboctinterp.so.15.0.1 in package octave contains reference to TMPDIR [buildpaths]
# contains the whole compiler invokation
# File /usr/lib/octave/11.3.0/.debug/liboctave.so.13.0.2 in package octave-dbg contains reference to TMPDIR [buildpaths]
# contains all fortran compiler options
# File /usr/src/debug/octave/11.3.0/libinterp/build-env.cc in package octave-src contains reference to TMPDIR [buildpaths]
# contains multiple variables from the build environment
# File /usr/src/debug/octave/11.3.0/src/mkoctfile.cc in package octave-src contains reference to TMPDIR [buildpaths]
# contains the variables CC CFLAGS CXX and CXXFLAGS from the build environment
INSANE_SKIP += "buildpaths"
REQUIRED_DISTRO_FEATURES = "x11 opengl"
SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.xz"
SRC_URI[sha256sum] = "2b80f3149b2de6d1f4f2fcb4fe6515a17eb363b52111bf57b90f37bf6f5e12e1"
# Note: Qt5Help is required for gui -> qttools(-native) must be build with
# clang in PACKAGECONFIG
PACKAGECONFIG[gui] = "--with-qt,--without-qt,qttools-native qttools qtbase"
EXTRA_OECONF = "\
--disable-java \
--disable-docs \
"
do_compile:prepend() {
for folder in "liboctave/operators liboctave/numeric liboctave/array liboctave/util"; do
mkdir -p ${B}/${folder}
done
}
FILES:${PN} += "${datadir}/metainfo"
FILES:${PN}-dev += "${libdir}/${BPN}/${PV}/lib*${SOLIBSDEV}"
# fortran is not enabled by default
EXCLUDE_FROM_WORLD = "1"
@@ -1,56 +0,0 @@
SUMMARY = "High-level language, primarily intended for numerical computations"
HOMEPAGE = "http://www.gnu.org/software/octave/"
SECTION = "math"
LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
# To build, add 'FORTRAN:forcevariable = ",fortran"' to your local.conf (or use
# meta-mortsgna as distro :)
DEPENDS = " \
gperf-native \
libglu \
lapack \
fftw \
curl \
freetype \
fontconfig \
texinfo \
pcre \
readline \
fltk \
hdf5 \
libsndfile1 \
"
inherit autotools pkgconfig texinfo gettext gtk-icon-cache mime-xdg features_check
REQUIRED_DISTRO_FEATURES = "x11 opengl"
SRC_URI = " \
${GNU_MIRROR}/octave/${BPN}-${PV}.tar.gz \
file://fix-blas-library-integer-size.patch \
"
SRC_URI[sha256sum] = "b12cb652587d31c5c382b39ed73463c22a5259ecb2fa6b323a27da409222dacc"
# Note: Qt5Help is required for gui -> qttools(-native) must be build with
# clang in PACKAGECONFIG
PACKAGECONFIG[gui] = "--with-qt=yes,--with-qt=no,qttools-native qttools qtbase"
EXTRA_OECONF = " \
--disable-java \
--disable-docs \
"
do_compile:prepend() {
for folder in "liboctave/operators liboctave/numeric liboctave/array liboctave/util"; do
mkdir -p ${B}/${folder}
done
}
FILES:${PN} += "${datadir}/metainfo"
FILES:${PN}-dev += "${libdir}/${BPN}/${PV}/lib*${SOLIBSDEV}"
# fortran is not enabled by default
EXCLUDE_FROM_WORLD = "1"