Gcc: Support -stdlib=whatever arguments for the code model

Switching the stdlib implementation is possible with clang and results
in different include pathes being used (and potentially different defines).

Change-Id: I9c856256f51ceded9dc7892c1dde2bcc8c1b024c
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
This commit is contained in:
Tobias Hunger
2012-11-20 17:30:05 +01:00
parent 22c3bd244f
commit 75c36c9bb5
9 changed files with 34 additions and 17 deletions

View File

@@ -541,9 +541,11 @@ void Qt4Project::updateCppCodeModel()
ProjectPart::Ptr part(new ProjectPart);
part->qtVersion = qtVersionForPart;
QStringList cxxflags = pro->variableValue(CppFlagsVar);
// part->defines
if (tc)
part->defines = tc->predefinedMacros(pro->variableValue(CppFlagsVar));
part->defines = tc->predefinedMacros(cxxflags);
part->defines += pro->cxxDefines();
// part->includePaths
@@ -551,7 +553,7 @@ void Qt4Project::updateCppCodeModel()
QList<HeaderPath> headers;
if (tc)
headers = tc->systemHeaderPaths(SysRootKitInformation::sysRoot(k)); // todo pass cxxflags?
headers = tc->systemHeaderPaths(cxxflags, SysRootKitInformation::sysRoot(k));
if (qtVersion) {
headers.append(qtVersion->systemHeaderPathes(k));
}