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 10ActionValues::ActionValues() { 11} 12 13ActionValues::~ActionValues() { 14} 15 16void 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