If the toolchain is misconfigured, it's still possible to save GDB from
crashing by reading the binary format from the executable.
Change-Id: I8f8db163e1dd6aef31fed23b1306e714e563646a
Reviewed-by: hjk <hjk@qt.io>
Add extra define not to include intrinsic headers
from boost headers.
Task-number: QTCREATORBUG-16439
Change-Id: I887fe63e2560afebdbe9f3d3587f99f95d408997
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Handle more "CMake error at" messages. This includes the generic
"Parsing failed" message from cmake.
Change-Id: Ie036c606bd7a8ad9cafbc32a34a77f8b95c3defa
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Do not use VcsManager's cache of version control systems from different
threads.
Iterate over all IVersionControls instead of getting the specific version
control for a directory. This is less exact, but will probably not hurt users.
Task-number: QTCREATORBUG-18258
Change-Id: Iae2be5735a0d7ecc8d774904f6681963fca1d114
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Make sure that build targets that get added explicitly are never reported
by any of the readers, too. This makes sure entries will not show up twice
in the UI.
Task-number: QTCREATORBUG-18409
Change-Id: Id5039add262211fd87cd5c2884df2af0fcf24577
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Allow comments at the start of line only (or after only space characters) in
CMakeCache.txt-style lines.
Task-number: QTCREATORBUG-18385
Change-Id: I8b69144ea4f6a667ae1df382c8c4c1e88eca799b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
If an error occurs while persisting or updating the cmake state, the
build might continue for a while in the background.
CMakeBuildStep does not disconnect the Error/Run-Trigger when an
error is signaled by the CMakeBuildConfiguration. Instead it reports the
build as finished (with error). The BuildManager then disconnects the
output and runs the next item in the build queue (if any). However the
cmake step might still be alive and emits the dataAvailable signal which
then triggers the build process.
Task-number: QTCREATORBUG-18382
Change-Id: I956133fe8c6f7de58b9f842b231c70d24778b1e0
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
The TeaLeafReader tries to parse the CMakeCache.txt before cmake is
executed for the first time.
The error is signaled to the CMakeBuildStep which reports the build as a
failure.
Make TeaLeafReader::takeParsedConfiguration return an empty
CMakeConfig object if the CMakeCache.txt file does not exist instead,
but do not report an error.
Task-number: QTCREATORBUG-18290
Change-Id: Ibfc43858938477ae7479029e8fe6786c77823014
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Otherwise, clicking on links will have no effect. This feature was
broken with commit 113134b3b6.
Task-number: QTCREATORBUG-18134
Task-number: QTCREATORBUG-18334
Change-Id: I3cf5d8a9b3957a3f06cb3dbba40bb2dd16a9f8a9
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Prevent a loop where a subprovider of a macroexpander creates
the macroexpander itself.
Change-Id: Id2f3e29651aeb22c818091d8c785a6ea01545463
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Handle more kinds of errors in CMake server-mode.
Task-number: QTCREATORBUG-18318
Change-Id: I43fff7f3cfbd86d01ff05a0936261b8d91aa5d70
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
... and use it to allow users to set custom properties in the
corresponding profile. This replaces the idiosyncratic and more
complicated approach we had before, when that was done in the qbs
profiles settings page. The profiles view is now read-only.
Change-Id: I0c29c1ac0c510e17d685e7bbaa38b54c8100ddb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
A lot of the target-and-tool specific run controls nowadays
have something like a single main RunWorker. This patch
removes the need to have user-implemented RunControlFactories
in those cases and adjusts local run, remote linux,
python and nim to take advantage.
There's more potential use downstream.
Change-Id: Ie2d2f839b8be1fad2be3b79e21de3c0e475d88cf
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Avoid using remote/local as (not user visible) names. 'internal'
means 'whatever the current target does', i.e. could be a remote setup,
'external' means 'attach to something running or waiting.
Also user setServerUrl() directly on the worker, no need go through
the 'opaque connection' mechanism here.
Change-Id: Id0e694562ce7d3129c7d0b790c91d465de24b4e4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Do not pass QTextCursor to another thread, but determine what we need
from it in the main thread.
Change-Id: I86900cfc5a28849efc1bd1dacb9b1452a5db252e
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Reviewed-by: hjk <hjk@qt.io>
There is an argument of this type in std_abs.h. void argument is invalid.
Replacing with float, double or long double causes an error in type_traits,
which has template specializations for __is_floating_point_helper for all
these types.
Change-Id: Ife95fa992cbf9684bc67a2098d6609a9a925d015
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
Check for Updates menu items are supposed to be displayed in the
application menu on macOS, not the Help menu as for other platforms.
Change-Id: I8d13f2658b3b0e0b9b01ef5b64bd7804d6b7e424
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
We introduced some new text styles but never used them in the default
style so far. To make them more user visible we have done following changes
Output Argument to italic
Declaration to bold
Local variable to dark blue which is different to Macros
Global variable to orange
Functions to water blue
Task-number: QTCREATORBUG-18151
Change-Id: If3f62f74795b5ae35a92db2ef6d5c48219c8ad18
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This lets qbs handle architectures entirely for GCC/MinGW, ICC, and MSVC
toolchains, as well as projects targeting Android or any Apple platform
with any toolchain. Now Qt Creator only passes down architecture
information to qbs for QNX/QCC and Clang on Windows, Linux, BSD, etc.
Change-Id: I44925671d7f280890f9e25a5726d019d3f98dea9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Use optional to get rid of an explicit bool to keep track of whether
file icons have been resolved or not.
Relying on QIcon::isNull() would not be good, because the result from
QFileIconProvider can be a null icon.
Change-Id: I56720d56687f5e35d0c50b485d50e324d9940f30
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
...so it can be cached. The base implementation does this, too. For
certain uses cases, it will avoid a call to context->contextHelpId() in
HelpPlugin::showContextHelp.
Change-Id: Ia575595c6f723e3681d4685e2e1ce65b2e435ad1
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
This reduces the overhead when a new message needs to be added.
Change-Id: I5bb2833af2f06f2a8e101cfb03f75ffc2927bf68
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Note that this changes the startup timing in the StartupOnNetwork
case slightly, as the application launch is now triggered in
parallel with the gdb launch.
Change-Id: Iaa0b60b8c478eb47abb6e93fbd3b326e0acdd13b
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
If project files are not mapped 1:1 to targets the result
of the chosen executable was more or less random.
Try to handle multiple targets as correct as possible by
checking for build targets already where we still know
which files are part of the respective test cases.
Task-number: QTCREATORBUG-17783
Task-number: QTCREATORBUG-18357
Change-Id: I82dcc26bf52c9918e2727b439a719af08879ef49
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This patch prepares for enhancing information stored inside
buildSystemTarget.
Change-Id: I5d81fd01ab6b06c162f47fd9536de697ddfd24a3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
... when Makefile is customized.
The resolved makefile was <directory>Makefile.custom instead of
<directory>/Makefile.custom.
Change-Id: I01c4ef8b6d4ba64fc6663219c2eab7a39e03888b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Disable respective actions while a build is running to avoid strange
side-effects or race conditions.
Change-Id: Ifc8d1c9fc9fd4d705cabd148b145708e23029dba
Reviewed-by: David Schulz <david.schulz@qt.io>