| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add archSuffix to generate the library with the architecture name for
Qt > 5.14 (before the lib was renamed which prevented debugging).
Remove rpaths as they are not used on android and generate warnings.
Update target and defines to comply with android's Build System
Maintainers Guide.
Remove stripping step in Qt.android_support as androiddeployqt
actually does the stripping.
Change-Id: I46a273c1cded753223c7b759670477815b625267
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
Only the ".so" suffix is supported on Android.
Fixes: QBS-1578
Change-Id: Idebece5338a765e779ff987fd89af66977ecc0fe
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Update flags following those changes:
https://codereview.qt-project.org/c/qt/qtbase/+/268268
https://codereview.qt-project.org/c/qt/qtbase/+/271909
https://codereview.qt-project.org/c/qt/qtbase/+/278646
Remove support to ARMv5 (armeabi), MIPS, and MIPS64 because its support was ended in r17 and minimum ndk is r19...
Remove gdb server as it's not needed anymore since by qtcreator (since 4.9 IIRC)
From https://android.googlesource.com/platform/ndk/+/master/docs/BuildSystemMaintainers.md
Adding linker flags:
--build-id=sha1 : Additional Required Arguments section
--gc-sections : Controlling Binary Size section
Fixes: QBS-1496
Change-Id: Id522bf6bb736c58244aa511189f7acdd0525ab12
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before qt 5.14.
The profile property "moduleProviders.Qt.qmakeFilePaths" is set with one or more
paths to the different android architectures. Each qmake path belongs to a
different android architecture installation.
So each qmake is used to generated the Qt module corresponding to the architecture.
Although qbs can generate multi-arch apks using multiplex mode, this is not
possible when the project depends on qt libraries. This is because of the
restriction of the qt tool androiddeployqt used by qbs.
Now with qt 5.14.
All android architectures are installed in the same directory.
So the profile property "moduleProviders.Qt.qmakeFilePaths" is set with one
qmake path.
This directly impacts the qbs-setup-android tool and the generation of
the Qt modules.
Because qt libraries are installed in the the same directory, they have the
abi in their name (libQt5Core_armeabi-v7a.so).
So the rules that generate the apks are also impacted.
The new androiddeployqt have a new interface (json config file format and requires
to have the input libraries installed in the deployment directory) which allows
the generation of multi-arch apks.
So Qt.android_support modules needs to be updated as well.
Fixes: QBS-1497
Change-Id: Ibd546f356c38a05f42dfcac0a4ec92bd82d6f700
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
Amends 65cb0d3e2d.
Fixes: QBS-1459
Change-Id: I771cc179bcc996559d76c85d785780a1b044812b
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
|
|
|
|
|
|
|
| |
In NDK r20 clang adds -lc++ library automatically which leads to link fails.
Change-Id: Ifa5ae1f4be7d8a93146ef08a5dc312596dd19147
Reviewed-by: Qbs CI Bot <travis-bot@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Mips' abis were removed long time ago from the Android NDK
Change-Id: I8d006b6758ee4faa7f2d697a7252981470d43e1a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
See https://github.com/android-ndk/ndk/wiki/Changelog-r19
Change-Id: Iaa778979bad4b42dbbc0b0915104cf9f9738309e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Support NDK only r19+
- Remove deprecated and unsupported stl libs: "system", "gabi++_static",
"gabi++_shared", "stlport_static", "stlport_shared", "gnustl_static",
"gnustl_shared"
- Fix armv7a link (we need to link against libc++.[a/so].API)
- Use lldb
- Use llvm bin utils
[ChangeLog][Android] Support NDK only r19+, remove deprecated and
unsupported stl libs, use lldb and llvm bin utils
Change-Id: If9d5d5462dffb6c9bf481f910ee2c3ba03bc5649
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Ibe91183e1944365f10e64c104187167a6310d1fd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
Update our cflags and lflags with the ones found in <ndk_r19>/build/
cmake/android.toolchain.cmake
Task-number: QTBUG-73274
Change-Id: Ieb1923ffa6658fa917f7ead1e1bc036cf595f8bb
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
- Fix include path for NDK >= r13.
- Link against libc++abi.a when using the "c++_shared" STL variant.
Fixes: QBS-1423
Change-Id: I70a9fcf54c7042ba4639276139254df8eefa662b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
| |
Change-Id: I98570fb463bf856a6b6ab2b39fa2bca27b8c0500
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: I96c735aeda89e02f1fa9107ecfc10ebf4b554dbc
|
| |
| |
| |
| |
| |
| |
| |
| | |
Revision 17 dropped some architectures, revision 18 removed GCC.
We also missed some earlier changes to clang-related paths.
Change-Id: Ie2fa1891f7f4de28e18ea6caadce9eac964bb523
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
These rules were unnecessarily complicated; in particular, the
indirection via a text file for the gdbserver and STL binaries was not
needed.
This also fixed the gdbserver file name in the package: It has to be
libgdbserver.so, rather than just gdbserver as on the host.
Change-Id: I2315660983904e8b922164be9054d6bba51f852d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The formerly required AndroidApk item is no longer needed: We just tag
the APK file as an application and let the Application item pull in the
Android.sdk module for Android targets.
It is also possible to have native code directly in the Application
product; in that case, the multiplexed variants become dynamic libraries
and the APK file is built for the aggregate.
[ChangeLog] The AndroidApk item was deprecated, a normal Application
item can be used instead.
Change-Id: I04f5f3892f354ca9eb4f2da8055abcd8d072aba0
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
| |
Change-Id: I5270e033dc41b5bd76a417099514c69cc073008b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: Iab942ed25d06038cf8c172eb70dcd8e9a720e1c8
|
| |
| |
| |
| |
| |
| | |
Task-number: QBS-1256
Change-Id: I286327f8b33ecb72851551bbbf2108717a116b1a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was fixed before in 8176a4d419 and broken again in 72eedbb0a4. Fix
it for good this time using module priorities.
Task-number: QBS-1263
Change-Id: Ib1702299ef6c51b19a9082da96485ef5387dc1bb
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
|/
|
|
|
|
|
|
| |
[ChangeLog] Added property cpp.rpathOrigin which evaluates to
@loader_path on Darwin and $ORIGIN on other Unix-like platforms.
Change-Id: If5770a83ae32f29ee520fd00b07ed8f0caf6bd48
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
Replace the negating conditions in our cpp instances with module
priorities. This removes the need of knowing about all other more
specialized instances in more general instances.
Change-Id: I511ba11f2cb69ea1458b786a2db4309de8910ebf
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
They don't belong to us, and they may not even be writable. Instead,
make the strip command create a new file.
Task-number: QBS-1176
Change-Id: Ifd387d3fbcf475e662344ceefa6d289b45c4ae16
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now it can actually be useful, in order to select a specific endianness
when building for architectures that are bi-endian. For example, MIPS
and PowerPC.
This patch makes it possible to build for ppc64le, which is the only
variant of the PowerPC architecture that seems to be relevant today.
ppc32 and all big-endian variants seem to have fallen out of use.
Change-Id: Id1b9f9b397990136ab9aa899829345d426465824
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
[ChangeLog] Added support for Android NDK Unified Headers
Task-number: QBS-1109
Change-Id: If16e4eef826a684c9dd8b4bbd025b159636acbc7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This property allows specifying a set of flags to pass to the compiler driver.
Effectively this is similar to specifying flags in both *compilerFlags and
linkerFlags, except driverFlags will never be passed to the system linker.
[ChangeLog] Introduced cpp.driverFlags, which allows specifying flags to be
passed to the compiler driver (in any mode), but never the system linker.
Change-Id: I2171246f3b20cbaca74114cf4fa0b6d38c23c621
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This was never recommended for use, and has been removed in the latest
Android NDK r12. See https://github.com/android-ndk/ndk/blob/master/docs/HardFloatAbi.md
for full details on the matter.
Task-number: QBS-989
Change-Id: I49fd1b7527d43e8b6caa2b905a41a6f0b1e5b4af
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
|
This is more logically consistent and allows us to use a Probe to
get compiler info in the cpp module. This is required for a
subsequent patch.
Change-Id: Id25ee84f201e8e72ecc24af4ec5c27cedc47b660
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
|