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:
4
dev-qt/qtdeclarative/Manifest
Normal file
4
dev-qt/qtdeclarative/Manifest
Normal file
@ -0,0 +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.3.tar.xz 38084496 BLAKE2B acefeb2f998001cd811d4ca62799cb44ed57e743a1198f58fe4d84f920b438496e45bf2cd71d08da83cf566bde09c4b2c284fb655bbcc607fd1c29d4c1c9a809 SHA512 187a525b73595e7c4d89c98be657df4f480114957649813aa9ecd3fba23f56f20c8804f2ab507d83a5fb6120a2c6c36751fe5c80f43f9feb6c3479a733fb6684
|
||||
DIST qtdeclarative-everywhere-src-6.11.1.tar.xz 38744644 BLAKE2B ea428a3930276dbf4db912f905aa885971de13f4b35034b6819c93af938d1d36d6b0cc13c3e54c1cd7bb8c375e4744bdd98af1ea9105ced5ad982e6aa550357a SHA512 91d657a33b3bf8fc79f1116561f125b3905b590e94504dcb3e4feead71f209b35b42a9da783d4568f756b22fd7a0e9802e1a9039553d400fe33417562776a1d6
|
||||
@ -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
|
||||
@ -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
|
||||
|
||||
@ -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;
|
||||
@ -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;
|
||||
}
|
||||
@ -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) {
|
||||
26
dev-qt/qtdeclarative/metadata.xml
Normal file
26
dev-qt/qtdeclarative/metadata.xml
Normal 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://qt-project.atlassian.net/</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>
|
||||
69
dev-qt/qtdeclarative/qtdeclarative-5.15.18-r1.ebuild
Normal file
69
dev-qt/qtdeclarative/qtdeclarative-5.15.18-r1.ebuild
Normal 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
|
||||
}
|
||||
65
dev-qt/qtdeclarative/qtdeclarative-6.10.3-r1.ebuild
Normal file
65
dev-qt/qtdeclarative/qtdeclarative-6.10.3-r1.ebuild
Normal 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
|
||||
}
|
||||
64
dev-qt/qtdeclarative/qtdeclarative-6.11.1-r1.ebuild
Normal file
64
dev-qt/qtdeclarative/qtdeclarative-6.11.1-r1.ebuild
Normal 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
|
||||
}
|
||||
60
dev-qt/qtdeclarative/qtdeclarative-6.11.9999.ebuild
Normal file
60
dev-qt/qtdeclarative/qtdeclarative-6.11.9999.ebuild
Normal 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
|
||||
}
|
||||
60
dev-qt/qtdeclarative/qtdeclarative-6.12.9999.ebuild
Normal file
60
dev-qt/qtdeclarative/qtdeclarative-6.12.9999.ebuild
Normal 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
|
||||
}
|
||||
60
dev-qt/qtdeclarative/qtdeclarative-6.9999.ebuild
Normal file
60
dev-qt/qtdeclarative/qtdeclarative-6.9999.ebuild
Normal 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
|
||||
}
|
||||
Reference in New Issue
Block a user