• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef TOOLS_GN_NINJA_UTILS_H_
6 #define TOOLS_GN_NINJA_UTILS_H_
7 
8 #include <string>
9 
10 class Settings;
11 class SourceFile;
12 class Target;
13 
14 // Example: "base/base.ninja". The string version will not be escaped, and
15 // will always have slashes for path separators.
16 SourceFile GetNinjaFileForTarget(const Target* target);
17 
18 // Returns the name of the root .ninja file for the given toolchain.
19 SourceFile GetNinjaFileForToolchain(const Settings* settings);
20 
21 // Returns the prefix applied to the Ninja rules in a given toolchain so they
22 // don't collide with rules from other toolchains.
23 std::string GetNinjaRulePrefixForToolchain(const Settings* settings);
24 
25 #endif  // TOOLS_GN_NINJA_UTILS_H_
26