summaryrefslogtreecommitdiff
path: root/src/plugins/qtsupport/baseqtversion.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Utils: Rename FileName to FilePathhjk2019-05-281-72/+72
| | | | | | | | More in line with QFileInfo terminonlogy which appears to be best-of-breed within Qt. Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QmakeProject: Use QString mkspec in QmakeKitInformationhjk2019-05-281-12/+13
| | | | | | | ... and BaseQtVersion, and QmakeBuildConfiguration. Change-Id: Iac5f768b80a7f8c2ea9a37d099b285d5793270db Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: (Re-)start using strings for mkspecshjk2019-05-281-5/+5
| | | | | | | | Even if this is part of a directory name it is naturally closer to a "string" id than a file path. Change-Id: If66f930526744379ce86e2b18bd9eac7fabfe773 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Introduce a alias for QList<Tasks>hjk2019-05-281-6/+6
| | | | | Change-Id: I91391ad22b420926b0f512cac23cfe009048b218 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Use QVector<Abi> for abishjk2019-05-271-1/+1
| | | | | Change-Id: Ia57d4f27e0684f2f97458bea24ce8f10a2efebcd Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Use an alias for QList<Abi>hjk2019-05-271-9/+9
| | | | | Change-Id: I69231c5974620ae30296bfc4e0ab41c900d95a3c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* More FileName::appendPath() -> .pathAppended() changeshjk2019-05-271-1/+1
| | | | | Change-Id: Ibc7eb4eb3ffb64658e441aafa240b1ddc0061930 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* More FileName::pathAppended()hjk2019-05-201-2/+1
| | | | | Change-Id: Ie20ec34ea9712b3ec49e6233b23cef84c2019f03 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* More FileName::appendPath() -> .pathAppended()hjk2019-05-171-1/+1
| | | | | Change-Id: I403d34e4f52f758339c158efc7a11fd329e3e043 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Qnx/Qmake: More FileName::appendPath -> pathAppended changeshjk2019-05-151-8/+6
| | | | | Change-Id: Ibd6639ff83ec922fade7de4115d1e777e496f3e1 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Utils: Replace FileName::FileName(QFileInfo) by a named constructorhjk2019-05-131-3/+3
| | | | | | | | | More consistent with the fromString case and avoiding false conversions QString -> QFileInfo -> FileName in case the inheritance of QString suddenly disappears. Change-Id: Ib14646ab1a660fd45dd1ea6862a0b5faa52ad0e3 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* QtSupport: Warn about Qt kits without C++ compilerChristian Kandeler2019-04-101-0/+5
| | | | | | Fixes: QTCREATORBUG-22177 Change-Id: I85fcfdf267f01f76956eb954eec663f1a1b6ae52 Reviewed-by: André Hartmann <aha_1980@gmx.de>
* Merge remote-tracking branch 'origin/4.9'Eike Ziller2019-04-021-0/+6
|\ | | | | | | | | | | | | | | | | Conflicts: qbs/modules/qtc/qtc.qbs qtcreator.pri src/plugins/pythoneditor/pythoneditorplugin.cpp Change-Id: I9a95df5e16b34538539ced7dfc5d326b700794e6
| * Qml tooling: Support Qt 5.13 and change default to 5.12Alessandro Portale2019-03-281-0/+6
| | | | | | | | | | | | | | | | | | | | QtQuick 2.13 QtQuick.Controls 2.13 QtQuick.Window 2.13 QtQuick.VirtualKeyboard 2.4 Change-Id: Ib977d65294bca522e8ad6b5e1a96b3580a4d4313 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* | QtSupport: Replace BaseQtVersion::clone()hjk2019-02-191-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... by a mechanism that doesn't require re-implementation in each derived class. A QtVersion's type() is uniquely defined by the supported type of the factory creating it, so that factory can be found and used for cloning. Non-base data is copied by a fromMap(toMap()) dance as done in the project configurations. As a side-effect, the *QtVersion copy constructors are not used and not needed anymore. Change-Id: I3aa5a0fd90a27dd115769e0573647cb5669641a0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | QtSupport: Provide implementation of BaseQtVersion::qtAbisFromLibrary()hjk2019-02-181-0/+5
| | | | | | | | | | | | | | | | Derived implementation either used that as-is, or used the result as part of their own operation. Change-Id: I2817c4e6c6701ae647a70e77382dd30c8ea2bd2f Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | QtSupport: Drop one suite of QtVersion constructorshjk2019-02-151-4/+8
| | | | | | | | | | | | | | Use default plus polish afterwards instead. Change-Id: Ibd137562128445a5bae5aaa4fc5fcce2df6c3e38 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | QtSupport: Simplify use of QtVersionFactory::create()hjk2019-02-151-3/+6
| | | | | | | | | | | | | | | | Use two setters, one already pre-existing, to set autodetection data instead of passing that through the create/contructor chain. Change-Id: I8f9bdf2f82518aae765327a823bdea44210c2f96 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | QtSupport: De-virtualize BaseQtVersion::sourcePathhjk2019-02-141-9/+4
| | | | | | | | | | | | | | | | ... as it was never re-implemented. Also inline the private BaseQtVersion::updateSourcePath in this only user. Change-Id: I505395b5e9b0723ceab790f3b776cea12fe64780 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | ProjectExplorer: Rename KitInformation to KitAspectChristian Kandeler2019-02-111-29/+29
|/ | | | | | | | | | | The name "KitInformation" does not properly convey the fact that it represents a certain *aspect* of a kit. The same goes for "KitConfigWidget", which in addition was inconsistent with "KitInformation". We now use "KitAspect" and "KitAspectWidget". Change-Id: I9804ee4cedc4d61fad533ea1dd4e4720e67fde97 Reviewed-by: hjk <hjk@qt.io>
* Fix some deprecation warnings in basic pluginsFriedemann Kleint2019-02-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix warnings apppearing in 5.13, for example: warning: ‘QDir& QDir::operator=(const QString&)’ is deprecated: Use QDir::setPath() instead [-Wdeprecated-declarations] ... warning: ‘static QRgb QColorDialog::getRgba(QRgb, bool*, QWidget*)’ is deprecated: Use getColor() [-Wdeprecated-declarations] warning: ‘Qt::DropAction QDrag::start(Qt::DropActions)’ is deprecated: Use QDrag::exec() instead [-Wdeprecated-declarations] warning: ‘void QProcess::finished(int)’ is deprecated: Use QProcess::finished(int, QProcess::ExitStatus) instead [-Wdeprecated-declarations] ... warning: ‘const QRect QDesktopWidget::availableGeometry(int) const’ is deprecated: Use QGuiApplication::screens() [-Wdeprecated-declarations] ... warning: ‘const QBrush& QPalette::background() const’ is deprecated: Use QPalette::window() instead [-Wdeprecated-declarations] ... warning: ‘const QBrush& QPalette::foreground() const’ is deprecated: Use QPalette::windowText() instead [-Wdeprecated-declarations] ... warning: ‘void QTextOption::setTabStop(qreal)’ is deprecated [-Wdeprecated-declarations] warning: ‘void QList<T>::swap(int, int) [with T = ProjectExplorer::BuildStep*]’ is deprecated: Use QList<T>::swapItemsAt() [-Wdeprecated-declarations] warning: ‘void QProcess::setReadChannelMode(QProcess::ProcessChannelMode)’ is deprecated: Use QProcess::setProcessChannelMode() instead [-Wdeprecated-declarations] ... warning: ‘QString QFileInfo::readLink() const’ is deprecated: Use QFileInfo::symLinkTarget() instead [-Wdeprecated-declarations] Change-Id: I1d893d42d372245892f2de8406f52dbe7bbd552a Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* ProjectExplorer: Add MSVC2019 flavor supportIvan Donchevskii2019-02-081-0/+2
| | | | | | | | | It is promised to be compatible with prior versions. Change-Id: I85e433382a66c82e9880401c3a983fef06c03606 Reviewed-by: Marco Bubke <marco.bubke@qt.io> Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* QtSupport: ModernizeAlessandro Portale2018-11-301-1/+1
| | | | | | | modernize-* Change-Id: Id52c06ff440a35d9a4169306c5636f54bfc2125a Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* QtSupport: simplify the code a bitTim Jenssen2018-11-221-30/+34
| | | | | Change-Id: I11725681315bf35917ae40b920e5e6ff87c46428 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Fix frequent typoRobert Loehning2018-10-231-1/+1
| | | | | | | can not -> cannot Change-Id: Ie872ada1bc9b4ed64bffb667c2e44dbb13b4ad11 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* QtSupport: When populating file finder, map resource pathsUlf Hermann2018-09-251-0/+14
| | | | | | | | | | | We know the exact mappings for all resources. If we pass those to the FileInProjectFinder, the path resolution becomes more accurate. Task-number: QTCREATORBUG-21107 Change-Id: I9230ffb68a49a281574990afde6f7099fb0bd9d3 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: hjk <hjk@qt.io>
* Qml tooling: Support Qt 5.12Alessandro Portale2018-09-131-0/+6
| | | | | | | | | | QtQuick 2.12 QtQuick.Controls 2.5 QtQuick.Window 2.12 QtQuick.VirtualKeyboard 2.4 Change-Id: Ie4a60ac93b25ca735e28ac84447cfe60778f8d7d Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* FileInProjectFinder/Debugger: Use Utils::FileName for sysrootUlf Hermann2018-08-281-1/+1
| | | | | Change-Id: Id937f927ba6137fd04f742f31d1b260afbe42db4 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* FileInProjectFinder/Debugger: Use FileNameList for search directoriesUlf Hermann2018-08-271-2/+2
| | | | | Change-Id: I8f9fa4631fda26e10e6b21abfcba9e5f74d635c2 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* FileInProjectFinder: Use FileName for local part of direct mappingsUlf Hermann2018-08-271-1/+1
| | | | | Change-Id: I1855e9af95874967a0d3fc9d7a410cac12355ad2 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* FileInProjectFinder/Debugger: Use Utils::FileName for project directoryUlf Hermann2018-08-271-2/+2
| | | | | Change-Id: I5a3f376bea4ee06c6856e614f6f71974c2f5ca87 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* FileInProjectFinder: Search DeploymentData for pathsUlf Hermann2018-08-271-0/+7
| | | | | | | | | | | | | | The deployment data is the most reliable information we can get regarding where a file from the host ended up on the target. Therefore it is searched first. Since the "directories" found this way may not actually exist on the host, we return the list of entries rather than the actual path for those. Files from different host directories can be deployed to the same target directory, after all. Using the list of entries, a client can reconstruct children of the directory by appending an entry to the base path and searching again. Change-Id: Ia0f72872a4ff6313f1ae8b0f441b67f55be5a456 Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
* QtVersion: Allow to override ABIs via SDKtoolTobias Hunger2018-06-261-0/+8
| | | | | | | | | | Allow for overriding the ABIs detected for a Qt version from the sdktool. Leave the default at "auto-detect ABI". Change-Id: Ibe2625b0a321a9541512d36a91aa2e42611a959b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* BaseQtVersion: Modernize codeTobias Hunger2018-06-221-135/+45
| | | | | | | | | | | | Use member initialization, remove lots of duplication in the different constructors. This adds a wrapper around the unique_ptr of the MacroExpander to enable use of the default copy constructor, which would be blocked by the deleted copy constructor of unique_ptr otherwise. Change-Id: I8bad5cedb71069b3d535436b89057f68319367ea Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Merge remote-tracking branch 'origin/4.6' into 4.7Eike Ziller2018-05-281-3/+2
|\ | | | | | | Change-Id: Ifddceb06f377ea428300fa8a48908cfc44b98705
| * QtSupport: Improve the qtquickcompiler feature detectionAlessandro Portale2018-05-161-3/+2
| | | | | | | | | | | | | | | | | | | | | | Check for qtquickcompiler.prf instead of for the binary. That is compatible with (commercial) Qt < 5.11 with the original qtquickcompiler, and now additionally with Qt >= 5.11 with qmlcachegen. Task-number: QTCREATORBUG-19993 Change-Id: Ie0ba30a590828f13b330a62acb9d1d5c84a5916b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | FileInProjectFinder: Use FileNameList for file namesTim Jenssen2018-05-241-5/+3
|/ | | | | | | | This simplifies code and reduces the number of conversions between QString and Utils::FileName. Change-Id: I47bd86b9ae09b1da37b4e5e604761367ac1ab26b Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Qml tooling: Support Qt 5.11Alessandro Portale2018-04-121-0/+6
| | | | | | | | | | QtQuick 2.11 QtQuick.Controls 2.4 QtQuick.Window 2.11 Change-Id: I78df0cf414e6c2ce72830b88d29a8777ac30c757 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* Fix crash in kit's variable chooser if Qt version is removedEike Ziller2018-03-051-87/+165
| | | | | | | | | | | | | | | Currently the variable chooser cannot update itself if a sub-expander changes or even is deleted, leading to inconsistencies and crashes if that happens. Make the Qt version sub-macroexpander be available for the kit even if currently is no Qt version selected. For this we create a macro expander that delegates to the kit's Qt version if possible at variable substitution time, instead of taking the Qt version's expander directly. Task-number: QTCREATORBUG-19900 Task-number: QTCREATORBUG-19901 Change-Id: I2bd9b3db60bf6e292abf2a29e0697dc5385709cd Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* QtSupport: Add setting for arbitrary features for a Qt versionTim Jenssen2018-02-051-1/+14
| | | | | Change-Id: I9cd296316bd100d6f867ca7bffefb9676dc66c09 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* Merge remote-tracking branch 'origin/4.6'Eike Ziller2018-01-171-81/+80
|\ | | | | | | | | | | | | | | Conflicts: tests/unit/unittest/gtest-creator-printing.cpp tests/unit/unittest/gtest-creator-printing.h Change-Id: I43d2571617bfbf41c0fcf23502ab77975540eba4
| * QtSupport: remove latin1 callsTim Jenssen2018-01-151-81/+80
| | | | | | | | | | Change-Id: I34fa89f3755740396bd8892bce96e515b5afefa5 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* | ProjectExplorer: add source location path to the qt versionDavid Schulz2018-01-151-0/+9
|/ | | | | Change-Id: I1826c0cbd8f50be91625b81aee04db4cd1310385 Reviewed-by: hjk <hjk@qt.io>
* QtSupport: Move warning to QmakeProjectManagerChristian Kandeler2018-01-121-16/+2
| | | | | | | | | Only qmake requires the build directory to be at the same level as the source directory, but the warning appeared also for cmake and qbs projects. Change-Id: I2c2c39b0a6004bb4efe80bf6ff56c3f9e22ec51d Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Qbs: Use right path for Qt librariesOrgad Shaneh2018-01-101-0/+6
| | | | | | | | | Similar to 85206e216afbb132d41bf7101fd9dc6446874ee2 for qmake. Unify the lookup logic in BaseQtVersion. Change-Id: Id0b0ff3127f0561ac36610ada16110b55252eb31 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Remove qmlsceneCommand() and qmlViewerCommand() from BaseQtVersionUlf Hermann2018-01-081-44/+10
| | | | | | | | | | | | | | | | | | qmlviewer is QtQuick1 and not supported anymore. The qmlscene command is in general not a property of the Qt version but of the target device, as we generally assume Qt binaries to be preinstalled on the target and qmlscene is executed on the target. DesktopQtVersion retains a method to retrieve the qmlscene path as there target == host and having the method available enables us to warn if the binary is missing. Also, QmlProjectManager needs to pick the qmlscene command from the Qt version if it's a desktop Qt. Change-Id: I2ee0f993e60b96d672080db2db0a6abe5ca933e3 Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
* Project: Make Project::files return a FileNameListTobias Hunger2017-12-081-2/+4
| | | | | Change-Id: I75ceb22ac65b8288d824f229d44089cba6fc8ea3 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Merge remote-tracking branch 'origin/4.5'Eike Ziller2017-11-141-0/+7
|\ | | | | | | Change-Id: Ib6739725e6b251ea962880e4b72700c5be5a192c
| * QtSupport: Add Qt version specific feature versionsAlessandro Portale2017-11-131-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Qt 5.9: Qt Quick Controls 2.2 Qt 5.10 Qt Quick 2.10 Qt Quick Controls 2.3 Change-Id: If683b6a4ec02128120597a2adbdfa10f111f9680 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
* | Merge remote-tracking branch 'origin/4.5'Eike Ziller2017-10-191-1/+0
|\ \ | |/ | | | | Change-Id: Ie83666bd18e899dabf5190c360027bf02abecdaf