dev-qt/qtdeclarative: drop 6.10.0-r1

Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
This commit is contained in:
Ionen Wolkens 2025-11-22 08:09:42 -05:00
parent 892c2fdc6c
commit 9485da334f
No known key found for this signature in database
GPG Key ID: B24406B0B0AC4334
3 changed files with 0 additions and 178 deletions

View File

@ -1,5 +1,4 @@
DIST qtdeclarative-5.15.18-gentoo-kde-1.tar.xz 19304 BLAKE2B ec246d080eeeeeedb3d358c322faf8392cd106ffb6a0cda2ccbe1fd3776e7fdd2d76c8d8cd56e954b8fa11b466a6b6592e6134a8ba771b1433ba74c9fa0e00cd SHA512 f7636a405a0602b476bc4034382b275c14e3e7d166314042c7ea6bfb79f30aba7c79b540c4ec2352bb2e7fbed51b5bab52ddbf6458a579c9ba4fa2d6aad30a55
DIST qtdeclarative-everywhere-opensource-src-5.15.18.tar.xz 21588352 BLAKE2B 9daf4a86e39db46d12350cc2e17cba1d23c8777a5c3193a76bd66c68ff252c94d616717a4b13cebe25707a6acd42084a1a02d372862d0b0f7418373b267be94b SHA512 73c45c47b5074b6bc1127abb1b3cf1cd751deeb80c2f9c86a675c7323fecf20bd83363fad95803bc72cf494ae4679c1f38a02387363f266c093c707e700c9ea2
DIST qtdeclarative-everywhere-src-6.10.0.tar.xz 37522260 BLAKE2B 2e84966b81326ccd5154aa3bb0ac9b78b476285052cf6f0b68048e8c6a9cc42b3b027af727b57d6b965028a2d32951a8b5f1678a79a8ec59b07c2321c3755f32 SHA512 104d0d237bbde943d739bfa4831f85576b67fb838d06b1d4760976aaa74fadac3523544eecdcf4d614991adc9c73294c2494bf094217ce648e6a721ab95a5415
DIST qtdeclarative-everywhere-src-6.10.1.tar.xz 37552260 BLAKE2B 32895b277b194dc89fb009edda071d1bee40a99432f422eacb3890173bff334c788eb741152dfe39d8b511b30d7d0d052627ece566f2a86b04bc88bebc600c1d SHA512 e433ae1e282175d251c3257eed775bc5835f564bbd7f34244c9765af59eee2b97f4b2852d59987942315cda14a763c65e509553439e2a4c2ac2652ea9e7a56b6
DIST qtdeclarative-everywhere-src-6.9.3.tar.xz 37223760 BLAKE2B 3ea0e66601f682fedaee6bd253e82d7eb7a78ffce8dad85039be55dc25d0e42fd72e3552b495b3d5b6e5dd8c940f31861d6475d793b686ac8cc58a14b5431288 SHA512 e6403422b20d272fc120063513e56c965f9325a765964abcbe04fa8e195a1f1db187b613329112a99dfd8ed661b6d6b888d1ab72cf22b7cb53f3d609b7ece0d7

View File

@ -1,112 +0,0 @@
https://bugreports.qt.io/browse/QTBUG-139626
https://codereview.qt-project.org/c/qt/qtdeclarative/+/682564
--- a/src/qmlcompiler/qqmljscodegenerator.cpp
+++ b/src/qmlcompiler/qqmljscodegenerator.cpp
@@ -1472,5 +1472,5 @@
}
-QString QQmlJSCodeGenerator::generateVariantMapLookup(
+QString QQmlJSCodeGenerator::generateVariantMapGetLookup(
const QString &map, const int nameIndex)
{
@@ -1483,4 +1483,16 @@
}
+QString QQmlJSCodeGenerator::generateVariantMapSetLookup(
+ const QString &map, const int nameIndex,
+ const QQmlJSScope::ConstPtr &property, const QString &variableIn)
+{
+ const QString mapLookup = map
+ + u"["_s + QQmlJSUtils::toLiteral(m_jsUnitGenerator->lookupName(nameIndex)) + u"]"_s;
+
+ return mapLookup + u" = "_s
+ + conversion(property, m_typeResolver->varType(), variableIn)
+ + u";\n"_s;
+}
+
void QQmlJSCodeGenerator::generate_GetLookupHelper(int index)
{
@@ -1628,5 +1640,5 @@
}
} else if (accumulatorIn.isStoredIn(m_typeResolver->variantMapType())) {
- m_body += generateVariantMapLookup(m_state.accumulatorVariableIn, index);
+ m_body += generateVariantMapGetLookup(m_state.accumulatorVariableIn, index);
} else {
if (m_state.isRegisterAffectedBySideEffects(Accumulator))
@@ -1639,5 +1651,5 @@
if (scope.contains(m_typeResolver->variantMapType())) {
- m_body += generateVariantMapLookup(
+ m_body += generateVariantMapGetLookup(
u"(*static_cast<const QVariantMap *>("_s
+ inputContentPointer + u"))"_s, index);
@@ -1699,4 +1711,13 @@
}
+// TODO: This shouldn't be necessary. If the content can be stored directly, then it should
+// be stored and used directly. If it cannot be stored directly, it should be stored
+// as QVariant, but then we cannot dereference the content pointer either.
+static QString derefContentPointer(const QString &contentPointer)
+{
+ Q_ASSERT(contentPointer.startsWith(u'&') || contentPointer[0].isLetterOrNumber());
+ return contentPointer.startsWith(u'&') ? contentPointer.mid(1) : (u'*' + contentPointer);
+}
+
void QQmlJSCodeGenerator::generate_SetLookup(int index, int baseReg)
{
@@ -1707,6 +1728,7 @@
const QQmlJSRegisterContent property = m_state.readAccumulator();
Q_ASSERT(property.isConversion());
- const QQmlJSScope::ConstPtr originalScope
- = m_typeResolver->original(property.conversionResultScope()).containedType();
+ const QQmlJSRegisterContent original
+ = m_typeResolver->original(property.conversionResultScope());
+ const QQmlJSScope::ConstPtr originalScope = original.containedType();
if (property.storedType().isNull()) {
@@ -1758,7 +1780,5 @@
// We can resize without write back on a list property because it's actually a reference.
m_body += u"const int begin = "_s + object + u".count(&" + object + u");\n"_s;
- m_body += u"const int end = "_s
- + (variableIn.startsWith(u'&') ? variableIn.mid(1) : (u'*' + variableIn))
- + u";\n"_s;
+ m_body += u"const int end = "_s + derefContentPointer(variableIn) + u";\n"_s;
m_body += u"for (int i = begin; i < end; ++i)\n"_s;
m_body += u" "_s + object + u".append(&"_s + object + u", nullptr);\n"_s;
@@ -1770,8 +1790,24 @@
case QQmlJSScope::AccessSemantics::Value: {
const QQmlJSRegisterContent base = registerType(baseReg);
+ if (base.isStoredIn(m_typeResolver->variantMapType())) {
+ m_body += generateVariantMapSetLookup(
+ registerVariable(baseReg), index, property.storedType(),
+ derefContentPointer(variableIn));
+ generateWriteBack(baseReg);
+ break;
+ }
const QString baseContentPointer = resolveValueTypeContentPointer(
originalScope, base, object,
u"TypeError: Value is %1 and could not be converted to an object"_s);
+ if (original.contains(m_typeResolver->variantMapType())) {
+ m_body += generateVariantMapSetLookup(
+ u"(*static_cast<const QVariantMap *>("_s
+ + baseContentPointer + u"))"_s, index, property.storedType(),
+ derefContentPointer(variableIn));
+ generateWriteBack(baseReg);
+ break;
+ }
+
const QString lookup = u"aotContext->setValueLookup("_s + indexString
+ u", "_s + baseContentPointer
--- a/src/qmlcompiler/qqmljscodegenerator_p.h
+++ b/src/qmlcompiler/qqmljscodegenerator_p.h
@@ -366,5 +366,8 @@
const QStringList &arguments, const QString &metaType, const QString &metaObject);
- QString generateVariantMapLookup(const QString &map, const int nameIndex);
+ QString generateVariantMapGetLookup(const QString &map, const int nameIndex);
+ QString generateVariantMapSetLookup(
+ const QString &map, const int nameIndex, const QQmlJSScope::ConstPtr &property,
+ const QString &variableIn);
QQmlJSRegisterContent originalType(QQmlJSRegisterContent tracked)

View File

@ -1,65 +0,0 @@
# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..14} )
QT6_HAS_STATIC_LIBS=1
# behaves very badly when qtdeclarative is not already installed, also
# other more minor issues (installs junk, sandbox/offscreen issues)
QT6_RESTRICT_TESTS=1
inherit python-any-r1 qt6-build
DESCRIPTION="Qt Declarative (Quick 2)"
if [[ ${QT6_BUILD_TYPE} == release ]]; then
KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~x86"
fi
IUSE="accessibility +jit +network opengl qmlls +sql +ssl svg vulkan +widgets"
RDEPEND="
~dev-qt/qtbase-${PV}:6[accessibility=,gui,network=,opengl=,sql?,ssl?,vulkan=,widgets=]
qmlls? ( ~dev-qt/qtlanguageserver-${PV}:6 )
svg? ( ~dev-qt/qtsvg-${PV}:6 )
"
DEPEND="
${RDEPEND}
vulkan? ( dev-util/vulkan-headers )
"
BDEPEND="
${PYTHON_DEPS}
~dev-qt/qtshadertools-${PV}:6
"
PATCHES=(
"${FILESDIR}"/${PN}-6.9.3-QTBUG-140018.patch
"${FILESDIR}"/${PN}-6.10.0-QTBUG-139626.patch
)
src_configure() {
local mycmakeargs=(
$(cmake_use_find_package qmlls Qt6LanguageServerPrivate)
$(cmake_use_find_package sql Qt6Sql)
$(cmake_use_find_package svg Qt6Svg)
$(qt_feature jit qml_jit)
$(qt_feature network qml_network)
$(qt_feature ssl qml_ssl)
)
qt6-build_src_configure
}
src_install() {
qt6-build_src_install
if [[ ! -e ${D}${QT6_LIBDIR}/libQt6QuickControls2.so.6 ]]; then #940675
eerror "${CATEGORY}/${PF} seems to have been improperly built and"
eerror "install was aborted to protect the system. Possibly(?) due"
eerror "to a rare portage ordering bug. If using portage, try:"
eerror " emerge -1 qtshadertools:6 qtdeclarative:6"
eerror "If that did not resolve the issue, please provide build.log"
eerror "on https://bugs.gentoo.org/940675"
die "aborting due to incomplete/broken build (see above)"
fi
}