aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmldevtools
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@qt.io>2019-07-29 15:02:42 +0200
committerSimon Hausmann <simon.hausmann@qt.io>2019-07-29 13:14:57 +0000
commit23b846b8a68a0dc344c8c2d7d0e23a696420dba0 (patch)
tree73680d817b67b5122a954b8c12a743ef58df5746 /src/qmldevtools
parent09cc372a3a14906aa2130f44c4950dcdd8c9bf0d (diff)
Fix parallel build
When the parallel build tries to build QmlQmlDevTools early on (can be triggered directly via ninja /path/to/lib/libQt6QmlDevTools.a), then we must make sure to build QtQml first, due to the dependency on syncqt generated header files, which in turn include build time generated files. Change-Id: I5a4ac01d48a791e2ee951e8dd5b418d989e4643c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'src/qmldevtools')
-rw-r--r--src/qmldevtools/CMakeLists.txt9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/qmldevtools/CMakeLists.txt b/src/qmldevtools/CMakeLists.txt
index f906df4cc9..7d516d8dc2 100644
--- a/src/qmldevtools/CMakeLists.txt
+++ b/src/qmldevtools/CMakeLists.txt
@@ -66,6 +66,15 @@ set(_qml_dev_tools_private_includes
)
target_include_directories(QmlDevTools PRIVATE ${_qml_dev_tools_private_includes})
target_include_directories(QmlDevToolsPrivate INTERFACE ${_qml_dev_tools_private_includes})
+
+# We build the qlalr sources into qmldevtools, so there's no link-time
+# dependency to QtQml. However we also include files in QmlDevTools such
+# as qqmlirbuilder.cpp that include <private/qqmljsgrammar_p.h> that
+# originate from QtQml. That particular header was created at cmake time
+# via syncqt, but it's just a forwarding header that in turn includes
+# the generated file. That generated file is created when building
+# QtQml, so we must depend on it:
+add_dependencies(QmlDevTools Qml)
# special case end
#### Keys ignored in scope 1:.:.:qmldevtools.pro:<TRUE>: