Kits are marked as 'manual', so that user has individual control of each one.
'Remove' button replaced with 'Update' button for manual update.
Task-number: QTCREATORBUG-25259
Change-Id: Iadf5f2da3ef7bee7fb051516ffda7fcefe8b56d8
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
- added IAR toolchain factory similar to ARM GCC one
- extended kitName with used compiler name
- added Unsupported toolchain type to fix crash after creating kit with not
recognized toolchainID
Fixes: QTCREATORBUG-24898
Change-Id: I28b8376ca4bc88d3d75e17bd242ac49f0ee09845
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: <christiaan.janssen@qt.io>
Starting from Qul 1.5 json kit file will be shipped for desktop platform.
This change is backward compatible with previous Qul version - if no
desktop specific json file is found a legacy code is executed.
This change removes "desktop" toolchain, instead "msvc" and "gcc"
toolchains are introduced.
Additional parameter was introduced to the josn kit file: "platformName"
which enables using different strings in kit name and in QUL_PLATFORM
cmake variable.
Change-Id: Ie0a212aaad47a8033e9a81467f60a23c2bc19a51
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
The coreplugin/id.h header is kept for downstream for now.
Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66
(cherry picked from commit 430a33dcd9)
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
So far, one Qt Creator version supported exactly one Qt for MCUs
version, mainly because of incompatibilities in-between Qt for MCUs
versions.
The compatibility of 1.2 with 1.3 and further is now deemed stable
enough to loosen the version checking.
This change replaces the exact versions comparison (between Qt for MCUs
SDK version and what Qt Creator supports) to a minimum version check of
what Qt Creator supports.
One limitation that remains is that you can only have one kit per target,
across the supported Qt for MCUs versions. To mend this, UI changes are
required (in a separate commit).
Workaround for now: If you want e.g. Desktop Kits for different Qt for
MCUs versions at the same time, you need to work with kit clones.
Task-number: QTCREATORBUG-24293
Change-Id: Ifd31cd2eadbc1d7fa02415e1928d0047cf007f7c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Qt for MCUs 1.3 ships the board/MCU SDKs, and also adds the subdir to
the FreeRTOS component inside the board/MCU SDKs as "boardSdkSubDir" to
the .json files (see: UL-2760).
Task: Qt Creator needs to lookup that "boardSdkSubDir" value and use it
to construct a default path for the FreeRTOS path.
Task-number: QTCREATORBUG-24300
Change-Id: Ie3c8186b76443d5fe3640226ea61aa8b14779d54
Reviewed-by: Rainer Keller <Rainer.Keller@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
And add a compatibility wrapper for Core::Id, so we don't have to rename
all occurrences from Core::Id to Utils::Id.
This allows us to use Id also in Utils, which makes it possible to e.g.
move Core::InfoBar to Utils without work arounds.
Change-Id: I5555d05b4e52f09d501dbfe5d91252a982a97c61
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Besides Baremetal, Qt for MCUs also supports FreeRTOS for a few targets.
This change:
- shows the FreeRTOS source path chooser
- set the FreeRTOS source path as kit environment variable
- sets OS=FreeRTOS in the kit CMake configuration and kit meta data
Task-number: QTCREATORBUG-23938
Change-Id: I69cbd4f9b6b4a842788a8dad57905ef517b8b1d5
Reviewed-by: Rainer Keller <Rainer.Keller@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
There is no good enough reason to have them non-static, and upcoming
changes will have it a bit easier with static calls.
Additionally, make McuTarget::m_toolChainPackage const.
Change-Id: I002d5d56606d3b43c4c7a2f63c59e97a81342c69
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Add a version to the generated Qt for MCUs kits. That version will
increase with every change to the way Qt for MCUs kits get generated.
If there are auto-detected Qt for MCUs kits with a different version
than the current, remove these kits when a "fresh" gets generated.
Task-number: QTCREATORBUG-23891
Change-Id: Iafcd2342d458f9c77ada47180cb61b3b4b090598
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
- Let user provide Green Hills Software Compiler and
Renesas Graphics Library
- Set GHS_COMPILER_DIR and RGL_DIR instead of ARMGCC_DIR and
SEGGER_JLINK_SOFTWARE_AND_DOCUMENTATION_PATH
- Don't set Kit compilers
- Do not set CMAKE_CXX_COMPILER and CMAKE_C_COMPILER
- Set ghs.cmake as CMake toolchain file
For the RGL package, McuPackage::updateStatus() was extended to be able
to work without a provided "detection path".
Task-number: QTCREATORBUG-23822
Change-Id: I5b666c258a965ce55047111fbbeca80271170892
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
- Use "Desktop" instead of "Qt" in kit name
- Set the right kit toolchain (and debugger)
- Unset Qt Version (and hide it from kit)
- Prepend Qul_DIR/bin to environment PATH (if no CMake fileApi)
This also gets rid of the ugly mcuTargetIsDesktop() function
in favor of the new McuToolChainPackage::TypeDesktop
Task-number: QTCREATORBUG-23820
Change-Id: I5af61d5b0f414b4441239494e99b0b15088eee76
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
Reviewed-by: hjk <hjk@qt.io>
First step towards Qt for MCUs SDK version handling.
Task-number: QTCREATORBUG-23823
Change-Id: I125fe841d9355aa26b4e4701ac9a5fec31987e08
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This change introduces the registration of examples (or rather demos) of
the Qt for MCUs SDK at the launch time of Qt Creator.
This presumes that either the SDK installer set the Qt for MCUs SDK path
(which is the default use-case) or that the user selected/changed the
SDK path in a prior run of Qt Creator.
Task-number: UL-1218
Change-Id: I6484d3e3065f501da4cd6faccfe02605003f6cbf
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
At plugin initialization and along with the creation of a Qt for MCUs
Kit (which currently happens when the user presses "Apply"), these .qch
files get registered:
<Qul_DIR>/docs/quickultralite.qch
<Qul_DIR>/docs/quickultralitecmake.qch
In order not to duplicate the code for retrieving package paths (e.g.
the one for "QtForMCUsSdk") from the settings, some refactoring was
done.
As a result McuSupportOptions::qulDirFromSettings() has been introduced.
It will be also used in further changes.
Task-number: UL-1685
Change-Id: I82e638e129120cdadcf2f4812f467fce34b32ec9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This change pushes the hard-coded list a bit towards a "data-driven"
approach. That way, the planned switch to the .json files based apporach
(see UL-2012) becomes less of a change.
Some target entries are added to match the current target list in Qt
for MCUs packages.
If we don't manage to get the .json-based target listing in place, this
could even serve as fall-back.
Task-number: UL-2012
Change-Id: If39e5d581ac19468b6f52ed221ec2d39bfab9f80
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Move all hardcoded arm-specific strings and code into the new
McuToolChainPackage class (which will later support IAR and KEIL).
In the same change: Adjust paths in CMake options to latest Qul path
changes in the master branch.
Change-Id: Iefa205729588a3efa783eb9eaaa339ed9f8e2813
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Qt for MCUs 1.1 gets a new directory and build system structure. Sha
807a3d2 in the Qt for MCUs repository introduces the change.
This patch adjusts the parameters of the generated kits accordingly,
which means that Qt Creator (master/4.12-beta1) will from this commit on
not support Qt for MCUs 1.0.1, anymore.
Change-Id: I20ded1bc28a2ffe30b59e8bce4a17bc38bb76a79
Reviewed-by: hjk <hjk@qt.io>
...include that in kit names and add it as "QUL_COLOR_DEPTH" CMake
parameter.
Change-Id: I14ba7ce465c54d525683be2660d2e24b6ecfed6c
Reviewed-by: hjk <hjk@qt.io>
Create a kit only for the currently selected target.
Kits are listed as auto-detected. Extisting, auto-detected kits with
same name get replaced with new ones.
Less text in the UI.
Change-Id: I89f952cc6ff694dc5c2750ebf9a7698d7839ec3a
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Qt Creator's CMake plugin would otherwise (since recently) open that
"sync" dialog if a configuration path contains back slashes.
Change-Id: I2e333604e22158bdb61c2ca8eb65911295383b52
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Needed for an upcoming hack, but also later when we "zero-config"
the boards.
Change-Id: I240cc252ebba458cab71db24740266756d0e8b37
Reviewed-by: Aurindam Jana <aurindam.jana@qt.io>
First, hacky step towards supporting the "Qt" target. Such a target now
gets created with correct environment variables and CMake options.
Device type is for now Desktop, but portale thinks we will have a Qul/
Desktop target at some point.
Compiler and Qt version are randomly preselected and certainly need to
be adjusted by the user (for now).
Change-Id: Ie3f6a6e3ce1a46c35687e20a7550ff51b6b1b7c7
Reviewed-by: Aurindam Jana <aurindam.jana@qt.io>
Move the non-OptionsPage code into a new file for comprehensibility.
Change-Id: I306ae669ec9fdd941f777426420859ee2eb89e95
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>