Accepting request 1099159 from home:firstyear:branches:devel:languages:rust
Submit new package rust1.71 OBS-URL: https://build.opensuse.org/request/show/1099159 OBS-URL: https://build.opensuse.org/package/show/devel:languages:rust/rust1.71?expand=0&rev=1
This commit is contained in:
commit
a137309302
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
96
README.suse-maint
Normal file
96
README.suse-maint
Normal file
@ -0,0 +1,96 @@
|
|||||||
|
# Automatic updating via _service
|
||||||
|
|
||||||
|
Edit the rustX.YY.spec file, and update the variables related with the
|
||||||
|
version:
|
||||||
|
|
||||||
|
- *version_suffix*: for the new version of Rust, in X.YY format
|
||||||
|
- *version_current*: for the new version of Rust, in X.YY.Z format
|
||||||
|
- *version_previous*: for the previous version of Rust, in X.YY.X
|
||||||
|
format
|
||||||
|
|
||||||
|
Generate the spec files for the different bootstrap compilers. This
|
||||||
|
will take the version from the main spec file.
|
||||||
|
|
||||||
|
./update-bootstrap.sh
|
||||||
|
|
||||||
|
After that, we can execute the service file:
|
||||||
|
|
||||||
|
osc service disabledrun
|
||||||
|
|
||||||
|
This will download the new bootstrap compilers and the signature file.
|
||||||
|
|
||||||
|
If `osc` complains about a missing service component, double check
|
||||||
|
that the components are installed. For example, for Tumbleweed:
|
||||||
|
|
||||||
|
zypper in obs-service-download_files obs-service-refresh_patches
|
||||||
|
|
||||||
|
Finally, update the changelog based on the releases notes:
|
||||||
|
|
||||||
|
https://github.com/rust-lang/rust/blob/master/RELEASES.md
|
||||||
|
|
||||||
|
# Updating to a new version from upstream
|
||||||
|
|
||||||
|
(Original link: https://en.opensuse.org/Rust)
|
||||||
|
|
||||||
|
Branch the rust package in the devel:languages:rust project.
|
||||||
|
|
||||||
|
You'll need to download precompiled binaries for the compiler used for
|
||||||
|
bootstrapping, and the actual source code for the compiler. In the
|
||||||
|
"Other Installation Methods" page listed below, note that it shows
|
||||||
|
links to .tar.gz packages and their .tar.gz.asc GPG signatures, but
|
||||||
|
.tar.xz versions are also available.
|
||||||
|
|
||||||
|
*Binaries for bootstrapping* - Go to the "Other Installation Methods"
|
||||||
|
page from rust-lang.org and scroll down to the "Standalone installers"
|
||||||
|
section. Download the following:
|
||||||
|
|
||||||
|
- rust-<version>-aarch64-unknown-linux-gnu.tar.xz
|
||||||
|
- rust-<version>-armv7-unknown-linux-gnueabihf.tar.xz
|
||||||
|
- rust-<version>-i686-unknown-linux-gnu.tar.xz
|
||||||
|
- rust-<version>-powerpc64le-unknown-linux-gnu.tar.xz
|
||||||
|
- rust-<version>-powerpc64-unknown-linux-gnu.tar.xz
|
||||||
|
- rust-<version>-s390x-unknown-linux-gnu.tar.xz
|
||||||
|
- rust-<version>-x86_64-unknown-linux-gnu.tar.xz
|
||||||
|
|
||||||
|
*Compiler source code* - From the same page, but now in the "Source
|
||||||
|
code" section, download this:
|
||||||
|
|
||||||
|
rustc-<version>-src.tar.xz
|
||||||
|
|
||||||
|
Update those files in the source RPM. Check that all the patches still
|
||||||
|
apply.
|
||||||
|
|
||||||
|
Update the version number in rust.spec.
|
||||||
|
|
||||||
|
Add the release notes to rust.changes.
|
||||||
|
|
||||||
|
# Running the tests locally
|
||||||
|
|
||||||
|
The tests are executed outside the main package using the _multibuild
|
||||||
|
feature of OBS. This is convenient for several reasons:
|
||||||
|
|
||||||
|
* We force the installation of the new rustc / cargo in the system
|
||||||
|
|
||||||
|
* All the test / bootstrabs and utilities are compiled using the new
|
||||||
|
compiler, and not the one used to generate the initial Rust
|
||||||
|
compiler.
|
||||||
|
|
||||||
|
* A test fail do not block the release. Upstream tests can be
|
||||||
|
affected by some environment application, and there is some delay
|
||||||
|
for the fix.
|
||||||
|
|
||||||
|
The tests can be run with:
|
||||||
|
|
||||||
|
osc build -M test
|
||||||
|
|
||||||
|
This will install the Rust compiler from OBS, so is a good idea that
|
||||||
|
we have them available.
|
||||||
|
|
||||||
|
If some test fail, we can enter the chroot to debug it:
|
||||||
|
|
||||||
|
osc shell
|
||||||
|
|
||||||
|
There is more information about the test infrastructure here:
|
||||||
|
|
||||||
|
https://rustc-dev-guide.rust-lang.org/tests/intro.html
|
||||||
|
|
27
_constraints
Normal file
27
_constraints
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<constraints>
|
||||||
|
<hardware>
|
||||||
|
<!-- processors doesn't actually ... get you that many threads. Sigh -->
|
||||||
|
<!-- request number of jobs instead (6 is max on ppc/s390x) -->
|
||||||
|
<jobs>6</jobs>
|
||||||
|
<physicalmemory>
|
||||||
|
<size unit="G">4</size>
|
||||||
|
</physicalmemory>
|
||||||
|
<disk>
|
||||||
|
<!-- Needed when we may need to bundle llvm -->
|
||||||
|
<size unit="G">30</size>
|
||||||
|
</disk>
|
||||||
|
</hardware>
|
||||||
|
<!-- aarch64: X-Gene cpus are the only ones that work as there is a bug in others - select -->
|
||||||
|
<!-- 12G of ram to ensure these are what's used. -->
|
||||||
|
<overwrite>
|
||||||
|
<conditions>
|
||||||
|
<arch>aarch64</arch>
|
||||||
|
</conditions>
|
||||||
|
<hardware>
|
||||||
|
<physicalmemory>
|
||||||
|
<size unit="G">12</size>
|
||||||
|
</physicalmemory>
|
||||||
|
</hardware>
|
||||||
|
</overwrite>
|
||||||
|
</constraints>
|
3
_multibuild
Normal file
3
_multibuild
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
<multibuild>
|
||||||
|
<package>test</package>
|
||||||
|
</multibuild>
|
9
_service
Normal file
9
_service
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<services>
|
||||||
|
<service name="download_files" mode="disabled">
|
||||||
|
<param name="changesgenerate">enable</param>
|
||||||
|
</service>
|
||||||
|
<service name="refresh_patches" mode="disabled">
|
||||||
|
<param name="changesgenerate">enable</param>
|
||||||
|
<param name="ignorefuzz">enable</param>
|
||||||
|
</service>
|
||||||
|
</services>
|
17
ignore-Wstring-conversion.patch
Normal file
17
ignore-Wstring-conversion.patch
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
Index: rustc-1.51.0-src/compiler/rustc_llvm/build.rs
|
||||||
|
===================================================================
|
||||||
|
--- rustc-1.51.0-src.orig/compiler/rustc_llvm/build.rs
|
||||||
|
+++ rustc-1.51.0-src/compiler/rustc_llvm/build.rs
|
||||||
|
@@ -154,6 +154,12 @@ fn main() {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ // hack to avoid flag on openSUSE which is incompatible with GCC
|
||||||
|
+ if flag.starts_with("-W") && flag.contains("string-conversion") {
|
||||||
|
+ continue;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+
|
||||||
|
cfg.flag(flag);
|
||||||
|
}
|
||||||
|
|
3
rust-1.71.0-aarch64-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-aarch64-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9712efaa9c7977b6f03aeb3ef086d0050273f498790bf242e96b9a8117de901f
|
||||||
|
size 209991076
|
16
rust-1.71.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-aarch64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5lCRCFq5bm+hvl/gAAwqQP/i1121fIk5StpzJkC7RnbsBV
|
||||||
|
VmA9NLyQocskMLNOB123bqiAr8VX69eM4wrJ4rrdKYG5+7CMFADU5C15M88nynZj
|
||||||
|
lll3h7KOuu4UnBgjc/jN1TJHD3PihHnfx/zaCKaiSxAJXpm7VvCC5D0Xo2Qh4qky
|
||||||
|
m+g9GA+2fgODLEJBXgaL5paXSEZncI4AoVHdJoQYu9oPjnv7RJYfUcmGmOf+zW1g
|
||||||
|
ZMIYIJzXAU8uGnP9Mccx9dbtKbMWZZtq3/yCJDjh7/XngprYez82f0NsElr3wMPS
|
||||||
|
qhmrFsvugIwYCCtplJgVoPqMzw90x2F0wbS+Om4sm+c2IqmjKHv7LPPdWMaGtAXw
|
||||||
|
/s6xZFyeCeeD0b60WMpUT2NnDZWb0guuC1NCd73HO4O+5Qwg9PwkaIL7Lw/zAniU
|
||||||
|
hhjVgN+Wwaz02dCR/1UCvqoTRGvvuqmJt0gBEVA4LMpmahYhEixGqkUjJHq7GHz4
|
||||||
|
0b9E3xsEftzVDPnhk4FV5hSqL/boS2oqlRa9+6YRvobCzmztvLHZJ3AxHl2YHw2H
|
||||||
|
xbGUg0hBIrd2qWS74ivzT97aoqYmTfHgo9ylZJcWvZwvk+jGXWXYM2DfW3GiqYTB
|
||||||
|
uy9jmG2kFy1O5vA2/H1oaiFKgJsBNtZCBG6O7OXGSvnS9QBkS/SoGfReh4C41m/g
|
||||||
|
7FxB/UKHh+eJn1TqEQeu
|
||||||
|
=QpML
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-arm-unknown-linux-gnueabihf.tar.xz
Normal file
3
rust-1.71.0-arm-unknown-linux-gnueabihf.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:3012614ead64dd75449ae5a078158e9863eb20bba93a920e317932f06609e0da
|
||||||
|
size 174050576
|
16
rust-1.71.0-arm-unknown-linux-gnueabihf.tar.xz.asc
Normal file
16
rust-1.71.0-arm-unknown-linux-gnueabihf.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5kCRCFq5bm+hvl/gAARTEP/RQJSTmSavNjN3BG4Hch46Sv
|
||||||
|
u0ajUiTE7guPaU89M88wDokqFVY4HHyS7eCyKbY80T0Bt6NLro/ijDywsM6fAT9M
|
||||||
|
d4gg2OVZf0nrKqblJQfeWiWykdOKPIl134/esrPHHP0b7PaUHoeNBNY0NB8sbYYU
|
||||||
|
qXmE5nZuoBE7CAQALXys7+Vzxqk1UEDY/AF0mnMzI1PFB9/JAmG09vlJO/rW1ebV
|
||||||
|
FefDotCFl34WZIPttqm5mQGCvLZiGgkcfcf3Uc9eImjDr5Du003StUNbQgUMmoqO
|
||||||
|
m64nEvQM11OD0AKLa58zXfZenIF6uFzteyu7GSJw1H1qdJLSgmY1pBM9SUcVgvQn
|
||||||
|
y54zi0wyLUtP0SScMLbwnLGe5/uIwl3FJK/i48R9gMJCnSMDoK+ZLGmACwx2wGeq
|
||||||
|
ht4V7D58yQJP7dIazPXUx8FKiTb77c5ClRYbhqhrDsDVK01DxA5uI5gX/aB9iwsW
|
||||||
|
xuIGEcOWlFhCOuOmmHnaH03+qcWYc5Z6/VsaYxqgdZQTSiIFeeCS5XTs/zSSm0KB
|
||||||
|
/SojHfMxmMIz/jErpvu2aOsveV3DNPC1ce8vUMFiq6wqKjd/rRbNbE4ZvbLRyCVg
|
||||||
|
0PaWiUqp9UZC1bVeO6QYIx2Hh+b5vs0AFYqxM6a8Mz42dmvEd6qB5BEPZRiNWfh7
|
||||||
|
QzNq8YdJFehRZMJWdypq
|
||||||
|
=jzsJ
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-armv7-unknown-linux-gnueabihf.tar.xz
Normal file
3
rust-1.71.0-armv7-unknown-linux-gnueabihf.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:8885b03634698a83dedad84e25a216a91d5d4d52a73e7bb2b85d15844edfb2b3
|
||||||
|
size 178354684
|
16
rust-1.71.0-armv7-unknown-linux-gnueabihf.tar.xz.asc
Normal file
16
rust-1.71.0-armv7-unknown-linux-gnueabihf.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5kCRCFq5bm+hvl/gAAhKkQAOBI2D7mk2B69kj26Y7xqd9Z
|
||||||
|
tioKvcN6MgSTc6JGFzgnck4U6lOSLVsjP4gExndkg9Z8MjnGpa+tlXK85HNoRIHQ
|
||||||
|
vHN8i/J1vxK3h86fAt2izkhkY9QkzgtFa/xCxeba8wQ2WxFv+PbTRb0ZI1pWV853
|
||||||
|
UyObbzM5GtsGFfaCI51H1Y8wbfHt2aD++FsGAzBIk7rCuX7efIDRZugWYTwZtEUt
|
||||||
|
o5aqQGMad4KwaQ6NUNMb8kFbnIazP187XXqtQEg79pM7JXZh9FM+g9cp0l2vij8J
|
||||||
|
q/iCgGK0CVjIXAhMad9LAURV3TC2f5sCILeoui5td5MBlJAJ2ybcItZlYZZAx6Mv
|
||||||
|
ncBJr5zq+gr/saNv+ptz195zQnUeyqL42Ea6ndgjUs+GaP71P6pUSpqSFxWfNlKS
|
||||||
|
+IUaX+DJM5eFM5HL5JRsCsBZXlbQWgHAGSceVg0CbwfrsJsd1fFA4+U+o/JJdCQu
|
||||||
|
9csHtAFM0MnRlAlqDhHXf7lMZqZYch+mLPwXXuFJRy13kiJS3V6o52fExMzhOtqB
|
||||||
|
OEUfdEVsWGBuA4ZCafJ/LmbSRrBgruQdzOyWQtgD4jcp/zh9eESiNM7gnjXKHNtK
|
||||||
|
OeD/IF2ETKka7yOCBXwdD3Hl2aplyEpfnsIbVixYDOQZag9vRaBIAgQ6GkLYSwdl
|
||||||
|
IlBgIcGIeDdONjxS0cdp
|
||||||
|
=gB2q
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-i686-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-i686-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:afd7148aaacdd38acb2f02ded9dd31c833d6f20d99f3f4b5617282295d2092d7
|
||||||
|
size 202182092
|
16
rust-1.71.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-i686-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5lCRCFq5bm+hvl/gAAr6UQALIfKbeSqRMTxk5F6NAzuGbj
|
||||||
|
9X9Gv5fF27oYbZx3lJFsX0I91vgzI85ctLQzlTl3lOGfY1taWd34SspSe/6h9FwE
|
||||||
|
HHUh/YYykYKUyIbE/fx3580Hj68h+0VyPWlYNw5VQQy/Pl/pcI3gYCzIjbgc/CrL
|
||||||
|
6CPILngfQ2tByaVAXSbTv3EKo2XuT31SYe/GbvM+LYW6am8wbYNm34vj4I/0+gUz
|
||||||
|
CuYFgkD5lCDDqKI6XARFqWbxHTRopzULlenDRCAyRUQYW1b4tbXgOE++3tw3NJkf
|
||||||
|
74p6BpjO1J3J009Qg4xmsXB+bk0yibkGQEwCmMnu25rCLLWAoE6ujxBDpePK0by6
|
||||||
|
yqu1UnAhy3a6x6cHYqSVtZOiG7IBNG6ZEtKV23dFfB6MECXQDod8owK0cwyh4vwF
|
||||||
|
+u2oK6PtzscdxLs/AsaB6cbn5WFiXDY/tt/mKdxKlGlNEs3RdviKOzG0w6lVNWsh
|
||||||
|
+p3iXjW/Bay83j86InTTaWPAaor70DyE75E5xrKCqN7Xg+OrLLytZixcZjf4kC9T
|
||||||
|
EY38pABaUMDXSBu4rUhUcuSsZA5uyKiZf2lcNtZDVBW0UkAazWB4HPt60KcnO/pF
|
||||||
|
s82zvmK/fXIpR/NU7TCGOOIz1wpqO6up+lfVQECa0q60jqFPJg8NS2VFDbrT2T1J
|
||||||
|
4mYn+XYgcxfW/kpzJGpn
|
||||||
|
=tufr
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-powerpc-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-powerpc-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c0a31776d8d1ea351cf40c02e1cfa0ed05f3bcdcdd8b203a87447b31fd2bae30
|
||||||
|
size 173001556
|
16
rust-1.71.0-powerpc-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-powerpc-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFbBAABCgAQBQJkr/5nCRCFq5bm+hvl/gAAATQP9Ayg5FmeYe44My4yRn8A5Ifb
|
||||||
|
atL35gL0IV8p/qUpueOmqEFWfODPN1RQJK0TycxpcBSzpkEqbD813/5CjkNMOkxR
|
||||||
|
qCvGn9N7iEIUEL/BqC1UF/6P2SNQVvnSfIMPm5jMPfKyDixKsLi3Z5JdIJai6eRA
|
||||||
|
vcSSYKpwC3ctI7gt20we5yOicQa8aCIadJjLv+R3ggkP6yapMtdTIXdvQn7cmNEI
|
||||||
|
NEadIDpUHoxJas5bkgfeKzdnPw6NjiuBRxZ1TXj5t0gbdTMwE5nVdu+C3ENJ6bKw
|
||||||
|
FCPMyn6zKS4WqkVk03vG312SmYGWt88N6K4ve85v7GVALinw2GCkCTBNjOVrtRGd
|
||||||
|
j52PEy9CQonRds1UPZ3Yq7H3ZytIHd0eBsp6Y0dlZybryS6QtvWbqqAv0W3iPxB7
|
||||||
|
ztQdXIaPAQcSXl+kvmmoQEDO5k5UjxDopa3Cp76GZoWcmQ/eJh7nr3mk4O9+h6uf
|
||||||
|
N08at3ozmAiuhmfEkfEQUs5w1JEyyDgqKlZcrrswUVhpBYBZbRgxIXNXB2+NVXvu
|
||||||
|
J4I/AFquJ4anUJOqDywefRlgNZMiKFczB9aIB8t4XdfQ4BJcH+E2GBNJd5fdSsIs
|
||||||
|
kzf+88/auWRhr9EKiK0/7G9+Jthn74VmrS5UFzJod3ZoCw+tpxlIstNt6paQhI22
|
||||||
|
cYHQXxGwuDi98ld1UqY=
|
||||||
|
=Hmeb
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-powerpc64-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-powerpc64-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:90a4483ba3aa1e3eea4660fbdddad31b3b43fe89458c1d9805b22dac6136abe7
|
||||||
|
size 172593332
|
16
rust-1.71.0-powerpc64-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-powerpc64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5mCRCFq5bm+hvl/gAA19YP/iyErGpY5BvyoXyx/ywUe4Hs
|
||||||
|
VL/wie9sya0u4/bn9QD0rVc0RSIhjULSEc5uP/YaNP83OKaXdqpuawGCco3hquXf
|
||||||
|
r5iliHnvBeS18Qq8548ZxI14oLc30ReRG+r7l2hgitKXuKoMI6bCHlw5DwGcqeWh
|
||||||
|
EtoGZBHtdQ1MXKKNa9JFCLP87hoFtiQmgpS63ynvz6ZuCgqbvZYVBMPvbXxPsZof
|
||||||
|
pm2uG2ax/jj7ru/jVTd1ss6OJY0BRcOSaPO10Z9x+DCDpmwIOraOOd3Zud2TIG4g
|
||||||
|
LNLq9oLXdf/6eyb5C1HUKvKMo3gVKVaLkM7eCU5PI4rduw2j/fB/pfpIzJBZuGhn
|
||||||
|
tffvo83dzK9iCyPPNnRfQkA09ecABK7fjg2eNqSuoDjnawuqhnykTkFVv9aLksH0
|
||||||
|
eC+ByMxi4iObG9TObYkuFRELw/5eZSAJQqX1xEH+LLSnuNOE4ZESYVNZMZcNZ7ym
|
||||||
|
Q8MDEWgIMt0eSr6DJYHtc6RQ7l5qAW/rJ+2s/r9J7asgIeviHtcN7y2jreur91eY
|
||||||
|
U6XEsVFpHESViCvCVkg5acmnxj7rw6hCZrX8TfMTIRm9OBHgu2v7XVE9u5GPYFez
|
||||||
|
tDlanEvthKlFtP2ghR94QTQet3BUDRWajgKBBbm/GfagJj+I+m/m9P0HixqLxLnX
|
||||||
|
lhD30/xSNxCl/P6HifUD
|
||||||
|
=q6aH
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-powerpc64le-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-powerpc64le-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1cdfccb28bed3ad6b0204e3773e3aa43a8687d1740dcb3dd21b4b37ae5308ac1
|
||||||
|
size 184310820
|
16
rust-1.71.0-powerpc64le-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-powerpc64le-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5lCRCFq5bm+hvl/gAAMCEQAJfNgtT0Tscrbvc7Oo3XGBSf
|
||||||
|
w7lnN911BkaJlWzYTsJ3W3iB6UD3XyrtFamMrPE2yewGg2JAMLPSeAtYINs94kZm
|
||||||
|
KLOeygDAsjVonZddO7hPMXttZlxmyUMhDy1A1pjdouZXCbqsDLyS86nzFxLSIoe3
|
||||||
|
VExGkvbNZJvzDfyhGoXdKYP61QijNRmSlYRONIxVHTgddS5JK/bx15MzQuPqAqJz
|
||||||
|
wuPygw188azUx5Q8vGYPUyDEZT9W+jd50j9xIm+Mft7eBgFIEAQa3LBBLC65mwQe
|
||||||
|
OBL9dDD6AzdxlGJ33vFcHbrJ6rbvnZvo74+tIBnmKOAk3FvSB2Xz1tlY5LOWquNE
|
||||||
|
l322O5Ks2tawbM8RboCwviQCulN2tzPbU5GhKNe7lPAdXwmmkgCd2DoOzwLMiQ9f
|
||||||
|
n+VTuLcO5wiUQrT78OGHDV0n6AUFKG55mcHBr/SjrHDJDBgAz19OYgHnaWxCNUdK
|
||||||
|
bpcYZxVXp3ieer5zSTCBjODo85Ko3vMGRBVDjBnctfBrzx4KWkm3ra/RfwFMv317
|
||||||
|
n5JipN4AygaMk0UZKOWdWY42L3o6EYDt3r1UbBm42Ekch772vueZgcncu0m5fbYL
|
||||||
|
jEu5KKPmzfCpkOOSrK2ioR7/nl0UY0fPfqwv0AW3DCB+cWhBcOacwCBrf1GAGSeh
|
||||||
|
ggWL/gtvcSY26f/EG/jp
|
||||||
|
=0lkw
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-riscv64gc-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-riscv64gc-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:afa670835f244adf06486fa5966e106366b39817d7bbae18504cb6767208ebe9
|
||||||
|
size 164997272
|
16
rust-1.71.0-riscv64gc-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-riscv64gc-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5lCRCFq5bm+hvl/gAAMgEP/A0pDR4YOpVr5f+mDRvGlw1N
|
||||||
|
jVem7lWyVMJTgWYbtYWnVj8wVYO/074fmVYKFlBpLikcSdFAt2ZQ6wj9JXQGi5v3
|
||||||
|
zF6QLOrk3FhULH/JoDku7aIasdgoCMS1h+H4G3TDFXSEXUCtLv3UWhiQyVV2VFXz
|
||||||
|
F7gYuyYY/aadbZzatNET4Zhfk3SrLSOF82ZXZ1yjjLFqh1GSnINkMeRPNHOQ6sfO
|
||||||
|
LUaA5czt3jhp0Zf+NbJdi7rpZNK788KjdFgEP1NEh2SCAlZEq7vLY/usv7dJptps
|
||||||
|
3ViXrCwp38yOY6aZ2ByUwPwnJc7TVmfHt502rQ3oyHs63SY/TdwzNL+LgyvUiGtf
|
||||||
|
6kWV8qkGgZ+dt42rV7TWaCHKaOecNLxjZB6c4tqlXfwD5wqROYVIFVrJ+iZEGQtx
|
||||||
|
GYeKnqpEO4pdCiuAbp4qnFxgILLuVCKBAl6vLrNh5tT/IeuSBYfvtBGdIEcfJmBF
|
||||||
|
V13LWThaioM4G91ZMzlr5HZebi4up8/VapXxB7//1ibOAoEHDrijlisrJOy8Qc4r
|
||||||
|
S0D/fEpILyD3PXxv/X7+hqhrCm7d0Kfr+KViPhAw+Dv9a9Ns2SA2U5f5A5xzDxov
|
||||||
|
dMBQRuglOMiLWphyKUGVGI1c3c7FqomVOG19eJlll2nRk6HTntsii5mGiYxor6FF
|
||||||
|
E66Rcp76RmllUdmd3HS4
|
||||||
|
=9ui2
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-s390x-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-s390x-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:a632cfda657b105c0355ebd575d54ef2e931827befb3e098098b7c3fba085f47
|
||||||
|
size 195655276
|
16
rust-1.71.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-s390x-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5kCRCFq5bm+hvl/gAA2m8QANxUIyGwDr/cBui8HsaP9huH
|
||||||
|
CS5khl9r9Tm7km2OGQD+Lw8dADtLVO+JuozZKvQ0iK7nDtR6mcaDB8yZDvU2B5Zi
|
||||||
|
x4cJNIynhSYGFu3APtX111cyRiB4X4Nq9diHWsEV9t4Icz+UzybMkib77MNPEO/R
|
||||||
|
hYodiDfbnzkQXXV6rSbYf61P5GMscFVL0ryiTRuMCgrngYCDwtd40ZCvWZKc+/U6
|
||||||
|
Cab4iwxGCJiOW6t1awwwzyqnxgWxeYYkkFAjFuyQnd2JYtHQgmOAd3b2YlAqZ7fi
|
||||||
|
cPEBPMGCrrHLE9o5jiYga0OvaKHSVZZ4KncI7FFpyAG0epa31SiyVHPYyP7NwkxG
|
||||||
|
F/FvdzgWzOTqkWNmGRiNLCfgMdke9vOKNTCU/IiIm3UOjwy+1jFKHj2MQ5UTKkt/
|
||||||
|
kIbaTeSFUTHISkcHYAiT7/ZXXWSgf9O917T3qx3SeH5Wm/TAe9Vblm9L2ppC1K3Z
|
||||||
|
g5aXZVvsooITUs9tX9q9SSrcekAK4ZtGztxFvF6M15bP+Y1Q5WdJyEPp8BbvFrWn
|
||||||
|
4ntLodUwkk2XNwnM+GTI8gea2AHulTrZNr7j6kOOBQW99iC7rnOMW6gqeOeDwFDR
|
||||||
|
xnVFidAsJz2nIC+lsri4RzcCEFjrwFOUdghJDmj3Yc7LlNw67Bz8vy6TuFZc+jPD
|
||||||
|
ZLfFKvcEIiKx81YW0ht7
|
||||||
|
=2ycV
|
||||||
|
-----END PGP SIGNATURE-----
|
3
rust-1.71.0-x86_64-unknown-linux-gnu.tar.xz
Normal file
3
rust-1.71.0-x86_64-unknown-linux-gnu.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:7ae6cf3686f7638c8263d6d7aba68e275edee4e4d832723c603ddab96e330fa4
|
||||||
|
size 161430980
|
16
rust-1.71.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
16
rust-1.71.0-x86_64-unknown-linux-gnu.tar.xz.asc
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
wsFcBAABCgAQBQJkr/5mCRCFq5bm+hvl/gAAiI4QAMfTMi0Zx+15mcIAwyqlY0qk
|
||||||
|
0YRcU7SGA54bGvTkvEjuPle8dNCdHf8CsLt6s5d1Tl5DowmOAS3KbTlx+Su2nLv1
|
||||||
|
kr6ORXM3Rm+D78kfuzR7GSgnrf1wie8+HLKLYsyn1cjkwKzvunQYgCxSvHzyauhi
|
||||||
|
Nz1Nzlsw4Rf4RwQECttlSytlVhWRJT9+hTflAG0yOK4q8+RbRowjI+vq1l4qC0OH
|
||||||
|
8mlWlGOdH/7iZ0AcCEWRSOeSAbFmMSagOMHj5vbDu1LCpey8c579rgHFe85kkbZY
|
||||||
|
MDORctRANYvlWLJBDTL74lMsURfL3+0GhfKZ/G4qUAF96irUJHp8rGJDU/h5VMLD
|
||||||
|
AjbAV7JYXtrS3CfMxr2nu4rLZvOFP5tp4uFKdQ/7hkoNo4fZRX5a++m+on3k0L9d
|
||||||
|
eBbW0RFj7KGnr7OzIB00M5UMYL/CBk9tUb27eor5Qi7kc09kOBxSRFj0u1J9EC1M
|
||||||
|
ii1B2vHTPAbHWUpSIqPY7HbkzG7iQ+HmrHNG5kipGQ6s4VheVl6RKjCD19nJQ9NZ
|
||||||
|
2IIvz9JKHCaH0g03pzoRfKybnJdpY/lPVAbsglLmF8aFjMCJmUN/k+bzWrZB2V1T
|
||||||
|
yHv3qz+mEilv+os+f6GJiVMU9NBW8xFRYSQtojdV/1WaFN0u4Qrg1MIPnZcehc0j
|
||||||
|
6WlFCYDnSwQ9GLiAVI31
|
||||||
|
=H3ey
|
||||||
|
-----END PGP SIGNATURE-----
|
85
rust.keyring
Normal file
85
rust.keyring
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
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
|
||||||
|
/5A5vjHh+NhFwH5h2vBJVPdsz6k=
|
||||||
|
=jRHo
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
30
rust1.71-rpmlintrc
Normal file
30
rust1.71-rpmlintrc
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
# we are exporting the buildroot, not changing it, this lint is wrong.
|
||||||
|
addFilter("rpm-buildroot-usage")
|
||||||
|
|
||||||
|
# rlib not in elf format
|
||||||
|
# addFilter("binaryinfo-readelf-failed.*/usr/lib/rustlib/.*rlib")
|
||||||
|
|
||||||
|
# rust has no stable ABI as of yet, soname is of no use yet
|
||||||
|
addFilter("no-soname.*/usr/lib/rustlib/.*")
|
||||||
|
addFilter("no-soname.*/usr/lib/lib*")
|
||||||
|
|
||||||
|
# error when building with bootstrap. ignore for now
|
||||||
|
# addFilter(".*shlib-policy-name-error.*libLLVM-11.*")
|
||||||
|
|
||||||
|
# Rustc driver calls exit, this is fine
|
||||||
|
# addFilter(".*shared-lib-calls-exit.*/usr/lib/librustc_driver.*")
|
||||||
|
# addFilter("potential-bashisms.*/usr/bin/rust-lldb")
|
||||||
|
# addFilter("position-independent-executable-suggested.*/usr/bin/rust-llvm-dwp")
|
||||||
|
|
||||||
|
addFilter("non-devel-file-in-devel-package /usr/lib/.*so")
|
||||||
|
# addFilter("non-devel-file-in-devel-package /usr/lib/rustlib/.*")
|
||||||
|
|
||||||
|
## Sssshhh warnings, we know. This is intentional so that linking
|
||||||
|
# works properly during users build times.
|
||||||
|
addFilter("devel-dependency glibc-devel")
|
||||||
|
|
||||||
|
# Can't read wasm files, that's okay.
|
||||||
|
addFilter("readelf-failed /usr/lib/rustlib/wasm32-wasi/lib/self-contained/libc.a")
|
||||||
|
|
||||||
|
# We know, it's okay.
|
||||||
|
addFilter("obsolete-not-provided .*")
|
119
rust1.71.changes
Normal file
119
rust1.71.changes
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 17 02:20:27 UTC 2023 - William Brown <william.brown@suse.com>
|
||||||
|
|
||||||
|
Version 1.71.0 (2023-07-13)
|
||||||
|
==========================
|
||||||
|
|
||||||
|
Language
|
||||||
|
--------
|
||||||
|
|
||||||
|
- [Stabilize `raw-dylib`, `link_ordinal`, `import_name_type` and `-Cdlltool`.](https://github.com/rust-lang/rust/pull/109677/)
|
||||||
|
- [Uplift `clippy::{drop,forget}_{ref,copy}` lints.](https://github.com/rust-lang/rust/pull/109732/)
|
||||||
|
- [Type inference is more conservative around constrained vars.](https://github.com/rust-lang/rust/pull/110100/)
|
||||||
|
- [Use fulfillment to check `Drop` impl compatibility](https://github.com/rust-lang/rust/pull/110577/)
|
||||||
|
|
||||||
|
Compiler
|
||||||
|
--------
|
||||||
|
|
||||||
|
- [Evaluate place expression in `PlaceMention`](https://github.com/rust-lang/rust/pull/104844/),
|
||||||
|
making `let _ =` patterns more consistent with respect to the borrow checker.
|
||||||
|
- [Add `--print deployment-target` flag for Apple targets.](https://github.com/rust-lang/rust/pull/105354/)
|
||||||
|
- [Stabilize `extern "C-unwind"` and friends.](https://github.com/rust-lang/rust/pull/106075/)
|
||||||
|
The existing `extern "C"` etc. may change behavior for cross-language unwinding in a future release.
|
||||||
|
- [Update the version of musl used on `*-linux-musl` targets to 1.2.3](https://github.com/rust-lang/rust/pull/107129/),
|
||||||
|
enabling [time64](https://musl.libc.org/time64.html) on 32-bit systems.
|
||||||
|
- [Stabilize `debugger_visualizer`](https://github.com/rust-lang/rust/pull/108668/)
|
||||||
|
for embedding metadata like Microsoft's Natvis.
|
||||||
|
- [Enable flatten-format-args by default.](https://github.com/rust-lang/rust/pull/109999/)
|
||||||
|
- [Make `Self` respect tuple constructor privacy.](https://github.com/rust-lang/rust/pull/111245/)
|
||||||
|
- [Improve niche placement by trying two strategies and picking the better result.](https://github.com/rust-lang/rust/pull/108106/)
|
||||||
|
- [Use `apple-m1` as the target CPU for `aarch64-apple-darwin`.](https://github.com/rust-lang/rust/pull/109899/)
|
||||||
|
- [Add Tier 3 support for the `x86_64h-apple-darwin` target.](https://github.com/rust-lang/rust/pull/108795/)
|
||||||
|
- [Promote `loongarch64-unknown-linux-gnu` to Tier 2 with host tools.](https://github.com/rust-lang/rust/pull/110936/)
|
||||||
|
|
||||||
|
Refer to Rust's [platform support page][platform-support-doc]
|
||||||
|
for more information on Rust's tiered platform support.
|
||||||
|
|
||||||
|
Libraries
|
||||||
|
---------
|
||||||
|
- [Rework handling of recursive panics.](https://github.com/rust-lang/rust/pull/110975/)
|
||||||
|
Additional panics are allowed while unwinding, as long as they are caught before escaping
|
||||||
|
a `Drop` implementation, but panicking within a panic hook is now an immediate abort.
|
||||||
|
- [Loosen `From<&[T]> for Box<[T]>` bound to `T: Clone`.](https://github.com/rust-lang/rust/pull/103406/)
|
||||||
|
- [Remove unnecessary `T: Send` bound](https://github.com/rust-lang/rust/pull/111134/)
|
||||||
|
in `Error for mpsc::SendError<T>` and `TrySendError<T>`.
|
||||||
|
- [Fix docs for `alloc::realloc`](https://github.com/rust-lang/rust/pull/108630/)
|
||||||
|
to match `Layout` requirements that the size must not exceed `isize::MAX`.
|
||||||
|
- [Document `const {}` syntax for `std::thread_local`.](https://github.com/rust-lang/rust/pull/110620/)
|
||||||
|
This syntax was stabilized in Rust 1.59, but not previously mentioned in release notes.
|
||||||
|
|
||||||
|
Stabilized APIs
|
||||||
|
---------------
|
||||||
|
|
||||||
|
- [`CStr::is_empty`](https://doc.rust-lang.org/stable/std/ffi/struct.CStr.html#method.is_empty)
|
||||||
|
- [`BuildHasher::hash_one`](https://doc.rust-lang.org/stable/std/hash/trait.BuildHasher.html#method.hash_one)
|
||||||
|
- [`NonZeroI*::is_positive`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#method.is_positive)
|
||||||
|
- [`NonZeroI*::is_negative`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#method.is_negative)
|
||||||
|
- [`NonZeroI*::checked_neg`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#method.checked_neg)
|
||||||
|
- [`NonZeroI*::overflowing_neg`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#method.overflowing_neg)
|
||||||
|
- [`NonZeroI*::saturating_neg`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#method.saturating_neg)
|
||||||
|
- [`NonZeroI*::wrapping_neg`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#method.wrapping_neg)
|
||||||
|
- [`Neg for NonZeroI*`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#impl-Neg-for-NonZeroI32)
|
||||||
|
- [`Neg for &NonZeroI*`](https://doc.rust-lang.org/stable/std/num/struct.NonZeroI32.html#impl-Neg-for-%26NonZeroI32)
|
||||||
|
- [`From<[T; N]> for (T...)`](https://doc.rust-lang.org/stable/std/primitive.array.html#impl-From%3C%5BT;+1%5D%3E-for-(T,))
|
||||||
|
(array to N-tuple for N in 1..=12)
|
||||||
|
- [`From<(T...)> for [T; N]`](https://doc.rust-lang.org/stable/std/primitive.array.html#impl-From%3C(T,)%3E-for-%5BT;+1%5D)
|
||||||
|
(N-tuple to array for N in 1..=12)
|
||||||
|
- [`windows::io::AsHandle for Box<T>`](https://doc.rust-lang.org/stable/std/os/windows/io/trait.AsHandle.html#impl-AsHandle-for-Box%3CT%3E)
|
||||||
|
- [`windows::io::AsHandle for Rc<T>`](https://doc.rust-lang.org/stable/std/os/windows/io/trait.AsHandle.html#impl-AsHandle-for-Rc%3CT%3E)
|
||||||
|
- [`windows::io::AsHandle for Arc<T>`](https://doc.rust-lang.org/stable/std/os/windows/io/trait.AsHandle.html#impl-AsHandle-for-Arc%3CT%3E)
|
||||||
|
- [`windows::io::AsSocket for Box<T>`](https://doc.rust-lang.org/stable/std/os/windows/io/trait.AsSocket.html#impl-AsSocket-for-Box%3CT%3E)
|
||||||
|
- [`windows::io::AsSocket for Rc<T>`](https://doc.rust-lang.org/stable/std/os/windows/io/trait.AsSocket.html#impl-AsSocket-for-Rc%3CT%3E)
|
||||||
|
- [`windows::io::AsSocket for Arc<T>`](https://doc.rust-lang.org/stable/std/os/windows/io/trait.AsSocket.html#impl-AsSocket-for-Arc%3CT%3E)
|
||||||
|
|
||||||
|
These APIs are now stable in const contexts:
|
||||||
|
|
||||||
|
- [`<*const T>::read`](https://doc.rust-lang.org/stable/std/primitive.pointer.html#method.read)
|
||||||
|
- [`<*const T>::read_unaligned`](https://doc.rust-lang.org/stable/std/primitive.pointer.html#method.read_unaligned)
|
||||||
|
- [`<*mut T>::read`](https://doc.rust-lang.org/stable/std/primitive.pointer.html#method.read-1)
|
||||||
|
- [`<*mut T>::read_unaligned`](https://doc.rust-lang.org/stable/std/primitive.pointer.html#method.read_unaligned-1)
|
||||||
|
- [`ptr::read`](https://doc.rust-lang.org/stable/std/ptr/fn.read.html)
|
||||||
|
- [`ptr::read_unaligned`](https://doc.rust-lang.org/stable/std/ptr/fn.read_unaligned.html)
|
||||||
|
- [`<[T]>::split_at`](https://doc.rust-lang.org/stable/std/primitive.slice.html#method.split_at)
|
||||||
|
|
||||||
|
Cargo
|
||||||
|
-----
|
||||||
|
- [Allow named debuginfo options in `Cargo.toml`.](https://github.com/rust-lang/cargo/pull/11958/)
|
||||||
|
- [Add `workspace_default_members` to the output of `cargo metadata`.](https://github.com/rust-lang/cargo/pull/11978/)
|
||||||
|
- [`cargo add` now considers `rust-version` when selecting packages.](https://github.com/rust-lang/cargo/pull/12078/)
|
||||||
|
- [Automatically inherit workspace fields when running `cargo new`/`cargo init`.](https://github.com/rust-lang/cargo/pull/12069/)
|
||||||
|
|
||||||
|
Rustdoc
|
||||||
|
-------
|
||||||
|
|
||||||
|
- [Add a new `rustdoc::unescaped_backticks` lint for broken inline code.](https://github.com/rust-lang/rust/pull/105848/)
|
||||||
|
- [Support strikethrough with single tildes.](https://github.com/rust-lang/rust/pull/111152/) (`~~old~~` vs. `~new~`)
|
||||||
|
|
||||||
|
Misc
|
||||||
|
----
|
||||||
|
|
||||||
|
Compatibility Notes
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
- [Remove structural match from `TypeId`.](https://github.com/rust-lang/rust/pull/103291/)
|
||||||
|
Code that uses a constant `TypeId` in a pattern will potentially be broken.
|
||||||
|
Known cases have already been fixed -- in particular, users of the `log`
|
||||||
|
crate's `kv_unstable` feature should update to `log v0.4.18` or later.
|
||||||
|
- [Add a `sysroot` crate to represent the standard library crates.](https://github.com/rust-lang/rust/pull/108865/)
|
||||||
|
This does not affect stable users, but may require adjustment in tools that build their own standard library.
|
||||||
|
- [Cargo optimizes its usage under `rustup`.](https://github.com/rust-lang/cargo/pull/11917/) When
|
||||||
|
Cargo detects it will run `rustc` pointing to a rustup proxy, it'll try bypassing the proxy and
|
||||||
|
use the underlying binary directly. There are assumptions around the interaction with rustup and
|
||||||
|
`RUSTUP_TOOLCHAIN`. However, it's not expected to affect normal users.
|
||||||
|
- [When querying a package, Cargo tries only the original name, all hyphens, and all underscores to
|
||||||
|
handle misspellings.](https://github.com/rust-lang/cargo/pull/12083/) Previously, Cargo tried each
|
||||||
|
combination of hyphens and underscores, causing excessive requests to crates.io.
|
||||||
|
- Cargo now [disallows `RUSTUP_HOME`](https://github.com/rust-lang/cargo/pull/12101/) and
|
||||||
|
[`RUSTUP_TOOLCHAIN`](https://github.com/rust-lang/cargo/pull/12107/) in the `[env]` configuration
|
||||||
|
table. This is considered to be not a use case Cargo would like to support, since it will likely
|
||||||
|
cause problems or lead to confusion.
|
729
rust1.71.spec
Normal file
729
rust1.71.spec
Normal file
@ -0,0 +1,729 @@
|
|||||||
|
#
|
||||||
|
# spec file
|
||||||
|
#
|
||||||
|
# Copyright (c) 2023 SUSE LLC
|
||||||
|
# Copyright (c) 2019 Luke Jones, luke@ljones.dev
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%global version_suffix 1.71
|
||||||
|
%global version_current 1.71.0
|
||||||
|
%global version_previous 1.70.0
|
||||||
|
# This has to be kept lock step to the rust version.
|
||||||
|
%global llvm_version 16
|
||||||
|
%if 0%{?sle_version} <= 150500 && 0%{?suse_version} < 1599
|
||||||
|
# We may need a minimum gcc version for some linker flags
|
||||||
|
# This is especially true on leap/sle
|
||||||
|
#
|
||||||
|
# ⚠️ 11 is required for a number of linker flags to be supported in sle.
|
||||||
|
#
|
||||||
|
%global gcc_version 11
|
||||||
|
%endif
|
||||||
|
|
||||||
|
#KEEP NOSOURCE DEBUGINFO
|
||||||
|
|
||||||
|
%define obsolete_rust_versioned() \
|
||||||
|
Obsoletes: %{1}1.69%{?2:-%{2}} \
|
||||||
|
Obsoletes: %{1}1.68%{?2:-%{2}} \
|
||||||
|
Obsoletes: %{1}1.67%{?2:-%{2}} \
|
||||||
|
Obsoletes: %{1}1.66%{?2:-%{2}} \
|
||||||
|
Obsoletes: %{1}1.65%{?2:-%{2}} \
|
||||||
|
Obsoletes: %{1}1.64%{?2:-%{2}} \
|
||||||
|
Obsoletes: %{1}1.63%{?2:-%{2}} \
|
||||||
|
Obsoletes: %{1}1.62%{?2:-%{2}}
|
||||||
|
|
||||||
|
# ⚠️ Must leave 1.62 here due to kernel requirements.
|
||||||
|
|
||||||
|
# Build the rust target triple.
|
||||||
|
# Some rust arches don't match what SUSE labels them.
|
||||||
|
%global rust_arch %{_arch}
|
||||||
|
%global abi gnu
|
||||||
|
|
||||||
|
%ifarch armv7hl
|
||||||
|
%global rust_arch armv7
|
||||||
|
%global abi gnueabihf
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch armv6hl
|
||||||
|
%global rust_arch arm
|
||||||
|
%global abi gnueabihf
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch ppc
|
||||||
|
%global rust_arch powerpc
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch ppc64
|
||||||
|
%global rust_arch powerpc64
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch ppc64le
|
||||||
|
%global rust_arch powerpc64le
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%ifarch riscv64
|
||||||
|
%global rust_arch riscv64gc
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Must restrict the x86 build to i686 since i586 is currently
|
||||||
|
# unsupported
|
||||||
|
%ifarch %{ix86}
|
||||||
|
%global rust_arch i686
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%global rust_triple %{rust_arch}-unknown-linux-%{abi}
|
||||||
|
|
||||||
|
# All sources and bootstraps are fetched form here
|
||||||
|
%global dl_url https://static.rust-lang.org/dist
|
||||||
|
|
||||||
|
# Rust doesn't function well when put in /usr/lib64
|
||||||
|
%global common_libdir %{_prefix}/lib
|
||||||
|
%global rustlibdir %{common_libdir}/rustlib
|
||||||
|
|
||||||
|
# Detect if sccache has been requested by the build
|
||||||
|
%if "%{getenv:RUSTC_WRAPPER}" == "sccache"
|
||||||
|
%bcond_without sccache
|
||||||
|
%else
|
||||||
|
%bcond_with sccache
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# === rust arch support tiers ===
|
||||||
|
# https://doc.rust-lang.org/nightly/rustc/platform-support.html
|
||||||
|
# tl;dr only aarch64, x86_64 and i686 are guaranteed to work.
|
||||||
|
#
|
||||||
|
# armv6/7, s390x, ppc[64[le]], riscv are all "guaranteed to build" only
|
||||||
|
# but may not always work.
|
||||||
|
|
||||||
|
# === broken distro llvm ===
|
||||||
|
# In some situations the llvm provided on the platform may not work.
|
||||||
|
# we add these conditions here.
|
||||||
|
#
|
||||||
|
# ⚠️ SLE/LEAP 15.3 LLVM is too old!
|
||||||
|
# ⚠️ 1.59 breaks codegen with distro llvm!!!
|
||||||
|
|
||||||
|
%if 0%{?is_opensuse} == 1 && 0%{?suse_version} >= 1550
|
||||||
|
# && "{version_suffix}" != "1.61"
|
||||||
|
# Can proceed with pinned llvm.
|
||||||
|
%bcond_with bundled_llvm
|
||||||
|
%else
|
||||||
|
# Use bundled llvm instead.
|
||||||
|
# For details see boo#1192067
|
||||||
|
%bcond_without bundled_llvm
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# === Use clang/lld during build if possible ===
|
||||||
|
# i586 - unable to link libatomic
|
||||||
|
# aarch64 - fails due to an invalid linker flag
|
||||||
|
#
|
||||||
|
%bcond_with llvmtools
|
||||||
|
|
||||||
|
# Depending on our environment, we may need to configure our linker in a different manner.
|
||||||
|
|
||||||
|
# If we elect for llvm, always use clang.
|
||||||
|
%if %{with llvmtools}
|
||||||
|
%define rust_linker clang
|
||||||
|
%else
|
||||||
|
%if 0%{?gcc_version} != 0
|
||||||
|
%define rust_linker gcc-%{gcc_version}
|
||||||
|
%else
|
||||||
|
%define rust_linker cc
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# === Enable wasm/wasi on t1 targets ===
|
||||||
|
%if 0%{?is_opensuse} == 1 && 0%{?suse_version} >= 1550
|
||||||
|
%ifarch x86_64 aarch64
|
||||||
|
%bcond_without wasm32
|
||||||
|
%bcond_without wasi
|
||||||
|
%else
|
||||||
|
%bcond_with wasm32
|
||||||
|
%bcond_with wasi
|
||||||
|
%endif
|
||||||
|
%else
|
||||||
|
%bcond_with wasm32
|
||||||
|
%bcond_with wasi
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Test is done in a different multibuild package (rustXXX-test). This
|
||||||
|
# package will replace the local-rust-root and use the systems's one
|
||||||
|
# from the rustXXX package itself. This will exercise the compiler,
|
||||||
|
# even tho, the tests will require more compilation. If we do not
|
||||||
|
# agree on this model we can drop the _multibuild option and do the
|
||||||
|
# pct check as a part of the main spec.
|
||||||
|
|
||||||
|
%global flavor @BUILD_FLAVOR@%{nil}
|
||||||
|
%if "%{flavor}" == "test"
|
||||||
|
%define psuffix -test
|
||||||
|
%bcond_without test
|
||||||
|
%else
|
||||||
|
%define psuffix %{nil}
|
||||||
|
%bcond_with test
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# """
|
||||||
|
# Do not use parallel codegen in order to
|
||||||
|
# a) not exhaust memory on build-machines and
|
||||||
|
# b) generate the fastest possible binary
|
||||||
|
# at the cost of longer build times for this package
|
||||||
|
# """
|
||||||
|
#
|
||||||
|
# These claims are incorrect
|
||||||
|
# a) codegen=1, actually consumes MORE memory due to the fact that the full
|
||||||
|
# code unit is then LTO'd in a single pass. This can cause LLVM to internally OOM
|
||||||
|
# especially if the machine has less than 1G of ram, and this is documented:
|
||||||
|
# * https://github.com/rust-lang/rust/issues/85598
|
||||||
|
# it has also been observed in OBS during builds of 1.52 and 1.53
|
||||||
|
#
|
||||||
|
# b) the performance gains from codegen=1 are minimal at best, and not worth
|
||||||
|
# us messing about with these values - especially when the rust language team
|
||||||
|
# probably know more about how to set and tune these based on data and research
|
||||||
|
#
|
||||||
|
# Debuginfo can exhaust memory on these architecture workers
|
||||||
|
%ifarch %{arm} %{ix86}
|
||||||
|
%define debug_info --debuginfo-level=0 --debuginfo-level-rustc=0 --debuginfo-level-std=0 --debuginfo-level-tools=0 --debuginfo-level-tests=0
|
||||||
|
%else
|
||||||
|
%define debug_info %{nil}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%global rustflags -Clink-arg=-Wl,-z,relro,-z,now
|
||||||
|
|
||||||
|
# Exclude implicitly-scanned Provides, especially the libLLVM.so ones:
|
||||||
|
%global __provides_exclude_from ^%{rustlibdir}/.*$
|
||||||
|
|
||||||
|
Name: rust%{version_suffix}%{psuffix}
|
||||||
|
Version: %{version_current}
|
||||||
|
Release: 0
|
||||||
|
Summary: A systems programming language
|
||||||
|
License: Apache-2.0 OR MIT
|
||||||
|
Group: Development/Languages/Rust
|
||||||
|
URL: https://www.rust-lang.org
|
||||||
|
Source0: %{dl_url}/rustc-%{version}-src.tar.xz
|
||||||
|
Source1: rust.keyring
|
||||||
|
%if %{without test}
|
||||||
|
Source99: %{name}-rpmlintrc
|
||||||
|
%endif
|
||||||
|
Source100: %{dl_url}/rust-%{version_current}-x86_64-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 100
|
||||||
|
Source101: %{dl_url}/rust-%{version_current}-i686-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 101
|
||||||
|
Source102: %{dl_url}/rust-%{version_current}-aarch64-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 102
|
||||||
|
Source103: %{dl_url}/rust-%{version_current}-armv7-unknown-linux-gnueabihf.tar.xz
|
||||||
|
NoSource: 103
|
||||||
|
Source104: %{dl_url}/rust-%{version_current}-arm-unknown-linux-gnueabihf.tar.xz
|
||||||
|
NoSource: 104
|
||||||
|
Source105: %{dl_url}/rust-%{version_current}-powerpc64-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 105
|
||||||
|
Source106: %{dl_url}/rust-%{version_current}-powerpc64le-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 106
|
||||||
|
Source107: %{dl_url}/rust-%{version_current}-s390x-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 107
|
||||||
|
Source108: %{dl_url}/rust-%{version_current}-powerpc-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 108
|
||||||
|
Source109: %{dl_url}/rust-%{version_current}-riscv64gc-unknown-linux-gnu.tar.xz
|
||||||
|
NoSource: 109
|
||||||
|
Source200: %{dl_url}/rust-%{version_current}-x86_64-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 200
|
||||||
|
Source201: %{dl_url}/rust-%{version_current}-i686-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 201
|
||||||
|
Source202: %{dl_url}/rust-%{version_current}-aarch64-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 202
|
||||||
|
Source203: %{dl_url}/rust-%{version_current}-armv7-unknown-linux-gnueabihf.tar.xz.asc
|
||||||
|
NoSource: 203
|
||||||
|
Source204: %{dl_url}/rust-%{version_current}-arm-unknown-linux-gnueabihf.tar.xz.asc
|
||||||
|
NoSource: 204
|
||||||
|
Source205: %{dl_url}/rust-%{version_current}-powerpc64-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 205
|
||||||
|
Source206: %{dl_url}/rust-%{version_current}-powerpc64le-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 206
|
||||||
|
Source207: %{dl_url}/rust-%{version_current}-s390x-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 207
|
||||||
|
Source208: %{dl_url}/rust-%{version_current}-powerpc-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 208
|
||||||
|
Source209: %{dl_url}/rust-%{version_current}-riscv64gc-unknown-linux-gnu.tar.xz.asc
|
||||||
|
NoSource: 209
|
||||||
|
# Make factory-auto stop complaining...
|
||||||
|
Source1000: README.suse-maint
|
||||||
|
# PATCH-FIX-OPENSUSE: edit src/librustc_llvm/build.rs to ignore GCC incompatible flag
|
||||||
|
Patch0: ignore-Wstring-conversion.patch
|
||||||
|
# IMPORTANT - To generate patches for submodules in git so they apply relatively you can use
|
||||||
|
# git format-patch --text --dst-prefix=b/src/tools/cargo/ HEAD~2
|
||||||
|
|
||||||
|
BuildRequires: chrpath
|
||||||
|
BuildRequires: curl
|
||||||
|
# BUG - fdupes on leap/sle causes issues with debug info
|
||||||
|
%if 0%{?is_opensuse} == 1 && 0%{?suse_version} >= 1550
|
||||||
|
BuildRequires: fdupes
|
||||||
|
%endif
|
||||||
|
BuildRequires: pkgconfig
|
||||||
|
BuildRequires: procps
|
||||||
|
BuildRequires: python3-base
|
||||||
|
BuildRequires: util-linux
|
||||||
|
BuildRequires: pkgconfig(libcurl)
|
||||||
|
BuildRequires: pkgconfig(openssl)
|
||||||
|
BuildRequires: pkgconfig(zlib)
|
||||||
|
# Set requires appropriately
|
||||||
|
%if %with sccache
|
||||||
|
BuildRequires: sccache
|
||||||
|
%else
|
||||||
|
BuildRequires: ccache
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# For linking to platform
|
||||||
|
Requires: glibc-devel
|
||||||
|
# Rustc doesn't really do much without Cargo, but you know, if you wanna yolo that ...
|
||||||
|
Recommends: cargo
|
||||||
|
# For static linking
|
||||||
|
Suggests: glibc-devel-static
|
||||||
|
|
||||||
|
%if %{with wasi}
|
||||||
|
BuildRequires: wasi-libc
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with llvmtools}
|
||||||
|
BuildRequires: clang
|
||||||
|
BuildRequires: libstdc++-devel
|
||||||
|
BuildRequires: lld
|
||||||
|
Requires: clang
|
||||||
|
Requires: lld
|
||||||
|
%else
|
||||||
|
%if 0%{?gcc_version} != 0
|
||||||
|
BuildRequires: gcc%{gcc_version}-c++
|
||||||
|
Requires: gcc%{gcc_version}
|
||||||
|
%else
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
Requires: gcc
|
||||||
|
%endif
|
||||||
|
# Clang gives better errors than gcc during a compilation, and it keeps everything
|
||||||
|
# within llvm ecosystem.
|
||||||
|
Suggests: clang
|
||||||
|
# lld is significantly faster than gold for linking, so users may wish to preference it.
|
||||||
|
Suggests: lld
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# CMake and Ninja required to drive the bundled llvm build.
|
||||||
|
# Cmake is also needed in tests.
|
||||||
|
%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 150200
|
||||||
|
# In these distros cmake is 2.x, or 3.X < 3.13, so we need cmake3 for building llvm.
|
||||||
|
BuildRequires: cmake3 > 3.13.4
|
||||||
|
%else
|
||||||
|
BuildRequires: cmake > 3.13.4
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# To build rust-lld
|
||||||
|
BuildRequires: ninja
|
||||||
|
|
||||||
|
%if %{without bundled_llvm}
|
||||||
|
# Use distro provided LLVM on Tumbleweed, but pin it to the matching LLVM!
|
||||||
|
# For details see boo#1192067
|
||||||
|
BuildRequires: llvm%{llvm_version}-devel
|
||||||
|
Requires: lld%{llvm_version}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with test}
|
||||||
|
BuildRequires: cargo%{version_suffix} = %{version}
|
||||||
|
BuildRequires: rust%{version_suffix} = %{version}
|
||||||
|
# Static linking tests need this.
|
||||||
|
BuildRequires: glibc-devel-static
|
||||||
|
BuildRequires: git
|
||||||
|
|
||||||
|
%if %{without bundled_llvm}
|
||||||
|
# For FileCheck
|
||||||
|
BuildRequires: llvm%{llvm_version}-devel
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with wasm32}
|
||||||
|
BuildRequires: nodejs-default
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# End with test
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%obsolete_rust_versioned rust
|
||||||
|
Conflicts: rust+rustc < %{version}
|
||||||
|
Conflicts: rustc-bootstrap
|
||||||
|
Provides: rust+rustc = %{version}
|
||||||
|
Conflicts: rust-std < %{version}
|
||||||
|
Obsoletes: rust-std < %{version}
|
||||||
|
Provides: rust-std = %{version}
|
||||||
|
Conflicts: rust-std-static < %{version}
|
||||||
|
Obsoletes: rust-std-static < %{version}
|
||||||
|
Provides: rust-std-static = %{version}
|
||||||
|
Conflicts: rust-gdb < %{version}
|
||||||
|
Obsoletes: rust-gdb < %{version}
|
||||||
|
Provides: rust-gdb = %{version}
|
||||||
|
|
||||||
|
%if %{without test}
|
||||||
|
# Restrict the architectures as building rust relies on being
|
||||||
|
# initially bootstrapped before we can build the n+1 release
|
||||||
|
ExclusiveArch: x86_64 %{arm} aarch64 ppc ppc64 ppc64le s390x %{ix86} riscv64
|
||||||
|
%ifarch %{ix86}
|
||||||
|
ExclusiveArch: i686
|
||||||
|
%endif
|
||||||
|
%else
|
||||||
|
# Restrict for Tier 1 targets (but we should report bugs in Tier 2)
|
||||||
|
# https://doc.rust-lang.org/nightly/rustc/platform-support.html#tier-1-with-host-tools
|
||||||
|
ExclusiveArch: x86_64 i686 aarch64
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description
|
||||||
|
Rust is a systems programming language focused on three goals: safety,
|
||||||
|
speed, and concurrency. It maintains these goals without having a
|
||||||
|
garbage collector, making it a useful language for a number of use
|
||||||
|
cases other languages are not good at: embedding in other languages,
|
||||||
|
programs with specific space and time requirements, and writing
|
||||||
|
low-level code, like device drivers and operating systems. It improves
|
||||||
|
on current languages targeting this space by having a number of
|
||||||
|
compile-time safety checks that produce no runtime overhead, while
|
||||||
|
eliminating all data races. Rust also aims to achieve "zero-cost
|
||||||
|
abstractions", even though some of these abstractions feel like those
|
||||||
|
of a high-level language. Even then, Rust still allows precise control
|
||||||
|
like a low-level language would.
|
||||||
|
|
||||||
|
%package -n cargo%{version_suffix}
|
||||||
|
Summary: The Rust package manager
|
||||||
|
License: Apache-2.0 OR MIT
|
||||||
|
Group: Development/Languages/Rust
|
||||||
|
Requires: rust-std = %{version}
|
||||||
|
Obsoletes: cargo-vendor < %{version}
|
||||||
|
Provides: cargo-vendor = %{version}
|
||||||
|
Provides: rust+cargo = %{version}
|
||||||
|
%obsolete_rust_versioned cargo
|
||||||
|
|
||||||
|
%description -n cargo%{version_suffix}
|
||||||
|
Cargo downloads dependencies of Rust projects and compiles it.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
# Previously the stage0 compiler was skipped in test builds, but there are now
|
||||||
|
# tests in rust's source tree that require it.
|
||||||
|
%ifarch x86_64
|
||||||
|
%setup -q -T -b 100 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch %{ix86}
|
||||||
|
%setup -q -T -b 101 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch aarch64
|
||||||
|
%setup -q -T -b 102 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch armv7hl
|
||||||
|
%setup -q -T -b 103 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch armv6hl
|
||||||
|
%setup -q -T -b 104 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch ppc64
|
||||||
|
%setup -q -T -b 105 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch ppc64le
|
||||||
|
%setup -q -T -b 106 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch s390x
|
||||||
|
%setup -q -T -b 107 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch ppc
|
||||||
|
%setup -q -T -b 108 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
%ifarch riscv64
|
||||||
|
%setup -q -T -b 109 -n rust-%{version_current}-%{rust_triple}
|
||||||
|
%endif
|
||||||
|
./install.sh --components=cargo,rustc,rust-std-%{rust_triple} --prefix=.%{_prefix} --disable-ldconfig
|
||||||
|
|
||||||
|
%global rust_root %{_builddir}/rust-%{version_current}-%{rust_triple}%{_prefix}
|
||||||
|
|
||||||
|
%autosetup -p1 -n rustc-%{version}-src
|
||||||
|
|
||||||
|
# We never enable emscripten.
|
||||||
|
rm -rf src/llvm-emscripten/
|
||||||
|
# We never enable other LLVM tools.
|
||||||
|
rm -rf src/tools/clang
|
||||||
|
rm -rf src/tools/lldb
|
||||||
|
|
||||||
|
# Fix rpmlint error "This script uses 'env' as an interpreter"
|
||||||
|
sed -i '1s|#!%{_bindir}/env python|#!%{_bindir}/python3|' library/core/src/unicode/printable.py
|
||||||
|
chmod +x library/core/src/unicode/printable.py
|
||||||
|
|
||||||
|
# Debugging for if anything goes south.
|
||||||
|
lscpu
|
||||||
|
free -h
|
||||||
|
df -h
|
||||||
|
|
||||||
|
%build
|
||||||
|
|
||||||
|
# Create exports file
|
||||||
|
# Keep all the "export VARIABLE" together here, so they can be
|
||||||
|
# reread in the %%install section below.
|
||||||
|
# If the environments between build and install and different,
|
||||||
|
# everything will be rebuilt during installation!
|
||||||
|
|
||||||
|
%if %{with llvmtools}
|
||||||
|
cat > .env.sh <<EOF
|
||||||
|
export CC="/usr/bin/clang"
|
||||||
|
export CXX="/usr/bin/clang++"
|
||||||
|
EOF
|
||||||
|
%else
|
||||||
|
|
||||||
|
%if 0%{?gcc_version} != 0
|
||||||
|
cat > .env.sh <<EOF
|
||||||
|
export CC="/usr/bin/gcc-%{gcc_version}"
|
||||||
|
export CXX="/usr/bin/g++-%{gcc_version}"
|
||||||
|
EOF
|
||||||
|
%else
|
||||||
|
cat > .env.sh <<EOF
|
||||||
|
export CC="gcc"
|
||||||
|
export CXX="g++"
|
||||||
|
EOF
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# -Clink-arg=-B{_prefix}/lib/rustlib/{rust_triple}/bin/gcc-ld/"
|
||||||
|
# -Clink-arg=-B{rust_root}/lib/rustlib/{rust_triple}/bin/gcc-ld/"
|
||||||
|
|
||||||
|
%if %{with sccache}
|
||||||
|
export CC="/usr/bin/sccache ${CC}"
|
||||||
|
export CXX="/usr/bin/sccache ${CXX}"
|
||||||
|
%endif
|
||||||
|
|
||||||
|
cat >> .env.sh <<EOF
|
||||||
|
export CXXFLAGS="-I/home/abuild/rpmbuild/BUILD/rustc-%{version}-src/src/llvm-project/libunwind/include/"
|
||||||
|
export PATH="%{_prefix}/lib/rustlib/%{rust_triple}/bin/:${PATH}"
|
||||||
|
export RUSTFLAGS="%{rustflags} -Clinker=%{rust_linker}"
|
||||||
|
export LD_LIBRARY_PATH="%{rust_root}/lib"
|
||||||
|
export SCCACHE_IDLE_TIMEOUT="3000"
|
||||||
|
export DESTDIR=%{buildroot}
|
||||||
|
export CARGO_FEATURE_VENDORED=1
|
||||||
|
unset FFLAGS
|
||||||
|
unset MALLOC_CHECK_
|
||||||
|
unset MALLOC_PERTURB_
|
||||||
|
# END EXPORTS
|
||||||
|
EOF
|
||||||
|
. ./.env.sh
|
||||||
|
|
||||||
|
# Sometimes to debug sccache we need to know the state of the env.
|
||||||
|
env
|
||||||
|
|
||||||
|
# Check our rustroot works as we expect
|
||||||
|
%if %{without test}
|
||||||
|
cat >> main.rs <<EOF
|
||||||
|
fn main() {}
|
||||||
|
EOF
|
||||||
|
RUSTC_LOG=rustc_codegen_ssa::back::link=info %{rust_root}/bin/rustc -C link-args=-Wl,-v ${RUSTFLAGS} main.rs
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# The configure macro will modify some autoconf-related files, which upsets
|
||||||
|
# cargo when it tries to verify checksums in those files. So we don't use
|
||||||
|
# the macro, as it provides no tangible benefit to our build process.
|
||||||
|
# FUTURE: See if we can build sanitizers without the full llvm bundling.
|
||||||
|
# {?with_tier1: --enable-sanitizers} \
|
||||||
|
|
||||||
|
./configure \
|
||||||
|
--build=%{rust_triple} --host=%{rust_triple} \
|
||||||
|
%{!?with_wasm32: --target=%{rust_triple}} \
|
||||||
|
%{?with_wasm32: --target=%{rust_triple},wasm32-unknown-unknown%{?with_wasi:,wasm32-wasi}} \
|
||||||
|
%{?with_wasi: --set target.wasm32-wasi.wasi-root=%{_datadir}/wasi-sysroot/ } \
|
||||||
|
--prefix=%{_prefix} \
|
||||||
|
--bindir=%{_bindir} \
|
||||||
|
--sysconfdir=%{_sysconfdir} \
|
||||||
|
--datadir=%{_datadir} \
|
||||||
|
--localstatedir=%{_localstatedir} \
|
||||||
|
--mandir=%{_mandir} \
|
||||||
|
--infodir=%{_infodir} \
|
||||||
|
--libdir=%{common_libdir} \
|
||||||
|
--docdir=%{_docdir}/rust \
|
||||||
|
--enable-local-rust \
|
||||||
|
%{!?with_test: --local-rust-root=%{rust_root} --disable-rpath} \
|
||||||
|
%{!?with_bundled_llvm: --llvm-root=%{_prefix} --enable-llvm-link-shared} \
|
||||||
|
%{?with_bundled_llvm: --disable-llvm-link-shared --set llvm.link-jobs=0} \
|
||||||
|
%{?with_llvmtools: --set rust.use-lld=true --set llvm.use-linker=lld} \
|
||||||
|
--set rust.lld=true \
|
||||||
|
--default-linker=%{rust_linker} \
|
||||||
|
%{?with_sccache: --enable-sccache} \
|
||||||
|
%{!?with_sccache: --enable-ccache} \
|
||||||
|
--disable-docs \
|
||||||
|
--disable-compiler-docs \
|
||||||
|
--enable-verbose-tests \
|
||||||
|
%{debug_info} \
|
||||||
|
--enable-vendor \
|
||||||
|
--enable-extended \
|
||||||
|
--tools="cargo,rustdoc" \
|
||||||
|
--release-channel="stable" \
|
||||||
|
--set rust.deny-warnings=false
|
||||||
|
|
||||||
|
# We set deny warnings to false due to a problem where rust upstream didn't test building with
|
||||||
|
# the same version (they did previous ver)
|
||||||
|
|
||||||
|
%if %{without test}
|
||||||
|
python3 ./x.py build
|
||||||
|
# Debug for post build
|
||||||
|
free -h
|
||||||
|
df -h
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%install
|
||||||
|
# Reread exports file
|
||||||
|
%if %{without test}
|
||||||
|
. ./.env.sh
|
||||||
|
|
||||||
|
python3 ./x.py install
|
||||||
|
|
||||||
|
# bsc#1199126 - rust-lld contains an rpath, which is invalid.
|
||||||
|
chrpath -d %{buildroot}%{rustlibdir}/%{rust_triple}/bin/rust-lld
|
||||||
|
|
||||||
|
%if %{with bundled_llvm}
|
||||||
|
# To facilitate tests when we aren't using system LLVM, we need filecheck available.
|
||||||
|
install -m 0755 %{_builddir}/rustc-%{version}-src/build/%{rust_triple}/llvm/bin/FileCheck %{buildroot}%{rustlibdir}/%{rust_triple}/bin/FileCheck
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Remove the license files from _docdir: make install put duplicates there
|
||||||
|
rm %{buildroot}%{_docdir}/rust/{README.md,COPYRIGHT,LICENSE*}
|
||||||
|
rm %{buildroot}%{_docdir}/rust/*.old
|
||||||
|
|
||||||
|
# Remove installer artifacts (manifests, uninstall scripts, etc.)
|
||||||
|
find %{buildroot}%{rustlibdir} -maxdepth 1 -type f -exec rm -v '{}' '+'
|
||||||
|
|
||||||
|
# Remove hidden files from source
|
||||||
|
find %{buildroot}%{rustlibdir} -type f -name '.appveyor.yml' -exec rm -v '{}' '+'
|
||||||
|
find %{buildroot}%{rustlibdir} -type f -name '.travis.yml' -exec rm -v '{}' '+'
|
||||||
|
find %{buildroot}%{rustlibdir} -type f -name '.cirrus.yml' -exec rm -v '{}' '+'
|
||||||
|
find %{buildroot}%{rustlibdir} -type f -name '.clang-format' -exec rm -v '{}' '+'
|
||||||
|
find %{buildroot}%{rustlibdir} -type d -name '.github' -exec rm -r -v '{}' '+'
|
||||||
|
|
||||||
|
# The shared libraries should be executable to allow fdupes find duplicates.
|
||||||
|
find %{buildroot}%{common_libdir} -maxdepth 1 -type f -name '*.so' -exec chmod -v +x '{}' '+'
|
||||||
|
|
||||||
|
# The shared libraries should be executable for debuginfo extraction.
|
||||||
|
find %{buildroot}%{rustlibdir} -maxdepth 1 -type f -name '*.so' -exec chmod -v +x '{}' '+'
|
||||||
|
|
||||||
|
# Create the path for crate-devel packages
|
||||||
|
mkdir -p %{buildroot}%{_datadir}/cargo/registry
|
||||||
|
|
||||||
|
# Remove completions
|
||||||
|
rm -rf %{buildroot}%{_prefix}/src/etc/bash_completion.d
|
||||||
|
rmdir %{buildroot}%{_prefix}/src/etc
|
||||||
|
rm -rf %{buildroot}%{_sysconfdir}/bash_completion.d
|
||||||
|
rm -rf %{buildroot}%{_datadir}/zsh
|
||||||
|
|
||||||
|
# There should be nothing here at all
|
||||||
|
rm -rf %{buildroot}%{_sysconfdir}
|
||||||
|
# cargo does not respect our _libexec setting on Leap:
|
||||||
|
if [ ! -f %{buildroot}%{_libexecdir}/cargo-credential-1password ] &&
|
||||||
|
[ -f %{buildroot}%{_exec_prefix}/libexec/cargo-credential-1password ]; then
|
||||||
|
mv %{buildroot}%{_exec_prefix}/libexec/cargo-credential-1password \
|
||||||
|
%{buildroot}%{_libexecdir}/cargo-credential-1password
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Silence any duplicate library warnings.
|
||||||
|
%if 0%{?is_opensuse} == 1 && 0%{?suse_version} >= 1550
|
||||||
|
%fdupes %{buildroot}/%{common_libdir}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# Ugly hack to get brp-15-strip-debug call llvm-strip, which is wasm-aware, as system-strip will break wasm-files (same for ar/ranlib)
|
||||||
|
export CROSS_COMPILE=llvm-
|
||||||
|
|
||||||
|
# End without test
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with test}
|
||||||
|
%check
|
||||||
|
. ./.env.sh
|
||||||
|
|
||||||
|
# Tests require stage0 in place, so we need to symlink that in for compiler access.
|
||||||
|
# Generally in a non-local rust build, this process assumes you downloaded and unpacked
|
||||||
|
# the compiler toolchain into stage0, which is why we have to feed that in manually.
|
||||||
|
mkdir -p %{_builddir}/rustc-%{version}-src/build/%{rust_triple}
|
||||||
|
ln -s %{rust_root} %{_builddir}/rustc-%{version}-src/build/%{rust_triple}/stage0
|
||||||
|
|
||||||
|
# Need to exclude issue-71519 as when we enable lld for wasm, this test incorrectly assumes
|
||||||
|
# we can use it with -Z gcc-ld=lld (which is sadly trapped in nightly). We can't exclude
|
||||||
|
# a single test so sadly we have to exclude that whole suite.
|
||||||
|
%ifarch aarch64
|
||||||
|
python3 ./x.py test --target=%{rust_triple} \
|
||||||
|
--exclude tests/run-make/issue-71519 \
|
||||||
|
--exclude src/tools/tidy \
|
||||||
|
--exclude src/tools/expand-yaml-anchors \
|
||||||
|
--exclude tests/ui/methods \
|
||||||
|
--exclude tests/ui/typeck \
|
||||||
|
--exclude tests/ui/mismatched_types \
|
||||||
|
--exclude tests/run-make/short-ice \
|
||||||
|
--exclude src/bootstrap
|
||||||
|
%else
|
||||||
|
python3 ./x.py test --target=%{rust_triple} \
|
||||||
|
--exclude src/tools/tidy \
|
||||||
|
--exclude src/tools/expand-yaml-anchors \
|
||||||
|
--exclude tests/ui/methods \
|
||||||
|
--exclude tests/ui/typeck \
|
||||||
|
--exclude tests/ui/mismatched_types \
|
||||||
|
--exclude tests/run-make/short-ice \
|
||||||
|
--exclude src/bootstrap
|
||||||
|
%endif
|
||||||
|
|
||||||
|
# End with test
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{without test}
|
||||||
|
%post -p /sbin/ldconfig
|
||||||
|
%postun -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%files
|
||||||
|
%license COPYRIGHT LICENSE-APACHE LICENSE-MIT
|
||||||
|
%doc CONTRIBUTING.md README.md RELEASES.md
|
||||||
|
%{_bindir}/rustc
|
||||||
|
%{_bindir}/rustdoc
|
||||||
|
%{_bindir}/rust-gdb
|
||||||
|
%{_bindir}/rust-gdbgui
|
||||||
|
%{_bindir}/rust-lldb
|
||||||
|
%{_mandir}/man1/rustc.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/rustdoc.1%{?ext_man}
|
||||||
|
%{_prefix}/lib/lib*.so
|
||||||
|
%dir %{rustlibdir}
|
||||||
|
%dir %{rustlibdir}%{_sysconfdir}
|
||||||
|
%{rustlibdir}%{_sysconfdir}/gdb_load_rust_pretty_printers.py
|
||||||
|
%{rustlibdir}%{_sysconfdir}/gdb_lookup.py
|
||||||
|
%{rustlibdir}%{_sysconfdir}/gdb_providers.py
|
||||||
|
%{rustlibdir}%{_sysconfdir}/lldb_commands
|
||||||
|
%{rustlibdir}%{_sysconfdir}/lldb_lookup.py
|
||||||
|
%{rustlibdir}%{_sysconfdir}/lldb_providers.py
|
||||||
|
%{rustlibdir}%{_sysconfdir}/rust_types.py
|
||||||
|
%dir %{rustlibdir}/%{rust_triple}
|
||||||
|
%{rustlibdir}/%{rust_triple}/bin
|
||||||
|
%dir %{rustlibdir}/%{rust_triple}/lib
|
||||||
|
%{rustlibdir}/%{rust_triple}/lib/*.so
|
||||||
|
%{rustlibdir}/%{rust_triple}/lib/*.rlib
|
||||||
|
%if %{with wasm32}
|
||||||
|
%dir %{rustlibdir}/wasm32-unknown-unknown
|
||||||
|
%dir %{rustlibdir}/wasm32-unknown-unknown/lib
|
||||||
|
%{rustlibdir}/wasm32-unknown-unknown/lib/*.rlib
|
||||||
|
%if %{with wasi}
|
||||||
|
%dir %{rustlibdir}/wasm32-wasi
|
||||||
|
%dir %{rustlibdir}/wasm32-wasi/lib
|
||||||
|
%dir %{rustlibdir}/wasm32-wasi/lib/self-contained
|
||||||
|
%{rustlibdir}/wasm32-wasi/lib/*.rlib
|
||||||
|
%{rustlibdir}/wasm32-wasi/lib/self-contained/*.o
|
||||||
|
%{rustlibdir}/wasm32-wasi/lib/self-contained/*.a
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
%{_libexecdir}/cargo-credential-1password
|
||||||
|
|
||||||
|
%files -n cargo%{version_suffix}
|
||||||
|
%license src/tools/cargo/LICENSE-{APACHE,MIT,THIRD-PARTY}
|
||||||
|
%license src/tools/rustfmt/LICENSE-{APACHE,MIT}
|
||||||
|
%license src/tools/clippy/LICENSE-{APACHE,MIT}
|
||||||
|
%{_bindir}/cargo
|
||||||
|
%{_mandir}/man1/cargo*.1%{?ext_man}
|
||||||
|
%dir %{_datadir}/cargo
|
||||||
|
%dir %{_datadir}/cargo/registry
|
||||||
|
# End not with test
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%changelog
|
3
rustc-1.71.0-src.tar.xz
Normal file
3
rustc-1.71.0-src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:5814699031aafdcc2e2f71fc9b389678cd7042350d1583da061463d8e88681c7
|
||||||
|
size 151962928
|
Loading…
Reference in New Issue
Block a user