McuSupport: support for SDK 2.0

This is a quick fix for the current situation. Proper
support will need a rewrite of part of the plugin code.

QtQuickUltralite SDK 1.x relies on environment variables
for the dependencies. SDK 2.x uses CMake variables for that purpose.
Some of the variables have been renamed, others grouped together.

Here a mapping between those is hardcoded as an urgent solution.
A proper implementation should make the plugin independent of
the existence or lack of specific environment variables. Also,
all the hardcoded information needs to be moved to the json kit
files in the SDK. Otherwise, compatibility breaks between versions
every time the built-in assumptions relating to that information change.

Task-number: UL-4396
Change-Id: I7f40a694a773881f20b29bae9d02c7c1c8bd747b
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Christiaan Janssen
2021-09-29 17:23:11 +02:00
parent 9edecd1c94
commit 0eeb6c6e5e
11 changed files with 375 additions and 143 deletions

View File

@@ -200,6 +200,14 @@ private:
int m_colorDepth = -1;
};
struct McuSdkRepository
{
QVector<McuPackage*> packages;
QVector<McuTarget*> mcuTargets;
void deletePackagesAndTargets();
};
class McuSupportOptions : public QObject
{
Q_OBJECT
@@ -214,9 +222,8 @@ public:
McuSupportOptions(QObject *parent = nullptr);
~McuSupportOptions() override;
QVector<McuPackage*> packages;
QVector<McuTarget*> mcuTargets;
McuPackage *qtForMCUsSdkPackage = nullptr;
McuSdkRepository sdkRepository;
void setQulDir(const Utils::FilePath &dir);
static Utils::FilePath qulDirFromSettings();