blob: cf5c53c73b22016eb2d8a1513b4c6ede7d002fe5 [file] [log] [blame]
# Copyright 2023 Google Inc. All Rights Reserved.
# Licensed under the Apache License, Version 2.0, see LICENSE for details.
# SPDX-License-Identifier: Apache-2.0
workspace(name = "matcha")
local_repository(
name = "lowrisc_opentitan",
path = "../opentitan-upstream",
)
# TODO(b/248356571): Replace isp with vendor.
new_local_repository(
name = "isp",
build_file = "third_party/vendor/BUILD",
path = "../../hw/ip/isp",
)
new_local_repository(
name = "kelvin-gcc",
build_file = "third_party/kelvin-gcc/BUILD",
path = "../../cache/toolchain_kelvin",
)
new_local_repository(
name = "kelvin-binary",
build_file = "third_party/kelvin-binary/BUILD",
path = "../../out/kelvin/sw/bazel_out",
)
# CRT is the Compiler Repository Toolkit. It contains the configuration for
# the windows compiler.
load("@lowrisc_opentitan//third_party/crt:repos.bzl", "crt_repos")
crt_repos()
load("@crt//:repos.bzl", "crt_repos")
crt_repos()
load("@crt//:deps.bzl", "crt_deps")
crt_deps()
load("@crt//config:registration.bzl", "crt_register_toolchains")
crt_register_toolchains(riscv32 = True)
load("//platforms:registration.bzl", "kelvin_register_toolchain")
kelvin_register_toolchain()
# Tools for release automation
load("@lowrisc_opentitan//third_party/github:repos.bzl", "github_tools_repos")
github_tools_repos()
# Python Toolchain + PIP Dependencies
load("@lowrisc_opentitan//third_party/python:repos.bzl", "python_repos")
python_repos()
load("@lowrisc_opentitan//third_party/python:deps.bzl", "python_deps")
python_deps()
load("@lowrisc_opentitan//third_party/python:pip.bzl", "pip_deps")
pip_deps()
# Google/Bazel dependencies. This needs to be after Python initialization
# so that our preferred python configuration takes precedence.
load("@lowrisc_opentitan//third_party/google:repos.bzl", "google_repos")
google_repos()
load("@lowrisc_opentitan//third_party/google:deps.bzl", "google_deps")
google_deps()
# Rust Toolchain + crates.io Dependencies
load("@lowrisc_opentitan//third_party/rust:repos.bzl", "rust_repos")
rust_repos()
load("@lowrisc_opentitan//third_party/rust:deps.bzl", "rust_deps")
rust_deps()
load("@rules_rust//crate_universe:repositories.bzl", "crate_universe_dependencies")
crate_universe_dependencies(bootstrap = True)
load("@lowrisc_opentitan//third_party/rust/crates:crates.bzl", "crate_repositories")
crate_repositories()
# The nonhermetic_repo imports environment variables needed to run vivado.
load("@lowrisc_opentitan//rules:nonhermetic.bzl", "nonhermetic_repo")
nonhermetic_repo(name = "nonhermetic")
# FreeRTOS; used by the OTTF
load("@lowrisc_opentitan//third_party/freertos:repos.bzl", "freertos_repos")
freertos_repos()
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
# Binary firmware image for HyperDebug
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file")
http_file(
name = "hyperdebug_firmware",
sha256 = "e9c93d2935b9b6a571b547f20fe6177c48a909535d87533b7a0c64fb049bd643",
urls = ["https://storage.googleapis.com/aoa-recovery-test-images/hyperdebug_v2.0.20491-956ccf530.bin"],
)