Antonio Rojas pushed to branch main at Arch Linux / Packaging / Packages / octave
Commits: 0dcbd91a by Christian Heusel at 2024-05-02T13:54:06+02:00 fix crash with qt6 by applying an upstream patch related to https://gitlab.archlinux.org/archlinux/packaging/packages/octave/-/issues/1 - - - - - 3 changed files: - .SRCINFO - PKGBUILD - + octave-9_1_0-bug65605-qt6-opengl-partial-update.patch Changes: ===================================== .SRCINFO ===================================== @@ -24,9 +24,9 @@ pkgbase = octave depends = ghostscript depends = sundials depends = gl2ps - depends = qscintilla-qt5 + depends = qscintilla-qt6 depends = libsndfile - depends = qt5-tools + depends = qt6-tools depends = qrupdate depends = pcre2 optdepends = texinfo: for help-support in octave @@ -38,8 +38,10 @@ pkgbase = octave options = !emptydirs source = https://ftp.gnu.org/gnu/octave/octave-9.1.0.tar.gz source = https://ftp.gnu.org/gnu/octave/octave-9.1.0.tar.gz.sig + source = octave-9_1_0-bug65605-qt6-opengl-partial-update.patch validpgpkeys = DBD9C84E39FE1AAE99F04446B05F05B75D36644B sha512sums = 1b4370ce0970ce360c91b054b79d9b0dd00715a2384bf7aefd2b4e851cbea836c7bfe4d801543056070d1d4ccb2f3ce85118959568df76a6bff2694ea50a3ba8 sha512sums = SKIP + sha512sums = 64b986571e4bdd25f242f2f06c9698729dd86dad832ce8eda5e64f889690cd9219fb55fb36ddfcad157aa9b131fe57b2d9fc624ad30c6257ab96361e8d57fb8d pkgname = octave ===================================== PKGBUILD ===================================== @@ -22,9 +22,9 @@ depends=( 'ghostscript' 'sundials' 'gl2ps' - 'qscintilla-qt5' + 'qscintilla-qt6' 'libsndfile' - 'qt5-tools' + 'qt6-tools' 'qrupdate' 'pcre2' ) @@ -46,11 +46,18 @@ optdepends=( 'fltk: FLTK GUI' 'texlive-bin: for the publish command' ) -source=("https://ftp.gnu.org/gnu/octave/octave-$pkgver.tar.gz"{,.sig}) +source=("https://ftp.gnu.org/gnu/octave/octave-$pkgver.tar.gz"{,.sig} + octave-9_1_0-bug65605-qt6-opengl-partial-update.patch) options=('!emptydirs') validpgpkeys=('DBD9C84E39FE1AAE99F04446B05F05B75D36644B') # John W. Eaton sha512sums=('1b4370ce0970ce360c91b054b79d9b0dd00715a2384bf7aefd2b4e851cbea836c7bfe4d801543056070d1d4ccb2f3ce85118959568df76a6bff2694ea50a3ba8' - 'SKIP') + 'SKIP' + '64b986571e4bdd25f242f2f06c9698729dd86dad832ce8eda5e64f889690cd9219fb55fb36ddfcad157aa9b131fe57b2d9fc624ad30c6257ab96361e8d57fb8d') + +prepare() { + cd "$pkgname-$pkgver" + patch -Np1 -i ../octave-9_1_0-bug65605-qt6-opengl-partial-update.patch +} build() { cd "$pkgname-$pkgver" @@ -66,8 +73,7 @@ build() { --libexecdir=/usr/lib \ --enable-shared \ --disable-static \ - --with-quantum-depth=16 \ - --with-qt=5 # https://gitlab.archlinux.org/archlinux/packaging/packages/octave/-/issues/1 + --with-quantum-depth=16 sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool # Fix overlinking make ===================================== octave-9_1_0-bug65605-qt6-opengl-partial-update.patch ===================================== @@ -0,0 +1,23 @@ +# HG changeset patch +# User Markus Mützel <markus.muet...@gmx.de> +# Date 1714129779 -7200 +# Fri Apr 26 13:09:39 2024 +0200 +# Branch stable +# Node ID 317fa0e5c8de37e4265a745b3d237bee20cd732a +# Parent f86b8eb0c654446c8c44fb36d995c71177fa2789 +Avoid crash with Qt6 6.7.0 (bug #65605). + +* libgui/graphics/GLCanvas.cc (GLWidget::GLWidget): Set updateBehavior of +OpenGLWidget to PartialUpdate to avoid invalidating buffers. + +diff -r f86b8eb0c654 -r 317fa0e5c8de libgui/graphics/GLCanvas.cc +--- a/libgui/graphics/GLCanvas.cc Wed Apr 24 12:55:22 2024 -0400 ++++ b/libgui/graphics/GLCanvas.cc Fri Apr 26 13:09:39 2024 +0200 +@@ -43,6 +43,7 @@ + { + setFocusPolicy (Qt::ClickFocus); + setFocus (); ++ setUpdateBehavior (QOpenGLWidget::PartialUpdate); + } + + GLWidget::~GLWidget () { } View it on GitLab: https://gitlab.archlinux.org/archlinux/packaging/packages/octave/-/commit/0dcbd91a7414b1476ccd433b35675caf8e1dbdfb -- This project does not include diff previews in email notifications. View it on GitLab: https://gitlab.archlinux.org/archlinux/packaging/packages/octave/-/commit/0dcbd91a7414b1476ccd433b35675caf8e1dbdfb You're receiving this email because of your account on gitlab.archlinux.org.