diff --git a/src/plugins/android/androidtoolchain.cpp b/src/plugins/android/androidtoolchain.cpp index f1b09279919..4b6f85f5c55 100644 --- a/src/plugins/android/androidtoolchain.cpp +++ b/src/plugins/android/androidtoolchain.cpp @@ -197,12 +197,22 @@ ToolChainList AndroidToolChainFactory::autodetectToolChainsForNdk(CToolChainList auto targetItr = ClangTargets.constBegin(); while (targetItr != ClangTargets.constEnd()) { const Abi &abi = targetItr.value(); - ToolChain *tc = findToolChain(compilerCommand, lang, targetItr.key(), alreadyKnown); + const QString target = targetItr.key(); + ToolChain *tc = findToolChain(compilerCommand, lang, target, alreadyKnown); if (tc) { qCDebug(androidTCLog) << "Tool chain already known" << abi.toString() << lang; } else { qCDebug(androidTCLog) << "New Clang toolchain found" << abi.toString() << lang; - auto atc = new AndroidToolChain(targetItr.key(), lang); + auto atc = new AndroidToolChain; + atc->setOriginalTargetTriple(target); + atc->setLanguage(lang); + atc->setTargetAbi(ClangTargets[target]); + atc->setPlatformCodeGenFlags({"-target", target}); + atc->setPlatformLinkerFlags({"-target", target}); + atc->setDetection(ToolChain::AutoDetection); + atc->setDisplayName(QString("Android Clang (%1, %2)") + .arg(ToolChainManager::displayNameOfLanguageId(lang), + AndroidConfig::displayName(abi))); atc->resetToolChain(compilerCommand); tc = atc; } @@ -221,19 +231,5 @@ AndroidToolChain::AndroidToolChain() } -AndroidToolChain::AndroidToolChain(const QString& target, Core::Id languageId) - : ClangToolChain(Constants::ANDROID_TOOLCHAIN_ID) -{ - setOriginalTargetTriple(target); - setLanguage(languageId); - setTargetAbi(ClangTargets[target]); - setPlatformCodeGenFlags({"-target", target}); - setPlatformLinkerFlags({"-target", target}); - setDetection(AutoDetection); - setDisplayName(QString::fromLatin1("Android Clang (%1, %2)") - .arg(ToolChainManager::displayNameOfLanguageId(languageId), - AndroidConfig::displayName(targetAbi()))); -} - } // namespace Internal } // namespace Android diff --git a/src/plugins/android/androidtoolchain.h b/src/plugins/android/androidtoolchain.h index 6bbc9c731e7..da2a5f06973 100644 --- a/src/plugins/android/androidtoolchain.h +++ b/src/plugins/android/androidtoolchain.h @@ -53,7 +53,6 @@ protected: private: explicit AndroidToolChain(); - AndroidToolChain(const QString &target, Core::Id languageId); friend class AndroidToolChainFactory; };