summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@qt.io>2017-11-07 20:30:22 +0100
committerLaszlo Agocs <laszlo.agocs@qt.io>2017-11-08 12:19:29 +0000
commit932a834c253c02291c32a1f21ff5ad19dfef762d (patch)
tree1167d0205b86066927f9225891f06bf0a3756e9f
parent3bf439bcab1c5cbedcb24fe5b4fcea11ff1bc2ca (diff)
Fix material system qrc in static builds
The Qt3DRender part is clear and we have a good global place to do the Q_INIT_RESOURCE call. Extras is debatable since there is no good place. Quick is already handled via the import plugins, but pure C++ applications also need this in static builds. For now add it to QForwardRenderer and Qt3DWindow. This should cover the common use cases for the materials in extras. Task-number: QTBUG-64279 Change-Id: I276e8d4265f4527736d415b07dbf03e9d8904adf Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r--src/extras/defaults/qforwardrenderer.cpp4
-rw-r--r--src/extras/defaults/qt3dwindow.cpp4
-rw-r--r--src/render/materialsystem/shaderbuilder.cpp3
3 files changed, 11 insertions, 0 deletions
diff --git a/src/extras/defaults/qforwardrenderer.cpp b/src/extras/defaults/qforwardrenderer.cpp
index f3137ea2d..4ab63c980 100644
--- a/src/extras/defaults/qforwardrenderer.cpp
+++ b/src/extras/defaults/qforwardrenderer.cpp
@@ -68,6 +68,10 @@ void QForwardRendererPrivate::init()
{
Q_Q(QForwardRenderer);
+#ifdef QT_STATIC
+ Q_INIT_RESOURCE(extras);
+#endif
+
m_frustumCulling->setParent(m_clearBuffer);
m_clearBuffer->setParent(m_cameraSelector);
m_cameraSelector->setParent(m_viewport);
diff --git a/src/extras/defaults/qt3dwindow.cpp b/src/extras/defaults/qt3dwindow.cpp
index baa2aeddb..eb48aeaec 100644
--- a/src/extras/defaults/qt3dwindow.cpp
+++ b/src/extras/defaults/qt3dwindow.cpp
@@ -86,6 +86,10 @@ Qt3DWindow::Qt3DWindow(QScreen *screen)
{
Q_D(Qt3DWindow);
+#ifdef QT_STATIC
+ Q_INIT_RESOURCE(extras);
+#endif
+
if (!d->parentWindow)
d->connectToScreen(screen ? screen : d->topLevelScreen.data());
diff --git a/src/render/materialsystem/shaderbuilder.cpp b/src/render/materialsystem/shaderbuilder.cpp
index c2b32ce86..e0862abc4 100644
--- a/src/render/materialsystem/shaderbuilder.cpp
+++ b/src/render/materialsystem/shaderbuilder.cpp
@@ -58,6 +58,9 @@ class GlobalShaderPrototypes
public:
GlobalShaderPrototypes()
{
+#ifdef QT_STATIC
+ Q_INIT_RESOURCE(materialsystem);
+#endif
setPrototypesFile(QStringLiteral(":/prototypes/default.json"));
}