Roll/update build-related dependencies

This may help with ASAN issues seen on Windows ASAN (see bug 347169607).

Details:
- Roll depot_tools, build, buildtools, third_party/libc++/src,
  third_party/libc++abi, tools/clang, tools/rust
  - Newly-required abseil-cpp issue workaround is copied from Chromium
- Add llvm-libc because libc++ now depends on it. llvm-libc/BUILD.gn is
  copied from Chromium.
- Moved dsymutil into 'hooks' section instead of 'deps' section to match
  Chromium (but with 'dawn_standalone and' prepended).
- Require use_custom_libcxx=false when building with MSVC, because
  libc++ doesn't build on MSVC right now. This setting was changed for
  the MSVC bots in bsheedy's CL: https://crrev.com/c/6192201
- Work around a spurious MSVC warning that only appears on (CMake?)
  release bots. I don't know what it has to do with any of the
  dependencies rolled in this CL. I could not reproduce locally.
  I think what's happening is MSVC inlines and optimizes `FormatWidth`,
  and then if none of the cases is hit then `src_width` will be
  uninitialized. This is arguably correct, but some buggy version of
  MSVC attributes this issue to the wrong place in the code:
  `if (dst_width < src_width)`.
  If my suspicion is correct, it goes away either if inlining is
  prevented or all codepaths (that return at all) return a value.

Rolled all dependencies to match a recent Chromium revision; steps:
- Add "custom_vars": { "checkout_rust": True } to .gclient
- gclient sync
- roll-dep build buildtools tools/clang tools/rust
- Manually update the other deps to match Chromium DEPS.

Bug: 347169607
Change-Id: Ib6e8b49ed08aa028241bd1bf5092128f920f2ef0
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/222337
Reviewed-by: David Neto <dneto@google.com>
Auto-Submit: Kai Ninomiya <kainino@chromium.org>
Commit-Queue: David Neto <dneto@google.com>
diff --git a/BUILD.gn b/BUILD.gn
index 6d4fe01..7d680b7 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -29,6 +29,11 @@
 import("scripts/dawn_overrides_with_defaults.gni")
 import("scripts/tint_overrides_with_defaults.gni")
 
+if (!is_clang && is_win) {
+  # libc++ cannot currently build with MSVC. See https://anglebug.com/376074941
+  assert(!use_custom_libcxx, "MSVC build requires use_custom_libcxx=false")
+}
+
 group("benchmarks") {
   testonly = true
   deps = [ "src/tint:benchmarks" ]