summaryrefslogtreecommitdiffstats
path: root/qt3dstudio.pro
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@qt.io>2018-04-11 16:39:22 +0300
committerMiikka Heikkinen <miikka.heikkinen@qt.io>2018-04-19 10:10:30 +0000
commit22595bcb6f37f187d84984c17dfcb5dbbe866ff3 (patch)
tree64e669cef2108b6bac51e63d4ac9cb2dcac17576 /qt3dstudio.pro
parentc3158e0c43b580e30e510f6f19cba285f6862356 (diff)
Add deployment for viewer 2.0 to deployqt target
Also removed deployment from mingw, as we don't build studio for mingw or provide installer based on mingw. Task-number: QT3DS-1348 Change-Id: I0e8f40a9d3e9e8259ce00f39a8563885325fe0c3 Reviewed-by: Marianne Yrjänä <marianne.yrjana@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'qt3dstudio.pro')
-rw-r--r--qt3dstudio.pro42
1 files changed, 35 insertions, 7 deletions
diff --git a/qt3dstudio.pro b/qt3dstudio.pro
index 7eb9367d..47625ccb 100644
--- a/qt3dstudio.pro
+++ b/qt3dstudio.pro
@@ -17,10 +17,10 @@ load(qt_parts)
# 'deployqt' target can be used to automatically copy necessary Qt libraries needed by studio
# applications. DEPLOY_DIR environment variable must point to the directory where
-# Qt3DStudio and Qt3DViewer executables/application bundles are found.
+# Qt3DStudio and Qt3DViewer executables/application bundles are installed to.
# The required Qt libraries are copied into that directory/bundles.
!build_pass|!debug_and_release {
- macos|win32 {
+ !mingw:win32|macos {
macos {
deploytool = macdeployqt
exesuffix = .app
@@ -35,7 +35,8 @@ load(qt_parts)
# deploy the missing qml bits separately.
# Viewer 1.0 needs the studio qml plugin
- debug_and_release|CONFIG(release, debug|release) {
+ # The assumption is that we are deploying release build in case both are built
+ release {
QML_FILE_R = QtStudio3D/declarative_qtstudio3d.dll
QMAKE_EXTRA_TARGETS += deployReleaseQml
deployTarget.depends += deployReleaseQml
@@ -43,8 +44,7 @@ load(qt_parts)
deployReleaseQml.commands = \
$$QMAKE_COPY $$shell_quote($$shell_path($$OUT_PWD/qml/$$QML_FILE_R)) \
$$shell_quote($$shell_path(\$(DEPLOY_DIR)/$$QML_FILE_R))
- }
- debug_and_release|CONFIG(debug, debug|release) {
+ } else {
QML_FILE_D = QtStudio3D/declarative_qtstudio3dd.dll
QMAKE_EXTRA_TARGETS += deployDebugQml
deployTarget.depends += deployDebugQml
@@ -71,17 +71,45 @@ load(qt_parts)
qtPrepareTool(DEPLOY_TOOL, $$deploytool)
- deployTarget.target = deployqt
deployTarget.commands = \
$$DEPLOY_TOOL $$shell_quote(\$(DEPLOY_DIR)/Qt3DStudio$${exesuffix}) \
-qmldir=$$shell_quote($$PWD/src/Authoring/Studio/Palettes) $$EXTRA_DEPLOY_OPTIONS
macos {
+ # Viewer 1.0
deployTarget.commands += && \
$$DEPLOY_TOOL $$shell_quote(\$(DEPLOY_DIR)/Qt3DViewer$${exesuffix}) \
-qmldir=$$shell_quote($$PWD/src/Viewer/Qt3DViewer)
}
- QMAKE_EXTRA_TARGETS += deployTarget
+ greaterThan(QT_MAJOR_VERSION, 5)|greaterThan(QT_MINOR_VERSION, 10) {
+ # Viewer 2.0
+ win32 {
+ # Viewer 2.0 has similar issues with dependent library naming as viewer 1.0,
+ # but it only has one library that is causing problems and no qml (so far),
+ # so lets just copy the problem lib over to where windeployqt can find it,
+ # i.e. under Qt's bin dir. This pollutes the Qt's bin dir a bit, but as the main
+ # use case for this is gathering installer content in CI after everything is
+ # already built, this shouldn't be a problem.
+ release {
+ RUNTIME2_LIB = Qt53DStudioRuntime2.dll
+ } else {
+ RUNTIME2_LIB = Qt53DStudioRuntime2d.dll
+ }
+ QMAKE_EXTRA_TARGETS += copyRuntime2
+ deployTarget.depends += copyRuntime2
+ copyRuntime2.commands = \
+ $$QMAKE_COPY $$shell_quote($$shell_path( \
+ $$OUT_PWD/src/Runtime/qt3d-runtime/bin/$$RUNTIME2_LIB)) \
+ $$shell_quote($$shell_path($$[QT_INSTALL_BINS]/$$RUNTIME2_LIB))
+ }
+ deployTarget.commands += && \
+ $$DEPLOY_TOOL $$shell_quote(\$(DEPLOY_DIR)/q3dsviewer$${exesuffix})
+ }
+ } else {
+ # Create a dummy target for other platforms
+ deployTarget.commands = @echo deployqt target is not supported for this platform.
}
+ deployTarget.target = deployqt
+ QMAKE_EXTRA_TARGETS += deployTarget
}