summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-12 06:56:07 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-11-12 06:56:07 +0000
commit66e680acc3a6ef9b62ec6560e1638c7d1052eb78 (patch)
treec4b5ea8536721b7820b480f7c763e5c9b3abf1df /tools
parent983f61e58e6da52aab16a8409c3fd3dedc33f69a (diff)
downloadchromium_src-66e680acc3a6ef9b62ec6560e1638c7d1052eb78.zip
chromium_src-66e680acc3a6ef9b62ec6560e1638c7d1052eb78.tar.gz
chromium_src-66e680acc3a6ef9b62ec6560e1638c7d1052eb78.tar.bz2
Canonicalize output directory argument in GN
On Windows we would previously get confused if you used blackslashes in the output dir name. This just converts them to forward slashes. BUG= Review URL: https://codereview.chromium.org/66653004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@234440 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rw-r--r--tools/gn/setup.cc6
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/gn/setup.cc b/tools/gn/setup.cc
index 4f18f57..feec71b 100644
--- a/tools/gn/setup.cc
+++ b/tools/gn/setup.cc
@@ -6,6 +6,8 @@
#include <stdlib.h>
+#include <algorithm>
+
#include "base/bind.h"
#include "base/command_line.h"
#include "base/file_util.h"
@@ -253,6 +255,10 @@ bool Setup::DoSetup() {
std::string build_path_8 = FilePathToUTF8(build_path);
if (build_path_8.compare(0, 2, "//") != 0)
build_path_8.insert(0, "//");
+#if defined(OS_WIN)
+ // Canonicalize to forward slashes on Windows.
+ std::replace(build_path_8.begin(), build_path_8.end(), '\\', '/');
+#endif
build_settings_.SetBuildDir(SourceDir(build_path_8));
} else {
// Default output dir.