commit:     2e0505f87184b97e3eeb1621171beda057b5ba9c
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 10 08:35:38 2024 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Wed Jan 10 09:08:21 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2e0505f8

dev-qt/qtwebengine: tentatively work around race condition (qt6)

Unknown if this really helps, depend on if the file was missing
or if it was just failing to find where it is with bad include
search -- but given it is generated good odds it is the former.

Have not actually reproduced myself and it is possible another
target also needs to be run, could potentially fail differently
if that does not resolve it (forcing -j1 is of course out of the
question for this package).

Needs a proper investigation/fix, but given this tend to fail
very late in the build it is not obvious and ccache likely makes
it harder to fail. Does not help that these rules are created
through several Qt cmake wrapper functions (the sync headers
bits come from qtbase cmake files, not from here).

May tentatively try to remove in a somewhat-distant future to see
if it is still an issue, and/or when related-sounding fixes occurred
in qtbase or qtwebengine.

Closes: https://bugs.gentoo.org/915953
Closes: https://bugs.gentoo.org/921680
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-qt/qtwebengine/qtwebengine-6.6.1.ebuild    | 7 +++++++
 dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild | 7 +++++++
 dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild | 7 +++++++
 dev-qt/qtwebengine/qtwebengine-6.9999.ebuild   | 7 +++++++
 4 files changed, 28 insertions(+)

diff --git a/dev-qt/qtwebengine/qtwebengine-6.6.1.ebuild 
b/dev-qt/qtwebengine/qtwebengine-6.6.1.ebuild
index 880963955ebc..5e9631cd0c14 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.6.1.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.6.1.ebuild
@@ -250,6 +250,13 @@ src_configure() {
        qt6-build_src_configure
 }
 
+src_compile() {
+       # tentatively work around a possible (rare) race condition (bug #921680)
+       cmake_build WebEngineCore_sync_all_public_headers
+
+       cmake_src_compile
+}
+
 src_test() {
        if [[ ${EUID} == 0 ]]; then
                # almost every tests fail, so skip entirely

diff --git a/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild 
b/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild
index 65de6a9759b5..92a315e96855 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.6.9999.ebuild
@@ -250,6 +250,13 @@ src_configure() {
        qt6-build_src_configure
 }
 
+src_compile() {
+       # tentatively work around a possible (rare) race condition (bug #921680)
+       cmake_build WebEngineCore_sync_all_public_headers
+
+       cmake_src_compile
+}
+
 src_test() {
        if [[ ${EUID} == 0 ]]; then
                # almost every tests fail, so skip entirely

diff --git a/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild 
b/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild
index eb94f0e7e253..b08109bae395 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.7.9999.ebuild
@@ -250,6 +250,13 @@ src_configure() {
        qt6-build_src_configure
 }
 
+src_compile() {
+       # tentatively work around a possible (rare) race condition (bug #921680)
+       cmake_build WebEngineCore_sync_all_public_headers
+
+       cmake_src_compile
+}
+
 src_test() {
        if [[ ${EUID} == 0 ]]; then
                # almost every tests fail, so skip entirely

diff --git a/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild 
b/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild
index eb94f0e7e253..b08109bae395 100644
--- a/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild
+++ b/dev-qt/qtwebengine/qtwebengine-6.9999.ebuild
@@ -250,6 +250,13 @@ src_configure() {
        qt6-build_src_configure
 }
 
+src_compile() {
+       # tentatively work around a possible (rare) race condition (bug #921680)
+       cmake_build WebEngineCore_sync_all_public_headers
+
+       cmake_src_compile
+}
+
 src_test() {
        if [[ ${EUID} == 0 ]]; then
                # almost every tests fail, so skip entirely

Reply via email to