summaryrefslogtreecommitdiff
path: root/src/plugins/android/androidpackageinstallationstep.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Utils: Rename qtcprocess.{cpp,h} -> process.{cpp,h}Jarek Kobus2023-05-041-1/+1
| | | | | | | | Follows QtcProcess -> Process rename. Change-Id: I97235a9a40cb7fd52944515b7ab878d96528f919 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Android: Skip "Make Install" and "Build APK" if not ProductType::AppAlessandro Portale2023-04-061-0/+8
| | | | | | | | | | | If the target's product type is not "App", the "Make Install" and "Build Android APK" build steps need to be skipped. Fixes: QTCREATORBUG-26980 Change-Id: Ia8bb61d407d040b851a74bad3d23876a7d31af73 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Remove GPL-3.0+ from license identifiersKai Köhne2023-01-061-1/+1
| | | | | | | | | | | | | | | Since we also license under GPL-3.0 WITH Qt-GPL-exception-1.0, this applies only to a hypothetical newer version of GPL, that doesn't exist yet. If such a version emerges, we can still decide to relicense... While at it, replace (deprecated) GPL-3.0 with more explicit GPL-3.0-only Change was done by running find . -type f -exec perl -pi -e "s/LicenseRef-Qt-Commercial OR GPL-3.0\+ OR GPL-3.0 WITH Qt-GPL-exception-1.0/LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0/g" {} \; Change-Id: I5097e6ce8d10233993ee30d7e25120e2659eb10b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Port from qAsConst() to std::as_const()Marc Mutz2022-10-071-1/+1
| | | | | | | | | | | | | | We've been requiring C++17 since Qt 6.0, and our qAsConst use finally starts to bother us (QTBUG-99313), so time to port away from it now. Since qAsConst has exactly the same semantics as std::as_const (down to rvalue treatment, constexpr'ness and noexcept'ness), there's really nothing more to it than a global search-and-replace. Task-number: QTBUG-99313 Change-Id: I88edd91395849574436299b8badda21bb93bea39 Reviewed-by: hjk <hjk@qt.io>
* Android: Convert to using Tr::trAlessandro Portale2022-10-071-12/+10
| | | | | Change-Id: Ie9110093101b0f49808b4da7b13ac3f47c3bb994 Reviewed-by: hjk <hjk@qt.io>
* Replace QtSupport::QtVersionNumber with QVersionNumberAlessandro Portale2022-09-191-2/+2
| | | | | | | Task-number: QTCREATORBUG-27786 Change-Id: I71a44709c264829f629c9dfce702076eda297a77 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: hjk <hjk@qt.io>
* Use SPDX license identifiersLucie Gérard2022-08-261-24/+2
| | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Task-number: QTBUG-67283 Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Android: Remove foreach / Q_FOREACH usageArtem Sokolovskii2022-05-051-1/+1
| | | | | | | Task-number: QTCREATORBUG-27464 Change-Id: I2530688c44735bc4c69d57f9e8f392867be316f0 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Merge remote-tracking branch 'origin/6.0' into 7.0Eike Ziller2022-01-261-2/+6
|\ | | | | | | Change-Id: I72684fe4b0857e52a15ee83721f9d7975582a8d2
| * Android: Install both target and whole project artefacts with qmakeAssam Boudjelthia2022-01-241-2/+6
| | | | | | | | | | | | | | | | | | | | | | As a workaround for qmake projects with dependencies for shared libraries, make sure to install both the current target and the whole project artefacts, the latter was the default before QTCREATORBUG-25793. Task-number: QTCREATORBUG-26550 Change-Id: I8f313652bb582b2512ebe3471933e53120baf020 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Rename QtSupport::BaseQtVersion to QtVersionhjk2022-01-241-1/+1
|/ | | | | | | | | | ... and the Utils::QtVersion enum to Utils::QtMajorVersion to avoid conflicts. Change-Id: Ib688c67388272b7204a91444155f60b8c18a56bd Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Use native separators in installation step uiKai Köhne2021-12-031-1/+2
| | | | | | | Change-Id: I724f91d8387cfd3138faa847d06674707d4d0f10 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: hjk <hjk@qt.io>
* Android: Add and organize error cases for different stepsAssam Boudjelthia2021-10-261-5/+21
| | | | | | | | | | Add error messages for cases in the different steps (e.g. build, deploy, etc.) for user. This makes it easier for the user to know what's wrong instead of just failing with no explanation. Change-Id: I96ea65f5c73edf14c2214b699503211b740d029c Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Merge remote-tracking branch 'origin/5.0' into 6.0Eike Ziller2021-10-261-18/+2
|\ | | | | | | | | | | | | | | Conflicts: src/plugins/android/androidpackageinstallationstep.cpp src/plugins/cppeditor/cppmodelmanager.cpp Change-Id: I3bad38e1cfe717e98209d49461c9813a8e555eff
| * Android: get build dir based on settings file path for qmake projectsAssam Boudjelthia2021-10-251-18/+2
| | | | | | | | | | | | | | | | | | Check Constants::AndroidDeploySettingsFile path first, and use the buildTarget's workingDir only if that former value is empty. Fixes: QTCREATORBUG-26357 Change-Id: I726a4b5cd60042845988b4428eea03ef0adb9920 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* | Android: Clean up for extraData constantsAssam Boudjelthia2021-10-061-1/+1
| | | | | | | | | | | | | | | | | | clean, rename and delete unused constants, we well as unify the usage between qmake, cmake, and qbs. Change-Id: I8827ac2f2f7660e337694fef17f744e727bd776a Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Fix some warnings about unused variables and functionsChristian Kandeler2021-09-271-1/+1
|/ | | | | Change-Id: I5f0acd9598bc7f3a79963cc4e1b255e2b6fb2e5d Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Android: fix for retrieving the path to deployment file and build dirAssam Boudjelthia2021-09-151-1/+19
| | | | | | | | | | | | | | | The Android deployment file for CMake project was constructed based on the main project target and thus was always expecting the file to be under the build folder root path. This makes sure the correct path to the output path is retrieved. This practically different problems with running examples when the main project is a Qt module, for both qmake and cmake. Fixes: QTCREATORBUG-25793 Change-Id: I5fdedd94c7c4c84c351c28476ca14b0f95f99f22 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Utils: Merge FileUtils::removeRecursively() into FilePathhjk2021-07-021-1/+1
| | | | | | | | This simplify the interface by removing a possibly wrong choice ensures it works also on remote paths. Change-Id: I01e198958900a91b99dcf2dbb491a593485493ba Reviewed-by: David Schulz <david.schulz@qt.io>
* Android: Fix multiple clang clazy warningsAssam Boudjelthia2021-06-011-4/+8
| | | | | Change-Id: I2ea6cebd16c09a8a4502f4719d99a9d85e5e7d02 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Utils: Move process arguments class out of QtcProcesshjk2021-05-111-2/+2
| | | | | | | | | | | | The main QtcProcess interface is nowadays a CommandLine, with no explicit references left to QtcProcess::Arguments and related static helper functions, so it only clutters the QtcProcess class interface So move these items out of QtcProcess, later potentially to a separate file pair. Change-Id: I45c300b656f5b30e2e2717232c855fdd97c2d1d7 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Consolidate build/deploystep default display name handlinghjk2020-10-021-3/+1
| | | | | | | | Use the display name from the factory as default, override if needed. Change-Id: I03519c998432fea4120b0de8b2fc2686644635f2 Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Simplify use of AbstractProcessStep::init()hjk2020-09-161-4/+5
| | | | | | | | | | | | 1. Systematically check for AbstractProcessStep::init() first in derived classes. 2. Use setupProcessParameters(processParameters()); by default in the base implementation. 3. Drop all re-implementations that are effectively the same. Change-Id: I0ae54dd4909b354672a63ee56d0b7c2ea0732494 Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: expose deployment warnings and errors to issues paneAssam Boudjelthia2020-09-141-0/+2
| | | | | | | | | This makes the deployment process more transparent and easy to follow warnings and/or errors. Change-Id: Ie6a7bde4dfb5748adff1be077299ecdceb0e3930 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* ProjectExplorer: Introduce a ProjectConfiguration::kit() functionhjk2020-09-091-3/+3
| | | | | | | For convenience, and use it in some places. Change-Id: I8f7cb502b37b2fbf4cf2d17cac9c6299558332dc Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Android: Use new AbstractProcessStep convenience functionshjk2020-08-171-5/+2
| | | | | Change-Id: I3fa4dcdd210f4c5d492217f2e3f1ceca353a4161 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Android: Drop special AndroidPackageInstallationStepWidgethjk2020-07-281-24/+6
| | | | | | | | A base BuildStepConfigWidget with a summary updater are good enough nowadays. Change-Id: Ic8df7662cc28969786fd93171c53ec428a09db58 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Android: fix qml debugger not starting on Qt 5.14+Assam Boudjelthia2020-07-081-0/+28
| | | | | | Task-number: QTCREATORBUG-24155 Change-Id: Iddc5f7cb31a3512762d1e72b42108e5ed61bd9af Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Core/Utils: Migrate further to Utils::Idhjk2020-07-061-2/+2
| | | | | | | | The coreplugin/id.h header is kept for downstream for now. Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66 (cherry picked from commit 430a33dcd9ac80ddb848e41f8f059102857c88aa) Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Android: add description to make install stepAssam Boudjelthia2020-07-021-8/+18
| | | | | Change-Id: I6d618b2023260352a47aab400233c09416d03b59 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Merge output formatters and output parsersChristian Kandeler2020-04-231-4/+9
| | | | | | | | | | | | | | | | | | | | | | | Now only one piece of code needs to be written to both linkify output in an output pane and create tasks for it in the issues pane. The calling sites are also simplified. For instance, until now, build steps had to feed their output parsers manually and then push the created tasks up the signal stack in parallel with the actual output, which the build manager relied upon for cross-linking the output pane content. Afterwards, the output would get forwarded to the formatter (and parsed for ANSI escape codes a second time). In contrast, a build step now just forwards the process output, and task parsing as well as output formatting is done centrally further up the stack. Concrete user-visible improvements so far: - File paths in compiler/linker messages are clickable links now. - QtTest applications now create clickable links also when run as part of a build step, not just in the app output pane. Task-number: QTCREATORBUG-22665 Change-Id: Ic9fb95b2d97f2520ab3ec653315e9219466ec08d Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Output parsers: Replace the chaining approachChristian Kandeler2020-04-091-3/+1
| | | | | | | | | | | Use "flat" aggregation instead. This is another step towards the formatter/parser merger. Along the way, also fix some some subclasses (mostly in BareMetal) that erroneously forwarded handled output to other parsers. Task-number: QTCREATORBUG-22665 Change-Id: I12947349ca663d2e6bbfc99efd069d69e2b54969 Reviewed-by: hjk <hjk@qt.io>
* Output parsers: Generalize the search directory conceptChristian Kandeler2020-04-071-1/+1
| | | | | | | | | | All parsers can now have search directories, not just the GnuMakeParser. This allows us to get rid of the "task mangling", removing another instance where the order of parsers in the chain mattered. Task-number: QTCREATORBUG-22665 Change-Id: Id0d55522ae6800afd9f50ff36546224b0d8bb382 Reviewed-by: hjk <hjk@qt.io>
* Android: De-Q_OBJECT-ify AndroidPackageInstallationStephjk2020-02-211-17/+33
| | | | | | Change-Id: I49a839405c8b3b61a29c79bf13620a2e98cdca2e Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* ProjectExplorer: Introduce some BuildStep convenience accessorshjk2020-02-191-7/+6
| | | | | | | ... and use in ProcessStep and related classes. Change-Id: Ie6f1403d0aa2b9f5bcde06e994809466700b1357 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Introduce ToolChainKitAspect::{c,cxx}ToolChainhjk2020-02-191-2/+1
| | | | | | | | | Special accessors to the repeatedly used C and C++ cases to denoise and slim down user code. Plus some code cosmetics nearby. Change-Id: Iba4662bd4731d8c4256e658529f39d5c995691ce Reviewed-by: Christian Stenger <christian.stenger@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Pass Id to BuildStep constructorhjk2020-01-091-2/+2
| | | | | | | | Allows to use constants in fewer places, similar to what e.g. RunConfiguration does. Change-Id: I9d049128206c4acf0ce14b06b66d6c090a7c5242 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Prefer ProcessParameters::setCommandLinehjk2019-06-241-5/+6
| | | | | | | ... over setting command and args individually. Change-Id: Iec7c8d3a0b05fb8fa0639f7ddbe7ccdc7387d2a2 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Utils: Rename FileName to FilePathhjk2019-05-281-1/+1
| | | | | | | | More in line with QFileInfo terminonlogy which appears to be best-of-breed within Qt. Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Even more FileName::appendPath() -> pathAppended()hjk2019-05-201-1/+1
| | | | | Change-Id: I0a8bc391ff3704e14df87e4fa3bc82269146f943 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* ProjectExplorer: Use Utils::FileName in ProcessParametershjk2019-05-151-2/+2
| | | | | | | For the command and the working directory. Change-Id: Ia69dc7100aeb57bb6e1b35f4dd4f3cf3763d8cda Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Make ToolChain::makeCommand return a FileNamehjk2019-05-151-1/+1
| | | | | | | ... instead of a QString. This is in line with the qmakeCommand(). Change-Id: I617cb03522be5ebaac6cab58a3606f659fddb833 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Say hello to Android CMake supportBogDan Vatra2019-03-061-0/+1
| | | | | | | | | | | | | | | | | | Requirements: - NDKr19 or newer - Qt 5.12.1 or newer QtCreator supports the following variables: - ANDROID_PACKAGE_SOURCE_DIR - ANDROID_EXTRA_LIBS Be aware, that there is a lot of magic done on QtCreator side, and you can't use only cmake to build an Android APK. [ChangeLog][Android][CMake] Add Android support for CMake projects. Change-Id: I1d351976ed56f424c2bc972f4ff7b5968147a2ed Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Rename KitInformation to KitAspectChristian Kandeler2019-02-111-1/+1
| | | | | | | | | | | The name "KitInformation" does not properly convey the fact that it represents a certain *aspect* of a kit. The same goes for "KitConfigWidget", which in addition was inconsistent with "KitInformation". We now use "KitAspect" and "KitAspectWidget". Change-Id: I9804ee4cedc4d61fad533ea1dd4e4720e67fde97 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Rework the build step run interfaceChristian Kandeler2019-01-311-3/+3
| | | | | | | | | | | | | | | | | | | | | Originally, the build manager used to run all build steps in a dedicated thread. Communication between the step and the manager happened via a QFutureInterface that was passed into the step's run() function. Later, new steps were added that operated asynchronously, so the build manager had to differentiate between the different kinds of steps for starting and stopping. These days, almost all build and deploy steps work asynchronously, which made the QFuture-based interface look increasingly odd. With this patch, all build steps are expected to work asynchronously, so the build manager no longer needs to differentiate. Steps are started and requested to stop via the run() and cancel() functions, respectively, and emit the finished() signal when they are done. Build step implementors no longer have to deal with a QFutureInterface. For steps whose implementation is inherently synchronous, the BuildStep base class offers a runInThread() function. Change-Id: If905c68b234c5a669f6e19f43142eaa57d594803 Reviewed-by: hjk <hjk@qt.io>
* ProjectExplorer: Simplify BuildStep::init() signaturehjk2019-01-181-2/+2
| | | | | | | | The extra parameter was always computed but used only in one place, and that use got removed lately. Change-Id: Ie10c0107ca70ee97ce03f83294992aab8d1a3ffe Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Pimpl AbstractProcessStepOrgad Shaneh2018-11-191-2/+4
| | | | | Change-Id: I0f77ff2e88b29674c306b394093deb2060db70c8 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* ProjectExplorer: Make BuildStep::immutable use a data memberhjk2018-10-231-5/+1
| | | | | | | | | Default to false, remove all no-op reimplementations. And rename the getter to isImmutable according to the rules. Change-Id: I8cce79d88fb59badfa1cffcf30a46f7ff3b09e8b Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Use BuildStep member to decide on initial expansionhjk2018-10-221-1/+2
| | | | | | | | Previously, the build step implementation had the same power as it decided on the widget to use, and the widget had such a member. Change-Id: Id9c783e29610b68cfbbe2c9aa91da831d41c3286 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* ProjectExplorer: Change BuildStepConfigWidget::summaryWidget()hjk2018-10-171-5/+1
| | | | | | | | | | From a virtual function to a normal one backed by a real data member. That's essentially what several re-implementations did, the other ones used a fixed value instead. Change-Id: I61e45f1d4f7f0f80fe2eb1f2729785f37e7bb803 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>