1.12: qtwebengine-everywhere-opensource-src-5.15.13 build broken
0-wiz-0 opened this issue · comments
I'm not sure yet if this is a bug in ninja or the ninja generator, but I don't know enough about this, so let's start here.
My observation is that after updating ninja in pkgsrc (called ninja-build there) to 1.12.0, the build of qtwebengine-everywhere-opensource-src-5.15.13 broke. A (probably generated) header file is not found:
In file included from ../../3rdparty/chromium/content/browser/appcache/appcache_internals_ui.cc:25:
../../3rdparty/chromium/content/public/browser/browser_context.h:21:10: fatal error: components/spellcheck/spellcheck_buildflags.h: No such file or directory
21 | #include "components/spellcheck/spellcheck_buildflags.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
With everything else the same but using ninja 1.11.1 instead, the build succeeds.
The distfile is 300MB, the codebase is huge, and I don't even know what generates the ninja files, so any help is very welcome.
Seems I am affected also:
dev-build/ninja
Installed versions: 1.12.0^t{tbz2}(08:35:14 16.04.24)(-doc -test)
In file included from ../../../../../qtwebengine-everywhere-src-6.7.0/src/3rdparty/chromium/content/browser/aggregation_service/aggregation_service.cc:9:
../../../../../qtwebengine-everywhere-src-6.7.0/src/3rdparty/chromium/content/public/browser/browser_context.h:20:10: fatal error: components/spellcheck/spellcheck_buildflags.h: No such file or directory
20 | #include "components/spellcheck/spellcheck_buildflags.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
The patch from Qt upstream seems to work:
--- src/3rdparty/chromium/content/browser/BUILD.gn.orig 2023-02-27 18:57:08.000000000 +0000
+++ src/3rdparty/chromium/content/browser/BUILD.gn
@@ -36,6 +36,7 @@ jumbo_static_library("devtools_protocol"
deps = [
"//base",
+ "//components/spellcheck:buildflags",
"//content/browser/devtools:devtools_background_services_proto",
"//content/browser/devtools:protocol_sources",
"//content/common:buildflags",
Yeah this is a chromium issue. Ninja 1.12.0 builds in a different order and there was a missing dependency.