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