public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/qt:master commit in: dev-qt/qtgui/files/, dev-qt/qtgui/
@ 2017-07-04 12:39 Michael Palimaka
  0 siblings, 0 replies; 4+ messages in thread
From: Michael Palimaka @ 2017-07-04 12:39 UTC (permalink / raw
  To: gentoo-commits

commit:     83c3cadf0bb3202448cf7a803a0139c34ff2b1a2
Author:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
AuthorDate: Tue Jul  4 12:39:19 2017 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Tue Jul  4 12:39:31 2017 +0000
URL:        https://gitweb.gentoo.org/proj/qt.git/commit/?id=83c3cadf

dev-qt/qtgui: backport patch from upstream fixing accessibility

Package-Manager: Portage-2.3.6, Repoman-2.3.2

 dev-qt/qtgui/files/qtgui-5.9.1-atspi.patch | 37 ++++++++++++++++++++++++++++++
 dev-qt/qtgui/qtgui-5.9.1.ebuild            |  2 ++
 2 files changed, 39 insertions(+)

diff --git a/dev-qt/qtgui/files/qtgui-5.9.1-atspi.patch b/dev-qt/qtgui/files/qtgui-5.9.1-atspi.patch
new file mode 100644
index 00000000..82acd839
--- /dev/null
+++ b/dev-qt/qtgui/files/qtgui-5.9.1-atspi.patch
@@ -0,0 +1,37 @@
+From: Bernhard Rosenkränzer <bero@linaro.org>
+Date: Fri, 30 Jun 2017 15:39:01 +0000 (+0200)
+Subject: Fix detection of AT-SPI
+X-Git-Url: https://codereview.qt-project.org/gitweb?p=qt%2Fqtbase.git;a=commitdiff_plain;h=386af91c57948b88ba98cb040430e4a3878e3e3b;hp=989b9da3007ff06c79ab7ee553acfce9177df5b6
+
+Fix detection of AT-SPI
+
+Building qtbase 5.9.1 on Linux always results in a build with
+accessibility support disabled.
+
+The problem is that the config option for accessibility-atspi-bridge
+checks for config.atspi, which isn't defined anywhere - it should
+check for libs.atspi (which is set if pkg-config finds atspi-2) instead.
+
+[ChangeLog][QtGui][Platform Specific Changes][Linux/XCB]
+Fixed detection of AT-SPI, allowing accessibility support to be built
+again.
+
+Task-number: QTBUG-61731
+Change-Id: If3bd5dfccda40158c566f8507e34b6877b59b6fb
+Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
+Reviewed-by: Bernhard Rosenkränzer <bero@lindev.ch>
+---
+
+diff --git a/src/gui/configure.json b/src/gui/configure.json
+index a2a78aa..ef7ba51 100644
+--- a/src/gui/configure.json
++++ b/src/gui/configure.json
+@@ -434,7 +434,7 @@
+     "features": {
+         "accessibility-atspi-bridge": {
+             "label": "ATSPI Bridge",
+-            "condition": "features.accessibility && features.xcb && features.dbus && config.atspi",
++            "condition": "features.accessibility && features.xcb && features.dbus && libs.atspi",
+             "output": [ "privateFeature", "feature" ]
+         },
+         "angle": {

diff --git a/dev-qt/qtgui/qtgui-5.9.1.ebuild b/dev-qt/qtgui/qtgui-5.9.1.ebuild
index 53aa133b..3af03f98 100644
--- a/dev-qt/qtgui/qtgui-5.9.1.ebuild
+++ b/dev-qt/qtgui/qtgui-5.9.1.ebuild
@@ -71,6 +71,8 @@ PDEPEND="
 	ibus? ( app-i18n/ibus )
 "
 
+PATCHES=( "${FILESDIR}/${P}-atspi.patch" )
+
 QT5_TARGET_SUBDIRS=(
 	src/gui
 	src/openglextensions


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] proj/qt:master commit in: dev-qt/qtgui/files/, dev-qt/qtgui/
@ 2018-02-22 22:19 Andreas Sturmlechner
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Sturmlechner @ 2018-02-22 22:19 UTC (permalink / raw
  To: gentoo-commits

commit:     aef30f8ce96a91339b398b0092b64f397fed1333
Author:     Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
AuthorDate: Thu Feb 22 10:05:40 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Feb 22 22:13:30 2018 +0000
URL:        https://gitweb.gentoo.org/proj/qt.git/commit/?id=aef30f8c

dev-qt/qtgui: Bail if cached shader fails to load

Qt-Bug: https://bugreports.qt.io/browse/QTBUG-66420
See also: https://codereview.qt-project.org/#/c/221098
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-qt/qtgui/files/qtgui-5.9.4-opengl.patch        | 87 ++++++++++++++++++++++
 ...-5.11.0_alpha.ebuild => qtgui-5.10.1-r1.ebuild} |  4 +-
 dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild             |  2 +
 3 files changed, 92 insertions(+), 1 deletion(-)

diff --git a/dev-qt/qtgui/files/qtgui-5.9.4-opengl.patch b/dev-qt/qtgui/files/qtgui-5.9.4-opengl.patch
new file mode 100644
index 00000000..2a447414
--- /dev/null
+++ b/dev-qt/qtgui/files/qtgui-5.9.4-opengl.patch
@@ -0,0 +1,87 @@
+From b63aeba4a88088c7de61c1664a510c02d38ade84 Mon Sep 17 00:00:00 2001
+From: Antonio Larrosa <alarrosa@suse.com>
+Date: Fri, 16 Feb 2018 13:18:42 +0100
+Subject: [PATCH] opengl: Bail if cached shader fails to load
+
+QOpenGLProgramBinaryCache::setProgramBinary() should check
+GL_LINK_STATUS after glProgramBinary(), but doesn't.
+
+In practice, this means that SDDM is a white screen, and KDE is just
+a gray task bar.
+
+So far, Qt tries to check this using its internal ::link() function.
+But in case the cached binary fails to load, Qt currently attempts to
+link the inexistent program, resulting in a zero-length, fixed
+pipeline shader.
+
+Checking this already in ::setProgramBinary() makes the call to
+::link() superfluous, so we remove that as well.
+
+Done-with: Max Staudt <mstaudt@suse.com>
+Done-with: Michal Srb <msrb@suse.com>
+Done-with: Fabian Vogt <fvogt@suse.de>
+Task-number: QTBUG-66420
+Change-Id: Iabb51d0eb2c0c16bde696efff623e57d15f28d82
+Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
+Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
+(cherry picked from commit fa091640134b3ff99a9eb92df8286d15203122bf)
+---
+ src/gui/opengl/qopenglprogrambinarycache.cpp | 20 ++++++++++++++++++--
+ src/gui/opengl/qopenglshaderprogram.cpp      |  8 +-------
+ 2 files changed, 19 insertions(+), 9 deletions(-)
+
+diff --git a/src/gui/opengl/qopenglprogrambinarycache.cpp b/src/gui/opengl/qopenglprogrambinarycache.cpp
+index 06373e1..d16173d 100644
+--- a/src/gui/opengl/qopenglprogrambinarycache.cpp
++++ b/src/gui/opengl/qopenglprogrambinarycache.cpp
+@@ -161,10 +161,26 @@ bool QOpenGLProgramBinaryCache::setProgramBinary(uint programId, uint blobFormat
+     QOpenGLExtraFunctions *funcs = QOpenGLContext::currentContext()->extraFunctions();
+     while (funcs->glGetError() != GL_NO_ERROR) { }
+     funcs->glProgramBinary(programId, blobFormat, p, blobSize);
+-    int err = funcs->glGetError();
++
++    GLenum err = funcs->glGetError();
++    if (err != GL_NO_ERROR) {
++        qCDebug(DBG_SHADER_CACHE, "Program binary failed to load for program %u, size %d, "
++                                  "format 0x%x, err = 0x%x",
++                programId, blobSize, blobFormat, err);
++        return false;
++    }
++    GLint linkStatus = 0;
++    funcs->glGetProgramiv(programId, GL_LINK_STATUS, &linkStatus);
++    if (linkStatus != GL_TRUE) {
++        qCDebug(DBG_SHADER_CACHE, "Program binary failed to load for program %u, size %d, "
++                                  "format 0x%x, linkStatus = 0x%x, err = 0x%x",
++                programId, blobSize, blobFormat, linkStatus, err);
++        return false;
++    }
++
+     qCDebug(DBG_SHADER_CACHE, "Program binary set for program %u, size %d, format 0x%x, err = 0x%x",
+             programId, blobSize, blobFormat, err);
+-    return err == 0;
++    return true;
+ }
+ 
+ #ifdef Q_OS_UNIX
+diff --git a/src/gui/opengl/qopenglshaderprogram.cpp b/src/gui/opengl/qopenglshaderprogram.cpp
+index cc8af16..3b82bac 100644
+--- a/src/gui/opengl/qopenglshaderprogram.cpp
++++ b/src/gui/opengl/qopenglshaderprogram.cpp
+@@ -3824,13 +3824,7 @@ bool QOpenGLShaderProgramPrivate::linkBinary()
+     bool needsCompile = true;
+     if (binCache.load(cacheKey, q->programId())) {
+         qCDebug(DBG_SHADER_CACHE, "Program binary received from cache");
+-        linkBinaryRecursion = true;
+-        bool ok = q->link();
+-        linkBinaryRecursion = false;
+-        if (ok)
+-            needsCompile = false;
+-        else
+-            qCDebug(DBG_SHADER_CACHE, "Link failed after glProgramBinary");
++        needsCompile = false;
+     }
+ 
+     bool needsSave = false;
+-- 
+2.7.4
+

diff --git a/dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild b/dev-qt/qtgui/qtgui-5.10.1-r1.ebuild
similarity index 97%
copy from dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild
copy to dev-qt/qtgui/qtgui-5.10.1-r1.ebuild
index 9c89728d..3ab13c62 100644
--- a/dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild
+++ b/dev-qt/qtgui/qtgui-5.10.1-r1.ebuild
@@ -29,7 +29,7 @@ RDEPEND="
 	~dev-qt/qtcore-${PV}
 	media-libs/fontconfig
 	>=media-libs/freetype-2.6.1:2
-	>=media-libs/harfbuzz-1.6.0:=
+	>=media-libs/harfbuzz-1.0.6:=
 	>=sys-libs/zlib-1.2.5
 	virtual/opengl
 	dbus? ( ~dev-qt/qtdbus-${PV} )
@@ -71,6 +71,8 @@ PDEPEND="
 	ibus? ( app-i18n/ibus )
 "
 
+PATCHES=( "${FILESDIR}/${PN}-5.9.4-opengl.patch" ) # QTBUG-66420
+
 QT5_TARGET_SUBDIRS=(
 	src/tools/qvkgen
 	src/gui

diff --git a/dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild b/dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild
index 9c89728d..1d2abec0 100644
--- a/dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild
+++ b/dev-qt/qtgui/qtgui-5.11.0_alpha.ebuild
@@ -71,6 +71,8 @@ PDEPEND="
 	ibus? ( app-i18n/ibus )
 "
 
+PATCHES=( "${FILESDIR}/${PN}-5.9.4-opengl.patch" ) # QTBUG-66420
+
 QT5_TARGET_SUBDIRS=(
 	src/tools/qvkgen
 	src/gui


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] proj/qt:master commit in: dev-qt/qtgui/files/, dev-qt/qtgui/
@ 2019-12-25 17:33 Andreas Sturmlechner
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Sturmlechner @ 2019-12-25 17:33 UTC (permalink / raw
  To: gentoo-commits

commit:     71a6ccc1bcc9b66bbb891365ab17edcd49f7b1c9
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 25 15:51:30 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Dec 25 17:30:33 2019 +0000
URL:        https://gitweb.gentoo.org/proj/qt.git/commit/?id=71a6ccc1

dev-qt/qtgui: Sync with Gentoo ebuild repository

- Fix build with CXXFLAGS="-march=native"
- Block known old users of _populate_Gui_plugin_properties
  With sufficiently parallelised emerge, if dev-qt/qtgui reverse dependencies
  are scheduled before modules installing Qt5Gui plugins have been rebuilt,
  these revdeps will fail cmake after an incompatible change in macro args.
- Raise minimum dependency for USE=tslib

Bug: https://bugs.gentoo.org/672946
Bug: https://bugs.gentoo.org/703306
Bug: https://bugs.gentoo.org/703336
Package-Manager: Portage-2.3.83, Repoman-2.3.20
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 dev-qt/qtgui/files/qt-5.12-gcc-avx2.patch | 29 +++++++++++++++++++++++++++++
 dev-qt/qtgui/qtgui-5.12.9999.ebuild       |  2 ++
 dev-qt/qtgui/qtgui-5.14.9999.ebuild       | 15 ++++++++++++---
 dev-qt/qtgui/qtgui-5.15.9999.ebuild       | 15 ++++++++++++---
 dev-qt/qtgui/qtgui-5.9999.ebuild          |  2 +-
 5 files changed, 56 insertions(+), 7 deletions(-)

diff --git a/dev-qt/qtgui/files/qt-5.12-gcc-avx2.patch b/dev-qt/qtgui/files/qt-5.12-gcc-avx2.patch
new file mode 100644
index 00000000..41814c06
--- /dev/null
+++ b/dev-qt/qtgui/files/qt-5.12-gcc-avx2.patch
@@ -0,0 +1,29 @@
+From 3f302cb16ebfefade17b3ea90c5ed258c9150f3a Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Fri, 1 Mar 2019 21:37:52 -0500
+Subject: [PATCH] gcc: pass -mavx2 instead of -march=core-avx2
+
+Resolves a build failure when QMAKE_CXXFLAGS contains -march=native
+and the compiler is running on a CPU which does not support AVX2.
+
+Bug: https://bugs.gentoo.org/672946
+---
+ mkspecs/common/gcc-base.conf | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
+index c2669e4833..44aa96af38 100644
+--- a/mkspecs/common/gcc-base.conf
++++ b/mkspecs/common/gcc-base.conf
+@@ -109,7 +109,7 @@ QMAKE_CFLAGS_MIPS_DSP  += -mdsp
+ QMAKE_CFLAGS_MIPS_DSPR2 += -mdspr2
+ 
+ # -march=haswell is supported as of GCC 4.9 and Clang 3.6
+-QMAKE_CFLAGS_ARCH_HASWELL           = -march=core-avx2
++QMAKE_CFLAGS_ARCH_HASWELL           = -mavx2
+ 
+ # Wrapper tools that understand .o/.a files with GIMPLE instead of machine code
+ QMAKE_AR_LTCG           = gcc-ar cqs
+-- 
+2.21.0.rc1
+

diff --git a/dev-qt/qtgui/qtgui-5.12.9999.ebuild b/dev-qt/qtgui/qtgui-5.12.9999.ebuild
index 480c023a..bd23ada7 100644
--- a/dev-qt/qtgui/qtgui-5.12.9999.ebuild
+++ b/dev-qt/qtgui/qtgui-5.12.9999.ebuild
@@ -124,6 +124,8 @@ QT5_GENTOO_PRIVATE_CONFIG=(
 	:gui
 )
 
+PATCHES=( "${FILESDIR}/qt-5.12-gcc-avx2.patch" ) # bug 672946
+
 src_prepare() {
 	# don't add -O3 to CXXFLAGS, bug 549140
 	sed -i -e '/CONFIG\s*+=/s/optimize_full//' src/gui/gui.pro || die

diff --git a/dev-qt/qtgui/qtgui-5.14.9999.ebuild b/dev-qt/qtgui/qtgui-5.14.9999.ebuild
index 480c023a..97db51f0 100644
--- a/dev-qt/qtgui/qtgui-5.14.9999.ebuild
+++ b/dev-qt/qtgui/qtgui-5.14.9999.ebuild
@@ -24,7 +24,7 @@ REQUIRED_USE="
 	xcb? ( gles2? ( egl ) )
 "
 
-RDEPEND="
+COMMON_DEPEND="
 	dev-libs/glib:2
 	~dev-qt/qtcore-${PV}
 	dev-util/gtk-update-icon-cache
@@ -47,7 +47,7 @@ RDEPEND="
 		>=x11-libs/libxkbcommon-0.5.0
 	)
 	png? ( media-libs/libpng:0= )
-	tslib? ( x11-libs/tslib )
+	tslib? ( >=x11-libs/tslib-1.21 )
 	tuio? ( ~dev-qt/qtnetwork-${PV} )
 	udev? ( virtual/libudev:= )
 	vnc? ( ~dev-qt/qtnetwork-${PV} )
@@ -63,10 +63,17 @@ RDEPEND="
 		x11-libs/xcb-util-wm
 	)
 "
-DEPEND="${RDEPEND}
+DEPEND="${COMMON_DEPEND}
 	evdev? ( sys-kernel/linux-headers )
 	udev? ( sys-kernel/linux-headers )
 "
+# bug 703306, _populate_Gui_plugin_properties breaks installed cmake modules
+RDEPEND="${COMMON_DEPEND}
+	!<dev-qt/qtimageformats-5.14.0:5
+	!<dev-qt/qtsvg-5.14.0:5
+	!<dev-qt/qtvirtualkeyboard-5.14.0:5
+	!<dev-qt/qtwayland-5.14.0:5
+"
 PDEPEND="
 	ibus? ( app-i18n/ibus )
 	wayland? ( ~dev-qt/qtwayland-${PV} )
@@ -124,6 +131,8 @@ QT5_GENTOO_PRIVATE_CONFIG=(
 	:gui
 )
 
+PATCHES=( "${FILESDIR}/qt-5.12-gcc-avx2.patch" ) # bug 672946
+
 src_prepare() {
 	# don't add -O3 to CXXFLAGS, bug 549140
 	sed -i -e '/CONFIG\s*+=/s/optimize_full//' src/gui/gui.pro || die

diff --git a/dev-qt/qtgui/qtgui-5.15.9999.ebuild b/dev-qt/qtgui/qtgui-5.15.9999.ebuild
index 7cceccfd..8a4c7007 100644
--- a/dev-qt/qtgui/qtgui-5.15.9999.ebuild
+++ b/dev-qt/qtgui/qtgui-5.15.9999.ebuild
@@ -24,7 +24,7 @@ REQUIRED_USE="
 	xcb? ( gles2? ( egl ) )
 "
 
-RDEPEND="
+COMMON_DEPEND="
 	dev-libs/glib:2
 	~dev-qt/qtcore-${PV}
 	dev-util/gtk-update-icon-cache
@@ -47,7 +47,7 @@ RDEPEND="
 		>=x11-libs/libxkbcommon-0.5.0
 	)
 	png? ( media-libs/libpng:0= )
-	tslib? ( x11-libs/tslib )
+	tslib? ( >=x11-libs/tslib-1.21 )
 	tuio? ( ~dev-qt/qtnetwork-${PV} )
 	udev? ( virtual/libudev:= )
 	vnc? ( ~dev-qt/qtnetwork-${PV} )
@@ -63,10 +63,17 @@ RDEPEND="
 		x11-libs/xcb-util-wm
 	)
 "
-DEPEND="${RDEPEND}
+DEPEND="${COMMON_DEPEND}
 	evdev? ( sys-kernel/linux-headers )
 	udev? ( sys-kernel/linux-headers )
 "
+# bug 703306, _populate_Gui_plugin_properties breaks installed cmake modules
+RDEPEND="${COMMON_DEPEND}
+	!<dev-qt/qtimageformats-5.14.0:5
+	!<dev-qt/qtsvg-5.14.0:5
+	!<dev-qt/qtvirtualkeyboard-5.14.0:5
+	!<dev-qt/qtwayland-5.14.0:5
+"
 PDEPEND="
 	ibus? ( app-i18n/ibus )
 	wayland? ( ~dev-qt/qtwayland-${PV} )
@@ -124,6 +131,8 @@ QT5_GENTOO_PRIVATE_CONFIG=(
 	:gui
 )
 
+PATCHES=( "${FILESDIR}/qt-5.12-gcc-avx2.patch" ) # bug 672946
+
 src_prepare() {
 	# don't add -O3 to CXXFLAGS, bug 549140
 	sed -i -e '/CONFIG\s*+=/s/optimize_full//' src/gui/gui.pro || die

diff --git a/dev-qt/qtgui/qtgui-5.9999.ebuild b/dev-qt/qtgui/qtgui-5.9999.ebuild
index 480c023a..e8e79ac3 100644
--- a/dev-qt/qtgui/qtgui-5.9999.ebuild
+++ b/dev-qt/qtgui/qtgui-5.9999.ebuild
@@ -47,7 +47,7 @@ RDEPEND="
 		>=x11-libs/libxkbcommon-0.5.0
 	)
 	png? ( media-libs/libpng:0= )
-	tslib? ( x11-libs/tslib )
+	tslib? ( >=x11-libs/tslib-1.21 )
 	tuio? ( ~dev-qt/qtnetwork-${PV} )
 	udev? ( virtual/libudev:= )
 	vnc? ( ~dev-qt/qtnetwork-${PV} )


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] proj/qt:master commit in: dev-qt/qtgui/files/, dev-qt/qtgui/
@ 2020-02-09 19:24 Andreas Sturmlechner
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Sturmlechner @ 2020-02-09 19:24 UTC (permalink / raw
  To: gentoo-commits

commit:     bb3e4735560877bc5e06bb6f5cc36ce3869c7249
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Feb  9 16:23:29 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Feb  9 19:22:20 2020 +0000
URL:        https://gitweb.gentoo.org/proj/qt.git/commit/?id=bb3e4735

dev-qt/qtgui: Fix cmake macro compat. for upgrade from <Qt-5.14

Closes: https://bugs.gentoo.org/703306
Package-Manager: Portage-2.3.87, Repoman-2.3.20
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
(cherry picked from commit 9f10d5690b0a924021f54c7b09b4ce152fd37e0b)

 .../qtgui-5.14.1-cmake-macro-backward-compat.patch | 50 ++++++++++++++++++++++
 dev-qt/qtgui/qtgui-5.14.9999.ebuild                |  5 ++-
 dev-qt/qtgui/qtgui-5.15.9999.ebuild                |  5 ++-
 3 files changed, 58 insertions(+), 2 deletions(-)

diff --git a/dev-qt/qtgui/files/qtgui-5.14.1-cmake-macro-backward-compat.patch b/dev-qt/qtgui/files/qtgui-5.14.1-cmake-macro-backward-compat.patch
new file mode 100644
index 00000000..30b5abc3
--- /dev/null
+++ b/dev-qt/qtgui/files/qtgui-5.14.1-cmake-macro-backward-compat.patch
@@ -0,0 +1,50 @@
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Sun, 9 Feb 2020 11:45:00 +0100
+Subject: [PATCH] qtcore: Fix cmake macro compat. for upgrade from <Qt-5.14
+
+In upstream commit:
+
+https://code.qt.io/cgit/qt/qtbase.git/commit/?h=5.14&id=63d9cd17
+
+_populate_$${CMAKE_MODULE_NAME}_plugin_properties in 5.14.0 gained an additional argument
+IsDebugAndRelease without providing backward compatibility. This macro is used (at least) for
+QtGui and QtDesigner plugins added by qtimageformats, qtsvg, qtvirtualkeyboard and qtwayland.
+During upgrade from <Qt-5.14 to >=Qt-5.14, as a consequence of slot upgrade rebuilds, some
+reverse dependencies are slated for rebuild before these Qt consumers have been rebuilt and their
+cmake files regenerated, leading to cmake errors like:
+
+https://bugs.gentoo.org/703306
+https://bugs.gentoo.org/705198
+
+From mkspecs/features/create_cmake.prf:
+
+# CMAKE_DEBUG_AND_RELEASE is used to tell the _populate_$${CMAKE_MODULE_NAME}_target_properties
+# functions whether a Configuration specific generator expression needs to be added to the values
+# of INTERFACE_LINK_LIBRARIES and INTERFACE_LINK_OPTIONS. For debug_and_release builds, we do need
+# configuration specific values. For singular builds (only release or only debug), we want the
+# values to be applied regardless of the configuration.
+# This would allow on Linux and macOS (and with a recent enough version of CMake on Windows) to
+# build a Debug configuration of an application, even if Qt was built in a Release configuration.
+
+qt5-build.eclass is configuring either as 'release' or as 'debug', so we make IsDebugAndRelease
+optional and default to FALSE.
+
+--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in	2020-01-23 13:37:32.000000000 +0100
++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in	2020-02-09 15:15:21.156219814 +0100
+@@ -538,8 +538,14 @@
+ 
+     file(GLOB pluginTargets \"${CMAKE_CURRENT_LIST_DIR}/Qt5$${CMAKE_MODULE_NAME}_*Plugin.cmake\")
+ 
+-    macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION
+-          IsDebugAndRelease)
++    macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
++        set(IsDebugAndRelease FALSE)
++        set (list_var ${ARGN})
++        list(LENGTH list_var num_extra_arg)
++        if (${num_extra_arg} GREATER 0)
++            list(GET list_var 0 IsDebugAndRelease)
++        endif()
++
+         set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
+ 
+ !!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE)

diff --git a/dev-qt/qtgui/qtgui-5.14.9999.ebuild b/dev-qt/qtgui/qtgui-5.14.9999.ebuild
index f613f170..e077dd59 100644
--- a/dev-qt/qtgui/qtgui-5.14.9999.ebuild
+++ b/dev-qt/qtgui/qtgui-5.14.9999.ebuild
@@ -133,7 +133,10 @@ QT5_GENTOO_PRIVATE_CONFIG=(
 	:gui
 )
 
-PATCHES=( "${FILESDIR}/qt-5.12-gcc-avx2.patch" ) # bug 672946
+PATCHES=(
+	"${FILESDIR}/qt-5.12-gcc-avx2.patch" # bug 672946
+	"${FILESDIR}/${PN}-5.14.1-cmake-macro-backward-compat.patch" # bug 703306
+)
 
 src_prepare() {
 	# don't add -O3 to CXXFLAGS, bug 549140

diff --git a/dev-qt/qtgui/qtgui-5.15.9999.ebuild b/dev-qt/qtgui/qtgui-5.15.9999.ebuild
index 169389df..e1bbc622 100644
--- a/dev-qt/qtgui/qtgui-5.15.9999.ebuild
+++ b/dev-qt/qtgui/qtgui-5.15.9999.ebuild
@@ -133,7 +133,10 @@ QT5_GENTOO_PRIVATE_CONFIG=(
 	:gui
 )
 
-PATCHES=( "${FILESDIR}/qt-5.12-gcc-avx2.patch" ) # bug 672946
+PATCHES=(
+	"${FILESDIR}/qt-5.12-gcc-avx2.patch" # bug 672946
+	"${FILESDIR}/${PN}-5.14.1-cmake-macro-backward-compat.patch" # bug 703306
+)
 
 src_prepare() {
 	# don't add -O3 to CXXFLAGS, bug 549140


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-02-09 19:24 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-22 22:19 [gentoo-commits] proj/qt:master commit in: dev-qt/qtgui/files/, dev-qt/qtgui/ Andreas Sturmlechner
  -- strict thread matches above, loose matches on Subject: below --
2020-02-09 19:24 Andreas Sturmlechner
2019-12-25 17:33 Andreas Sturmlechner
2017-07-04 12:39 Michael Palimaka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox