summaryrefslogtreecommitdiff
path: root/chromium/tools/gn/ninja_binary_target_writer.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/tools/gn/ninja_binary_target_writer.cc')
-rw-r--r--chromium/tools/gn/ninja_binary_target_writer.cc17
1 files changed, 13 insertions, 4 deletions
diff --git a/chromium/tools/gn/ninja_binary_target_writer.cc b/chromium/tools/gn/ninja_binary_target_writer.cc
index 9772b85a1eb..8154355f882 100644
--- a/chromium/tools/gn/ninja_binary_target_writer.cc
+++ b/chromium/tools/gn/ninja_binary_target_writer.cc
@@ -751,11 +751,18 @@ void NinjaBinaryTargetWriter::WriteLinkerStuff(
target_, tool_, tool_->outputs(), &output_files);
out_ << "build";
- path_output_.WriteFiles(out_, output_files);
- out_ << ": " << rule_prefix_
- << Toolchain::ToolTypeToName(
+ if (!target_->create_pri_file()) {
+ path_output_.WriteFiles(out_, output_files);
+ out_ << ": " << rule_prefix_;
+ out_ << Toolchain::ToolTypeToName(
target_->toolchain()->GetToolTypeForTargetFinalOutput(target_));
+ } else {
+ out_ << " ";
+ path_output_.WriteFile(out_, OutputFile(target_->label().name() + ".stamp"));
+ out_ << ": " << rule_prefix_;
+ out_ << Toolchain::ToolTypeToName(Toolchain::TYPE_STAMP) << " |";
+ }
UniqueVector<OutputFile> extra_object_files;
UniqueVector<const Target*> linkable_deps;
@@ -811,7 +818,9 @@ void NinjaBinaryTargetWriter::WriteLinkerStuff(
// Append implicit dependencies collected above.
if (!implicit_deps.empty()) {
- out_ << " |";
+ if (!target_->create_pri_file()) {
+ out_ << " |";
+ }
path_output_.WriteFiles(out_, implicit_deps);
}