GN: Visual Studio generator does not depend on is_debug variable

R=brettw@chromium.org, tmoniuszko@opera.com
BUG=

Review URL: https://codereview.chromium.org/1734083002

Cr-Original-Commit-Position: refs/heads/master@{#377699}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5e369d0ddbe53298b2d59bd9af3f81ccffa84e0c
diff --git a/tools/gn/visual_studio_writer.cc b/tools/gn/visual_studio_writer.cc
index 2c454d2..6c364b3 100644
--- a/tools/gn/visual_studio_writer.cc
+++ b/tools/gn/visual_studio_writer.cc
@@ -79,6 +79,8 @@
 const char kGuidSeedFolder[] = "folder";
 const char kGuidSeedFilter[] = "filter";
 
+const char kConfigurationName[] = "GN";
+
 std::string GetWindowsKitsIncludeDirs() {
   std::string kits_path;
 
@@ -178,11 +180,9 @@
 VisualStudioWriter::SolutionProject::~SolutionProject() = default;
 
 VisualStudioWriter::VisualStudioWriter(const BuildSettings* build_settings,
-                                       bool is_debug_config,
                                        const char* config_platform,
                                        Version version)
     : build_settings_(build_settings),
-      is_debug_config_(is_debug_config),
       config_platform_(config_platform),
       ninja_path_output_(build_settings->build_dir(),
                          build_settings->root_path_utf8(),
@@ -217,24 +217,19 @@
                                           Err* err) {
   std::vector<const Target*> targets = builder->GetAllResolvedTargets();
 
-  bool is_debug_config = true;
   const char* config_platform = "Win32";
 
-  // Assume the "is_debug" and "target_cpu" variables do not change
-  // between different toolchains.
+  // Assume the "target_cpu" variable does not change between different
+  // toolchains.
   if (!targets.empty()) {
     const Scope* scope = targets.front()->settings()->base_config();
-    const Value* is_debug_value = scope->GetValue("is_debug");
-    is_debug_config =
-        is_debug_value == nullptr || is_debug_value->boolean_value();
     const Value* target_cpu_value = scope->GetValue(variables::kTargetCpu);
     if (target_cpu_value != nullptr &&
         target_cpu_value->string_value() == "x64")
       config_platform = "x64";
   }
 
-  VisualStudioWriter writer(build_settings, is_debug_config, config_platform,
-                            version);
+  VisualStudioWriter writer(build_settings, config_platform, version);
   writer.projects_.reserve(targets.size());
   writer.folders_.reserve(targets.size());
 
@@ -332,12 +327,11 @@
   {
     scoped_ptr<XmlElementWriter> configurations = project.SubElement(
         "ItemGroup", XmlAttributes("Label", "ProjectConfigurations"));
-    std::string config_name = is_debug_config_ ? "Debug" : "Release";
     scoped_ptr<XmlElementWriter> project_config = configurations->SubElement(
         "ProjectConfiguration",
-        XmlAttributes("Include",
-                      config_name + '|' + solution_project.config_platform));
-    project_config->SubElement("Configuration")->Text(config_name);
+        XmlAttributes("Include", std::string(kConfigurationName) + '|' +
+                                     solution_project.config_platform));
+    project_config->SubElement("Configuration")->Text(kConfigurationName);
     project_config->SubElement("Platform")
         ->Text(solution_project.config_platform);
   }
@@ -639,8 +633,7 @@
 
   out << "\tGlobalSection(SolutionConfigurationPlatforms) = preSolution"
       << std::endl;
-  const std::string config_mode_prefix =
-      std::string(is_debug_config_ ? "Debug" : "Release") + '|';
+  const std::string config_mode_prefix = std::string(kConfigurationName) + '|';
   const std::string config_mode = config_mode_prefix + config_platform_;
   out << "\t\t" << config_mode << " = " << config_mode << std::endl;
   out << "\tEndGlobalSection" << std::endl;
diff --git a/tools/gn/visual_studio_writer.h b/tools/gn/visual_studio_writer.h
index e9f2658..6950dd6 100644
--- a/tools/gn/visual_studio_writer.h
+++ b/tools/gn/visual_studio_writer.h
@@ -75,7 +75,6 @@
   using SolutionFolders = std::vector<SolutionEntry*>;
 
   explicit VisualStudioWriter(const BuildSettings* build_settings,
-                              bool is_debug_config,
                               const char* config_platform,
                               Version version);
   ~VisualStudioWriter();
@@ -107,9 +106,6 @@
   // Visual Studio version string.
   const char* version_string_;
 
-  // Indicates if project files are generated for Debug mode configuration.
-  bool is_debug_config_;
-
   // Platform for solution configuration (Win32, x64). Some projects may be
   // configured for different platform.
   const char* config_platform_;
diff --git a/tools/gn/visual_studio_writer_unittest.cc b/tools/gn/visual_studio_writer_unittest.cc
index e8ad75a..d70117f 100644
--- a/tools/gn/visual_studio_writer_unittest.cc
+++ b/tools/gn/visual_studio_writer_unittest.cc
@@ -26,7 +26,7 @@
 }  // namespace
 
 TEST_F(VisualStudioWriterTest, ResolveSolutionFolders) {
-  VisualStudioWriter writer(setup_.build_settings(), true, "Win32",
+  VisualStudioWriter writer(setup_.build_settings(), "Win32",
                             VisualStudioWriter::Version::Vs2015);
 
   std::string path =
@@ -80,7 +80,7 @@
 }
 
 TEST_F(VisualStudioWriterTest, ResolveSolutionFolders_AbsPath) {
-  VisualStudioWriter writer(setup_.build_settings(), true, "Win32",
+  VisualStudioWriter writer(setup_.build_settings(), "Win32",
                             VisualStudioWriter::Version::Vs2015);
 
   std::string path =