diff options
Diffstat (limited to 'dev-qt/qtdeclarative')
| -rw-r--r-- | dev-qt/qtdeclarative/files/qtdeclarative-6.10.1-QTBUG-142331.patch | 66 | ||||
| -rw-r--r-- | dev-qt/qtdeclarative/qtdeclarative-5.15.18-r1.ebuild | 2 | ||||
| -rw-r--r-- | dev-qt/qtdeclarative/qtdeclarative-5.15.18.ebuild | 68 | ||||
| -rw-r--r-- | dev-qt/qtdeclarative/qtdeclarative-6.10.1-r1.ebuild (renamed from dev-qt/qtdeclarative/qtdeclarative-6.10.1.ebuild) | 4 |
4 files changed, 71 insertions, 69 deletions
diff --git a/dev-qt/qtdeclarative/files/qtdeclarative-6.10.1-QTBUG-142331.patch b/dev-qt/qtdeclarative/files/qtdeclarative-6.10.1-QTBUG-142331.patch new file mode 100644 index 000000000000..7109559a29a2 --- /dev/null +++ b/dev-qt/qtdeclarative/files/qtdeclarative-6.10.1-QTBUG-142331.patch @@ -0,0 +1,66 @@ +https://qt-project.atlassian.net/browse/QTBUG-142331 +https://mail.kde.org/pipermail/distributions/2025-December/001648.html +https://bugs.kde.org/show_bug.cgi?id=512754 +https://codereview.qt-project.org/c/qt/qtdeclarative/+/696524 +--- a/src/qml/jsruntime/qv4lookup_p.h ++++ b/src/qml/jsruntime/qv4lookup_p.h +@@ -160,4 +160,8 @@ + } qobjectMethodLookup; + struct { ++ // NB: None of this is actually cache-able. The metaobject may change at any time. ++ // We invalidate this data every time the lookup is invoked and thereby force a ++ // re-initialization next time. ++ + quintptr isConstant; // This is a bool, encoded as 0 or 1. Both values are ignored by gc + quintptr metaObject; // a (const QMetaObject* & 1) or nullptr +--- a/src/qml/qml/qqml.cpp ++++ b/src/qml/qml/qqml.cpp +@@ -1378,14 +1378,14 @@ + static FallbackPropertyQmlData findFallbackPropertyQmlData(QV4::Lookup *lookup, QObject *object) + { ++ // We've just initialized the lookup. So everything must be fine here. ++ + QQmlData *qmlData = QQmlData::get(object); +- if (qmlData && qmlData->isQueuedForDeletion) +- return {qmlData, nullptr, PropertyResult::Deleted}; + ++ Q_ASSERT(!qmlData || !qmlData->isQueuedForDeletion); + Q_ASSERT(!QQmlData::wasDeleted(object)); + + const QMetaObject *metaObject + = reinterpret_cast<const QMetaObject *>(lookup->qobjectFallbackLookup.metaObject - 1); +- if (!metaObject || metaObject != object->metaObject()) +- return {qmlData, nullptr, PropertyResult::NeedsInit}; ++ Q_ASSERT(metaObject == object->metaObject()); + + return {qmlData, metaObject, PropertyResult::OK}; +@@ -2577,4 +2577,5 @@ + case QV4::Lookup::Call::ContextGetterScopeObjectPropertyFallback: + result = loadFallbackProperty(lookup, qmlScopeObject, target, this); ++ lookup->call = QV4::Lookup::Call::ContextGetterGeneric; + break; + default: +@@ -2608,4 +2609,5 @@ + case QV4::Lookup::Call::ContextGetterScopeObjectPropertyFallback: + result = writeBackFallbackProperty(lookup, qmlScopeObject, source); ++ lookup->call = QV4::Lookup::Call::ContextGetterGeneric; + break; + default: +@@ -2808,4 +2810,5 @@ + ? loadFallbackAsVariant(lookup, object, target, this) + : loadFallbackProperty(lookup, object, target, this); ++ lookup->call = QV4::Lookup::Call::GetterGeneric; + break; + default: +@@ -2842,4 +2845,5 @@ + ? writeBackFallbackAsVariant(lookup, object, source) + : writeBackFallbackProperty(lookup, object, source); ++ lookup->call = QV4::Lookup::Call::GetterGeneric; + break; + default: +@@ -3002,4 +3006,5 @@ + ? storeFallbackAsVariant(engine->handle(), lookup, object, value) + : storeFallbackProperty(lookup, object, value); ++ lookup->call = QV4::Lookup::Call::SetterGeneric; + break; + default: diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.15.18-r1.ebuild b/dev-qt/qtdeclarative/qtdeclarative-5.15.18-r1.ebuild index 68526eb4386e..a7e398b935ca 100644 --- a/dev-qt/qtdeclarative/qtdeclarative-5.15.18-r1.ebuild +++ b/dev-qt/qtdeclarative/qtdeclarative-5.15.18-r1.ebuild @@ -5,7 +5,7 @@ EAPI=8 if [[ ${PV} != *9999* ]]; then QT5_KDEPATCHSET_REV=1 - KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86" + KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86" fi PYTHON_COMPAT=( python3_{11..14} ) diff --git a/dev-qt/qtdeclarative/qtdeclarative-5.15.18.ebuild b/dev-qt/qtdeclarative/qtdeclarative-5.15.18.ebuild deleted file mode 100644 index 4130b852a9b5..000000000000 --- a/dev-qt/qtdeclarative/qtdeclarative-5.15.18.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 2009-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -if [[ ${PV} != *9999* ]]; then - QT5_KDEPATCHSET_REV=1 - KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86" -fi - -PYTHON_COMPAT=( python3_{11..14} ) -inherit flag-o-matic python-any-r1 qt5-build - -DESCRIPTION="The QML and Quick modules for the Qt5 framework" - -IUSE="cpu_flags_x86_sse2 gles2-only +jit localstorage vulkan +widgets" -REQUIRED_USE="jit? ( x86? ( cpu_flags_x86_sse2 ) )" - -# qtgui[gles2-only=] is needed because of bug 504322 -DEPEND=" - =dev-qt/qtcore-${QT5_PV}* - =dev-qt/qtgui-${QT5_PV}*:5=[gles2-only=,vulkan=] - =dev-qt/qtnetwork-${QT5_PV}* - =dev-qt/qttest-${QT5_PV}* - media-libs/libglvnd - localstorage? ( =dev-qt/qtsql-${QT5_PV}* ) - widgets? ( =dev-qt/qtwidgets-${QT5_PV}*[gles2-only=] ) -" -RDEPEND="${DEPEND}" -BDEPEND="${PYTHON_DEPS}" - -PATCHES=( - "${FILESDIR}/${PN}-5.14.2-QQuickItemView-fix-maxXY-extent.patch" # QTBUG-83890 -) - -src_prepare() { - 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 - - qt5-build_src_prepare -} - -src_configure() { - replace-flags "-Os" "-O2" # bug 840861 - - local myqmakeargs=( - -- - -qml-debug - $(qt_use jit feature-qml-jit) - ) - qt5-build_src_configure -} - -src_install() { - qt5-build_src_install - qt5_symlink_binary_to_path qml 5 - qt5_symlink_binary_to_path qmleasing 5 - qt5_symlink_binary_to_path qmlpreview 5 - qt5_symlink_binary_to_path qmlscene 5 -} diff --git a/dev-qt/qtdeclarative/qtdeclarative-6.10.1.ebuild b/dev-qt/qtdeclarative/qtdeclarative-6.10.1-r1.ebuild index eb34cbcde726..43c9a1f694de 100644 --- a/dev-qt/qtdeclarative/qtdeclarative-6.10.1.ebuild +++ b/dev-qt/qtdeclarative/qtdeclarative-6.10.1-r1.ebuild @@ -32,6 +32,10 @@ BDEPEND=" ~dev-qt/qtshadertools-${PV}:6 " +PATCHES=( + "${FILESDIR}"/${PN}-6.10.1-QTBUG-142331.patch +) + src_configure() { local mycmakeargs=( $(cmake_use_find_package qmlls Qt6LanguageServerPrivate) |
