Bundle libgnustl_shared.so directly from Android NDK

We need the logic from 78aa64e0
in the bundle deployment as well. This will ignore
libgnustl_shared.so if the Qt installation contains it (for
compatibility mostly) and it will copy it from the NDK
into the bundle.

Task-number: QTCREATORBUG-9291
Change-Id: I5ab59602a3dc64d728a58dd1ee70153c09deac72
Reviewed-by: default avatarDaniel Teske <daniel.teske@digia.com>
parent 1d792a9a
......@@ -487,7 +487,23 @@ void AndroidPackageCreationStep::collectFiles(QList<DeployItem> *deployList,
+ qtLib
+ QLatin1String(".so");
DeployItem deployItem(fullPath, 0, destinationPath, true);
// If the Qt lib/ folder contains libgnustl_shared.so, don't deploy it from there, since
// it will be deployed directly from the NDK instead.
if (qtLib != QLatin1String("gnustl_shared")) {
DeployItem deployItem(fullPath, 0, destinationPath, true);
deployList->append(deployItem);
}
}
if (!androidTargetArch.isEmpty()) {
ProjectExplorer::ToolChain *tc = ProjectExplorer::ToolChainKitInformation::toolChain(target()->kit());
if (tc->type() != QLatin1String(Constants::ANDROID_TOOLCHAIN_TYPE))
return;
AndroidToolChain *atc = static_cast<AndroidToolChain *>(tc);
QString libgnustl = AndroidManager::libGnuStl(androidTargetArch, atc->ndkToolChainVersion());
DeployItem deployItem(libgnustl, 0, androidLibPath + QLatin1String("/libgnustl_shared.so"), false);
deployList->append(deployItem);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment