| # Copyright 2022 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. |
| |
| load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") |
| load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") |
| |
| http_archive( |
| name = "bazel_skylib", |
| sha256 = "f7be3474d42aae265405a592bb7da8e171919d74c16f082a5457840f06054728", |
| urls = [ |
| "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", |
| "https://github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", |
| ], |
| ) |
| |
| load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") |
| |
| bazel_skylib_workspace() |
| |
| load("@bazel_skylib//lib:versions.bzl", "versions") |
| |
| versions.check(minimum_bazel_version = "5.1.0") |
| |
| local_repository( |
| name = "rules_fuchsia", |
| path = "third_party/sdk-integration/bazel_rules_fuchsia", |
| ) |
| |
| local_repository( |
| name = "fuchsia_infra", |
| path = "third_party/fuchsia-infra-bazel-rules", |
| ) |
| |
| load( |
| "@rules_fuchsia//fuchsia:deps.bzl", |
| "fuchsia_clang_repository", |
| "fuchsia_sdk_repository", |
| "rules_fuchsia_deps", |
| ) |
| |
| rules_fuchsia_deps() |
| |
| fuchsia_sdk_repository( |
| name = "fuchsia_sdk", |
| ) |
| |
| register_toolchains("@fuchsia_sdk//:fuchsia_toolchain_sdk") |
| |
| fuchsia_clang_repository( |
| name = "fuchsia_clang", |
| ) |
| |
| load("@fuchsia_clang//:defs.bzl", "register_clang_toolchains") |
| |
| register_clang_toolchains() |
| |
| http_archive( |
| name = "rules_rust", |
| sha256 = "0cc7e6b39e492710b819e00d48f2210ae626b717a3ab96e048c43ab57e61d204", |
| urls = [ |
| "https://github.com/bazelbuild/rules_rust/releases/download/0.10.0/rules_rust-v0.10.0.tar.gz", |
| ], |
| ) |
| |
| load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies") |
| |
| rules_rust_dependencies() |
| |
| # With luck, we can start using the upstream nightly very soon. |
| http_archive( |
| name = "fuchsia_rust", |
| sha256 = "b59128b0bc586fc86a23512ad91ca9476e721ce0ad226022d7ed51a07fc2c2c7", |
| urls = [ |
| "https://chrome-infra-packages.appspot.com/dl/fuchsia/third_party/rust/linux-amd64/+/git_revision:569788e47ee3595c9c6f0e332844d982b3e991c2", |
| ], |
| type = "zip", |
| build_file_content = """ |
| load("@rules_rust//rust:toolchain.bzl", "rust_stdlib_filegroup") |
| |
| rust_stdlib_filegroup( |
| name = "rust_std", |
| srcs = glob(["**/*.rlib"]), |
| visibility = ["//visibility:public"], |
| ) |
| |
| exports_files([ |
| "bin/rustc", |
| "bin/rustdoc", |
| ]) |
| """ |
| ) |
| |
| register_toolchains( |
| "//tools:rust_linux", |
| "//tools:rust_fuchsia", |
| ) |