Chromium Code Reviews| Index: tools/gn/command_check.cc |
| diff --git a/tools/gn/command_check.cc b/tools/gn/command_check.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..a84bdf3096e2f68ab29030d0b78de088269a6cb4 |
| --- /dev/null |
| +++ b/tools/gn/command_check.cc |
| @@ -0,0 +1,40 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#include "tools/gn/commands.h" |
| +#include "tools/gn/setup.h" |
| +#include "tools/gn/standard_out.h" |
| + |
| +namespace commands { |
| + |
| +const char kCheck[] = "check"; |
| +const char kCheck_HelpShort[] = |
| + "check: Check header dependencies."; |
| +const char kCheck_Help[] = |
| + "gn check: Check header dependencies.\n" |
| + "\n" |
| + " \"gn check\" is the same thing as \"gn gen\" with the \"--check\" flag\n" |
| + " except that this command does not write out any build files. It's\n" |
| + " intended to be an easy way to manually trigger include file checking.\n" |
| + "\n" |
| + " See \"gn help\" for the common command-line switches.\n"; |
| + |
| +// Note: partially duplicated in command_gyp.cc. |
| +int RunCheck(const std::vector<std::string>& args) { |
| + // Deliberately leaked to avoid expensive process teardown. |
| + Setup* setup = new Setup(); |
| + // TODO(brettw) bug 343726: Use a temporary directory instead of this |
| + // default one to avoid messing up any build that's in there. |
| + if (!setup->DoSetup("//out/Default")) |
|
scottmg
2014/04/05 00:40:07
//out/Check instead?
brettw
2014/04/07 05:08:19
I'm currently using this for all the "temporary" g
|
| + return 1; |
| + setup->set_check_public_headers(true); |
| + |
| + if (!setup->Run()) |
| + return 1; |
| + |
| + OutputString("Header dependency check OK\n", DECORATION_GREEN); |
| + return 0; |
| +} |
| + |
| +} // namespace commands |