-
Task
-
Resolution: Fixed
-
P2: Important
-
None
-
-
fa8ca1b47 (dev), e6ae3582d (dev)
Why?
cause
- The current logic with qt.path, qt.abiPath and qt.extraCMakeArguments can lead into to situations where the build outcome can be surprising for the user. For example, setting qt.abiPath to x86 and QT_ANDROID_ABIS to x86_64;arm64-v8a will result in a build with all three ABIs. Also, not setting qt.abiPath and setting QT_ANDROID_ABIS will result in a random ABI (well, system specific random) and the ABIs determined in QT_ANDROID_ABIS. This could be one more than the user wanted.
customer
cruft
What?
Definition
- In the next paragraph, "ABI related arguments" refers to QT_ANDROID_ABIS and QT_ANDROID_BUILD_ALL_ABIS (are there others?)
- Change to logic to be like this:
- IF qt.abiPath is defined
-
-
- Build a single ABI build with qt.abiPath
- Use qt-cmake from qt.abiPath
- Log warning if ABI related arguments are defined in qt.extraCMakeArguments
- Ignore ABI related arguments in qt.extraCMakeArguments
- Build a single ABI build with qt.abiPath
- ELSE IF QT_ANDROID_BUILD_ALL_ABIS=ON is defined in qt.extraCMakeArguments
- Build an "all ABIs" build
- Use qt-cmake from a random ABI directory
- Build an "all ABIs" build
- ELSE IF QT_ANDROID_ABIS is defined in qt.extraCMakeArguments
- Build a multi ABI build with defined ABIs
- Use qt-cmake from one of these ABI directories
- Build a multi ABI build with defined ABIs
- ELSE IF QT_ANDROID_BUILD_ALL_ABIS=OFF is defined in qt.extraCMakeArguments
- This would just be a single random ABI, which the use certaintly doesn't want
- Log error and exit
- ELSE
- Build an "all ABIs" build
- Use qt-cmake from a random ABI directory
- Add QT_ANDROID_BUILD_ALL_ABIS to configure command
- Build an "all ABIs" build
-
Demarcation
- Only ABI related, not related to other settings
Dependencies
- covers
-
QTTA-350 Getting error while trying to set the ABI via CMake flag
-
- Closed
-
-
QTTA-415 "-DQT_ANDROID_ABIS" is not respected when building the project
-
- Closed
-
- is required for
-
QTTA-434 QtGP & QtTAS: Drop ABI path field
-
- Open
-
- relates to
-
QTTA-30 The android app is crashing when trying to run the app on the device which does not support Qt project ABI
-
- Reported
-
-
QTTA-369 QtTAS does not build armeabi-v7a applications QML project properly
-
- Reported
-
-
QTTA-434 QtGP & QtTAS: Drop ABI path field
-
- Open
-
- resulted from
-
QTTA-286 Error: Cannot find toolchain files for the manually specified Android ABIs
-
- Closed
-
For Gerrit Dashboard: QTTA-407 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
660140,3 | Convert extraCMakeArguments to ArrayList | dev | qt-labs/qtgradleplugin | Status: MERGED | +2 | 0 |
660141,9 | Improve ABI selection logic | dev | qt-labs/qtgradleplugin | Status: MERGED | +2 | 0 |