| The build system of cg_clif. |
| |
| USAGE: |
| ./y.rs prepare [--out-dir DIR] |
| ./y.rs build [--debug] [--sysroot none|clif|llvm] [--out-dir DIR] [--no-unstable-features] |
| ./y.rs test [--debug] [--sysroot none|clif|llvm] [--out-dir DIR] [--no-unstable-features] |
| ./y.rs abi-cafe [--debug] [--sysroot none|clif|llvm] [--out-dir DIR] [--no-unstable-features] |
| ./y.rs bench [--debug] [--sysroot none|clif|llvm] [--out-dir DIR] [--no-unstable-features] |
| |
| OPTIONS: |
| --debug |
| Build cg_clif and the standard library in debug mode rather than release mode. |
| Warning: An unoptimized cg_clif is very slow. |
| |
| --sysroot none|clif|llvm |
| Which sysroot libraries to use: |
| `none` will not include any standard library in the sysroot. |
| `clif` will build the standard library using Cranelift. |
| `llvm` will use the pre-compiled standard library of rustc which is compiled with LLVM. |
| |
| --out-dir DIR |
| Specify the directory in which the download, build and dist directories are stored. |
| By default this is the working directory. |
| |
| --no-unstable-features |
| Some features are not yet ready for production usage. This option will disable these |
| features. This includes the JIT mode and inline assembly support. |
| |
| REQUIREMENTS: |
| * Rustup: The build system has a hard coded dependency on rustup to install the right nightly |
| version and make sure it is used where necessary. |
| * Git: `./y.rs prepare` uses git for applying patches and on Windows for downloading test repos. |
| * Curl and tar (non-Windows only): Used by `./y.rs prepare` to download a single commit for |
| repos. Git will be used to clone the whole repo when using Windows. |
| * [Hyperfine](https://github.com/sharkdp/hyperfine/): Used for benchmarking with `./y.rs bench`. |