OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef TOOLS_GN_NINJA_BINARY_TARGET_WRITER_H_ | 5 #ifndef TOOLS_GN_NINJA_BINARY_TARGET_WRITER_H_ |
6 #define TOOLS_GN_NINJA_BINARY_TARGET_WRITER_H_ | 6 #define TOOLS_GN_NINJA_BINARY_TARGET_WRITER_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "tools/gn/config_values.h" | 9 #include "tools/gn/config_values.h" |
10 #include "tools/gn/ninja_target_writer.h" | 10 #include "tools/gn/ninja_target_writer.h" |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 void WriteCompilerBuildLine(const SourceFile& source, | 92 void WriteCompilerBuildLine(const SourceFile& source, |
93 const std::vector<OutputFile>& extra_deps, | 93 const std::vector<OutputFile>& extra_deps, |
94 const OutputFile& order_only_dep, | 94 const OutputFile& order_only_dep, |
95 Toolchain::ToolType tool_type, | 95 Toolchain::ToolType tool_type, |
96 const std::vector<OutputFile>& outputs); | 96 const std::vector<OutputFile>& outputs); |
97 | 97 |
98 void WriteLinkerStuff(const std::vector<OutputFile>& object_files, | 98 void WriteLinkerStuff(const std::vector<OutputFile>& object_files, |
99 const std::vector<SourceFile>& other_files); | 99 const std::vector<SourceFile>& other_files); |
100 void WriteLinkerFlags(const SourceFile* optional_def_file); | 100 void WriteLinkerFlags(const SourceFile* optional_def_file); |
101 void WriteLibs(); | 101 void WriteLibs(); |
102 void WriteOutputExtension(); | 102 void WriteOutputSubstitutions(); |
103 void WriteSolibs(const std::vector<OutputFile>& solibs); | 103 void WriteSolibs(const std::vector<OutputFile>& solibs); |
104 | 104 |
105 // Writes the stamp line for a source set. These are not linked. | 105 // Writes the stamp line for a source set. These are not linked. |
106 void WriteSourceSetStamp(const std::vector<OutputFile>& object_files); | 106 void WriteSourceSetStamp(const std::vector<OutputFile>& object_files); |
107 | 107 |
108 // Gets all target dependencies and classifies them, as well as accumulates | 108 // Gets all target dependencies and classifies them, as well as accumulates |
109 // object files from source sets we need to link. | 109 // object files from source sets we need to link. |
110 void GetDeps(UniqueVector<OutputFile>* extra_object_files, | 110 void GetDeps(UniqueVector<OutputFile>* extra_object_files, |
111 UniqueVector<const Target*>* linkable_deps, | 111 UniqueVector<const Target*>* linkable_deps, |
112 UniqueVector<const Target*>* non_linkable_deps) const; | 112 UniqueVector<const Target*>* non_linkable_deps) const; |
(...skipping 26 matching lines...) Expand all Loading... |
139 const Tool* tool_; | 139 const Tool* tool_; |
140 | 140 |
141 // Cached version of the prefix used for rule types for this toolchain. | 141 // Cached version of the prefix used for rule types for this toolchain. |
142 std::string rule_prefix_; | 142 std::string rule_prefix_; |
143 | 143 |
144 DISALLOW_COPY_AND_ASSIGN(NinjaBinaryTargetWriter); | 144 DISALLOW_COPY_AND_ASSIGN(NinjaBinaryTargetWriter); |
145 }; | 145 }; |
146 | 146 |
147 #endif // TOOLS_GN_NINJA_BINARY_TARGET_WRITER_H_ | 147 #endif // TOOLS_GN_NINJA_BINARY_TARGET_WRITER_H_ |
148 | 148 |
OLD | NEW |