| Index: tools/gn/visual_studio_writer.cc
|
| diff --git a/tools/gn/visual_studio_writer.cc b/tools/gn/visual_studio_writer.cc
|
| index 801ea7761d4e646d21baa36e3171f2410c7f85cc..4c88f35dace35f2841855ea8bbf6869a1f814edc 100644
|
| --- a/tools/gn/visual_studio_writer.cc
|
| +++ b/tools/gn/visual_studio_writer.cc
|
| @@ -125,6 +125,8 @@ std::string GetConfigurationType(const Target* target, Err* err) {
|
| case Target::STATIC_LIBRARY:
|
| case Target::SOURCE_SET:
|
| return "StaticLibrary";
|
| + case Target::GROUP:
|
| + return "Utility";
|
|
|
| default:
|
| *err = Err(Location(),
|
| @@ -259,9 +261,8 @@ bool VisualStudioWriter::RunAndWriteFiles(const BuildSettings* build_settings,
|
| writer.folders_.reserve(targets.size());
|
|
|
| for (const Target* target : targets) {
|
| - // Skip actions, groups and bundle targets.
|
| - if (target->output_type() == Target::GROUP ||
|
| - target->output_type() == Target::COPY_FILES ||
|
| + // Skip actions and bundle targets.
|
| + if (target->output_type() == Target::COPY_FILES ||
|
| target->output_type() == Target::ACTION ||
|
| target->output_type() == Target::ACTION_FOREACH ||
|
| target->output_type() == Target::BUNDLE_DATA) {
|
| @@ -424,11 +425,13 @@ bool VisualStudioWriter::WriteProjectFileContents(
|
| scoped_ptr<XmlElementWriter> out_dir = properties->SubElement("OutDir");
|
| path_output.WriteDir(out_dir->StartContent(false),
|
| build_settings_->build_dir(),
|
| - PathOutput::DIR_INCLUDE_LAST_SLASH);
|
| + PathOutput::DIR_NO_LAST_SLASH);
|
| }
|
| properties->SubElement("TargetName")->Text("$(ProjectName)");
|
| - properties->SubElement("TargetPath")
|
| - ->Text("$(OutDir)\\$(ProjectName)$(TargetExt)");
|
| + if (target->output_type() != Target::GROUP) {
|
| + properties->SubElement("TargetPath")
|
| + ->Text("$(OutDir)\\$(ProjectName)$(TargetExt)");
|
| + }
|
| }
|
|
|
| {
|
|
|