
# Copyright 2017 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# THIS FILE IS AUTO-GENERATED BY tools/sync_with_fuchsia.py DO NOT EDIT DIRECTLY.

fuchsia/third_party/clang/${platform} git_revision:8475d0a2b853f6184948b428ec679edf84ed2688
fuchsia/third_party/rust/host/${platform} git_revision:75726cae37317c7262b69d3e9fd11a3496a88d04
fuchsia/third_party/rust/target/x86_64-unknown-linux-gnu git_revision:75726cae37317c7262b69d3e9fd11a3496a88d04
fuchsia/third_party/sysroot/linux git_revision:cf821ee2dbc2ed61dfc25a814dcc8d090f9fda03
infra/3pp/tools/cpython3/${platform} version:2@3.11.3.chromium.29

@Subdir bin
fuchsia/third_party/ninja/${platform} git_revision:d144efd7bd6ca6bb58d5afe39ff485dc36aebe83
fuchsia/tools/buildidtool/${platform} git_revision:39c824b81c78a5cdbb8b0fbb33a053a4cb733628

@Subdir golang
fuchsia/go/${platform} git_revision:a4c4d26fe64a5fff94733da2976748794e47f772

@Subdir goma
fuchsia/third_party/goma/client/${platform} git_revision:4478f4117d6f7832a97763220060b70a93810436


#######################################################
# Below is copied from tools/cobalt.ensure.exceptions #
#######################################################
# Copyright 2017 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# The following dependencies diverge from those used in fuchsia for some reason.

# Updating to the fuchsia version causes the build failure: `undefined symbol: __sanitizer_cov_trace_pc_guard_init`
# TODO(b/278929805): Remove this exception once issues are resolved
@Subdir bin
gn/gn/${platform} git_revision:239533d2d91a04b3317ca9101cf7189f4e651e4d

# Godepfile is not present in the fuchsia prebuilts file
# TODO(b/278929805): Switch to go's builtin depfile generator
@Subdir golang/bin
fuchsia/tools/godepfile/${platform} git_revision:6922d7833617841e853a0be52a285f6cd07a0a10
