Commit Graph

86 Commits

Author SHA1 Message Date
Tobias Hunger
11c87bd918 CMake: Unify setup of default build target in CMakeBuildStep
Change-Id: I3d087356a4dd5a3b8ab07d5b64cd5aeb93ae0f47
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-04-27 09:51:16 +00:00
Tobias Hunger
10d6a3bc3d CMake: Fix signal emission from CMakeBuildStep
This fixes the summary in the UI.

Change-Id: I8eb93a1785d8788d9021e06b75a10cb36f119f0f
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-04-27 09:51:10 +00:00
Tobias Hunger
d8d2dc6adb CMake: Report special utility targets in BuildDirManager::buildTargets
Report special utility targets like "all", "clean" and "install" from
the BuildDirManager and update UI accordingly.

Change-Id: I01d0dcfa23d5bddc124c8f9ee1040475184c9c1e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-04-27 09:51:01 +00:00
Tobias Hunger
e7b4e91fec CMake: Define an "install" target
Change-Id: I036ddc3bfb91fc3a5a9e8923db2befbf60e89a77
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-04-27 09:50:54 +00:00
Tobias Hunger
1e178915df AbstractProcessStep: Free output parser chain in error case
Change-Id: Ie0dc094068bfa56f728d84ee13e70efbc980f8b3
Reviewed-by: hjk <hjk@qt.io>
2017-04-25 09:23:21 +00:00
Tobias Hunger
b5ab98dfd5 CMake: Simplify code
Use defined helper method instead of duplicating code.

Change-Id: I1eec61f99875ccd28e6e64bd5ad2bfd7e6e21eb3
Reviewed-by: hjk <hjk@qt.io>
2017-04-25 09:22:33 +00:00
Tobias Hunger
79f5a27568 CMake: Use RCs buildSystemTarget when deciding what to build
Use the RCs buildSystemTarget property when deciding what to build
with the "build current executable only" property set. This makes
the selection more robust.

Change-Id: I0dbcd764a06428b441084e6e4dc680e106c6d3bd
Reviewed-by: hjk <hjk@qt.io>
2017-04-25 09:22:17 +00:00
Tobias Hunger
a3be2c08ee CMake: Fix clean target
Always list a "all" and "clean" targets and remove the similar code
in the tealeaf reader.

This fixes the clean-step falling back to "all" in server-mode.

Task-number: QTCREATORBUG-17138
Change-Id: I1ce84f03c2e9829e4bb5f550c10cdef772fabf5b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-04-03 11:21:47 +00:00
Tim Jenssen
2631ffabd5 Remove spaces in initializer lists
Format initializer lists code style like.

Change-Id: Ib82c235e4ba7dc75ee96a7abc0c47eff7b0a9013
Reviewed-by: hjk <hjk@qt.io>
2017-02-22 16:25:09 +00:00
Christian Kandeler
c05a3fdb3d Give the values of BuildStep::OutputFormat better names
The old ones did not convey their meaning very well. In particular,
NormalOutput and MessageOutput were easily confused.

Change-Id: Ia0a8c1b1c366ab3f5c59f751b37b8b1f68f6831d
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-19 16:08:57 +00:00
Tobias Hunger
53d45de8a0 CMake: Allow to build target from context menu of CMakeTargetNodes
Change-Id: I0457abd6dabea1699272482eb5f7fbb3ca097310
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-11-15 09:30:59 +00:00
Tobias Hunger
b17c98ad6f CMake: Trigger cmake run *before* build when files changed
Make sure to run cmake *before* cmake --build when cmake files just
got saved. This helps e.g. when editing CMakeLists.txt files and the
hitting "Built" and "Save all" (or "Always save before build").

Task-number: QTCREATORBUG-16187
Change-Id: I16b1d02eb342a447003380946ce7a9d785476a0e
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-10-07 08:47:02 +00:00
Tobias Hunger
4d7420fe49 CMake: Fix warning
Change-Id: Ibfa8e5a9df03c9249f0feb6a8133dc222d57743d
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-10-07 08:36:26 +00:00
hjk
519cc8ded6 ProjectExplorer: De-duplicate code in IBuildStepFactory derived classes
This removes 900 lines of duplicated code, some duplicated checks at
runtime and some (minor) quadratic behavior when gathering display names.

canClone(), canRestore() and canCreate() and restore() use the same
pattern. Handle that on the core side once. Leave retore() virtual to let
the ios code unmodified (which is likely not needed, later...). Introduce
'Unclonable' and 'Uncreatable' flags to keep Android package installation
and WinRT deployment (non-)functionality unchanged.

Change-Id: I0325479aff818a4038b2f241ca733b8d8cd66f2f
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-06-10 10:34:51 +00:00
Eike Ziller
5097768552 Merge remote-tracking branch 'origin/4.0'
Change-Id: Ic82bea5abc6f9539044873b9872c70b3d66a642e
2016-04-25 16:23:15 +02:00
Tobias Hunger
e8b538985d CMake: Do not forget "current executable" build target
Do not forget to build the current executable target when there is a change
of available build targets.

Task-number: QTCREATORBUG-16131
Change-Id: I7fb0dfcd06cdbe3d23dbd194ed27fd3825068c62
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-04-25 11:52:20 +00:00
Tobias Hunger
2e5102f45e BuildStep: Remove finished() signal and use FutureInterface to report
Remove the finished() signal that is (sometimes) used to report that
a buildstep is done and use the FutureInterface for that purpose
consistently.

Change-Id: Ibe5520b562b91f1a7f4fc73ee898b33b930029ec
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-04-25 11:23:42 +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
Jarek Kobus
3f19774c0f Set LC_MESSAGES instead of LC_ALL for parsing the error output
Task-number: QTCREATORBUG-15855
Change-Id: I05aa83acb356840cfdacc92796b190fb8754ada0
Reviewed-by: hjk <hjk@theqtcompany.com>
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-04-11 12:36:29 +00:00
Leena Miettinen
c77abc4230 CMake: Fix capitalization of "CMake Tool"
...to be consistent with the capitalization elsewhere.

Change-Id: I947e2a5bff3a368ee9a456261186325821870552
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-04-05 15:14:30 +00:00
Tobias Hunger
2c822ae3c1 CMake: Only allow one target in cmake build step
CMake will silently ignore all but the last target (or fail to build
anything). This allows to simplify our code.

Change-Id: Ieee3931aca0788307107e2021d507073ef42a21f
Task-number: QTCREATORBUG-15928
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-03-30 12:20:58 +00:00
Orgad Shaneh
13dea114e2 CMake: Show build progress in compile output
Broken by 578c107a16.

Change-Id: I2427dbc36f70a20a453fc6fd13f29589f07a7fcf
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-03-22 10:42:02 +00:00
Alexander Drozdov
a618eb2a9f Don't use quoting for additional tool arguments...
...that passed to the build tool (cmake --build...)
and specified by user.

Change-Id: I0de51161b5dd700f3160f048fa6f02743a5186e6
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-03-16 09:38:47 +00:00
Tobias Hunger
578c107a16 CMake: Do not try to parse progress information lines
The lines with "[x%] Building something" do not contain errors,
so there is no need to parse them (causing false positives to show
up).

Change-Id: Iee87deb73db9e82040cab5401b74c70be91e6191
Reviewed-by: Alexander Drozdov <adrozdoff@gmail.com>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-03-14 13:23:46 +00:00
Tobias Hunger
420e54281c CMake: Keep cmake state in a temporary directory till first build
This avoids creating lots of build directories as the user types
in something into the builddirectory line of the build settings.

Change-Id: Ib08a0f65e08bce104e4baf9e19fb01730d2f5f08
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-26 12:17:39 +00:00
Tobias Hunger
76a050cb83 CMake: Move BuildDirManager from the project into the buildconfiguration
Change-Id: I90126ff22dd394eba4145db142b3914d211af476
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-26 12:17:31 +00:00
Tobias Hunger
859bf2c5ce CMake: Do not run a cmake wizard all the time
Do not push the cmake running straight into the face of the user. Do it
in the background instead.

This needs some follow-up patches to become really useful.

Change-Id: I3457178b33e3f14bdeac25005a773d17abb73b65
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-15 11:04:45 +00:00
Tobias Hunger
c7d906214b CMakeParser: Remove sub-parser setup from CMakeParser
This makes the class more applicable for later re-use.

Change-Id: Ic717dd63962b254fce639061f16b1ca8e12d8098
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-02-12 12:37:18 +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
Leena Miettinen
67ca818e5b CMake: fix grammar in error message
...for CMakeRunConfiguration

Change-Id: I6b977f6ea2fe3b1aa75de497a93edc6256038a9e
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-12 10:27:53 +00:00
Tobias Hunger
b2b6d3c526 CMake: Semi-automatic cleanups
* Shorten header guards
* Use override and auto where possible
* Remove useless destructors, etc.
* Remove private slots sections, unify private: sections
* Use member initialization where it makes sense

Change-Id: I00eaf6d706adc16859176d1b68c631d3336bb39f
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-01-08 12:17:41 +00:00
Tobias Hunger
d63186d6f4 CMake: Fix build again.
Change-Id: I59ce809357b8f105009a210a5bce0a5d773ad649
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-08 10:32:39 +00:00
Tobias Hunger
870cfdf011 CMake: Use "cmake --build" to build
This removes the need to know about ninja and make in the cmakebuildstep.

Change-Id: Id3a15c34f4a8003c3cbf9d62f246bd08f0ada264
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-01-08 10:11:12 +00:00
Tim Jenssen
81ffd98433 fix msvc2013 builds
Change-Id: I80771fa02a0817c835eebbf0f550536ecacbd98c
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-08 10:10:59 +00:00
Tobias Hunger
33c0b69326 CMake: Use algorithm in CMakeBuildStep
Change-Id: I7d3f5e08b15d91759a9c816dd1223bf8be8c40f8
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
2016-01-08 08:47:01 +00:00
Tobias Hunger
e4cdad309d CMake: Move MakeStep to CMakeBuildStep
Change-Id: I2a3432acd90cc27fb444ab30c3239497a51e01df
Reviewed-by: Cristian Adam <cristian.adam@gmail.com>
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
2016-01-08 08:46:58 +00:00