Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
5.14.0 RC1
-
None
-
Android NDK 20b, Qt 5.14.0-rc1, Ubuntu 18.04
-
-
ce04fa345dbe52a022b592dde3ff49514c66b4c2 (qt/qtbase/5.14) 12df6c63a0272408f3fa369dccc3c9eb0486a7f8 (qt/qtbase/5.14)
Description
Since Qt 5.14.0-rc1 my libraries end up with names like "libName_arm64-v8a_arm64-v8a.so", whereas the second one gets added by a recent fix that does not work as expected. Previously in beta3 the lib and TARGET was correctly "libName_arm64-v8a"/.so.
The change happend in https://bugreports.qt.io/browse/QTBUG-80351 --> https://codereview.qt-project.org/c/qt/qtbase/+/282873 --> https://codereview.qt-project.org/c/qt/qtbase/+/282873/3/mkspecs/features/android/android.prf#39
The contains check is supposed to check if there is already the _$${QT_ARCH} in the target name, else appends it.
However the check is also true when QT_ARCH is already presend.
See example:
message($${TARGET})
TARGET = $$qtLibraryTarget($$TARGET)
message($${TARGET} - target with librarytarget)
message(Change from QTBUG-80351)
!contains(TARGET, "_$${QT_ARCH}"): TARGET = $${TARGET}_$${QT_ARCH}
message($${TARGET})
-->
Project MESSAGE: mylib
Project MESSAGE: mylib_arm64-v8a - target with librarytarget
Project MESSAGE: Change from QTBUG-80351
Project MESSAGE: mylib_arm64-v8a_arm64-v8a
Project MESSAGE: mylib
Project MESSAGE: mylib_armeabi-v7a - target with librarytarget
Project MESSAGE: Change from QTBUG-80351
Project MESSAGE: mylib_armeabi-v7a_armeabi-v7a
When commenting the own !contains check here (so only the android.prf change is present), I find this in the generated Makefile:
message($${TARGET})
TARGET = $$qtLibraryTarget($$TARGET)
message($${TARGET} - target with librarytarget)
# message(Change from QTBUG-80351)
# !contains(TARGET, "_$${QT_ARCH}"): TARGET = $${TARGET}_$${QT_ARCH}
#message($${TARGET})
QMAKE_TARGET = mylib_arm64-v8a_arm64-v8a
DESTDIR =
TARGET = libmylib_arm64-v8a_arm64-v8a.so
TARGETA = libmylib_arm64-v8a_arm64-v8a.a
Can the contains check please be fixed so it does not duplicate the QT_ARCH?
Attachment: Simple library project (from QtC library wizard) where the issue is shown.
Attachments
Issue Links
- is duplicated by
-
AUTOSUITE-1401 android: ivi creates double suffixes for libraries and qml plugins
- Closed