fix PCH related regression in vcxproj generator

When PRECOMPILED_HEADER is set to foo/bar/stable.h and
PRECOMPILED_SOURCE is empty, then a C++ file foo/bar/stable.cpp
is generated that contains the include "stable.h".
We must pass the exact string "stable.h" to the /Yc compile
switch instead of "foo/bar/stable.h".
Commit dc612acdc6 introduced this
regression to allow to have PRECOMPILED_SOURCE in a different
directory than PRECOMPILED_HEADER.

Change-Id: I1a7e096c0455b946a5660d23c70c72abd4c7ac1b
Task-number: QTBUG-46679
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This commit is contained in:
Joerg Bornemann 2015-06-16 12:31:51 +02:00 committed by Jani Heikkinen
parent aec2b28eea
commit 059e1df345

View File

@ -2238,6 +2238,8 @@ void VCFilter::modifyPCHstage(QString str)
CompilerTool.UsePrecompiledHeader = (isCFile ? pchNone : pchCreateUsingSpecific);
if (isCFile)
CompilerTool.PrecompiledHeaderThrough = QLatin1String("$(NOINHERIT)");
else if (autogenSourceFile)
CompilerTool.PrecompiledHeaderThrough = Project->precompHFilename;
CompilerTool.ForcedIncludeFiles = QStringList("$(NOINHERIT)");
}