Commit Graph

74 Commits

Author SHA1 Message Date
Aaron Barany
80b229a7ab CMakeKitInformation: Separate C and C++ compilers
Task-number: QTCREATORBUG-16501
Change-Id: I25a40afc39ad80deae6d1708816a2a9e527e9ece
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-07-18 13:18:52 +00:00
Tobias Hunger
cb14fb0d71 Kits: Save several ToolChains per kit
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>
2016-07-14 15:34:06 +00:00
hjk
04a93c3bb5 CMake: Demote non-matching generator to 'Warning'
Default KitChooser behavior is to suppress kits with errors everywhere
but non-matching CMake generator settings are irrelevant for both non-CMake
using projects and analyzer/debugger tools.

Change-Id: Ie60f0f23b5c2423128304227fc573526b7ec2113
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-06-06 10:53:40 +00:00
Robert Loehning
8372d2199f CMake: Fix typo
Change-Id: I8c0e8acc74b5c87375c9f54a6a889ca0031f6e13
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-04-22 08:42:23 +00:00
Tobias Hunger
73123779aa CMake: Do not warn if there is no cmake but a generator is selected
Task-number: QTCREATORBUG-16103
Change-Id: I4fcefd8ab68b6e34ca92e0d0c6fc1a8e6ec6b70c
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-04-20 10:52:55 +00:00
Tobias Hunger
12708d9b25 CMake: Make sure null-configuration items do not end up in output
Make sure there are no empty strings returned by null configuration
items visible in the output.

Change-Id: I467f33f41b8eeb25b6cb2b1aa3ada4dd7e1d5950
Reviewed-by: Vikas Pachdha <vikas.pachdha@theqtcompany.com>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-04-19 11:05:49 +00:00
Eike Ziller
5c87432260 Merge remote-tracking branch 'origin/4.0'
Conflicts:
	src/plugins/qmldesigner/components/propertyeditor/propertyeditorqmlbackend.cpp

Change-Id: I6ae2d37290643d69390f679a54f7596782f3d97f
2016-04-12 11:34:46 +02:00
Tobias Hunger
58c326cb73 CMake: Add a reset button to the CMake Configuration edit in Kits
Add a reset button to the CMake configuration edit dialog that is
available in the kits configuration panel. It restores the default
value for the kit.

Change-Id: I89921e2c86cbf8d9658a32fe5fa51dc2f903ff00
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-04-08 10:10:56 +00:00
Oswald Buddenhagen
3c2f0096ea Merge remote-tracking branch 'origin/4.0' 2016-03-22 15:23:12 +01:00
Christian Stenger
47f5c13573 CMake: Fix compile for gcc 4.7.3
Change-Id: I2f07dc1d47d68786a9d62ab980e5f1e719726132
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-03-21 08:00:33 +00:00
Tobias Hunger
79c710463e CMakeKitInformation: Expose cmake path to MacroExpander
Task-number: QTCREATORBUG-15367
Change-Id: Ia685b738c242b77eef2a96932dee1f7ebfe1787e
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-03-18 14:23:10 +00:00
Tobias Hunger
5e623ddfd1 CMake: Improve handling of cmake configuration in kits
Use macros. This makes it possible to address the current qt version
and toolchain without having to update those values all the time.

This significantly simplifies changing Qt versions and toolchains in
the kit as well as the code itself.

Change-Id: I35128eebdc96fe6175f565b2e9bdaa40862516a7
Task-number: QTCREATORBUG-15830
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-03-16 15:37:48 +00:00
Tobias Hunger
3cffacdd0f CMake: Improve default generator setup on Windows
If ninja is not an option on windows: Pick mingw makefile generator
for kits with a Mingw toolchain on windows and the nmake makefile
generator for other toolchains on windows.

On Unix fall back to the Unix makefiles generator if ninja is
unavailable as we did before.

Change-Id: I8005615e6f725d38c16c1b9026d3f7548e7b42db
Task-number: QTCREATORBUG-15756
Reviewed-by: Robert Loehning <robert.loehning@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-03-03 09:53:08 +00:00
Tobias Hunger
869c46227d CMake: Only use ninja if that is found in PATH
Only use ninja by default if that is found in PATH. Still prefer ninja
if it is available as that apparently is a huge time saver, especially
on windows.

Change-Id: Iadaecbaddfe6592222f2ed5e42b440665e9246a7
Task-number: QTCREATORBUG-15756
Reviewed-by: Robert Loehning <robert.loehning@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-03-01 10:12:40 +00:00
Tobias Hunger
18afa34587 CMake: Add CMakeConfigurationKitInformation
Add CMakeConfigurationKitInformation and supporting classes.

This KitInformation can hold CMake settings that are to be applied
for all configurations when this kit is used. It contains e.g.
the Qt version and toolchain configured in the kit by default, but
can be extended to hold more.

The UI will warn if the toolchain or Qt version set up in CMake
does not match up with those used by the Kit, but it will allow
the user to proceed.

Change-Id: I73f06a6535ce14de323130d74af83b9cb2ec0f0f
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-12 13:31:10 +00:00
Tobias Hunger
2bcfce96ba CMakeKitInformation: Clean up headers
Change-Id: I903c6529d0df83aaef9f109cdc2650cb76392bd5
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-12 11:42:36 +00:00
Tobias Hunger
a764bb49d8 CMake: Add CMakeGeneratorKitInformation
Change-Id: I877c248c7b93268281fc68e814e479d24b844d5f
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-12 11:02:16 +00:00
Tobias Hunger
999a8d0516 CMake: Polish CMakeKitInformation
Change-Id: Ifc22c5ad41449ce6597b604746f25cab86662425
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-05 11:47:37 +00:00
Tobias Hunger
5404f9c480 CMake: Remove static defaultValue method from CMakeKitInformation
There is no need to expose this.

Change-Id: I164f1e787b742d330282125320b54a5b2ecb6134
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-05 11:47:23 +00:00
Tobias Hunger
eafb667066 KitInformation: Make defaultValue take a const Kit *
There is no reason not to.

Change-Id: I4accb0b690173d93ad6f4c9dd0bce66d8de75faa
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
2016-02-05 11:35:20 +00:00
Tobias Hunger
397e7f4843 Update License according to agreement with Free Qt Foundation
* Update files in src/plugins

Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-19 15:57:01 +00:00
Orgad Shaneh
866310d56f CMake: Initialize kit priority
Detected by memcheck

Change-Id: I27bb03ce4b4b63ae596bd3a788b6a95cd0944454
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-08-03 09:35:31 +00:00
Eike Ziller
c9af21f9de Kits: Not having a CMake executable set is perfectly valid.
It is the normal situation on Windows & OS X for simple Qt development.

Change-Id: I84453ebcc62200bd6c7223a593b5953c20194069
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-03-24 11:16:15 +00:00
Benjamin Zeller
1e2d266541 Make CMakeTool known to the Kits
This patch adds support for binding a specific CMakeTool to a Kit.
When creating a new Kit or loading a existing one without a valid
CMakeTool, the default CMakeTool will be set.

Change-Id: I28d0843a01c583c4b31fc680a0ec556b40cd9c0d
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-03-03 12:47:36 +00:00