... when filtering compiler options for MSVC macro extractions.
Otherwise we end up with a stray command line argument, breaking the
call to cl.exe.
Fixes: QTCREATORBUG-28016
Change-Id: I29979a4b968d2056a0feba61fee01d5ddc9aa28f
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This is just a workaround for 9.0 and not a proper fix!
It looks like sometimes kill command may freeze. Don't blocking
wait for it for 30 seconds - limit this time to 2 seconds.
Do the same inside SimpleTargetRunner. Pretend the process
finished after 2 seconds, otherwise the SimpleTargetRunner
object gets leaked and we start receiving asserts from
ProcessLauncher about destructing it when still some processes
are being run.
Task-number: QTCREATORBUG-28072
Change-Id: I9766e7ff6f0c2abf2010686027702d30d32c4318
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
By defining QTC_NO_MSVC_CLEAN_ENV one can skip the vcvarsall.bat /
clean_env functionality.
Task-number: QTCREATORBUG-28561
Change-Id: I6392b2278008607042a43a38a2c38669b4b52183
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
This allows a project to be properly configured with Qt Creator 9 when
the build environment had user defined changes.
Qt Creator version prior to 9 had one setting for both configure and
build steps.
Fixes: QTCREATORBUG-28372
Change-Id: I0da8065085bd6628ba75923c17b46648eb031801
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Some wizards will miss required components when corresponding plugins
are disabled. That is fine, and not an error per se. When actually
developing a wizard, these kind of errors should of course be posted,
but that is what -customwizard-verbose is for.
Fixes: QTCREATORBUG-28502
Change-Id: I3647d37ef7ca4dace7592c5443bdd13720290016
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
when we are in the limbo state where no session has been loaded, and the
default session has not been explicitly created or loaded yet.
Fixes: QTCREATORBUG-28393
Change-Id: I66d69561e18b5073a477d90c1926074e3cd97cee
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
It would add the paths from the environment variable again, each time
the searchPaths are requested
Change-Id: I2650ba832e23b5fcd6bfd363389e1eaf3beddb9d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
In rare cases it can happen that the installer creates a device that happens
to have the same rootPath as a user created device. We need to filter
these out since otherwise it can be random which of the two devices
is selected.
Change-Id: I8269795a2e4f439fb2f02d819272723a504c6703
Reviewed-by: hjk <hjk@qt.io>
... by mapping the executable and working directory to the target
device.
Change-Id: I0a220fe9bae980cb279fae776962f23335eac248
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Otherwise, the issues pane can pop up due to a key press, as code models
refresh their diagnostic entries.
Amends 04a23c38f0.
Fixes: QTCREATORBUG-28330
Change-Id: Ic7e63a1bbbf3e4c37383849cfad05529bac23e9b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
When using BuildStep::runImpl() it was possible for the async part
to still be running while the BuildStep is already deleted.
This change returns the Future so that users can wait for it to finish.
Change-Id: I27c0fc8741c59851c5ab8f5cb858fbcda923c14d
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
When trying to jump to a symbol in a qml file the Qml Model may find
the location in a generated .qml file in the build folder.
QtCreator searches in all generated .qrc files to try and find
the source file so it can jump to it instead.
Previously not all auto-generated ".rcc" folders would be found
as only the folders of targets (executables) were searched.
Plugins or Static Libraries were not searched.
With this fix, all projects nodes are searched for the ".rcc" folder
and therefore also finds them for Dynamic / Static libraries and
plugins.
Fixes: QTCREATORBUG-27173
Change-Id: Ic51ac8fbc82c15785cbefd76787942a512ecf3db
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
* Removing the summary page
* Adding DoNotOpenFile option
By default, the wizard expects to open a file.
Setting DoNotOpenFile to true does suppress this.
Task-number: QDS-8151
Change-Id: I62264733788dbbe1b017beaa428356548a1a3692
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Otherwise, m_filter and m_factory may be used from 2 threads
at the same time, what is not thread safe (setFilter() /
setTypeFactory() from caller thread, and copy of m_filter and m_factory
inside async call body).
Change-Id: Ic322870f9c27de10c5c51082cfbb85c729326993
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Previously every time a qmake project was built, the
"buildDirectoryChanged()" was emitted, leading to a complete
reparse of the project file, tests, qml files and qml imports.
To keep "QmakeBuildConfiguration::updateProblemLabel" be called,
we re-introduce the "buildDirectoryInitialized" signal.
Task-number: QTCREATORBUG-27785
Change-Id: I32d881eacb8cf26050c33da643c74c2cab4dc22d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Fixes shortly popping up floating widget on the Build & Run
settings page.
Change-Id: I8bcc887ae73b9cb27f690548d0e98038fb757674
Reviewed-by: David Schulz <david.schulz@qt.io>
Amends ae07c31976
Calling a VS2022 vcvarsall.bat /clean_env in a VS2019 environment causes
failures. Using the original vcvarsall.bat does the proper cleanup.
Change-Id: I12426e9eb97baecae5357e6bb419333464ea1ded
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: David Schulz <david.schulz@qt.io>
The tooltip didn't show up at all, and even if it had, it would be weird
to have a warning icon all by itself.
Task-number: QTCREATORBUG-25089
Change-Id: I517c762b050f93aa2f2c4aa89f208e4ccb7515c5
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
By calling vcvarsall.bat with "/clean_env" before the actual
vcvarsall.bat call we make sure that the correct environment settings
are picked up by Qt Creator.
For example calling Visual Studio Community/vcvarsall from an
environment where Visual Studio BuildTools/vcvarscall was already
called, will not return a Visual Studio Community environment, but a
Visual Studio BuildTools environment.
The above scenario can happen when developing Qt Creator itself with a
different Visual Studio setup.
Fixes: QTCREATORBUG-28315
Change-Id: Ib99cbba2a5c6299953728e92cf0283c10f7837f3
Reviewed-by: David Schulz <david.schulz@qt.io>
Previously the working directory might not be reachable by
the executable.
This change fixes that by calling "ensureReachable", and
changing the path to an on-device path of the exectuable.
This also fixes the path when the Host is Windows, and
the build device is a unix type system by changing the paths
from e.g. "c:/..." to "/c/..."
Change-Id: I6c86e16c867bb654b6c2a4951d9f62fdb879298e
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
It breaks the project tree, at least for Qt Creator CMake project.
This reverts commit d1284570d6.
Change-Id: Ic5fe14cd4da476ca421551968e67fb8688433bbf
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Previously the host environment would be used while inspecting
a gcc / g++ compiler. When doing so on a Windows Host
against a Docker target, this would fail.
Change-Id: I0e7b392101cee23e17813fa07f6c04bb9d3999c9
Reviewed-by: hjk <hjk@qt.io>
Hopefully less confusion about the direction.
Change-Id: I61727d6c4d19e0dfe46f24ff24f5d90f9835d05c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
By using a generic file transfer method based of FilePath::copyFile()
that doesn't require either of the transfer end point to be the
local host.
Change-Id: Ia2e4273df52f5ce6533046d96be3f6b521b7f0a5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Both calls of FilePath::relativePath() were "reversed".
Amends: 389b1eceb9
Fixes: QTCREATORBUG-28312
Change-Id: Iecff3adeee8f8ce198c12289e51487a51178759e
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
3rd party application like clink can slow down the execution of msvc env
script drasticly. And especially the vcvars script that collects the
msvc environment modifications should be checked without any additional
user modifications.
Task-number: QTCREATORBUG-27906
Change-Id: I7393a3e7e367a26408e52a419ccba75ed8e3cad0
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Without that I get folder nodes named "/ssh://user@12.23.45.67/..."
Change-Id: I03f87c650478781fe934e8a647a8883f024b7a2b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
- missing Q_DECLARE_TR_FUNCTIONS
- some full qualifications needed for confused lupdate
- avoid breaking some translations from former TaskListPlugin,
VcsCommand and highlighter settings refactoring
Change-Id: Ia3b34095512a7bad6903f0aff6095313ee39e3e4
Reviewed-by: hjk <hjk@qt.io>
... before creating project parts.
Otherwise we can get wrong includes and defines from the compiler.
Amends 9c86e6746f.
Also do not add -m32 or -m64 for non-x86 targets.
Task-number: QTCREATORBUG-25615
Change-Id: I02da9251c77d45fc8827990a2d59c3ae2c262591
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Neither cmake nor qmake know the full iOS compiler command line, so we
have to construct the target triple for the code model ourselves.
Fixes: QTCREATORBUG-28278
Change-Id: I6cac06f340e9388de5c86509a8df4ac00eef87cd
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The file accessing functions form now a class hierarchy by themselves,
the devices return a suitable point.
The previous implementation was mildly confusing by the special handling
of the DesktopDevice, fallbacks and remote cases in the same function
leading to unnecessary boilerplate when adding new functions and
codepaths that sometimes passed the FilePath API twice.
Implemented are a "DesktopDeviceFileAccess" taking care of the
previous !needsDevice() branches and a "UnixDeviceFileAccess"
covering the current docker and RL uses.
As a side-effect this unifies to a large degree the current docker
and RL code paths with were occasionally deviating from each other
while they shouldn't.
Change-Id: I4ff59d4be2a07d13e2ca5e9ace26a84160a87c9d
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
For example: /FIC:/Projects/test/config.h
Change-Id: I18dcda6593effa58ece019ce40bca7860cebfc8c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
To be consistent with the SessionNameInputDialog that has the button
"... and Open" to switch to a session.
Buttons should be ordered by like a typical file menu
- new
- open(ex- switch to)
- save(rename/clone)
- close(delete)
Change-Id: I875446352100500eaae4b0ecef4faa6442aef539
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>