Depot tools: use the clang-format binaries that are now included
as part of the Chromium checkout.

This follows the approach used by gn.

Changes include:
 - in-the-PATH clang-format trampoline scripts
 - clang_format.py, which finds clang-format binaries inside of Chrome
 - Hook 'git cl format' to the new binaries and scripts
 - Rearrange some code, for reuse between clang_format.py and gn.py

BUG=240309
TEST=presubmits (one failure on mac, but it fails on a clean checkout too)

Review URL: https://codereview.chromium.org/134313007

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@245074 0039d316-1c4b-4281-b951-d872f2087c98
7 files changed
tree: 43cc28d0a3bc6b921ee540b68eab1bb428f77cf3
  1. bootstrap/
  2. git-templates/
  3. git_utils/
  4. recipes/
  5. support/
  6. testing_support/
  7. tests/
  8. third_party/
  9. win_toolchain/
  10. zsh-goodies/
  11. .gitignore
  12. annotated_gclient.py
  13. apply_issue
  14. apply_issue.bat
  15. apply_issue.py
  16. breakpad.py
  17. checkout.py
  18. chrome-update-create-task.bat
  19. chrome-update.bat
  20. chrome-update.py
  21. clang-format
  22. clang-format.bat
  23. clang_format.py
  24. codereview.settings
  25. commit_queue.py
  26. cpplint.bat
  27. cpplint.py
  28. cpplint_chromium.py
  29. create-chromium-git-src
  30. create-ntfs-junction.c
  31. create-ntfs-junction.exe
  32. crup-runner.sh
  33. download_from_google_storage
  34. download_from_google_storage.bat
  35. download_from_google_storage.py
  36. drover
  37. drover.bat
  38. drover.py
  39. fetch
  40. fetch.bat
  41. fetch.py
  42. fix_encoding.py
  43. gcl
  44. gcl.bat
  45. gcl.py
  46. gclient
  47. gclient-new-workdir.py
  48. gclient.bat
  49. gclient.py
  50. gclient_scm.py
  51. gclient_utils.py
  52. gerrit_util.py
  53. git-cl
  54. git-cl-upload-hook
  55. git-crsync
  56. git-crup
  57. git-gs
  58. git-lkgr
  59. git-number
  60. git-runhooks
  61. git-try
  62. git_cl.py
  63. git_common.py
  64. git_number.py
  65. git_try.py
  66. gn
  67. gn.bat
  68. gn.py
  69. hammer
  70. hammer.bat
  71. LICENSE
  72. my_activity.py
  73. my_reviews.py
  74. ninja
  75. ninja-linux32
  76. ninja-linux64
  77. ninja-mac
  78. ninja.exe
  79. OWNERS
  80. owners.py
  81. owners_finder.py
  82. patch.py
  83. PRESUBMIT.py
  84. presubmit_canned_checks.py
  85. presubmit_support.py
  86. profile.xml
  87. pylint
  88. pylint.py
  89. pylintrc
  90. README
  91. README.codereview
  92. README.gclient
  93. README.git-cl
  94. README.testing
  95. repo
  96. rietveld.py
  97. scm.py
  98. subcommand.py
  99. subprocess2.py
  100. trychange.py
  101. update_depot_tools
  102. update_depot_tools.bat
  103. upload_to_google_storage.py
  104. WATCHLISTS
  105. watchlists.py
  106. weekly
  107. wtf