diff --git a/src/tools/androiddeployqt/main.cpp b/src/tools/androiddeployqt/main.cpp
index d80d1ff598..e1d097619e 100644
--- a/src/tools/androiddeployqt/main.cpp
+++ b/src/tools/androiddeployqt/main.cpp
@@ -1470,7 +1470,14 @@ bool updateLibsXml(Options *options)
qtLibs += QLatin1String(" - %1;%2
\n").arg(it.key(), options->stdCppName);
for (const Options::BundledFile &bundledFile : options->bundledFiles[it.key()]) {
- if (bundledFile.second.startsWith(QLatin1String("lib/"))) {
+ if (bundledFile.second.startsWith(QLatin1String("lib/lib"))) {
+ if (!bundledFile.second.endsWith(QLatin1String(".so"))) {
+ fprintf(stderr,
+ "The bundled library %s doesn't end with .so. Android only supports "
+ "versionless libraries ending with the .so suffix.\n",
+ qPrintable(bundledFile.second));
+ return false;
+ }
QString s = bundledFile.second.mid(sizeof("lib/lib") - 1);
s.chop(sizeof(".so") - 1);
qtLibs += QLatin1String(" - %1;%2
\n").arg(it.key(), s);
@@ -1480,9 +1487,18 @@ bool updateLibsXml(Options *options)
if (!options->archExtraLibs[it.key()].isEmpty()) {
for (const QString &extraLib : options->archExtraLibs[it.key()]) {
QFileInfo extraLibInfo(extraLib);
- QString name = extraLibInfo.fileName().mid(sizeof("lib") - 1);
- name.chop(sizeof(".so") - 1);
- extraLibs += QLatin1String(" - %1;%2
\n").arg(it.key(), name);
+ if (extraLibInfo.fileName().startsWith(QLatin1String("lib"))) {
+ if (!extraLibInfo.fileName().endsWith(QLatin1String(".so"))) {
+ fprintf(stderr,
+ "The library %s doesn't end with .so. Android only supports "
+ "versionless libraries ending with the .so suffix.\n",
+ qPrintable(extraLibInfo.fileName()));
+ return false;
+ }
+ QString name = extraLibInfo.fileName().mid(sizeof("lib") - 1);
+ name.chop(sizeof(".so") - 1);
+ extraLibs += QLatin1String(" - %1;%2
\n").arg(it.key(), name);
+ }
}
}