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 3 // found in the LICENSE file. 4 5 #include "tools/gn/action_values.h" 6 7 #include "tools/gn/substitution_writer.h" 8 #include "tools/gn/target.h" 9 ActionValues()10ActionValues::ActionValues() { 11 } 12 ~ActionValues()13ActionValues::~ActionValues() { 14 } 15 GetOutputsAsSourceFiles(const Target * target,std::vector<SourceFile> * result) const16void ActionValues::GetOutputsAsSourceFiles( 17 const Target* target, 18 std::vector<SourceFile>* result) const { 19 if (target->output_type() == Target::COPY_FILES || 20 target->output_type() == Target::ACTION_FOREACH) { 21 // Copy and foreach applies the outputs to the sources. 22 SubstitutionWriter::ApplyListToSources( 23 target->settings(), outputs_, target->sources(), result); 24 } else { 25 // Actions (and anything else that happens to specify an output) just use 26 // the output list with no substitution. 27 SubstitutionWriter::GetListAsSourceFiles(outputs_, result); 28 } 29 } 30