summaryrefslogtreecommitdiffstats
path: root/qmake/generators/win32/msbuild_objectmodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qmake/generators/win32/msbuild_objectmodel.cpp')
-rw-r--r--qmake/generators/win32/msbuild_objectmodel.cpp29
1 files changed, 27 insertions, 2 deletions
diff --git a/qmake/generators/win32/msbuild_objectmodel.cpp b/qmake/generators/win32/msbuild_objectmodel.cpp
index 0c29008610..ff7779f79f 100644
--- a/qmake/generators/win32/msbuild_objectmodel.cpp
+++ b/qmake/generators/win32/msbuild_objectmodel.cpp
@@ -568,6 +568,7 @@ void VCXProjectWriter::write(XmlOutput &xml, VCProjectSingleConfig &tool)
addFilters(tempProj, xmlFilter, "Resource Files");
addFilters(tempProj, xmlFilter, "Source Files");
addFilters(tempProj, xmlFilter, "Translation Files");
+ addFilters(tempProj, xmlFilter, "Deployment Files");
for (int x = 0; x < tempProj.ExtraCompilers.count(); ++x)
addFilters(tempProj, xmlFilter, tempProj.ExtraCompilers.at(x));
@@ -581,6 +582,7 @@ void VCXProjectWriter::write(XmlOutput &xml, VCProjectSingleConfig &tool)
outputFilter(tempProj, xml, xmlFilter, "Translation Files");
outputFilter(tempProj, xml, xmlFilter, "Form Files");
outputFilter(tempProj, xml, xmlFilter, "Resource Files");
+ outputFilter(tempProj, xml, xmlFilter, "Deployment Files");
for (int x = 0; x < tempProj.ExtraCompilers.count(); ++x) {
outputFilter(tempProj, xml, xmlFilter, tempProj.ExtraCompilers.at(x));
@@ -790,6 +792,7 @@ void VCXProjectWriter::write(XmlOutput &xml, VCProject &tool)
addFilters(tool, xmlFilter, "Resource Files");
addFilters(tool, xmlFilter, "Source Files");
addFilters(tool, xmlFilter, "Translation Files");
+ addFilters(tool, xmlFilter, "Deployment Files");
for (int x = 0; x < tool.ExtraCompilers.count(); ++x)
addFilters(tool, xmlFilter, tool.ExtraCompilers.at(x));
@@ -803,6 +806,7 @@ void VCXProjectWriter::write(XmlOutput &xml, VCProject &tool)
outputFilter(tool, xml, xmlFilter, "Translation Files");
outputFilter(tool, xml, xmlFilter, "Form Files");
outputFilter(tool, xml, xmlFilter, "Resource Files");
+ outputFilter(tool, xml, xmlFilter, "Deployment Files");
for (int x = 0; x < tool.ExtraCompilers.count(); ++x) {
outputFilter(tool, xml, xmlFilter, tool.ExtraCompilers.at(x));
}
@@ -1728,6 +1732,8 @@ void VCXProjectWriter::addFilters(VCProject &project, XmlOutput &xmlFilter, cons
filter = singleCfg.FormFiles;
} else if (filtername == "Resource Files") {
filter = singleCfg.ResourceFiles;
+ } else if (filtername == "Deployment Files") {
+ filter = singleCfg.DeploymentFiles;
} else {
// ExtraCompilers
filter = project.SingleProjects[i].filterForExtraCompiler(filtername);
@@ -1775,6 +1781,8 @@ void VCXProjectWriter::outputFilter(VCProject &project, XmlOutput &xml, XmlOutpu
filter = singleCfg.FormFiles;
} else if (filtername == "Resource Files") {
filter = singleCfg.ResourceFiles;
+ } else if (filtername == "Deployment Files") {
+ filter = singleCfg.DeploymentFiles;
} else {
// ExtraCompilers
filter = project.SingleProjects[i].filterForExtraCompiler(filtername);
@@ -1826,6 +1834,8 @@ void VCXProjectWriter::outputFileConfigs(VCProject &project, XmlOutput &xml, Xml
filter = singleCfg.FormFiles;
} else if (filtername.startsWith("Resource Files")) {
filter = singleCfg.ResourceFiles;
+ } else if (filtername.startsWith("Deployment Files")) {
+ filter = singleCfg.DeploymentFiles;
} else {
// ExtraCompilers
filter = project.SingleProjects[i].filterForExtraCompiler(filtername);
@@ -1956,7 +1966,8 @@ bool VCXProjectWriter::outputFileConfig(VCFilter &filter, XmlOutput &xml, XmlOut
}
// Actual XML output ----------------------------------
- if (filter.useCustomBuildTool || filter.useCompilerTool || !inBuild) {
+ if (filter.useCustomBuildTool || filter.useCompilerTool
+ || !inBuild || filtername.startsWith("Deployment Files")) {
if (filter.useCustomBuildTool)
{
@@ -1971,7 +1982,8 @@ bool VCXProjectWriter::outputFileConfig(VCFilter &filter, XmlOutput &xml, XmlOut
xml << tag("CustomBuild")
<< attrTag("Include",Option::fixPathToLocalOS(filename));
- if ( filtername.startsWith("Form Files") || filtername.startsWith("Generated Files") || filtername.startsWith("Resource Files") )
+ if (filtername.startsWith("Form Files") || filtername.startsWith("Generated Files")
+ || filtername.startsWith("Resource Files") || filtername.startsWith("Deployment Files"))
xml << attrTagS("FileType", "Document");
}
@@ -2044,6 +2056,13 @@ bool VCXProjectWriter::outputFileConfig(VCFilter &filter, XmlOutput &xml, XmlOut
xml << tag("ResourceCompile")
<< attrTag("Include",Option::fixPathToLocalOS(filename));
}
+ } else if (filtername.startsWith("Deployment Files")) {
+ xmlFilter << tag("None")
+ << attrTag("Include",Option::fixPathToLocalOS(filename))
+ << attrTagS("Filter", filtername);
+
+ xml << tag("None")
+ << attrTag("Include",Option::fixPathToLocalOS(filename));
}
}
@@ -2054,6 +2073,12 @@ bool VCXProjectWriter::outputFileConfig(VCFilter &filter, XmlOutput &xml, XmlOut
<< valueTag("true");
}
+ if (filtername.startsWith("Deployment Files") && inBuild) {
+ xml << tag("DeploymentContent")
+ << attrTag("Condition", condition)
+ << valueTag("true");
+ }
+
if (filter.useCompilerTool) {
if ( !filter.CompilerTool.ForcedIncludeFiles.isEmpty() ) {