From f146bebbc7091d8e0f9b637bd5ca23f3ca45df7c Mon Sep 17 00:00:00 2001 From: Yasser Grimes Date: Wed, 31 May 2023 16:44:41 +0300 Subject: [PATCH] McuSupport: Simplify template integration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit To simplify how users integrate their projects with Qul, Qul related template files are placed under the "qmlproject" subfolder. Task-number: QTCREATORBUG-29114 Change-Id: I984f1619547951e0518790c843987f03b7daa62a Reviewed-by: Alessandro Portale Reviewed-by: Sivert Krøvel Reviewed-by: --- src/plugins/mcusupport/mcusupport.qrc | 1 + .../wizards/qmlproject/CMakeLists.txt | 3 +-- .../mcusupport/wizards/qmlproject/Qul.cmake | 3 +++ .../mcusupport/wizards/qmlproject/wizard.json | 24 ++++++++++++------- 4 files changed, 20 insertions(+), 11 deletions(-) create mode 100644 src/plugins/mcusupport/wizards/qmlproject/Qul.cmake diff --git a/src/plugins/mcusupport/mcusupport.qrc b/src/plugins/mcusupport/mcusupport.qrc index abbfb969e3a..7aeb7b93873 100644 --- a/src/plugins/mcusupport/mcusupport.qrc +++ b/src/plugins/mcusupport/mcusupport.qrc @@ -20,5 +20,6 @@ wizards/qmlproject/module.qmlproject.tpl wizards/qmlproject/component.qml.tpl wizards/qmlproject/wizard.json + wizards/qmlproject/Qul.cmake diff --git a/src/plugins/mcusupport/wizards/qmlproject/CMakeLists.txt b/src/plugins/mcusupport/wizards/qmlproject/CMakeLists.txt index 49a4a8f949f..47eed40c785 100644 --- a/src/plugins/mcusupport/wizards/qmlproject/CMakeLists.txt +++ b/src/plugins/mcusupport/wizards/qmlproject/CMakeLists.txt @@ -4,5 +4,4 @@ project(%{CorrectedProjectName} VERSION 0.0.1 LANGUAGES C CXX ASM) find_package(Qul) -qul_add_target(%{CorrectedProjectName} QML_PROJECT %{QmlProjectFile} GENERATE_ENTRYPOINT) -app_target_setup_os(%{CorrectedProjectName}) +add_subdirectory(qmlproject) diff --git a/src/plugins/mcusupport/wizards/qmlproject/Qul.cmake b/src/plugins/mcusupport/wizards/qmlproject/Qul.cmake new file mode 100644 index 00000000000..1ece8f48d6d --- /dev/null +++ b/src/plugins/mcusupport/wizards/qmlproject/Qul.cmake @@ -0,0 +1,3 @@ + +qul_add_target(%{CorrectedProjectName} QML_PROJECT %{QmlProjectFile} GENERATE_ENTRYPOINT) +app_target_setup_os(%{CorrectedProjectName}) diff --git a/src/plugins/mcusupport/wizards/qmlproject/wizard.json b/src/plugins/mcusupport/wizards/qmlproject/wizard.json index 4fcf4f6fd31..9c1e036e910 100644 --- a/src/plugins/mcusupport/wizards/qmlproject/wizard.json +++ b/src/plugins/mcusupport/wizards/qmlproject/wizard.json @@ -12,6 +12,7 @@ "options": [ + { "key": "QmlProjectDirectory", "value": "%{ProjectDirectory}/qmlproject"}, { "key": "CorrectedProjectName", "value": "%{JS: '%{ProjectName}'.replace(/-/g, '_')}"}, { "key": "MainQmlFile", "value": "%{CorrectedProjectName}.qml" }, { "key": "QmlProjectFile", "value": "%{CorrectedProjectName}.qmlproject" }, @@ -55,49 +56,54 @@ "source": "CMakeLists.txt", "openAsProject": true }, + { + "source": "Qul.cmake", + "target": "%{QmlProjectDirectory}/CMakeLists.txt", + "openInEditor": false + }, { "source": "BackendObject.h", - "target": "%{ProjectDirectory}/src/%{InterfaceFile}", + "target": "%{QmlProjectDirectory}/src/%{InterfaceFile}", "openInEditor": true }, { "source": "component.qml.tpl", - "target": "%{ProjectDirectory}/imports/CustomModule/%{QmlComponent}", + "target": "%{QmlProjectDirectory}/imports/CustomModule/%{QmlComponent}", "openInEditor": true }, { "source": "module.qmlproject.tpl", - "target": "%{ProjectDirectory}/imports/CustomModule/%{ModuleFile}", + "target": "%{QmlProjectDirectory}/imports/CustomModule/%{ModuleFile}", "openInEditor": true }, { "source": "project.qmlproject.tpl", - "target": "%{ProjectDirectory}/%{QmlProjectFile}", + "target": "%{QmlProjectDirectory}/%{QmlProjectFile}", "openInEditor": true }, { "source": "main.qml.tpl", - "target": "%{ProjectDirectory}/%{MainQmlFile}", + "target": "%{QmlProjectDirectory}/%{MainQmlFile}", "openInEditor": true }, { "source": "../icon.png", - "target": "%{ProjectDirectory}/images/icon.png", + "target": "%{QmlProjectDirectory}/images/icon.png", "isBinary": true }, { "source": "DejaVuSansMono.ttf", - "target": "%{ProjectDirectory}/fonts/DejaVuSansMono.ttf", + "target": "%{QmlProjectDirectory}/fonts/DejaVuSansMono.ttf", "isBinary": true }, { "source": "LICENSE", - "target": "%{ProjectDirectory}/fonts/LICENSE", + "target": "%{QmlProjectDirectory}/fonts/LICENSE", "isBinary": true }, { "source": "translation.nb_NO.ts", - "target": "%{ProjectDirectory}/translations/%{TsFile}", + "target": "%{QmlProjectDirectory}/translations/%{TsFile}", "openInEditor": false }, {