Add dev-qt from an older version of the gentoo repo

Qt5 has been removed, we restore it since we still use it.
This commit is contained in:
2026-07-03 09:45:00 +02:00
parent 2247967dd3
commit d5c461ec31
587 changed files with 30457 additions and 0 deletions

View File

@ -0,0 +1,7 @@
DIST qtdeclarative-5.15.16-gentoo-kde-1.tar.xz 19148 BLAKE2B ebdc17253887c5b22816c3bdcd07f30274c3aa4680088ceee7abce8896a17aff7272e5a4bba576e1ad0372b7d1d80322c6890e1b5343eaab915a5355da659c5b SHA512 3fbbb7b06c67d31a9074737f68437a9e920e4b816c78c78dec2e700e339f6f8ad0b244a1eb78d7521133873b17015861a84057a890887d4dfbef91699428d8c6
DIST qtdeclarative-5.15.17-gentoo-kde-1.tar.xz 18464 BLAKE2B e72479cd8ace4ef3be544ebbc9cd812091627b0ea7d62543ce93db14a1f6c6e209102467c56189b3ca60cc7bedebe89b000fb4070566e6fa199cd80e53a015dd SHA512 eca93160d02359038ad838acd1034cd415f8282e974ddde9a1118e79a27f06b9f817eab69385c346c42b5202a8be8e62110dfa934fb0625c5be8ffb154d50e20
DIST qtdeclarative-everywhere-opensource-src-5.15.16.tar.xz 21599596 BLAKE2B 7f69370eab4909891beb27a730e7082030715f1fcbd9faf87bdd8f3d7d3e469c56b609f58a1cf769bdb22303829d573d30fd9aaff4824456778d11ae46f7ddaa SHA512 be492d95d11ab13e13d27ca2024b5b5860d515d0b66c6d1c201bdba155841996bfdb3b813313dc75578228b6d3e661220dcc5db037624fe73d6e5e1c3ec84aa7
DIST qtdeclarative-everywhere-opensource-src-5.15.17.tar.xz 21605592 BLAKE2B 44cc5d5355028c927a0d7dca5c48466db0bf2b13040b4c384b0a5fb9570fe439fc2fd8813fc612a7b9fa9109c2703c6f67ec3b81c6a9dbc468ebf25ffb8c3944 SHA512 854d2b1aeb4b8b858c9ec5c33dc63e53823ef4391cf6953c715192d909d315c87fe859872c1d2c4f20cda22f43f400cb1c7a8d8500c1afd3ea0af9afe2800826
DIST qtdeclarative-everywhere-src-6.8.2.tar.xz 36485320 BLAKE2B 9d12d40450c6a5e6771c1e48e4c0a00d33aec269aec1050a4f1e689350d70f5208b0fc0c2fe2c0e8671989e392132ef3c7e7062483703ce5206ffdb66ebdc25c SHA512 0dbb8c96974424a18f047fe27124a3c87fb4a485094a2515aadefde92a0554b0da34fd67cff2c8ab5a3d93da7829a745a39713676702cd7470561eb776c72d95
DIST qtdeclarative-everywhere-src-6.8.3.tar.xz 36503988 BLAKE2B 5c155c9a09facc6ef10653af313a65854fa4ffff2cdc782ddc18417e94f85abafa2e2e312eda36a640131d3667c0876ab620d3faeeab0ee6838d178ef85ca83f SHA512 75c9fdc8ba26ef95ae8ff0c82b18589b74d7ff3065e86e5bd8427bc36336e569eaa22fa07863f99d0592eec0c1a69c3409c7b3941eae14361ff523c058e56084
DIST qtdeclarative-everywhere-src-6.9.0.tar.xz 36835960 BLAKE2B ec6c53ad9f1d66b7b655d92bd8a9c233ef5f67a8ee4ed8af739c5e9b237a3634677d930e1bc75aecbf62844b8290864aefdff7c7718c90ba2259a89803334d2a SHA512 51f216af71019d845b19e675d7eb8e11d9ab6a8b5f254fe31db4d0f0033272ffda053e597792447045bfc4c9e111a08d19eb4b85e1b401b0242b03b0086b2755

View File

@ -0,0 +1,42 @@
From cc5387ad22ca503d167fd66e2429107d45b937af Mon Sep 17 00:00:00 2001
From: David Redondo <qt@david-redondo.de>
Date: Wed, 13 May 2020 11:04:23 +0200
Subject: [PATCH] QQuickItemView: Fix max(X/Y)Extent()
QQuickFlickable maxXExtent() and maxYExtent() return the amount of space
that is not shown when inside a ScrollView. QQuickItemView however just
returned width() if vertical and height() if horizontal. In these cases
just defer to the QQuickFlickable base implementation like minXExtent()
and minYExtent() already do.
Fixes: QTBUG-83890
Pick-to: 5.15
Change-Id: I7f4060c2f46ae07611bedceca0d322c5f7f6affb
---
src/quick/items/qquickitemview.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/quick/items/qquickitemview.cpp b/src/quick/items/qquickitemview.cpp
index 7fb392233e4..ab130ac6857 100644
--- a/src/quick/items/qquickitemview.cpp
+++ b/src/quick/items/qquickitemview.cpp
@@ -1393,7 +1393,7 @@ qreal QQuickItemView::maxYExtent() const
{
Q_D(const QQuickItemView);
if (d->layoutOrientation() == Qt::Horizontal)
- return height();
+ return QQuickFlickable::maxYExtent();
if (d->vData.maxExtentDirty) {
d->maxExtent = d->maxExtentForAxis(d->vData, false);
@@ -1421,7 +1421,7 @@ qreal QQuickItemView::maxXExtent() const
{
Q_D(const QQuickItemView);
if (d->layoutOrientation() == Qt::Vertical)
- return width();
+ return QQuickFlickable::maxXExtent();
if (d->hData.maxExtentDirty) {
d->maxExtent = d->maxExtentForAxis(d->hData, true);
--
2.16.3

View File

@ -0,0 +1,91 @@
From f78bc0b2c6884fd730bf34a931870d67936cf01d Mon Sep 17 00:00:00 2001
From: Albert Astals Cid <aacid@kde.org>
Date: Sun, 7 Dec 2025 11:44:35 +0100
Subject: [PATCH] Increase robustness of <img> tag in Text component
For Text.StyledText, there was no protection against <img> tags
with very large widths or heights. This could cause an application
to spend a very long time processing a layout and sometimes crash
if the size was too large.
We reuse the internal coord limit in QPainter as our maximum size
here, similar to what we do in Qt Svg for instance.
For Text.RichText, there were no issues in release builds, but in
debug builds, you could trigger an overflow assert when rounding
the number if it exceeded INT_MAX. For this, we simply cap the
width and height at INT_MAX.
Fixes: QTBUG-141515
Pick-to: 5.15
Change-Id: I4bcba16158f5f495a0de38963316effc4c46aae1
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
(cherry picked from commit 4aaf9bf21f7cc69d73066785e254b664fcc82025)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
(cherry picked from commit 907c7ceb7b27586039262567273efd5ec79e6202)
(cherry picked from commit c4b74f27058b302a101befc2c1967f8c00b41be7)
This is actually a manual patch based on
https://download.qt.io/official_releases/qt/6.5/CVE-2025-12385-qtdeclarative-6.5-0002.diff
---
src/quick/items/qquicktextdocument.cpp | 4 ++--
src/quick/util/qquickstyledtext.cpp | 19 +++++++++++++++++--
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/src/quick/items/qquicktextdocument.cpp b/src/quick/items/qquicktextdocument.cpp
index 021bbca0f6..67ed63d0de 100644
--- a/src/quick/items/qquicktextdocument.cpp
+++ b/src/quick/items/qquicktextdocument.cpp
@@ -138,9 +138,9 @@ QSizeF QQuickTextDocumentWithImageResources::intrinsicSize(
if (format.isImageFormat()) {
QTextImageFormat imageFormat = format.toImageFormat();
- const int width = qRound(imageFormat.width());
+ int width = qRound(qBound(qreal(INT_MIN), imageFormat.width(), qreal(INT_MAX)));
const bool hasWidth = imageFormat.hasProperty(QTextFormat::ImageWidth) && width > 0;
- const int height = qRound(imageFormat.height());
+ const int height = qRound(qBound(qreal(INT_MIN), imageFormat.height(), qreal(INT_MAX)));
const bool hasHeight = imageFormat.hasProperty(QTextFormat::ImageHeight) && height > 0;
QSizeF size(width, height);
diff --git a/src/quick/util/qquickstyledtext.cpp b/src/quick/util/qquickstyledtext.cpp
index a25af90414..120a2593d3 100644
--- a/src/quick/util/qquickstyledtext.cpp
+++ b/src/quick/util/qquickstyledtext.cpp
@@ -45,6 +45,11 @@
#include <qmath.h>
#include "qquickstyledtext_p.h"
#include <QQmlContext>
+#include <QtGui/private/qoutlinemapper_p.h>
+
+#ifndef QQUICKSTYLEDPARSER_COORD_LIMIT
+# define QQUICKSTYLEDPARSER_COORD_LIMIT QT_RASTER_COORD_LIMIT
+#endif
Q_LOGGING_CATEGORY(lcStyledText, "qt.quick.styledtext")
@@ -694,9 +699,19 @@ void QQuickStyledTextPrivate::parseImageAttributes(const QChar *&ch, const QStri
if (attr.first == QLatin1String("src")) {
image->url = QUrl(attr.second.toString());
} else if (attr.first == QLatin1String("width")) {
- image->size.setWidth(attr.second.toString().toInt());
+ bool ok;
+ int v = attr.second.toString().toInt(&ok);
+ if (ok && v <= QQUICKSTYLEDPARSER_COORD_LIMIT)
+ image->size.setWidth(v);
+ else
+ qCWarning(lcStyledText) << "Invalid width provided for <img>";
} else if (attr.first == QLatin1String("height")) {
- image->size.setHeight(attr.second.toString().toInt());
+ bool ok;
+ int v = attr.second.toString().toInt(&ok);
+ if (ok && v <= QQUICKSTYLEDPARSER_COORD_LIMIT)
+ image->size.setHeight(v);
+ else
+ qCWarning(lcStyledText) << "Invalid height provided for <img>";
} else if (attr.first == QLatin1String("align")) {
if (attr.second.toString() == QLatin1String("top")) {
image->align = QQuickStyledTextImgTag::Top;
--
2.52.0

View File

@ -0,0 +1,22 @@
https://bugs.gentoo.org/973374
https://codereview.qt-project.org/c/qt%2Fqtdeclarative/+/733089
--- a/src/qml/qml/qqmltypecompiler.cpp
+++ b/src/qml/qml/qqmltypecompiler.cpp
@@ -919,12 +919,11 @@
// Apply the ordering in the IR
obj->setFirstAlias(ordered[0]);
- if (ordered[0] == defaultPropertyAlias)
- obj->indexOfDefaultPropertyOrAlias = 0;
- for (qsizetype i = 0, end = ordered.size() - 1; i < end; ++i) {
+ for (qsizetype i = 0, end = ordered.size() - 1; i < end; ++i)
ordered[i]->next = ordered[i + 1];
- if (ordered[i] == defaultPropertyAlias)
- obj->indexOfDefaultPropertyOrAlias = i;
- }
ordered.last()->next = nullptr;
+ if (defaultPropertyAlias) {
+ auto it = std::find(ordered.constBegin(), ordered.constEnd(), defaultPropertyAlias);
+ obj->indexOfDefaultPropertyOrAlias = std::distance(ordered.constBegin(), it);
+ }
return true;

View File

@ -0,0 +1,17 @@
https://codereview.qt-project.org/c/qt/qtdeclarative/+/723105
--- a/src/qmlcompiler/qqmlsa.cpp
+++ b/src/qmlcompiler/qqmlsa.cpp
@@ -1379,5 +1379,5 @@
QQmlJSScopesById::MostLikelyCallback<QQmlJSScope::ConstPtr> result;
PassManagerPrivate::visitor(*d->m_manager)->addressableScopes().possibleScopes(
- id.toString(), QQmlJSScope::scope(context), Default, result);
+ id.toString(), QQmlJSScope::scope(context), QQmlJSScopesByIdOption::Default, result);
return QQmlJSScope::createQQmlSAElement(result.result);
}
@@ -1391,5 +1391,5 @@
QQmlJSScopesById::MostLikelyCallback<QString> result;
PassManagerPrivate::visitor(*d->m_manager)->addressableScopes().possibleIds(
- QQmlJSScope::scope(element), QQmlJSScope::scope(context), Default, result);
+ QQmlJSScope::scope(element), QQmlJSScope::scope(context), QQmlJSScopesByIdOption::Default, result);
return result.result;
}

View File

@ -0,0 +1,73 @@
https://mail.kde.org/pipermail/distributions/2026-May/001692.html
https://bugs.kde.org/show_bug.cgi?id=520252
https://qt-project.atlassian.net/browse/QTBUG-146869
--- a/src/qmlmodels/qqmltableinstancemodel.cpp
+++ b/src/qmlmodels/qqmltableinstancemodel.cpp
@@ -166,24 +166,19 @@
Q_ASSERT(m_delegate);
- QQmlDelegateModelItem *modelItem = resolveModelItem(index, QModelIndex());
- if (!modelItem)
- return nullptr;
+ QModelIndex modelIndex;
+ if (const QAbstractItemModel *aim = abstractItemModel()) {
+ // A valid QModelIndex is needed for resolveModelItem() to match
+ // items in the release cache rather than just delegate type alone.
+ const int row = m_adaptorModel.rowAt(index);
+ const int column = m_adaptorModel.columnAt(index);
+ modelIndex = aim->index(row, column);
+ }
+
+ if (QQmlDelegateModelItem *modelItem = resolveModelItem(index, modelIndex)) {
+ // Return the incubated object, or start an async incubation task and return nullptr for now
+ return incubateModelItemIfNeeded(modelItem, incubationMode);
+ }
- // Return the incubated object, or start an async incubation task and return nullptr for now
- return incubateModelItemIfNeeded(modelItem, incubationMode);
-}
-
-QObject *QQmlTableInstanceModel::object(const QModelIndex &modelIndex, QQmlIncubator::IncubationMode incubationMode)
-{
- Q_ASSERT(m_delegate);
- Q_ASSERT(m_adaptorModel.adaptsAim());
-
- const int flatIndex = m_adaptorModel.indexAt(modelIndex.row(), modelIndex.column());
- QQmlDelegateModelItem *modelItem = resolveModelItem(flatIndex, modelIndex);
- if (!modelItem)
- return nullptr;
-
- // Return the incubated object, or start an async incubation task and return nullptr for now
- return incubateModelItemIfNeeded(modelItem, incubationMode);
+ return nullptr;
}
--- a/src/qmlmodels/qqmltableinstancemodel_p.h
+++ b/src/qmlmodels/qqmltableinstancemodel_p.h
@@ -87,5 +87,4 @@
QObject *object(int index, QQmlIncubator::IncubationMode incubationMode = QQmlIncubator::AsynchronousIfNested) override;
- QObject *object(const QModelIndex &index, QQmlIncubator::IncubationMode incubationMode = QQmlIncubator::AsynchronousIfNested);
QObject *incubateModelItemIfNeeded(QQmlDelegateModelItem *modelItem, QQmlIncubator::IncubationMode incubationMode);
void restoreFromReleasedItemsCache(QQmlDelegateModelItem *item, int newFlatIndex);
--- a/src/quick/items/qquicktableview.cpp
+++ b/src/quick/items/qquicktableview.cpp
@@ -2827,17 +2827,9 @@
bool ownItem = false;
- QObject* object = nullptr;
- const QAbstractItemModel *aim = model->abstractItemModel();
const int modelRow = isTransposed ? logicalColumnIndex(cell.y()) : logicalRowIndex(cell.y());
const int modelColumn = isTransposed ? logicalRowIndex(cell.x()) : logicalColumnIndex(cell.x());
const int modelIndex = modelIndexAtCell(QPoint(modelColumn, modelRow));
- if (tableModel && aim) {
- // Prefer loading via QModelIndex so that QQmlTableInstanceModel can also
- // match recently released items by model index, not just by delegate type.
- object = tableModel->object(aim->index(modelRow, modelColumn), incubationMode);
- } else {
- object = model->object(modelIndex, incubationMode);
- }
+ QObject *object = model->object(modelIndex, incubationMode);
if (!object) {

View File

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>qt@gentoo.org</email>
<name>Gentoo Qt Project</name>
</maintainer>
<use>
<flag name="localstorage">Build the LocalStorage import for QtQuick (requires QtSql)</flag>
<flag name="network">Enable QtNetwork support</flag>
<flag name="opengl">Enable OpenGL support</flag>
<flag name="qmlls">Build the qmlls tool using <pkg>dev-qt/qtlanguageserver</pkg></flag>
<flag name="sql">Enable QtSQL support</flag>
<flag name="widgets">Enable QtWidgets support</flag>
</use>
<upstream>
<bugs-to>https://bugreports.qt.io/</bugs-to>
<doc>https://doc.qt.io/</doc>
<remote-id type="github">qt/qtdeclarative</remote-id>
</upstream>
<slots>
<subslots>
Must only be used by packages that are known to use private parts of the Qt API.
</subslots>
</slots>
</pkgmetadata>

View File

@ -0,0 +1,67 @@
# Copyright 2009-2024 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_{8..13} )
inherit flag-o-matic python-any-r1 qt5-build
DESCRIPTION="The QML and Quick modules for the Qt5 framework"
IUSE="gles2-only +jit localstorage vulkan +widgets"
# 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
}

View File

@ -0,0 +1,67 @@
# 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_{8..13} )
inherit flag-o-matic python-any-r1 qt5-build
DESCRIPTION="The QML and Quick modules for the Qt5 framework"
IUSE="gles2-only +jit localstorage vulkan +widgets"
# 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
}

View File

@ -0,0 +1,69 @@
# 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
"${FILESDIR}/${P}-CVE-2025-12385.patch" # bug 966269, QTBUG-141515
)
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
}

View File

@ -0,0 +1,65 @@
# Copyright 2021-2026 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.10.3-unity-build.patch
"${FILESDIR}"/${PN}-6.10.3-QTBUG-144701.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
}

View File

@ -0,0 +1,64 @@
# Copyright 2021-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{12..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.11.1-QTBUG-146869.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
}

View File

@ -0,0 +1,60 @@
# 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
"
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
}

View File

@ -0,0 +1,60 @@
# Copyright 2021-2026 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
"
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
}

View File

@ -0,0 +1,61 @@
# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
# 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
"
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
}

View File

@ -0,0 +1,61 @@
# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
# 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
"
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
}

View File

@ -0,0 +1,61 @@
# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
# 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
"
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
}

View File

@ -0,0 +1,60 @@
# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..13} )
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
"
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
}

View File

@ -0,0 +1,60 @@
# Copyright 2021-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{11..13} )
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
"
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
}