summaryrefslogtreecommitdiff
path: root/dev-qt/qtdeclarative
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-04-16 16:47:37 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-04-16 16:47:37 +0100
commit8aebb228036d5e2863b7eaa6e319ab41c1669269 (patch)
tree00f4b90ce32462dc8e99ae54a31d6462ea2c3ac6 /dev-qt/qtdeclarative
parent76cba73c47c8694e74377004634daca18f2d9c08 (diff)
gentoo resync : 16.04.2018
Diffstat (limited to 'dev-qt/qtdeclarative')
-rw-r--r--dev-qt/qtdeclarative/Manifest2
-rw-r--r--dev-qt/qtdeclarative/files/qtdeclarative-5.9.5-texture-memleak.patch59
-rw-r--r--dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild58
3 files changed, 119 insertions, 0 deletions
diff --git a/dev-qt/qtdeclarative/Manifest b/dev-qt/qtdeclarative/Manifest
index 059d2a193a87..411d0b2c07a4 100644
--- a/dev-qt/qtdeclarative/Manifest
+++ b/dev-qt/qtdeclarative/Manifest
@@ -1,4 +1,5 @@
AUX qtdeclarative-5.4.2-disable-jit.patch 547 BLAKE2B 3f9cc85ab9ec7c2b79aad8bcbfe541ba51745f62e3f02111a2f455c6d1a7959c7980284e3a655ce8335d4a166d65570f2b9d236c681d155c015cc14dc3bb54af SHA512 cd410c0e731a1e096bd8a77b7ecc769a5e3503f7a2f12668f2f4f1c3099973eaa2060d97708962e422c580ee76ee3db3712834cd994b7e1aeeb57c0a4c3b0b3d
+AUX qtdeclarative-5.9.5-texture-memleak.patch 2199 BLAKE2B 7b0f531e095fd80731983faf106811ef32d38ce83c2bb595683203d81d671d105720c6ee840740c4c30b0027c52825844bd1fe60a7ab52499feb2699ada92729 SHA512 20c83cd85120475fcec31c6394c149ab6d271f8f4856cd9da60346faebb67e3b119001fc3b0cbfd3f198f5237c4330e878d68d530f859192b6dd9560d7a949e5
DIST qt-everywhere-opensource-src-4.8.7.tar.gz 241075567 BLAKE2B 6e9b8870692c36e894dc401b65fa38961cf7d033cd712770c273fd45b3221720648087c53787eae7d455c417d64e09f716da48377837fb5f2b52b901d06b1cf3 SHA512 f9f81a2e7205e1fd05c8d923dc73244f29aa33f951fa6b7c5c8193449328b37084796b9b71ad0c317e4e6fd00017c10ea5d67b1b2032551cde00548522218125
DIST qtdeclarative-opensource-src-5.7.1.tar.xz 18976920 BLAKE2B f451622bd896445b21db99c0896a58051b8cd78b98062ff9ae71285ea66a692b7f236e0c8b69ee9b7a2685f46344525554caf73f6a9d5b45ef7d6df15f8e4b17 SHA512 8c56099a13103f4831a7ceb29223722c1f8efb0e9a87a4c1fdf0b55a3c5b4cedfdac6e06960ea5d03df4184b3d1c6bc3f21bdcdbd2400591143930aa8e32a2ab
DIST qtdeclarative-opensource-src-5.9.4.tar.xz 21454140 BLAKE2B a7e792406c2eb42422aba1b779e2249f081840c8237a119cf4d9a001fa34d1f5e48e30216c08be431a89bca52dd56d4241d92cdfdb8b684b0912449bd0c9301e SHA512 e9e425665df42826c2525566e08b3588aa73b0efea295eed301ba5caeea7208b90c5a91a55cc16986ea9e0ceb9c6658bd59f56a3a276601ad5780f2c67f5ad5c
@@ -6,5 +7,6 @@ DIST qtdeclarative-opensource-src-5.9.5.tar.xz 21413796 BLAKE2B d8b365654eda101d
EBUILD qtdeclarative-4.8.7.ebuild 1493 BLAKE2B 1fc9ba56b9dd67fb840611e38e19a5bbc4b5f50d16cf7afbf9f384367ea03728f2d44aa1d14adf11ab44f8fba5532ce5f742803a5139f3ed25cf4f404e117d51 SHA512 b01c643b5d27f41e862260743be6701464ed145063ebb6642f5887b648b2f6e8c92c960d81e221a46c8aa7abc9461588953756390f080a7c6a02c53011338ca1
EBUILD qtdeclarative-5.7.1-r1.ebuild 1598 BLAKE2B 4ae8442e6f8febb5323bf7335bee054487bf5b8df757562129f9c3051ff0fb745fe50c2cea7efb50e0ca4b1b81298121f47f5de436a940b88396179d81bf8e91 SHA512 732fca74557642bb5cf5ec64f9d5efcb2a78bd81fd4f8bef8fcc9a1201c24b8c580faa37fd79c2c22aed5babb69cf61341f6bb44fc5d75b949b51af8c4737538
EBUILD qtdeclarative-5.9.4.ebuild 1323 BLAKE2B ca629dea8c113c90fc4e6da40be37bcc43d89fa240cd836eb162e70268f329c6050eabbacc00575ba22084639bcf9a577648c46f5dffe6be740806dd965f19a3 SHA512 a6ecf2a3c673529b97c08fe45596dc84b5378797c14c8afc8eb7ed48bf6013c8f70aee4948a6d7b7c16cfaf070d147f70473c7dd03f1fe4de9a2006977b1c175
+EBUILD qtdeclarative-5.9.5-r1.ebuild 1381 BLAKE2B 93d66133efe327db501588288fb8ada735ef53aed5db25edc10a2c7638f5e90fd0540185218defc397e114d2f1f603cb93e465fffb6bc83d50458f76677d51ac SHA512 408d299677b09658b01911001b3b6c1547ff122a797464287fec2826feb0934b07e340454615e5e39811c5800082200c582a08470ae1119c1e55dc299e8019a4
EBUILD qtdeclarative-5.9.5.ebuild 1327 BLAKE2B 23b4bc4d8e3ac878279add6e045450e842d0b59f42a2c4f7c61900f1e2455fff1964f189840b0fbca91b2592ebb656a41a27882295d7fa744fe6e2ca71b9209d SHA512 bd7a1a4a8b21fb3ce0ec122368eb4aa7543b2cab3a48b15c003aa80370a65f4babb5d6d55df9d55497d5bdd3f59ae7d6ac5a2da54416c687bdd047295e979e6c
MISC metadata.xml 1154 BLAKE2B 838bd6238e0b647adb40c4e0d73221104b2f26f160039a014c4576fbbbf51648ec1497e1833987ff298c4d42159c8ad2b2264b8f8a1a5c1d509e321e543709fc SHA512 fe0fdc462c9337726df24de8b8a13660da81a2cbd7cd3d122fadb3a6926e2cd6213d8eedc12185bf4dd1012ab1062ac59fa3cad3055b32e71012072aa31ef415
diff --git a/dev-qt/qtdeclarative/files/qtdeclarative-5.9.5-texture-memleak.patch b/dev-qt/qtdeclarative/files/qtdeclarative-5.9.5-texture-memleak.patch
new file mode 100644
index 000000000000..c2a143ecbeda
--- /dev/null
+++ b/dev-qt/qtdeclarative/files/qtdeclarative-5.9.5-texture-memleak.patch
@@ -0,0 +1,59 @@
+From 839f09c65523fb5c419b62e078f72bb39285449a Mon Sep 17 00:00:00 2001
+From: David Edmundson <davidedmundson@kde.org>
+Date: Wed, 28 Mar 2018 00:24:56 +0100
+Subject: [PATCH] Avoid marking hidden windows as updatePending in Gui render
+ loop
+
+Since eeb320bbd8763f3e72f79369cc3908e999a0da3c the GL context only
+deletes textures when all windows with pending updates have finished
+rendering.
+
+renderWindow will not process any window that is not visible. This
+leaves a logic bug that we can have the updatePending flag set but
+never cleared.
+
+If we have two windows, this leaves the other window still updating
+normally, but lastDirtyWindow will always be false and we never call
+endSync.
+
+This results in an effective memory leak of all textures.
+
+This patch resets the flag on hide() a move that can be considered safe
+given the show() method will reset this flag anyway.
+
+Change-Id: Iab0171716e27e31077a66b5e36a00bf28a2e7a8c
+Reviewed-by: Kai Uwe Broulik <kde@privat.broulik.de>
+Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
+Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
+Reviewed-by: Aleix Pol
+Reviewed-by: Andy Nichols <andy.nichols@qt.io>
+---
+ src/quick/scenegraph/qsgrenderloop.cpp | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/quick/scenegraph/qsgrenderloop.cpp b/src/quick/scenegraph/qsgrenderloop.cpp
+index 60f3538662..2eaed497ef 100644
+--- a/src/quick/scenegraph/qsgrenderloop.cpp
++++ b/src/quick/scenegraph/qsgrenderloop.cpp
+@@ -305,6 +305,8 @@ void QSGGuiThreadRenderLoop::hide(QQuickWindow *window)
+ {
+ QQuickWindowPrivate *cd = QQuickWindowPrivate::get(window);
+ cd->fireAboutToStop();
++ if (m_windows.contains(window))
++ m_windows[window].updatePending = false;
+ }
+
+ void QSGGuiThreadRenderLoop::windowDestroyed(QQuickWindow *window)
+@@ -494,7 +496,8 @@ QImage QSGGuiThreadRenderLoop::grab(QQuickWindow *window)
+
+ void QSGGuiThreadRenderLoop::maybeUpdate(QQuickWindow *window)
+ {
+- if (!m_windows.contains(window))
++ QQuickWindowPrivate *cd = QQuickWindowPrivate::get(window);
++ if (!cd->isRenderable() || !m_windows.contains(window))
+ return;
+
+ m_windows[window].updatePending = true;
+--
+2.16.3
+
diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild b/dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild
new file mode 100644
index 000000000000..393f329132be
--- /dev/null
+++ b/dev-qt/qtdeclarative/qtdeclarative-5.9.5-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+inherit python-any-r1 qt5-build
+
+DESCRIPTION="The QML and Quick modules for the Qt5 framework"
+
+if [[ ${QT5_BUILD_TYPE} == release ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-fbsd"
+fi
+
+IUSE="gles2 +jit localstorage +widgets xml"
+
+# qtgui[gles2=] is needed because of bug 504322
+COMMON_DEPEND="
+ ~dev-qt/qtcore-${PV}
+ ~dev-qt/qtgui-${PV}[gles2=]
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qttest-${PV}
+ localstorage? ( ~dev-qt/qtsql-${PV} )
+ widgets? ( ~dev-qt/qtwidgets-${PV}[gles2=] )
+ xml? (
+ ~dev-qt/qtnetwork-${PV}
+ ~dev-qt/qtxmlpatterns-${PV}
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ ${PYTHON_DEPS}
+"
+RDEPEND="${COMMON_DEPEND}
+ !<dev-qt/qtquickcontrols-5.7:5
+"
+
+PATCHES=( "${FILESDIR}/${P}-texture-memleak.patch" )
+
+src_prepare() {
+ use jit || PATCHES+=("${FILESDIR}/${PN}-5.4.2-disable-jit.patch")
+
+ qt_use_disable_mod localstorage sql \
+ src/imports/imports.pro
+
+ qt_use_disable_mod widgets widgets \
+ src/src.pro \
+ src/qmltest/qmltest.pro \
+ tests/auto/auto.pro \
+ tools/tools.pro \
+ tools/qmlscene/qmlscene.pro \
+ tools/qml/qml.pro
+
+ qt_use_disable_mod xml xmlpatterns \
+ src/imports/imports.pro \
+ tests/auto/quick/quick.pro \
+ tests/auto/quick/examples/examples.pro
+
+ qt5-build_src_prepare
+}