CppTools: Take "-include" files into account

Fixes: QTCREATORBUG-20602
Change-Id: Ibfc518fc64ed75f93265db800558ec1d2e424bb4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
Nikolai Kosjar
2018-06-11 12:52:04 +02:00
committed by Christian Kandeler
parent c05ad9a951
commit 888ea6bbbb
21 changed files with 130 additions and 20 deletions

View File

@@ -35,6 +35,8 @@
#include <utils/qtcassert.h>
#include <QCoreApplication>
#include <QDir>
#include <QFileInfo>
#include <QUuid>
static const char ID_KEY[] = "ProjectExplorer.ToolChain.Id";
@@ -185,6 +187,13 @@ Abis ToolChain::supportedAbis() const
return {targetAbi()};
}
QStringList ToolChain::includedFiles(const QStringList &flags, const QString &directory) const
{
Q_UNUSED(flags)
Q_UNUSED(directory)
return {};
}
Utils::Id ToolChain::language() const
{
return d->m_language;
@@ -389,6 +398,24 @@ Utils::LanguageVersion ToolChain::languageVersion(const Utils::Id &language, con
}
}
QStringList ToolChain::includedFiles(const QString &option,
const QStringList &flags,
const QString &directoryPath)
{
QStringList result;
for (int i = 0; i < flags.size(); ++i) {
if (flags[i] == option && i + 1 < flags.size()) {
QString includeFile = flags[++i];
if (!QFileInfo(includeFile).isAbsolute())
includeFile = directoryPath + "/" + includeFile;
result.append(QDir::cleanPath(includeFile));
}
}
return result;
}
/*!
Used by the tool chain kit information to validate the kit.
*/