diff options
author | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-11-14 16:54:47 +0100 |
---|---|---|
committer | Ivan Donchevskii <ivan.donchevskii@qt.io> | 2018-11-16 12:07:51 +0000 |
commit | e164717108176ee1423f3f629a8182520c2909d1 (patch) | |
tree | 3353b65781b50923e219a00b7002918e29fcde9c | |
parent | 558ff1fd934f7a9999fcf5e415078506d3d205a2 (diff) | |
download | qt-creator-e164717108176ee1423f3f629a8182520c2909d1.tar.gz |
Android: Fix clang executable suffix on Windows
Change-Id: I78e8e49efd52d33f9f26f554a3400fabbe74d9ed
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
-rw-r--r-- | src/plugins/android/androidconfigurations.cpp | 3 | ||||
-rw-r--r-- | src/plugins/android/androidtoolchain.cpp | 9 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/plugins/android/androidconfigurations.cpp b/src/plugins/android/androidconfigurations.cpp index 80a5d39dcc..a52c63d370 100644 --- a/src/plugins/android/androidconfigurations.cpp +++ b/src/plugins/android/androidconfigurations.cpp @@ -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; diff --git a/src/plugins/android/androidtoolchain.cpp b/src/plugins/android/androidtoolchain.cpp index f1213959bd..280e1d6984 100644 --- a/src/plugins/android/androidtoolchain.cpp +++ b/src/plugins/android/androidtoolchain.cpp @@ -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" |