Created
June 21, 2018 09:10
-
-
Save nikomatsakis/397a24b1f52408e178f706d97a08606e to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Sample TOML configuration file for building Rust. | |
# | |
# To configure rustbuild, copy this file to the directory from which you will be | |
# running the build, and name it config.toml. | |
# | |
# All options are commented out by default in this file, and they're commented | |
# out with their default values. The build system by default looks for | |
# `config.toml` in the current directory of a build for build configuration, but | |
# a custom configuration file can also be specified with `--config` to the build | |
# system. | |
# ============================================================================= | |
# Tweaking how LLVM is compiled | |
# ============================================================================= | |
[llvm] | |
# Indicates whether the LLVM build is a Release or Debug build | |
#optimize = true | |
# Indicates whether an LLVM Release build should include debug info | |
#release-debuginfo = false | |
# Indicates whether the LLVM assertions are enabled or not | |
#assertions = false | |
# Indicates whether ccache is used when building LLVM | |
ccache = true | |
# or alternatively ... | |
#ccache = "/path/to/ccache" | |
# If an external LLVM root is specified, we automatically check the version by | |
# default to make sure it's within the range that we're expecting, but setting | |
# this flag will indicate that this version check should not be done. | |
#version-check = false | |
# Link libstdc++ statically into the librustc_llvm instead of relying on a | |
# dynamic version to be available. | |
#static-libstdcpp = false | |
# Tell the LLVM build system to use Ninja instead of the platform default for | |
# the generated build system. This can sometimes be faster than make, for | |
# example. | |
#ninja = false | |
# ============================================================================= | |
# General build configuration options | |
# ============================================================================= | |
[build] | |
# Build triple for the original snapshot compiler. This must be a compiler that | |
# nightlies are already produced for. The current platform must be able to run | |
# binaries of this build triple and the nightly will be used to bootstrap the | |
# first compiler. | |
#build = "x86_64-unknown-linux-gnu" # defaults to your host platform | |
# In addition to the build triple, other triples to produce full compiler | |
# toolchains for. Each of these triples will be bootstrapped from the build | |
# triple and then will continue to bootstrap themselves. This platform must | |
# currently be able to run all of the triples provided here. | |
#host = ["x86_64-unknown-linux-gnu"] # defaults to just the build triple | |
# In addition to all host triples, other triples to produce the standard library | |
# for. Each host triple will be used to produce a copy of the standard library | |
# for each target triple. | |
#target = ["x86_64-unknown-linux-gnu"] # defaults to just the build triple | |
# Instead of downloading the src/nightlies.txt version of Cargo specified, use | |
# this Cargo binary instead to build all Rust code | |
#cargo = "/path/to/bin/cargo" | |
# Instead of downloading the src/nightlies.txt version of the compiler | |
# specified, use this rustc binary instead as the stage0 snapshot compiler. | |
#rustc = "/path/to/bin/rustc" | |
# Flag to specify whether any documentation is built. If false, rustdoc and | |
# friends will still be compiled but they will not be used to generate any | |
# documentation. | |
#docs = true | |
# Indicate whether the compiler should be documented in addition to the standard | |
# library and facade crates. | |
#compiler-docs = false | |
# Indicate whether submodules are managed and updated automatically. | |
#submodules = true | |
# The path to (or name of) the GDB executable to use. This is only used for | |
# executing the debuginfo test suite. | |
#gdb = "gdb" | |
# The node.js executable to use. Note that this is only used for the emscripten | |
# target when running tests, otherwise this can be omitted. | |
#nodejs = "node" | |
# Python interpreter to use for various tasks throughout the build, notably | |
# rustdoc tests, the lldb python interpreter, and some dist bits and pieces. | |
# Note that Python 2 is currently required. | |
#python = "python2.7" | |
# Indicate whether the vendored sources are used for Rust dependencies or not | |
#vendor = false | |
# ============================================================================= | |
# Options for compiling Rust code itself | |
# ============================================================================= | |
[rust] | |
# Whether or not to optimize the compiler and standard library | |
#optimize = true | |
# Number of codegen units to use for each compiler invocation. A value of 0 | |
# means "the number of cores on this machine", and 1+ is passed through to the | |
# compiler. | |
codegen-units = 0 | |
# Whether or not debug assertions are enabled for the compiler and standard | |
# library | |
debug-assertions = true | |
# Whether or not debuginfo is emitted | |
debuginfo = false | |
# Whether or not line number debug information is emitted | |
debuginfo-lines = true | |
# Whether or not jemalloc is built and enabled | |
use-jemalloc = false | |
# Whether or not jemalloc is built with its debug option set | |
#debug-jemalloc = false | |
# Whether or not `panic!`s generate backtraces (RUST_BACKTRACE) | |
#backtrace = true | |
# The default linker that will be used by the generated compiler. Note that this | |
# is not the linker used to link said compiler. | |
#default-linker = "cc" | |
# The default ar utility that will be used by the generated compiler if LLVM | |
# cannot be used. Note that this is not used to assemble said compiler. | |
#default-ar = "ar" | |
# The "channel" for the Rust build to produce. The stable/beta channels only | |
# allow using stable features, whereas the nightly and dev channels allow using | |
# nightly features | |
#channel = "dev" | |
# By default the `rustc` executable is built with `-Wl,-rpath` flags on Unix | |
# platforms to ensure that the compiler is usable by default from the build | |
# directory (as it links to a number of dynamic libraries). This may not be | |
# desired in distributions, for example. | |
#rpath = true | |
# Flag indicating whether tests are compiled with optimizations (the -O flag) or | |
# with debuginfo (the -g flag) | |
#optimize-tests = true | |
#debuginfo-tests = true | |
# Flag indicating whether codegen tests will be run or not. If you get an error | |
# saying that the FileCheck executable is missing, you may want to disable this. | |
#codegen-tests = true | |
# ============================================================================= | |
# Options for specific targets | |
# | |
# Each of the following options is scoped to the specific target triple in | |
# question and is used for determining how to compile each target. | |
# ============================================================================= | |
[target.x86_64-unknown-linux-gnu] | |
# C compiler to be used to compiler C code and link Rust code. Note that the | |
# default value is platform specific, and if not specified it may also depend on | |
# what platform is crossing to what platform. | |
#cc = "cc" | |
# C++ compiler to be used to compiler C++ code (e.g. LLVM and our LLVM shims). | |
# This is only used for host targets. | |
#cxx = "c++" | |
# Path to the `llvm-config` binary of the installation of a custom LLVM to link | |
# against. Note that if this is specifed we don't compile LLVM at all for this | |
# target. | |
#llvm-config = "../path/to/llvm/root/bin/llvm-config" | |
# Path to the custom jemalloc static library to link into the standard library | |
# by default. This is only used if jemalloc is still enabled above | |
#jemalloc = "/path/to/jemalloc/libjemalloc_pic.a" | |
# If this target is for Android, this option will be required to specify where | |
# the NDK for the target lives. This is used to find the C compiler to link and | |
# build native code. | |
#android-ndk = "/path/to/ndk" | |
# The root location of the MUSL installation directory. The library directory | |
# will also need to contain libunwind.a for an unwinding implementation. Note | |
# that this option only makes sense for MUSL targets that produce statically | |
# linked binaries | |
#musl-root = "..." |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment