| Index: tools/gn/ninja_build_writer.cc
|
| diff --git a/tools/gn/ninja_build_writer.cc b/tools/gn/ninja_build_writer.cc
|
| index 94a9f3d7878aa94f8a9ff020ff73444f31509b42..9a5e2d68ac45bb0be98b9b286a4e1a7d0a607b9a 100644
|
| --- a/tools/gn/ninja_build_writer.cc
|
| +++ b/tools/gn/ninja_build_writer.cc
|
| @@ -256,10 +256,26 @@ bool NinjaBuildWriter::WritePhonyAndAllRules(Err* err) {
|
| }
|
| }
|
|
|
| + // Figure out if the BUILD file wants to declare a custom "default"
|
| + // target (rather than building 'all' by default). By convention
|
| + // we use group("default") but it doesn't have to be a group.
|
| + bool default_target_exists = false;
|
| + for (size_t i = 0; i < default_toolchain_targets_.size(); i++) {
|
| + const Label& label = default_toolchain_targets_[i]->label();
|
| + if (label.dir().value() == "//" && label.name() == "default")
|
| + default_target_exists = true;
|
| + }
|
| +
|
| if (!all_rules.empty()) {
|
| out_ << "\nbuild all: phony " << all_rules << std::endl;
|
| + }
|
| +
|
| + if (default_target_exists) {
|
| + out_ << "default default" << std::endl;
|
| + } else if (!all_rules.empty()) {
|
| out_ << "default all" << std::endl;
|
| }
|
| +
|
| return true;
|
| }
|
|
|
|
|