Index: tools/gn/ninja_utils.cc |
diff --git a/tools/gn/ninja_utils.cc b/tools/gn/ninja_utils.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..60d4d3643842cd7594d678cb79daf3f99db85e32 |
--- /dev/null |
+++ b/tools/gn/ninja_utils.cc |
@@ -0,0 +1,27 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "tools/gn/ninja_utils.h" |
+ |
+#include "tools/gn/filesystem_utils.h" |
+#include "tools/gn/settings.h" |
+#include "tools/gn/target.h" |
+ |
+SourceFile GetNinjaFileForTarget(const Target* target) { |
+ return SourceFile(GetTargetOutputDir(target).value() + |
+ target->label().name() + ".ninja"); |
+} |
+ |
+SourceFile GetNinjaFileForToolchain(const Settings* settings) { |
+ return SourceFile(GetToolchainOutputDir(settings).value() + |
+ "toolchain.ninja"); |
+} |
+ |
+std::string GetNinjaRulePrefixForToolchain(const Settings* settings) { |
+ // Don't prefix the default toolchain so it looks prettier, prefix everything |
+ // else. |
+ if (settings->is_default()) |
+ return std::string(); // Default toolchain has no prefix. |
+ return settings->toolchain_label().name() + "_"; |
+} |