summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/android/android_deployment_settings.prf
Commit message (Collapse)AuthorAgeFilesLines
* Revert "Revert "Add support for MultiABI with custom install dir of the ↵Alexey Edelev2023-02-021-0/+5
| | | | | | | | | | | | android-build"" This reverts commit d7e8d5bb1b5a9c4b21a3d824780c672eaf4e56b1. Reason for revert: Found a working solution for the issue. Change-Id: Ia720cc63ece9dfb1a24067cdd9c3d79d4edbe3be Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Revert "Add support for MultiABI with custom install dir of the android-build"Alexandru Croitor2023-02-011-5/+0
| | | | | | | | | | This reverts commit 979a21dc4ee0c6f483c6b55e9242a153d659ab6f. Reason for revert: Caused QTBUG-110836 Task-number: QTBUG-110836 Change-Id: I4f31018954e6bb0f4e7b6db0df76d04c0a56d9b1 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add support for MultiABI with custom install dir of the android-buildFab Stz2023-01-301-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now, "multi abi builds" of android projects works only if the android-build installation doesn't use custom install dirs (INSTALL_PREFIX, INSTALL_BINDIR...) At the same time, it fixes QTBUG-106533. The patches are the same as the ones in that bugreport. Add new items to android-*-deployment-settings.json: qtDataDirectory qtLibsDirectory qtLibExecsDirectory qtPluginsDirectory qtQmlDirectory Update androiddeployqt to be able to get files from their install location BTW (fixes QTBUG-106533): Install src/android/templates into INSTALL_DATADIR Install src/3rdparty/gradle into INSTALL_DATADIR Install src/android/java files into INSTALL_DATADIR Install all jars into INSTALL_DATADIR Add missing path to target_qt.conf Update target_qt.conf to have all path. Otherwise qmake wouldn't have the path when installing the android-build with custom install dirs like INSTALL_LIBDIR & friends Add support for a new cmake variable that can be set at build time of the android projects: QT_ANDROID_PATH_CMAKE_DIR_${abi} (Name chosen as brother of QT_HOST_PATH_CMAKE_DIR) Pick-to: 6.5 Fixes: QTBUG-106533 Fixes: QTBUG-107207 Change-Id: Ia3751362ab1b5f877ecafbe02f263feac167119c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add flag that skips Qml import scanning to android deployment settingsAlexey Edelev2022-10-311-10/+17
| | | | | | | | | | | | | If Qml module is not found it doesn't make sense to run any functionality that is related to Qml inside androiddeployqt. Add the deployment setting option that indicates this explicitly and set it to true when Qml module is not found by CMake or by qmake. Task-number: QTBUG-106939 Pick-to: 6.4 6.2 Change-Id: I1e6cffbdd230007feffe7448617097c10238a6c9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* qmake: Fix tool paths generated for androiddeployqt json fileAlexandru Croitor2022-08-171-2/+4
| | | | | | | | | | | | | | | | | They should contain the executable suffix .exe when androiddeployqt is run on Windows, because androiddeployqt does not add the suffix itself when the tool paths read from the json file. Amends 4fc14b19336531c96f5883ff4b06f9af1ddaa30d Amends 176136ce60f22ac14335b92aaa473e53b9022bc1 Pick-to: 6.4 Fixes: QTBUG-105133 Fixes: QTCREATORBUG-27868 Change-Id: I8c5bac2fa6c82d122f8a70c5ff2a561298327a34 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Android: Fix path of qmake_qmake_immediate.qrc in single_abi with qmakeAssam Boudjelthia2021-09-201-2/+8
| | | | | | | | | | | | | With single_android_abi, the file qmake_qmake_immediate.qrc is laid directly into the root of the build dir and not under different abis dirs. Pick-to: 6.2.0 6.2 5.15 Fixes: QTBUG-87669 Fixes: QTBUG-95202 Fixes: QTBUG-95235 Change-Id: Ie13cccdf2fc323e8fd725a94f3aacab465fa1287 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Remove conditioning on Android embeddedEdward Welbourne2021-09-171-1/+1
| | | | | | | | It is no longer handled separately from Android. This effectively reverts commit 6d50f746fe05a7008b63818e77784dd0c99270a1 Change-Id: Ic2d75b8c5a09895810913311ab2fe3355d4d2983 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Fix qmlimportscanner path for android deployment settingsIvan Solovev2021-06-281-1/+1
| | | | | | | Fixes: QTBUG-94527 Pick-to: 6.2 Change-Id: Iffd259caecfdfe6860ba1ab9cb21d2f164060b9a Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Android: use libexec path for rcc for Android deployment settings fileAssam Boudjelthia2021-03-111-1/+1
| | | | | | | Task-number: QTBUG-88791 Pick-to: 6.1 Change-Id: Ie34278496e0c23a8301e7ab0f2e33e36f393d1d8 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix qmake_qmake_immediate path for AndroidAlexey Edelev2021-02-151-1/+1
| | | | | | | | | | | Add missed RCC_DIR to the qmake_qmake_immediate.qrc path, when generating android deployment settings. Fixes: QTBUG-90969 Pick-to: 6.0 Pick-to: 6.1 Change-Id: If4959581fcc153d9c19d178233297fc7b440b2f7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android: unify deployment-settings.json path to unix formatAssam Boudjelthia2020-10-021-1/+1
| | | | | | | | Always use unix path formats for qmake and cmake builds. Task-number: QTBUG-87066 Change-Id: I9d54c2ca687d28e38542850e3e18b6184513a9af Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android: add qmlimportscanner and rcc paths to deployment-settings.jsonAssam Boudjelthia2020-09-231-0/+3
| | | | | | | | | qmlimportscanner and rcc in Qt 6.0 are part of the host installation and not in the target installation which androiddeployqt expects it to be. Fixes: QTBUG-86831 Change-Id: I9d7a6fce3d2f109bab933fcfd7fdd5d2c83821a8 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Android: add option to get app arguments with AndroidManifest.xmlAssam Boudjelthia2020-08-281-0/+3
| | | | | | | | | | | AndroidManifest.xml file and the Android plugin already has a way to provide commandline-arguments to app with the tag "android.app.arguments". This change allow to set it from qmake/cmake and allow Qt Creator to use that. Task-number: QTCREATORBUG-23712 Change-Id: I3e680f40fd36ba6aaac7f344fb9509d2c3360e74 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* Android: Fix building apps when Qt is configured with one ABIAlexandru Croitor2020-08-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | When configuring with Qt only with one ABI, certain code paths were not triggered, which led to a few issues: - The deployment json file generated by androiddeployqt listed no architectures. - The compiled shared library did not have a lib prefix and arch suffix, which androiddeployqt during the deployment / make apk step. To fix the architectures missing in the json file, ANDROID_ABIS needs to be set in android/resolve_config.prf also in the single abi case. To get the correct file names, android.prf needs to apply the prefixes and suffixes not only in the build_pass case (multi-abi) but also in the single abi case (except for config.tests). The application-binary entry in the json file needs to be without the extra prefixes and suffixes though, so make a copy of the TARGET value to be used in the json file, before the name manipulations are applied. Pick-to: 5.15 Task-number: QTBUG-85399 Change-Id: Idde92ab7fe883636ccc65a87b91c8a3fc72eefbb Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
* Add QML2_IMPORT_PATH import paths to qml-import-paths listBogDan Vatra2020-08-241-2/+7
| | | | | | | | QML2_IMPORT_PATH it's usually set by CI to tell the QML apps where to find the QML components Change-Id: I57d1cbc3d0fce9be257648268da0a5f9d61d81e9 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
* Android: fix regexp error in android_deployment_settings.prfAssam Boudjelthia2020-06-161-1/+1
| | | | | | | | This might be related to the change a1947aeffe158a0ea7de3ced1bf8d6a4719a27ef. Change-Id: I1c697e3130abd3eb26776d352a0f9bff0065c8f6 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Android: Bump gradle (plugin) versionsBogDan Vatra2020-03-041-0/+6
| | | | | | | | | Move min & target sdk from AndroidManifest.xml to build.gradle Fixes: QTBUG-70817 Change-Id: Id9bb9825a3232587e0255b2d3d6f0273c5f9b66a Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Account for when qtquickcompiler is used when getting the resourcesAndy Shaw2019-12-121-2/+3
| | | | | | | | | | | | | When passing the resources used to the android deployment setting json file it needs to check the variable generated by the qtquickcompiler feature so that it can still find the qrc files originally populated in the resources. This ensures that qmlimportscanner can still scan the original qrc files when determining which QML import plugins are needed. Fixes: QTBUG-80713 Change-Id: I695b289eaaa78cc6c355fa8abd22a8a1031a9f6c Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Add support for passing qrc files to qmlimportscannerAndy Shaw2019-11-131-0/+16
| | | | | | | | | | | | With the qrcFiles entry in the deployment JSON for Android, it can now pass this on to qmlimportscanner for scanning the qrc files for the available imports. This enables qmake to populate the qrc files it has referenced in the project, be it generated by qmake or added by the user. Task-number: QTBUG-55259 Change-Id: Ic512ce6f24508b3ea09ebdd07ac4446debfd9155 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Android: clean configure params for androidBogDan Vatra2019-08-301-1/+0
| | | | | | | -android-toolchain-version is not needed anymore as we are using exclusively the llvm toolchain. Change-Id: Ia033297a6a2c968352c364758eb1436380a5f96e Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Say hello to Android multi arch build in one goBogDan Vatra2019-08-261-24/+12
| | | | | | | | | | | | | | Multi arch build in one go is need to support the new .aab packaging format. By default the users apps are built for all Android ABIs: arm64-v8a armeabi-v7a x86_64 x86 The user can pass ANDROID_ABIS to qmake to filter the ABIs during development, e.g. qmake ANDROID_ABIS="arm64-v8a armeabi-v7a" will build only for arm ABIs. [ChangeLog][Android] Android multi arch build in one go, needed to support the new .aab packaging format. Change-Id: I3a64caf9621c2a195863976a62a57cdf47e6e3b5 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Android: Nuke mips architecturesBogDan Vatra2019-05-061-2/+0
| | | | | | | Mips archs were removed from Android NDK long time ago. Change-Id: Icf64a1e2cfbe3fe7307c7898b14fd199d9eeaad3 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* qmake: Add variables for setting the version number and name in AndroidAndy Shaw2019-02-041-0/+8
| | | | | | | | | | | | | | | This makes it much easier to have the version information set for an Android APK without having to manually modify the AndroidManifest.xml each time. [ChangeLog][Android][qmake] Can now set the version name and code for Android using ANDROID_VERSION_NAME and ANDROID_VERSION_CODE respectively in the pro file. Change-Id: Ie6813bc3a7444f7baa5e772b93bc2695d9b81e57 Done-with: Markus Maier <markus.maier@rosenberger.de> Reviewed-by: Markus Maier <markus.maier@rosenberger.de> Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Android: Prepare for the worst, when the NDK will remove all GNU toolsBogDan Vatra2018-11-191-10/+16
| | | | | | | | | | | | | In NDKr18 Google removed GCC, most probably the massacre will not end there and they will remove all GNU tools, so we need to start using LLVM ones. This patch still keeps the compatibility with GNU tools if the Qt was built with android-g++ mkspec. Change-Id: Ibe1979577e08ce63604d55fc5bbd5f64b3737675 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Support for Q_OS_ANDROID_EMBEDDED and android-embedded build flagsOtto Ryynänen2018-01-201-1/+1
| | | | | | | | | | | | The Embedded Android build (Boot to Qt Android injection) is defined by having both Q_OS_ANDROID and Q_OS_ANDROID_EMBEDDED flags defined, as well as having Qt config android-embedded. This commit enables the possibility to build embedded Android builds. (i.e. Qt build for Android baselayer only, without JNI) Change-Id: I8406e959fdf1c8d9efebbbe53f1a391fa25f336a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Use libc++ instead of libstdc++ when compiling with android-clang mkspecBogDan Vatra2017-08-231-0/+1
| | | | | | | | | | | | | | | clang+libc++ is the only supported way by Google nowadays. libstdc++ is too old and already fails to build some C++11 apps e.g. missing std::to_string(). android-g++ mkspec still uses libstdc++ and g++. Use -isystem to include system headers instead of QMAKE_INCDIR_POST (-I). Task-number: QTBUG-60455 Change-Id: Iba8b04594c2e5e2832e6cf480e4e52ff31ad4106 Reviewed-by: Sérgio Martins <sergio.martins@kdab.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Fix Android deployment for 64-bit targetsLaszlo Agocs2017-02-011-0/+3
| | | | | | | Match the logic that is used for building. Change-Id: I9ce6db2357b9b3e19a1e932fae57d376aae406f7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* make use of silent error() emissionOswald Buddenhagen2016-08-081-1/+1
| | | | | | | | get rid of the entirely superfluous stock "Aborting." messages - the event triggering the exit has already reported the problem. Change-Id: Ib9dfb9e4212f60eceb2ea432cdf56c5a8afe9d65 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Remove the traces of the discontinued android-no-sdk platformEirik Aavitsland2016-03-301-1/+1
| | | | | | | | | Cleaning out the workarounds for the discontinued "Embedded Android" platform of Boot2Qt. Change-Id: I0ff9d770e82a43457fb7e5da0428f4597ead4038 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.3' into devFrederik Gladhorn2014-08-041-3/+2
|\ | | | | | | | | | | | | | | | | Conflicts: config.tests/arch/arch.cpp src/opengl/qgl_qpa.cpp src/widgets/kernel/qapplication.cpp Change-Id: I80b442a4c2c9632743a5b5c7319ff201ec5bc4fd
| * Android: export ANDROID_SDK_BUILD_TOOLS_REVISION.BogDan Vatra2014-07-311-3/+2
| | | | | | | | | | | | | | | | | | | | It's needed by androiddeployqt tool to run "zipalign" tool and to set it to gradle properties. Task-number:QTBUG-40481 Change-Id: I3dd665a7461a4e981867cdad75a50940e46a5ae6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | Android: Output QML import and root paths for qmlimportscannerEskil Abrahamsen Blomfeldt2014-08-011-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When deploying QML applications, the androiddeployqt tool can use qmlimportscanner to detect the QML dependencies of the application, but then it needs to know the root of the project as well as additional QML import paths. We use the already-existing QML_IMPORT_PATH for the import paths, and default to using the location of the .pro file for the root path (same as for static builds in qt.prf). Change-Id: Ib536272ed1f3f1320ea8ef529655e2ba003bc734 Task-number: QTBUG-34175 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* | Expose "android-extra-plugins" androiddeployqt feature to qmakeAleix Pol2014-06-051-1/+5
|/ | | | | | | | | Makes it possible to use "android-extra-plugins" from qmake through the ANDROID_EXTRA_PLUGINS variable. Change-Id: I7c67e9f104e5397e094afff730efccb91949caa2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Remove android specific qmake variables.BogDan Vatra2013-10-311-12/+0
| | | | | Change-Id: Iba2b929ba70588ffcbcc9395501753521cfe5154 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* Android: Remove support for QMAKE_SUPPORTED_ORIENTATIONSEskil Abrahamsen Blomfeldt2013-10-181-3/+0
| | | | | | | | | | | | | This was created for the iOS port and intended to be cross-platform, but since then they got cold feet and never added the support. It makes no sense to only support this on Android. We need to remove it again and hold off until we can find a proper solution. Editing the AndroidManifest.xml is the non-cross-platform solution for this. Task-number: QTBUG-34166 Change-Id: I51d53b82a3412a9016de01612dd8df9ae12c6633 Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Output prefix for tools on x86Eskil Abrahamsen Blomfeldt2013-10-161-0/+1
| | | | | | | | | | When building for x86, the prefix for the tools is not equal to the prefix for the toolchain directory, so we need a separate option for this. Task-number: QTBUG-34110 Change-Id: Iefe8c37892eb6c31fc8762bfb7bc7c6c23cd8b1e Reviewed-by: BogDan Vatra <bogdan@kde.org>
* Android: Correctly escape backslashes in deployment settingsEskil Abrahamsen Blomfeldt2013-10-091-17/+21
| | | | | | | | | | | | When outputting the deployment settings on Windows, the paths might have backslashes. These need to be escaped, otherwise they will simply be removed by the JSON parser (or converted into whatever they happen to represent given the neighbouring character.) Task-number: QTBUG-33926 Change-Id: I11f1bc7d1f8082c73329bdc02fb8d653a0b5c0ee Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* move android-specific feature files to android/Oswald Buddenhagen2013-10-031-0/+70
Change-Id: I1f2b345b1dfad544d53dbf7e17b12c75a2cc7668 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>