Accepting request 520410 from home:luke_nukem:branches:devel:languages:rust
- 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
This commit is contained in:
committed by
Git OBS Bridge
parent
876b9d2c70
commit
84a53ea00a
73
rust.spec
73
rust.spec
@@ -17,7 +17,7 @@
|
||||
#
|
||||
|
||||
|
||||
%global prev_rust 1.17.0
|
||||
%global prev_rust 1.18.0
|
||||
%global cargo_version 0.18.0
|
||||
%global abi gnu
|
||||
%ifarch s390x
|
||||
@@ -44,9 +44,11 @@
|
||||
%endif
|
||||
%global rust_triple %{_arch}-unknown-linux-%{abi}
|
||||
%global dl_url https://static.rust-lang.org/dist
|
||||
%global common_libdir %{_prefix}/lib
|
||||
%global rustlibdir %{common_libdir}/rustlib
|
||||
%bcond_with bootstrap
|
||||
Name: rust
|
||||
Version: 1.18.0
|
||||
Version: 1.19.0
|
||||
Release: 0
|
||||
Summary: A systems programming language
|
||||
License: MIT or Apache-2.0
|
||||
@@ -148,6 +150,16 @@ Conflicts: otherproviders(rust-gdb)
|
||||
This subpackage provides pretty printers and a wrapper script for
|
||||
invoking gdb on rust binaries.
|
||||
|
||||
%package -n src
|
||||
Summary: Sources for the Rust standard library
|
||||
Group: Development/Languages/Other
|
||||
BuildArch: noarch
|
||||
|
||||
%description -n src
|
||||
This package includes source files for the Rust standard library. This
|
||||
is commonly used for function detail lookups in helper programs such
|
||||
as RLS or racer.
|
||||
|
||||
%prep
|
||||
%ifarch x86_64
|
||||
%setup -q -T -b 100 -n cargo-%{cargo_version}-%{rust_triple}
|
||||
@@ -184,7 +196,7 @@ invoking gdb on rust binaries.
|
||||
sed -e 's:<cargo-bin>:%{cargo_bin}:g' \
|
||||
-e 's:<rust-triple>:%{rust_triple}:g' \
|
||||
-e 's:<prefix>:%{_prefix}:g' \
|
||||
-e 's:<libdir>:%{_prefix}/lib:g' \
|
||||
-e 's:<libdir>:%{common_libdir}:g' \
|
||||
-e 's:<mandir>:%{_mandir}:g' \
|
||||
-e 's:<docdir>:%{_docdir}/%{name}:g' \
|
||||
%{SOURCE1} > config.toml
|
||||
@@ -198,11 +210,12 @@ export CPPFLAGS="%{optflags}" # eliminate complain from RPMlint
|
||||
sed -e 's:<cargo-bin>:%{cargo_bin}:g' \
|
||||
-e 's:<rust-triple>:%{rust_triple}:g' \
|
||||
-e 's:<prefix>:%{buildroot}%{_prefix}:g' \
|
||||
-e 's:<libdir>:%{buildroot}%{_prefix}/lib:g' \
|
||||
-e 's:<libdir>:%{buildroot}%{common_libdir}:g' \
|
||||
-e 's:<mandir>:%{buildroot}%{_mandir}:g' \
|
||||
-e 's:<docdir>:%{buildroot}%{_docdir}/%{name}:g' \
|
||||
%{SOURCE1} > config.toml
|
||||
./x.py dist --install
|
||||
./x.py install
|
||||
./x.py install src
|
||||
# Fix any rpaths if needed
|
||||
chrpath -d %{buildroot}%{_prefix}/lib/lib*.so
|
||||
|
||||
@@ -211,11 +224,11 @@ chrpath -d %{buildroot}%{_prefix}/lib/lib*.so
|
||||
chmod -R -x+X %{buildroot}%{_docdir}/%{name}/html
|
||||
|
||||
# Remove surplus files
|
||||
rm %{buildroot}%{_prefix}/lib/rustlib/components
|
||||
rm %{buildroot}%{_prefix}/lib/rustlib/manifest-rust*
|
||||
rm %{buildroot}%{_prefix}/lib/rustlib/install.log
|
||||
rm %{buildroot}%{_prefix}/lib/rustlib/uninstall.sh
|
||||
rm %{buildroot}%{_prefix}/lib/rustlib/rust-installer-version
|
||||
rm %{buildroot}%{rustlibdir}/components
|
||||
rm %{buildroot}%{rustlibdir}/manifest-rust*
|
||||
rm %{buildroot}%{rustlibdir}/install.log
|
||||
rm %{buildroot}%{rustlibdir}/uninstall.sh
|
||||
rm %{buildroot}%{rustlibdir}/rust-installer-version
|
||||
# Remove lockfile to avoid errors.
|
||||
rm %{buildroot}%{_docdir}/%{name}/html/.lock
|
||||
|
||||
@@ -253,32 +266,38 @@ rm %{buildroot}%{_defaultdocdir}/%{name}/{COPYRIGHT,LICENSE-APACHE,LICENSE-MIT}
|
||||
|
||||
%files -n rust-std
|
||||
%defattr(-,root,root)
|
||||
%dir %{_prefix}/lib/rustlib
|
||||
%dir %{_prefix}/lib/rustlib/%{rust_triple}
|
||||
%dir %{_prefix}/lib/rustlib/%{rust_triple}/lib
|
||||
%{_prefix}/lib/rustlib/%{rust_triple}/lib/*.rlib
|
||||
%{_prefix}/lib/rustlib/%{rust_triple}/lib/*.so
|
||||
%dir %{rustlibdir}
|
||||
%dir %{rustlibdir}/%{rust_triple}
|
||||
%dir %{rustlibdir}/%{rust_triple}/lib
|
||||
%{rustlibdir}/%{rust_triple}/lib/*.rlib
|
||||
%{rustlibdir}/%{rust_triple}/lib/*.so
|
||||
|
||||
%files -n rust-gdb
|
||||
%defattr(-,root,root,-)
|
||||
%{_bindir}/rust-gdb
|
||||
%dir %{_prefix}/lib/rustlib
|
||||
%dir %{_prefix}/lib/rustlib/etc
|
||||
%{_prefix}/lib/rustlib/etc/debugger_pretty_printers_common.py
|
||||
%{_prefix}/lib/rustlib/etc/gdb_load_rust_pretty_printers.py
|
||||
%{_prefix}/lib/rustlib/etc/gdb_rust_pretty_printing.py
|
||||
%{_prefix}/lib/rustlib/etc/lldb_rust_formatters.py
|
||||
%dir %{rustlibdir}
|
||||
%dir %{rustlibdir}/etc
|
||||
%{rustlibdir}/etc/debugger_pretty_printers_common.py
|
||||
%{rustlibdir}/etc/gdb_load_rust_pretty_printers.py
|
||||
%{rustlibdir}/etc/gdb_rust_pretty_printing.py
|
||||
%{rustlibdir}/etc/lldb_rust_formatters.py
|
||||
|
||||
%files -n rust-doc
|
||||
%defattr(-,root,root)
|
||||
%license %{_docdir}/%{name}/html/FiraSans-LICENSE.txt
|
||||
%license %{_docdir}/%{name}/html/Heuristica-LICENSE.txt
|
||||
%license %{_docdir}/%{name}/html/LICENSE-APACHE.txt
|
||||
%license %{_docdir}/%{name}/html/LICENSE-MIT.txt
|
||||
%license %{_docdir}/%{name}/html/SourceCodePro-LICENSE.txt
|
||||
%license %{_docdir}/%{name}/html/SourceSerifPro-LICENSE.txt
|
||||
## %license %{_docdir}/%{name}/html/FiraSans-LICENSE.txt
|
||||
## %license %{_docdir}/%{name}/html/Heuristica-LICENSE.txt
|
||||
## %license %{_docdir}/%{name}/html/LICENSE-APACHE.txt
|
||||
## %license %{_docdir}/%{name}/html/LICENSE-MIT.txt
|
||||
## %license %{_docdir}/%{name}/html/SourceCodePro-LICENSE.txt
|
||||
## %license %{_docdir}/%{name}/html/SourceSerifPro-LICENSE.txt
|
||||
%dir %{_docdir}/%{name}
|
||||
%dir %{_docdir}/%{name}/html
|
||||
%doc %{_docdir}/%{name}/html/*
|
||||
|
||||
%files -n src
|
||||
%defattr(-,root,root)
|
||||
%dir %{rustlibdir}
|
||||
%dir %{rustlibdir}/src
|
||||
%{rustlibdir}/src/*
|
||||
|
||||
%changelog
|
||||
|
Reference in New Issue
Block a user