84a53ea00a
- adjust build process and add package for Rust source - Update to version 1.19 - Language updates: + [Numeric fields can now be used for creating tuple structs.][41145] [RFC 1506] For example `struct Point(u32, u32); let x = Point { 0: 7, 1: 0 };`. + [Macro recursion limit increased to 1024 from 64.][41676] + [Added lint for detecting unused macros.][41907] + [`loop` can now return a value with `break`.][42016] [RFC 1624] For example: `let x = loop { break 7; };` + [C compatible `union`s are now available.][42068] [RFC 1444] They can only contain `Copy` types and cannot have a `Drop` implementation. Example: `union Foo { bar: u8, baz: usize }` + [Non capturing closures can now be coerced into `fn`s,][42162] [RFC 1558] Example: `let foo: fn(u8) -> u8 = |v: u8| { v };` - Compiler updates: + [Add support for bootstrapping the Rust compiler toolchain on Android.][41370] + [Change `arm-linux-androideabi` to correspond to the `armeabi` official ABI.][41656] If you wish to continue targeting the `armeabi-v7a` ABI you should use `--target armv7-linux-androideabi`. + [Fixed ICE when removing a source file between compilation sessions.][41873] + [Minor optimisation of string operations.][42037] + [Compiler error message is now `aborting due to previous error(s)` instead of `aborting due to N previous errors`][42150] This was previously inaccurate and would only count certain kinds of errors. + [The compiler now supports Visual Studio 2017][42225] + [The compiler is now built against LLVM 4.0.1 by default][42948] + [Added a lot][42264] of [new error codes][42302] + [Added `target-feature=+crt-static` option][37406] [RFC 1721] Which allows libraries with C Run-time Libraries(CRT) to be statically linked. + [Fixed various ARM codegen bugs][42740] - Librarie updates: + [`String` now implements `FromIterator<Cow<'a, str>>` and `Extend<Cow<'a, str>>`][41449] + [`Vec` now implements `From<&mut [T]>`][41530] + [`Box<[u8]>` now implements `From<Box<str>>`][41258] + [`SplitWhitespace` now implements `Clone`][41659] + [`[u8]::reverse` is now 5x faster and `[u16]::reverse` is now 1.5x faster][41764] + [`eprint!` and `eprintln!` macros added to prelude.][41192] Same as the `print!` macros, but for printing to stderr. - Stabilized APIs + [`OsString::shrink_to_fit`] + [`cmp::Reverse`] + [`Command::envs`] + [`thread::ThreadId`] - Misc + [Added `rust-windbg.cmd`][39983] for loading rust `.natvis` files in the Windows Debugger. + [Rust will now release XZ compressed packages][rust-installer/57] + [rustup will now prefer to download rust packages with XZ compression][rustup/1100] over GZip packages. + [Added the ability to escape `#` in rust documentation][41785] By adding additional `#`'s ie. `##` is now `#` - Temporarily disable generation of compiler docs due to build issue OBS-URL: https://build.opensuse.org/request/show/520410 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust?expand=0&rev=112
82 lines
2.1 KiB
TOML
82 lines
2.1 KiB
TOML
# =============================================================================
|
|
# Tweaking how LLVM is compiled
|
|
# =============================================================================
|
|
[llvm]
|
|
optimize = true
|
|
release-debuginfo = false
|
|
#assertions = false
|
|
ccache = true
|
|
#version-check = false
|
|
static-libstdcpp = false
|
|
ninja = true
|
|
|
|
targets = "X86;ARM;AArch64;Mips;PowerPC;SystemZ;JSBackend;MSP430;Sparc;NVPTX"
|
|
|
|
# =============================================================================
|
|
# General build configuration options
|
|
# =============================================================================
|
|
[build]
|
|
build = "<rust-triple>"
|
|
host = ["<rust-triple>"]
|
|
target = ["<rust-triple>"]
|
|
|
|
cargo = "<cargo-bin>"
|
|
rustc = "/usr/bin/rustc"
|
|
|
|
docs = true
|
|
compiler-docs = false
|
|
|
|
# Indicate whether submodules are managed and updated automatically.
|
|
submodules = false
|
|
#gdb = "gdb"
|
|
#nodejs = "node"
|
|
#python = "python2.7"
|
|
|
|
vendor = true
|
|
|
|
full-bootstrap = false
|
|
|
|
# Enable a build of the and extended rust tool set which is not only the
|
|
# compiler but also tools such as Cargo. This will also produce "combined
|
|
# installers" which are used to install Rust and Cargo together. This is
|
|
# disabled by default.
|
|
extended = false
|
|
|
|
# Verbosity level: 0 == not verbose, 1 == verbose, 2 == very verbose
|
|
verbose = 2
|
|
|
|
# =============================================================================
|
|
# General install configuration options
|
|
# =============================================================================
|
|
[install]
|
|
prefix = "<prefix>"
|
|
libdir = "<libdir>"
|
|
mandir = "<mandir>"
|
|
docdir = "<docdir>"
|
|
|
|
# =============================================================================
|
|
# Options for compiling Rust code itself
|
|
# =============================================================================
|
|
[rust]
|
|
optimize = true
|
|
codegen-units = 0 # 0 = core-count
|
|
|
|
debug-assertions = false
|
|
debuginfo = true
|
|
debuginfo-lines = false
|
|
debuginfo-only-std = false
|
|
|
|
use-jemalloc = false
|
|
debug-jemalloc = false
|
|
|
|
backtrace = true
|
|
#default-linker = "cc"
|
|
#default-ar = "ar"
|
|
|
|
channel = "stable"
|
|
|
|
rpath = false
|
|
optimize-tests = true
|
|
debuginfo-tests = true
|
|
codegen-tests = false
|