Merge remote-tracking branch 'origin/4.8'

Conflicts:
	src/plugins/winrt/winrtdevicefactory.cpp

Change-Id: I33b8697e2ebf2bea051d7f1144449e0743ee16a5
This commit is contained in:
Eike Ziller
2018-11-19 09:48:28 +01:00
110 changed files with 2004 additions and 809 deletions

View File

@@ -424,7 +424,8 @@ FileName AndroidConfig::clangPath() const
QDirIterator iter(clangPath.toString(), hostPatterns, QDir::Dirs);
if (iter.hasNext()) {
iter.next();
return clangPath.appendPath(iter.fileName()).appendPath("bin/clang");
return clangPath.appendPath(iter.fileName())
.appendPath(HostOsInfo::withExecutableSuffix("bin/clang"));
}
return clangPath;

View File

@@ -177,6 +177,13 @@ ToolChain *AndroidToolChainFactory::restore(const QVariantMap &data)
return nullptr;
}
static FileName clangPlusPlusPath(const FileName &clangPath)
{
return clangPath.parentDir().appendPath(
HostOsInfo::withExecutableSuffix(
QFileInfo(clangPath.toString()).baseName() + "++"));
}
ToolChainList AndroidToolChainFactory::autodetectToolChainsForNdk(CToolChainList &alreadyKnown)
{
QList<ToolChain *> result;
@@ -192,7 +199,7 @@ ToolChainList AndroidToolChainFactory::autodetectToolChainsForNdk(CToolChainList
for (const Core::Id &lang : LanguageIds) {
FileName compilerCommand = clangPath;
if (lang == ProjectExplorer::Constants::CXX_LANGUAGE_ID)
compilerCommand.appendString("++");
compilerCommand = clangPlusPlusPath(clangPath);
if (!compilerCommand.exists()) {
qCDebug(androidTCLog) << "Skipping Clang toolchain. Can not find compiler"