Android: fix make command for latest NDK

Change-Id: I8c54ac146a96c11d6df5a7e5c791314799119b5f
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
This commit is contained in:
Ivan Donchevskii
2017-11-06 15:59:11 +01:00
parent 8dd8bd2fc8
commit ebdeb87241
3 changed files with 18 additions and 8 deletions

View File

@@ -427,6 +427,13 @@ FileName AndroidConfig::gdbPath(const Abi &abi, const QString &ndkToolChainVersi
return toolPath(abi, ndkToolChainVersion).appendString(QLatin1String("-gdb" QTC_HOST_EXE_SUFFIX)); return toolPath(abi, ndkToolChainVersion).appendString(QLatin1String("-gdb" QTC_HOST_EXE_SUFFIX));
} }
FileName AndroidConfig::makePath() const
{
const QString makePath = QString::fromLatin1("%1/prebuilt/%2/bin/make" QTC_HOST_EXE_SUFFIX)
.arg(m_ndkLocation.toString()).arg(toolchainHost());
return FileName::fromString(makePath);
}
FileName AndroidConfig::openJDKBinPath() const FileName AndroidConfig::openJDKBinPath() const
{ {
FileName path = m_openJDKLocation; FileName path = m_openJDKLocation;

View File

@@ -133,6 +133,7 @@ public:
const QString &ndkToolChainVersion) const; const QString &ndkToolChainVersion) const;
Utils::FileName gdbPath(const ProjectExplorer::Abi &abi, const QString &ndkToolChainVersion) const; Utils::FileName gdbPath(const ProjectExplorer::Abi &abi, const QString &ndkToolChainVersion) const;
Utils::FileName makePath() const;
Utils::FileName keytoolPath() const; Utils::FileName keytoolPath() const;

View File

@@ -208,20 +208,22 @@ FileNameList AndroidToolChain::suggestedMkspecList() const
QString AndroidToolChain::makeCommand(const Environment &env) const QString AndroidToolChain::makeCommand(const Environment &env) const
{ {
FileName makePath = AndroidConfigurations::currentConfig().makePath();
if (makePath.exists())
return makePath.toString();
const Utils::FileNameList extraDirectories const Utils::FileNameList extraDirectories
= Utils::transform(AndroidConfigurations::currentConfig().makeExtraSearchDirectories(), = Utils::transform(AndroidConfigurations::currentConfig().makeExtraSearchDirectories(),
[](const QString &s) { return Utils::FileName::fromString(s); }); [](const QString &s) { return Utils::FileName::fromString(s); });
if (HostOsInfo::isWindowsHost()) { if (HostOsInfo::isWindowsHost()) {
FileName tmp = env.searchInPath("ma-make.exe", extraDirectories); makePath = env.searchInPath("ma-make.exe", extraDirectories);
if (!tmp.isEmpty()) if (!makePath.isEmpty())
return tmp.toString(); return makePath.toString();
tmp = env.searchInPath("mingw32-make", extraDirectories); makePath = env.searchInPath("mingw32-make", extraDirectories);
return tmp.isEmpty() ? QLatin1String("mingw32-make") : tmp.toString(); return makePath.isEmpty() ? QLatin1String("mingw32-make") : makePath.toString();
} }
QString make = "make"; makePath = env.searchInPath("make", extraDirectories);
FileName tmp = env.searchInPath(make, extraDirectories); return makePath.isEmpty() ? "make" : makePath.toString();
return tmp.isEmpty() ? make : tmp.toString();
} }
QString AndroidToolChain::ndkToolChainVersion() const QString AndroidToolChain::ndkToolChainVersion() const