| # Copyright 2022 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # FIXME: Remove after next rust roll. |
| $CHANGELOG_SEEN |
| |
| [llvm] |
| # We use LLVM that we've built ourselves. |
| download-ci-llvm = false |
| |
| # Linux uses libstdc++ to build LLVM, and we want to statically link it into |
| # rustc. This affects how rustc links in libstdc++, not how LLVM does (which we |
| # build separately ourselves). |
| # |
| # For Clang, we dynamically link libstdc++, and provide the shared library along |
| # with the Clang binary. We could potentially do the same for Rustc in the |
| # future. |
| static-libstdcpp = true |
| |
| [rust] |
| download-rustc = false |
| channel = "dev" |
| description = "$PACKAGE_VERSION chromium" |
| |
| [build] |
| # Check that vendored dependencies match the root Cargo.lock. |
| locked-deps = true |
| |
| # Don't build documentation for the stdlib. |
| docs = false |
| |
| # We enable profiler so that PGO and coverage build options are available |
| # with the rust compiler we build. |
| profiler = true |
| |
| # With `extended = true`, `x.py install` will install rustc and the listed |
| # tools. This is the *only* way to install rust-analyzer-proc-macro-srv, which |
| # is necessary to use rust-analyzer. |
| extended = true |
| tools = [ |
| "cargo", |
| "clippy", |
| "rustfmt", |
| "rust-analyzer", |
| "rust-analyzer-proc-macro-srv", |
| "src", |
| ] |
| |
| [install] |
| prefix = "$INSTALL_DIR" |
| sysconfdir = "etc" |
| |
| [target.x86_64-pc-windows-msvc] |
| llvm-config = "$LLVM_BIN/llvm-config" |
| # TODO(danakj): We don't ship this in the clang toolchain package. |
| # ranlib = "$LLVM_BIN/llvm-ranlib" |
| ar = "$LLVM_BIN/llvm-lib" |
| cc = "$LLVM_BIN/clang-cl" |
| cxx = "$LLVM_BIN/clang-cl" |
| linker = "$LLVM_BIN/lld-link" |
| |
| [target.aarch64-apple-darwin] |
| llvm-config = "$LLVM_BIN/llvm-config" |
| # TODO(danakj): We don't ship this in the clang toolchain package. |
| # ranlib = "$LLVM_BIN/llvm-ranlib" |
| ar = "$LLVM_BIN/llvm-ar" |
| cc = "$LLVM_BIN/clang" |
| cxx = "$LLVM_BIN/clang++" |
| linker = "$LLVM_BIN/clang" |
| |
| [target.x86_64-apple-darwin] |
| llvm-config = "$LLVM_BIN/llvm-config" |
| # TODO(danakj): We don't ship this in the clang toolchain package. |
| # ranlib = "$LLVM_BIN/llvm-ranlib" |
| ar = "$LLVM_BIN/llvm-ar" |
| cc = "$LLVM_BIN/clang" |
| cxx = "$LLVM_BIN/clang++" |
| linker = "$LLVM_BIN/clang" |
| |
| [target.x86_64-unknown-linux-gnu] |
| llvm-config = "$LLVM_BIN/llvm-config" |
| # TODO(danakj): We don't ship this in the clang toolchain package. |
| # ranlib = "$LLVM_BIN/llvm-ranlib" |
| ar = "$LLVM_BIN/llvm-ar" |
| cc = "$LLVM_BIN/clang" |
| cxx = "$LLVM_BIN/clang++" |
| linker = "$LLVM_BIN/clang" |
| |