diff options
Diffstat (limited to 'tools/gn/ninja_action_target_writer.cc')
-rw-r--r-- | tools/gn/ninja_action_target_writer.cc | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/tools/gn/ninja_action_target_writer.cc b/tools/gn/ninja_action_target_writer.cc index 7f14e74..6a632e7 100644 --- a/tools/gn/ninja_action_target_writer.cc +++ b/tools/gn/ninja_action_target_writer.cc @@ -23,7 +23,8 @@ NinjaActionTargetWriter::~NinjaActionTargetWriter() { } void NinjaActionTargetWriter::Run() { - FileTemplate args_template(target_->action_values().args()); + FileTemplate args_template(target_->settings(), + target_->action_values().args()); std::string custom_rule_name = WriteRuleDefinition(args_template); // Collect our deps to pass as "extra hard dependencies" for input deps. This @@ -136,14 +137,11 @@ std::string NinjaActionTargetWriter::WriteRuleDefinition( void NinjaActionTargetWriter::WriteArgsSubstitutions( const SourceFile& source, const FileTemplate& args_template) { - std::ostringstream source_file_stream; - path_output_no_escaping_.WriteFile(source_file_stream, source); - EscapeOptions template_escape_options; template_escape_options.mode = ESCAPE_NINJA_COMMAND; args_template.WriteNinjaVariablesForSubstitution( - out_, source_file_stream.str(), template_escape_options); + out_, target_->settings(), source, template_escape_options); } void NinjaActionTargetWriter::WriteSourceRules( @@ -208,7 +206,7 @@ void NinjaActionTargetWriter::WriteOutputFilesForBuildLine( const SourceFile& source, std::vector<OutputFile>* output_files) { std::vector<std::string> output_template_result; - output_template.ApplyString(source.value(), &output_template_result); + output_template.Apply(source, &output_template_result); for (size_t out_i = 0; out_i < output_template_result.size(); out_i++) { OutputFile output_path(output_template_result[out_i]); output_files->push_back(output_path); @@ -219,7 +217,7 @@ void NinjaActionTargetWriter::WriteOutputFilesForBuildLine( void NinjaActionTargetWriter::WriteDepfile(const SourceFile& source) { std::vector<std::string> result; - GetDepfileTemplate().ApplyString(source.value(), &result); + GetDepfileTemplate().Apply(source, &result); path_output_.WriteFile(out_, OutputFile(result[0])); } @@ -229,5 +227,5 @@ FileTemplate NinjaActionTargetWriter::GetDepfileTemplate() const { RemovePrefix(target_->action_values().depfile().value(), settings_->build_settings()->build_dir().value()); template_args.push_back(depfile_relative_to_build_dir); - return FileTemplate(template_args); + return FileTemplate(settings_, template_args); } |