commit | 8417c8954efbd0cefc8dd84517b2afff5e907d5a | [log] [tgz] |
---|---|---|
author | Laurent Le Brun <laurentlb@gmail.com> | Tue Jun 04 22:41:46 2019 +0200 |
committer | Alex McArther <acmcarther@google.com> | Tue Jun 04 13:41:46 2019 -0700 |
tree | 1ab98eab48faa0b29a2963d9597b5b55b75f6200 | |
parent | adccbbad58411657102ab8168aee7c5f4ff3af4c [diff] |
Update code for compatibility to Bazel 0.27 (#232) There are two changes in Bazel 0.27: - .libraries_to_link will return a depset - direct iteration over depset will be forbidden For compatibility, we add a (temporary) type test.
This repository provides rules for building Rust projects with Bazel.
with an overview here.
To use the Rust rules, add the following to your WORKSPACE
file to add the external repositories for the Rust toolchain:
http_archive( name = "io_bazel_rules_rust", sha256 = "c82118824b2448b77146f1dae97b6eaa717babedad0822aca4879f3cbbf2b7b5", strip_prefix = "rules_rust-3228ccd3814c2ad0d7307d2f87fb8ff9616149d7", urls = [ # Master branch as of 2018-12-11 "https://github.com/bazelbuild/rules_rust/archive/3228ccd3814c2ad0d7307d2f87fb8ff9616149d7.tar.gz", ], ) http_archive( name = "bazel_skylib", sha256 = "eb5c57e4c12e68c0c20bc774bfbc60a568e800d025557bc4ea022c6479acc867", strip_prefix = "bazel-skylib-0.6.0", url = "https://github.com/bazelbuild/bazel-skylib/archive/0.6.0.tar.gz", ) load("@io_bazel_rules_rust//rust:repositories.bzl", "rust_repositories") rust_repositories() load("@io_bazel_rules_rust//:workspace.bzl", "bazel_version") bazel_version(name = "bazel_version")
The rules are under active development, as such the lastest commit on the master branch should be used. master
currently requires Bazel >= 0.17.0.
Currently the most common approach to managing external dependencies is using cargo-raze to generate BUILD
files for Cargo crates.
cargo_crate
workspace rule for pulling crates from Cargo.