Skip to content

Latest commit

 

History

History
76 lines (54 loc) · 1.55 KB

README.md

File metadata and controls

76 lines (54 loc) · 1.55 KB

Abstract

Rust を Bazel でビルドする実験リポジトリです。

Dependencies

Notice

bazel で ビルドを行うため、通常のRustアプリケーションとは異なるディレクトリ構成になっています。

tree
.
├── BUILD *1
├── README.md
├── WORKSPACE
├── cargo
│   ├── BUILD *2
│   ├── Cargo.lock
│   ├── Cargo.toml
│   ├── crates.bzl
│   └── remote
└── src
    └── main.rs

BUILD *1 は rules_rust を使って私が作成したファイルで、BUILD *2 は cargo-raze が自動生成したファイルになります。 ※ cargo/ 以下は、 Cargo.toml 以外は自動生成されます。

Usage

1. cargo raze のインストール

$ cargo install cargo-raze

2. Cargo.toml cargo raze の設定を追記

:
[raze]
workspace_path = "//cargo"
target = "x86_64-apple-darwin"
genmode = "Remote"

3. cargo raze の実行

cd ./cargo
cargo raze

remote/いろいろ , BUILD , crates.bzl が生成されます。

4. WORKSPACE に リモート・ライブラリのフェッチ関数を追記

load("//cargo:crates.bzl", "raze_fetch_remote_crates")

raze_fetch_remote_crates()

5. bazel build

bazel build //:rust_bazel_sandbox