Relieves the user code side from repeated code which then tends to
get forgotten.
Change-Id: I079f97a658b55f3c79111df1946b8d72863ce513
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The code would blindly remove all "options" starting with /, which meant
that all file paths arguments got lost on Unix-like hosts.
Fixes: QTCREATORBUG-22949
Change-Id: I43e2b1e57ed0e9ced9da8fa46d98d9ac25f83d13
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Currently, signing a package by androiddeployqt automatically implies
the --release option, but there is a fix that removes it from being set
by default. To prepare QtCreator for the upcoming change and not to
change its behavior, we need to manually add the --release option to the
argument list.
Change-Id: I31df1b8252a4444afde95a043848391590f4db82
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Instead of connecting to errorOccurred() and finished() signals.
Change-Id: I57adabc52b38be6b22a4d7380e6fbaaae3192201
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Check for the alias when performing a member lookup on an
import.
Fixes: QTCREATORBUG-26714
Change-Id: If3febb7d6de9fa2663cdda0143d4aa3590312ca5
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
CMake splits sources files into groups "Source Files" and "Header
Files".
CMake also has compiler groups when source files are compiled
differently.
Qt Creator is mapping the compiler groups as RawProjectParts.
In order to get the header files as part of a RawProjectPart the target
sources (which contains all sources) is mapping the header files that
match the mime type of the compiler group language type.
.h header files were considered ambigous headers, and in this
commit we treat them as the compile group language header.
Fixes: QTCREATORBUG-27117
Change-Id: If68e847846cc270f06fc2231ec44a29ea6a987c1
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This was quoting them into a single argument, failing if there was more
than one.
Change-Id: Idc099970f3b747918adf7559b95e749940aad11a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Don't delete the old ClangToolRunner directly from its signal
handler when calling runNext().
Change-Id: I55e72c1cced9ecbce492d00896d6fa161df02fd0
Reviewed-by: David Schulz <david.schulz@qt.io>
LLDB 12.0.8, which is included in NDK 23.1, hesitates to termiate when
being told to. Calling QtcProcess::stop() and using CtrlCStub on Windows
helps with that.
Amends: 17ff9317cd
Fixes: QTCREATORBUG-27723
Change-Id: Ie9d4ed23a833019f445c1517983c90ae899fbf39
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Parsing has to happen so material in an old project are correctly
appearing in the material views. Using a timer to wait until it is ok
to create the material editor node. Otherwise errors happen.
Change-Id: I54b532211f8a865c5183fab0fd8c12e5f15b983a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Use the URL that shows all release blog posts, which increases chances
for the user to find the right one without hassle.
Change-Id: Ia34b4de031223dd8b856be3cf1596fe1db274e54
Reviewed-by: hjk <hjk@qt.io>
ExternalProject_Add runs CMake not during the CMake run of the toplevel
project, but instead it runs CMake for the external project during the
build step. And while ExternalProject passes the CMAKE_COMMAND on to the
external project, it does not do so for the CMAKE_MAKE_PROGRAM.
Make sure that the make program is also found when configuring the
external project during the build step, by adding the path to ninja to
the build environment, instead of just the CMake process.
Fixes: QTCREATORBUG-27495
Change-Id: I672ec04881387a7411836ab94655176b7a5fb681
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
When adding the .ui files from qmldesignercore.cmake to
tst_assetsImport and tst_merge in the qtquickdesigner repository,
AUTOUIC for some reason gets the output location for the
generated ui_*.h headers from: It puts them into
qtquickdesigner/tests/qtcreator/src/plugins/qmldesigner/designercore/
instances/
instead of into the corresponding *_autogen directory.
That leads to both tests wanting to generate the same file, and
ninja complains with
ninja: error: build.ninja:78635: multiple rules generate
qtquickdesigner/.....
Do not use AUTOUIC for these .ui files, but instead add them manually
with qt_wrap_ui.
Change-Id: I1d60fae95739335a87f8196ed2a686a0633165b2
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
The iostool did always deploy the whole bundle, without taking
into account whether anything has actually changed. This meant
that for big bundles anytime the user starts the application
on his device, a full deployment was done.
For a ~1GB bundle this would take around a minute on a recent
Mac and iPhone 12.
This fix uses a new function from the mobiledevice framework
called AMDeviceSecureInstallApplicationBundle.
This function takes a new parameter "ShadowPathKey" which points
to a directory where the last deploy state is captured temporarily.
Before deploying to the device, the function compares
what is to be deployed against the last deploy state and
only deploys the parts that actually changed.
QtCreator provides a temporary folder for this. Due to this,
the initial deployment still does a complete deployment as
no state is available yet. All subsequent deployments
take the captured state into account.
For backwards compatibility, the old deployment method is left intact.
Fixes: QTCREATORBUG-24371
Change-Id: I4df6aa79d41b34c326d78be7952d7eeb23774648
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
In order to help lldb locate libpython3.9.so, we need to point
LD_LIBRARY_PATH to the right lib/ path inside the NDK.
Amends: b54bf8ad86
Reason for amend: The "prepend" use-case of Environment::prependOrSet
failed due to the undefined separator. Now, use
Environment::prependOrSetLibrarySearchPath instead, since that handles
the separator and knows the environment variable name.
Fixes: QTCREATORBUG-27297
Change-Id: I770a6335a7a26c65d23c930f7d6f9795b3dc52b5
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Handle property support for asset drag based on property type rather
than name in order to support properties with any name
(like lightProbe).
Change-Id: I20fd422119db96aebd505b47888c97f0d94bf7f9
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This is workaround for material rendering issues in quick3d when a
material is shared by multiple windows.
Fixes: QDS-7096
Fixes: QDS-7118
Change-Id: I64fe2e51c5dda8e238502e5d926b6938b7b0731a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This makes sure that any processes started by the debugged project in
cdb are also closed when the debugger should be stopped.
It happened to me in the past that while debugging Qt Creator in Qt
Creator and closing the debugging session tens of uic.exe were left as
zombies. And for some reason they started consuming CPU time.
taskkill /f /im uic.exe was the needed command to handle the situation.
Change-Id: I498381e793405854f7c02e9fec6b6e4718c75c25
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Add local declaration function add "auto " incase
cxx11 features are enabled.
Fixes: QTCREATORBUG-26004
Change-Id: I10da77e8baa52740b1c4df5a21d78ac5f0d1c5d6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This is now taken care of in the desctuctor of QtcProcess itself.
Change-Id: I51e65344e6d2cae4498e292e4ad6a586c68b0539
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>