| #!/bin/bash |
| # Copyright 2018 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. |
| |
| ### Updates rustc_library and rustc_binary third_party dependencies |
| |
| ## usage: fx update-rustc-third-party |
| ## Updates third_party/rust-crates/rustc_deps based on the contents of |
| ## third_party/rust-crates/rustc_deps/Cargo.toml |
| ## |
| ## After updating third_party/rust-crates/rustc_deps, the pinned revision of |
| ## third_party/rust-crates will need to be updated in garnet/manifest/third_party. |
| ## See https://fuchsia.googlesource.com/docs/+/master/development/languages/rust/third_party.md |
| ## for more details. |
| |
| source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"/lib/vars.sh |
| |
| case "$(uname -s)" in |
| Linux*) OS=linux-x64;; |
| Darwin*) OS=mac-x64;; |
| *) echo "Error: unrecognized OS"; exit 1;; |
| esac |
| |
| export RUSTC=$FUCHSIA_DIR/buildtools/$OS/rust/bin/rustc |
| (cd $FUCHSIA_DIR; $FUCHSIA_DIR/buildtools/$OS/rust/bin/cargo run \ |
| --manifest-path $FUCHSIA_DIR/third_party/rust-mirrors/cargo-vendor/Cargo.toml \ |
| -- vendor --sync $FUCHSIA_DIR/third_party/rust-crates/rustc_deps/Cargo.toml \ |
| $FUCHSIA_DIR/third_party/rust-crates/rustc_deps/vendor) |
| |
| python $FUCHSIA_DIR/scripts/rust/check_rust_licenses.py \ |
| --directory $FUCHSIA_DIR/third_party/rust-crates/rustc_deps/vendor |