summaryrefslogtreecommitdiffstats
path: root/config.toml.example
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2017-08-26 15:01:48 -0700
committerAlex Crichton <alex@alexcrichton.com>2017-08-27 18:53:30 -0700
commita9b0a7ba935c79b45effcc2f55eb056bd087d9a4 (patch)
tree05704d973b5e31cb63d59706dab4a919d0884bad /config.toml.example
parentAuto merge of #44028 - nrc:rls-update, r=alexcrichton (diff)
downloadgrust-a9b0a7ba935c79b45effcc2f55eb056bd087d9a4.tar.gz
grust-a9b0a7ba935c79b45effcc2f55eb056bd087d9a4.tar.bz2
grust-a9b0a7ba935c79b45effcc2f55eb056bd087d9a4.tar.xz
rustbuild: Rewrite the configure script in Python
This commit rewrites our ancient `./configure` script from shell into Python. The impetus for this change is to remove `config.mk` which is just a vestige of the old makefile build system at this point. Instead all configuration is now solely done through `config.toml`. The python script allows us to more flexibly program (aka we can use loops easily) and create a `config.toml` which is based off `config.toml.example`. This way we can preserve comments and munge various values as we see fit. It is intended that the configure script here is a drop-in replacement for the previous configure script, no functional change is intended. Also note that the rationale for this is also because our build system requires Python, so having a python script a bit earlier shouldn't cause too many problems. Closes #40730
Diffstat (limited to 'config.toml.example')
-rw-r--r--config.toml.example31
1 files changed, 31 insertions, 0 deletions
diff --git a/config.toml.example b/config.toml.example
index fd1f03b9d0..a20e6e8f02 100644
--- a/config.toml.example
+++ b/config.toml.example
@@ -73,6 +73,10 @@
73# controlled by rustbuild's -j parameter. 73# controlled by rustbuild's -j parameter.
74#link-jobs = 0 74#link-jobs = 0
75 75
76# When invoking `llvm-config` this configures whether the `--shared` argument is
77# passed to prefer linking to shared libraries.
78#link-shared = false
79
76# ============================================================================= 80# =============================================================================
77# General build configuration options 81# General build configuration options
78# ============================================================================= 82# =============================================================================
@@ -166,6 +170,15 @@
166# to +10 on Unix platforms, and by using a "low priority" job object on Windows. 170# to +10 on Unix platforms, and by using a "low priority" job object on Windows.
167#low-priority = false 171#low-priority = false
168 172
173# Arguments passed to the `./configure` script, used during distcheck. You
174# probably won't fill this in but rather it's filled in by the `./configure`
175# script.
176#configure-args = []
177
178# Indicates that a local rebuild is ocurring instead of a full bootstrap,
179# essentially skipping stage0 as the local compiler is recompiling itself again.
180#local-rebuild = false
181
169# ============================================================================= 182# =============================================================================
170# General install configuration options 183# General install configuration options
171# ============================================================================= 184# =============================================================================
@@ -195,6 +208,13 @@
195# ============================================================================= 208# =============================================================================
196[rust] 209[rust]
197 210
211# Indicates that the build should be optimized for debugging Rust. Note that
212# this is typically not what you want as it takes an incredibly large amount of
213# time to have a debug-mode rustc compile any code (notably libstd). If this
214# value is set to `true` it will affect a number of configuration options below
215# as well, if unconfigured.
216#debug = false
217
198# Whether or not to optimize the compiler and standard library 218# Whether or not to optimize the compiler and standard library
199# Note: the slowness of the non optimized compiler compiling itself usually 219# Note: the slowness of the non optimized compiler compiling itself usually
200# outweighs the time gains in not doing optimizations, therefore a 220# outweighs the time gains in not doing optimizations, therefore a
@@ -249,6 +269,10 @@
249# desired in distributions, for example. 269# desired in distributions, for example.
250#rpath = true 270#rpath = true
251 271
272# Suppresses extraneous output from tests to ensure the output of the test
273# harness is relatively clean.
274#quiet-tests = false
275
252# Flag indicating whether tests are compiled with optimizations (the -O flag) or 276# Flag indicating whether tests are compiled with optimizations (the -O flag) or
253# with debuginfo (the -g flag) 277# with debuginfo (the -g flag)
254#optimize-tests = true 278#optimize-tests = true
@@ -261,6 +285,9 @@
261# Flag indicating whether git info will be retrieved from .git automatically. 285# Flag indicating whether git info will be retrieved from .git automatically.
262#ignore-git = false 286#ignore-git = false
263 287
288# When creating source tarballs whether or not to create a source tarball.
289#dist-src = false
290
264# ============================================================================= 291# =============================================================================
265# Options for specific targets 292# Options for specific targets
266# 293#
@@ -304,6 +331,10 @@
304# linked binaries 331# linked binaries
305#musl-root = "..." 332#musl-root = "..."
306 333
334# Used in testing for configuring where the QEMU images are located, you
335# probably don't want to use this.
336#qemu-rootfs = "..."
337
307# ============================================================================= 338# =============================================================================
308# Distribution options 339# Distribution options
309# 340#