Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 1 | # Part of the Crubit project, under the Apache License v2.0 with LLVM |
| 2 | # Exceptions. See /LICENSE for license information. |
| 3 | # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
| 4 | |
| 5 | load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") |
| 6 | |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 7 | http_archive( |
| 8 | name = "rules_rust", |
Marcel Hlopko | 6762a03 | 2022-07-08 02:37:05 -0700 | [diff] [blame] | 9 | sha256 = "edb87c0d2ba70823fe3df7862676d695599314a4634b9758bd55f0e8f19c2751", |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 10 | urls = [ |
Marcel Hlopko | 6762a03 | 2022-07-08 02:37:05 -0700 | [diff] [blame] | 11 | "https://github.com/bazelbuild/rules_rust/releases/download/0.4.0/rules_rust-v0.4.0.tar.gz", |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 12 | ], |
| 13 | ) |
| 14 | |
| 15 | load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains") |
| 16 | |
| 17 | rules_rust_dependencies() |
| 18 | |
Marcel Hlopko | 84aeda4 | 2022-07-08 02:38:30 -0700 | [diff] [blame] | 19 | rust_register_toolchains( |
| 20 | edition = "2021", |
| 21 | iso_date = "2022-07-07", |
| 22 | version = "nightly",) |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 23 | |
| 24 | load("@rules_rust//crate_universe:repositories.bzl", "crate_universe_dependencies") |
| 25 | |
| 26 | crate_universe_dependencies() |
| 27 | |
| 28 | load("@rules_rust//crate_universe:defs.bzl", "crate", "crates_repository", "render_config") |
| 29 | |
| 30 | # after changing: |
| 31 | # CARGO_BAZEL_REPIN=1 bazelisk sync --only=crate_index |
| 32 | crates_repository( |
| 33 | name = "crate_index", |
| 34 | lockfile = "//:Cargo.Bazel.lock", |
| 35 | packages = { |
| 36 | "anyhow": crate.spec( |
| 37 | version = ">0.0.0", |
| 38 | ), |
| 39 | "itertools": crate.spec( |
| 40 | version = ">0.0.0", |
| 41 | ), |
| 42 | "maplit": crate.spec( |
| 43 | version = ">0.0.0", |
| 44 | ), |
| 45 | "memoffset": crate.spec( |
| 46 | version = ">0.0.0", |
| 47 | ), |
Michael VanBemmel | 5014b3e | 2022-08-03 16:27:34 -0700 | [diff] [blame] | 48 | "once_cell": crate.spec( |
| 49 | version = ">0.0.0", |
| 50 | ), |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 51 | "pin-project": crate.spec( |
| 52 | version = ">0.0.0", |
| 53 | ), |
| 54 | "proc-macro2": crate.spec( |
| 55 | version = ">0.0.0", |
| 56 | ), |
| 57 | "quote": crate.spec( |
| 58 | version = ">0.0.0", |
| 59 | ), |
Marcel Hlopko | 3a95e02 | 2022-07-08 00:26:16 -0700 | [diff] [blame] | 60 | "salsa": crate.spec( |
| 61 | version = ">0.0.0", |
| 62 | ), |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 63 | "serde": crate.spec( |
Marcel Hlopko | 668f534 | 2022-07-08 01:30:08 -0700 | [diff] [blame] | 64 | features = ["derive", "rc",], |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 65 | version = ">0.0.0", |
| 66 | ), |
| 67 | "serde_json": crate.spec( |
| 68 | version = ">0.0.0", |
| 69 | ), |
Marcel Hlopko | 9bcf75d | 2022-06-03 02:22:46 -0700 | [diff] [blame] | 70 | "static_assertions": crate.spec( |
Marcel Hlopko | 9bcf75d | 2022-06-03 02:22:46 -0700 | [diff] [blame] | 71 | version = ">0.0.0", |
| 72 | ), |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 73 | "syn": crate.spec( |
| 74 | features = ["extra-traits"], |
| 75 | version = ">0.0.0", |
| 76 | ), |
| 77 | }, |
| 78 | |
| 79 | render_config = render_config( |
| 80 | default_package_name = "", |
| 81 | ), |
| 82 | ) |
| 83 | |
| 84 | load("@crate_index//:defs.bzl", "crate_repositories") |
| 85 | |
| 86 | crate_repositories() |
| 87 | |
| 88 | # https://github.com/bazelbuild/bazel-skylib/releases/tag/1.2.1 |
| 89 | |
| 90 | http_archive( |
| 91 | name = "bazel_skylib", |
| 92 | sha256 = "f7be3474d42aae265405a592bb7da8e171919d74c16f082a5457840f06054728", |
| 93 | urls = [ |
| 94 | "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", |
| 95 | "https://github.com/bazelbuild/bazel-skylib/releases/download/1.2.1/bazel-skylib-1.2.1.tar.gz", |
| 96 | ], |
| 97 | ) |
| 98 | |
| 99 | load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") |
| 100 | |
| 101 | bazel_skylib_workspace() |
| 102 | |
| 103 | # https://abseil.io/docs/cpp/quickstart#set-up-a-bazel-workspace-to-work-with-abseil |
Lukasz Anforowicz | adb512f | 2022-08-26 07:04:42 -0700 | [diff] [blame] | 104 | # |
| 105 | # From https://abseil.io/about/releases: Abseil encourages developers to “live |
| 106 | # at head”. 92fdbfb301f8b301b28ab5c99e7361e775c2fb8a was the head/ToT on |
| 107 | # 2022-08-25. |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 108 | http_archive( |
| 109 | name = "absl", |
Lukasz Anforowicz | adb512f | 2022-08-26 07:04:42 -0700 | [diff] [blame] | 110 | sha256 = "feea6e761ab9df667f054531b4e4d5d143eaa78f2c40dbf5ba45289142cbcc1d", |
| 111 | strip_prefix = "abseil-cpp-92fdbfb301f8b301b28ab5c99e7361e775c2fb8a", |
| 112 | urls = ["https://github.com/abseil/abseil-cpp/archive/92fdbfb301f8b301b28ab5c99e7361e775c2fb8a.zip"], |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 113 | ) |
| 114 | |
Luca Versari | c21d92f | 2022-05-25 00:56:30 -0700 | [diff] [blame] | 115 | # https://google.github.io/googletest/quickstart-bazel.html |
| 116 | |
| 117 | http_archive( |
| 118 | name = "com_google_googletest", |
| 119 | urls = ["https://github.com/google/googletest/archive/609281088cfefc76f9d0ce82e1ff6c30cc3591e5.zip"], |
| 120 | strip_prefix = "googletest-609281088cfefc76f9d0ce82e1ff6c30cc3591e5", |
| 121 | ) |
| 122 | |
Matthew Riley | 03a01e3 | 2022-05-24 10:16:04 -0700 | [diff] [blame] | 123 | # Create the "loader" repository, then use it to configure the desired LLVM |
| 124 | # repository. For more details, see the comment in bazel/llvm.bzl. |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 125 | |
Matthew Riley | 03a01e3 | 2022-05-24 10:16:04 -0700 | [diff] [blame] | 126 | load("//bazel:llvm.bzl", "llvm_loader_repository_dependencies", "llvm_loader_repository") |
| 127 | llvm_loader_repository_dependencies() |
| 128 | llvm_loader_repository(name = "llvm-loader") |
Googler | 75c7ad0 | 2022-05-23 13:27:49 -0700 | [diff] [blame] | 129 | |
Matthew Riley | 03a01e3 | 2022-05-24 10:16:04 -0700 | [diff] [blame] | 130 | load("@llvm-loader//:llvm.bzl", "llvm_repository") |
| 131 | llvm_repository(name = "llvm-project") |