Split up the import method into several smaller methods. Call these
from ProjectImporter::import, which now contains the build system
independent parts, moving all the build system dependent code into
the smaller methods.
This will allow to reuse logic for cmake project import.
Change-Id: Idcd1d1daaab18ebcc581cc5aff3f20c7757c639b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
That way the code can be reused in other importers later.
Change-Id: I6318f9c959b73b2af2692408b918eb1fab715137
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Introduce a base class for importing Qt projects. This class handles
the handling of temporary Qt versions.
Use this in the QmakeProjectImporter.
Change-Id: I2e540f9bb75d607a68d1277db68243b04eee168f
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This makes clear that the ABI encompasses all Darwin platforms (macOS,
iOS, tvOS, watchOS) in the wake of the OS X to macOS rename, and would
have been more technically correct anyways since ABIs are far below the
"macOS" parts of our favorite desktop Unix operating system.
Change-Id: I16d1477f44ffe70e5d8cddd67199a1602ba6fd97
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
BREAKS BACKWARD COMPATIBILITY OF TOOLCHAIN SETTINGS!
* Convert old ToolChainKitInformation to new version
* Store several toolchains in one kit (one per language)
Change-Id: Ia59a2ad067c57971ec34ce9b2e43758344443755
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Use unsortedVersions() instead of versions() where possible, since
versions() sorts by version numbers, and therefore needs "qmake -query"
to have run.
Change-Id: I76a05f1647d2baacbd33829c6b3bf719a1c8dcbb
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Remove QbsBuildInfo, which only adds the same information over
the normal BuildInfo.
Change QmakeBuildInfo to use the buildType as provided by
its base class.
Change-Id: Iddb86487c85893988f78bbfaf549823a19f13b5b
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
The removed code had actually no effect since it changed a variable that
was not used later. Since we are looking for a kit that has a identical
spec, there's no need to pass any spec in additional arguments.
Also on creating a temporary kit, don't set mkspec if it's the same
as the qt versions mkspec.
Change-Id: Ia37317a5b6fefa603106c8761279577271f32a7e
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Extract the whole makefile parsing code into a separate class, to
make the code more manageable. Also fix some bugs on importing additional
flags like qt quick compiler or separate debug info.
Task-number: QTCREATORBUG-13947
Change-Id: Id04bff191c188f95230274d990b1676e9b2f419d
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
All static functions, can live closer to related code.
Change-Id: I54c5680256c78f1d09b4bee3e8843b2f4350b75a
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Fix logic around temporary qt versions. We want essentially shared
ownership of kits on the temporary qt version.
Change-Id: Ic8c748aa2b04afb5a30444563b3fc2f4272ca47c
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
That is try to find a kit that matches the deduced arguments found
in the Makefile.
Task-number: QTCREATORBUG-11067
Change-Id: I01dc122ffcba8ccb71b112c271a0ae2cf860328d
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
This change also adds a AbstractMacroExpander for the QtKitInformation.
It supports the following variables in the Kit display name:
%{Qt:version} - Qt version number
%{Qt:type} - Qt type
%{Qt:name} - Qt version name
%{Qt:mkspec} - mkspec used by the Qt version
Task-number: QTCREATORBUG-11118
Change-Id: I7263781336ab561c34880b187ebd55e81e6ca215
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
Call setup on all kitinformation that were not explicitly set when
creating a temporary kit while importing an existing build.
Task-number: QTCREATORBUG-12186
Change-Id: I655ecef10122a96d81e5ed222e80fbffcbb51e17
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
ios having multiple makefiles gets detected several times and one
ends up with 5 times the same entry when conviguring a project
that was already present
Change-Id: I5685208305d1f489c5502d5aec0c08dded49da90
Reviewed-by: Daniel Teske <daniel.teske@digia.com>