Compare commits

...

No commits in common. "c8-stream-rhel8" and "c9s" have entirely different histories.

23 changed files with 1336 additions and 780 deletions

428
.gitignore vendored
View File

@ -1,2 +1,426 @@
SOURCES/rustc-1.79.0-src.tar.xz
SOURCES/wasi-libc-wasi-sdk-22.tar.gz
/rustc-1.10.0-src.tar.gz
/rustc-1.9.0-i686-unknown-linux-gnu.tar.gz
/rustc-1.9.0-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.11.0-src.tar.gz
/rustc-1.10.0-i686-unknown-linux-gnu.tar.gz
/rustc-1.10.0-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.10.0-armv7-unknown-linux-gnueabihf.tar.gz
/rustc-1.11.0-aarch64-unknown-linux-gnu.tar.gz
/rustc-1.11.0-armv7-unknown-linux-gnueabihf.tar.gz
/rustc-1.11.0-i686-unknown-linux-gnu.tar.gz
/rustc-1.11.0-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.12.0-src.tar.gz
/rustc-1.12.1-src.tar.gz
/rustc-1.13.0-src.tar.gz
/rustc-1.12.1-aarch64-unknown-linux-gnu.tar.gz
/rustc-1.12.1-armv7-unknown-linux-gnueabihf.tar.gz
/rustc-1.12.1-i686-unknown-linux-gnu.tar.gz
/rustc-1.12.1-x86_64-unknown-linux-gnu.tar.gz
/rustc-beta-src.tar.gz
/rustc-1.13.0-aarch64-unknown-linux-gnu.tar.gz
/rustc-1.13.0-armv7-unknown-linux-gnueabihf.tar.gz
/rustc-1.13.0-i686-unknown-linux-gnu.tar.gz
/rustc-1.13.0-powerpc64le-unknown-linux-gnu.tar.gz
/rustc-1.13.0-powerpc64-unknown-linux-gnu.tar.gz
/rustc-1.13.0-s390x-unknown-linux-gnu.tar.gz
/rustc-1.13.0-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.14.0-src.tar.gz
/rustc-1.15.1-src.tar.gz
/rustc-1.14.0-aarch64-unknown-linux-gnu.tar.gz
/rustc-1.14.0-armv7-unknown-linux-gnueabihf.tar.gz
/rustc-1.14.0-i686-unknown-linux-gnu.tar.gz
/rustc-1.14.0-powerpc64le-unknown-linux-gnu.tar.gz
/rustc-1.14.0-powerpc64-unknown-linux-gnu.tar.gz
/rustc-1.14.0-s390x-unknown-linux-gnu.tar.gz
/rustc-1.14.0-x86_64-unknown-linux-gnu.tar.gz
/rust-1.15.1-aarch64-unknown-linux-gnu.tar.gz
/rust-1.15.1-armv7-unknown-linux-gnueabihf.tar.gz
/rust-1.15.1-i686-unknown-linux-gnu.tar.gz
/rust-1.15.1-powerpc64le-unknown-linux-gnu.tar.gz
/rust-1.15.1-powerpc64-unknown-linux-gnu.tar.gz
/rust-1.15.1-s390x-unknown-linux-gnu.tar.gz
/rust-1.15.1-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.16.0-src.tar.gz
/rustc-1.17.0-src.tar.gz
/rust-1.16.0-aarch64-unknown-linux-gnu.tar.gz
/rust-1.16.0-armv7-unknown-linux-gnueabihf.tar.gz
/rust-1.16.0-i686-unknown-linux-gnu.tar.gz
/rust-1.16.0-powerpc64le-unknown-linux-gnu.tar.gz
/rust-1.16.0-powerpc64-unknown-linux-gnu.tar.gz
/rust-1.16.0-s390x-unknown-linux-gnu.tar.gz
/rust-1.16.0-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.18.0-src.tar.gz
/rust-1.17.0-aarch64-unknown-linux-gnu.tar.gz
/rust-1.17.0-armv7-unknown-linux-gnueabihf.tar.gz
/rust-1.17.0-i686-unknown-linux-gnu.tar.gz
/rust-1.17.0-powerpc64le-unknown-linux-gnu.tar.gz
/rust-1.17.0-powerpc64-unknown-linux-gnu.tar.gz
/rust-1.17.0-s390x-unknown-linux-gnu.tar.gz
/rust-1.17.0-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.19.0-src.tar.xz
/rust-1.18.0-aarch64-unknown-linux-gnu.tar.gz
/rust-1.18.0-armv7-unknown-linux-gnueabihf.tar.gz
/rust-1.18.0-i686-unknown-linux-gnu.tar.gz
/rust-1.18.0-powerpc64le-unknown-linux-gnu.tar.gz
/rust-1.18.0-powerpc64-unknown-linux-gnu.tar.gz
/rust-1.18.0-s390x-unknown-linux-gnu.tar.gz
/rust-1.18.0-x86_64-unknown-linux-gnu.tar.gz
/rustc-1.20.0-src.tar.xz
/rust-1.19.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.19.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.19.0-i686-unknown-linux-gnu.tar.xz
/rust-1.19.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.19.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.19.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.19.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.21.0-src.tar.xz
/rust-1.20.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.20.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.20.0-i686-unknown-linux-gnu.tar.xz
/rust-1.20.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.20.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.20.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.20.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.22.1-src.tar.xz
/rust-1.21.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.21.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.21.0-i686-unknown-linux-gnu.tar.xz
/rust-1.21.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.21.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.21.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.21.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.23.0-src.tar.xz
/rust-1.22.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.22.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.22.0-i686-unknown-linux-gnu.tar.xz
/rust-1.22.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.22.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.22.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.22.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.24.0-src.tar.xz
/rust-1.23.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.23.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.23.0-i686-unknown-linux-gnu.tar.xz
/rust-1.23.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.23.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.23.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.23.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.24.1-src.tar.xz
/rustc-1.25.0-src.tar.xz
/rust-1.24.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.24.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.24.0-i686-unknown-linux-gnu.tar.xz
/rust-1.24.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.24.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.24.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.24.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.26.0-src.tar.xz
/rust-1.25.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.25.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.25.0-i686-unknown-linux-gnu.tar.xz
/rust-1.25.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.25.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.25.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.25.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.26.1-src.tar.xz
/rustc-1.26.2-src.tar.xz
/rustc-1.27.0-src.tar.xz
/rust-1.26.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.26.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.26.0-i686-unknown-linux-gnu.tar.xz
/rust-1.26.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.26.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.26.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.26.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.27.1-src.tar.xz
/rustc-1.27.2-src.tar.xz
/rustc-1.28.0-src.tar.xz
/rust-1.27.2-aarch64-unknown-linux-gnu.tar.xz
/rust-1.27.2-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.27.2-i686-unknown-linux-gnu.tar.xz
/rust-1.27.2-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.27.2-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.27.2-s390x-unknown-linux-gnu.tar.xz
/rust-1.27.2-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.29.0-src.tar.xz
/rust-1.28.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.28.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.28.0-i686-unknown-linux-gnu.tar.xz
/rust-1.28.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.28.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.28.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.28.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.29.1-src.tar.xz
/rustc-1.29.2-src.tar.xz
/rustc-1.30.0-src.tar.xz
/rust-1.29.2-aarch64-unknown-linux-gnu.tar.xz
/rust-1.29.2-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.29.2-i686-unknown-linux-gnu.tar.xz
/rust-1.29.2-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.29.2-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.29.2-s390x-unknown-linux-gnu.tar.xz
/rust-1.29.2-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.30.1-src.tar.xz
/rustc-1.31.0-src.tar.xz
/rust-1.30.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.30.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.30.0-i686-unknown-linux-gnu.tar.xz
/rust-1.30.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.30.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.30.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.30.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.31.1-src.tar.xz
/rustc-1.32.0-src.tar.xz
/rust-1.31.1-aarch64-unknown-linux-gnu.tar.xz
/rust-1.31.1-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.31.1-i686-unknown-linux-gnu.tar.xz
/rust-1.31.1-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.31.1-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.31.1-s390x-unknown-linux-gnu.tar.xz
/rust-1.31.1-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.33.0-src.tar.xz
/rust-1.32.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.32.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.32.0-i686-unknown-linux-gnu.tar.xz
/rust-1.32.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.32.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.32.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.32.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.34.0-src.tar.xz
/rust-1.33.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.33.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.33.0-i686-unknown-linux-gnu.tar.xz
/rust-1.33.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.33.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.33.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.33.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.34.1-src.tar.xz
/rustc-1.34.2-src.tar.xz
/rustc-1.35.0-src.tar.xz
/rust-1.34.2-aarch64-unknown-linux-gnu.tar.xz
/rust-1.34.2-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.34.2-i686-unknown-linux-gnu.tar.xz
/rust-1.34.2-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.34.2-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.34.2-s390x-unknown-linux-gnu.tar.xz
/rust-1.34.2-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.36.0-src.tar.xz
/rust-1.35.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.35.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.35.0-i686-unknown-linux-gnu.tar.xz
/rust-1.35.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.35.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.35.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.35.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.37.0-src.tar.xz
/rust-1.36.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.36.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.36.0-i686-unknown-linux-gnu.tar.xz
/rust-1.36.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.36.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.36.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.36.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.38.0-src.tar.xz
/rust-1.37.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.37.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.37.0-i686-unknown-linux-gnu.tar.xz
/rust-1.37.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.37.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.37.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.37.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.39.0-src.tar.xz
/rust-1.38.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.38.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.38.0-i686-unknown-linux-gnu.tar.xz
/rust-1.38.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.38.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.38.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.38.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.40.0-src.tar.xz
/rust-1.39.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.39.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.39.0-i686-unknown-linux-gnu.tar.xz
/rust-1.39.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.39.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.39.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.39.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.41.0-src.tar.xz
/rust-1.40.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.40.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.40.0-i686-unknown-linux-gnu.tar.xz
/rust-1.40.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.40.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.40.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.40.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.41.1-src.tar.xz
/rustc-1.42.0-src.tar.xz
/rust-1.41.1-aarch64-unknown-linux-gnu.tar.xz
/rust-1.41.1-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.41.1-i686-unknown-linux-gnu.tar.xz
/rust-1.41.1-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.41.1-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.41.1-s390x-unknown-linux-gnu.tar.xz
/rust-1.41.1-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.43.0-src.tar.xz
/rust-1.42.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.42.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.42.0-i686-unknown-linux-gnu.tar.xz
/rust-1.42.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.42.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.42.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.42.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.43.1-src.tar.xz
/rustc-1.44.0-src.tar.xz
/rust-1.43.1-aarch64-unknown-linux-gnu.tar.xz
/rust-1.43.1-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.43.1-i686-unknown-linux-gnu.tar.xz
/rust-1.43.1-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.43.1-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.43.1-s390x-unknown-linux-gnu.tar.xz
/rust-1.43.1-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.44.1-src.tar.xz
/rustc-1.45.0-src.tar.xz
/rust-1.44.0-x86_64-unknown-linux-gnu.tar.xz
/rust-1.44.0-i686-unknown-linux-gnu.tar.xz
/rust-1.44.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.44.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.44.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.44.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.44.0-s390x-unknown-linux-gnu.tar.xz
/rustc-1.45.1-src.tar.xz
/rustc-1.45.2-src.tar.xz
/rustc-1.46.0-src.tar.xz
/rust-1.45.2-aarch64-unknown-linux-gnu.tar.xz
/rust-1.45.2-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.45.2-i686-unknown-linux-gnu.tar.xz
/rust-1.45.2-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.45.2-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.45.2-s390x-unknown-linux-gnu.tar.xz
/rust-1.45.2-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.47.0-src.tar.xz
/rust-1.46.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.46.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.46.0-i686-unknown-linux-gnu.tar.xz
/rust-1.46.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.46.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.46.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.46.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.48.0-src.tar.xz
/rust-1.47.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.47.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.47.0-i686-unknown-linux-gnu.tar.xz
/rust-1.47.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.47.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.47.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.47.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.49.0-src.tar.xz
/rust-1.48.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.48.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.48.0-i686-unknown-linux-gnu.tar.xz
/rust-1.48.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.48.0-powerpc64-unknown-linux-gnu.tar.xz
/rust-1.48.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.48.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.50.0-src.tar.xz
/rust-1.49.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.49.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.49.0-i686-unknown-linux-gnu.tar.xz
/rust-1.49.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.49.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.49.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.51.0-src.tar.xz
/rust-1.50.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.50.0-armv7-unknown-linux-gnueabihf.tar.xz
/rust-1.50.0-i686-unknown-linux-gnu.tar.xz
/rust-1.50.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.50.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.50.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.52.1-src.tar.xz
/rust-1.51.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.51.0-i686-unknown-linux-gnu.tar.xz
/rust-1.51.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.51.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.51.0-x86_64-unknown-linux-gnu.tar.xz
/rust-openssl-cc1c74c1a313ac46b5fa3da602a46cff6fdd06a2.tar.gz
/rust-openssl-770ba32702abd2b4cab80727958c27ac3043c3ec.tar.gz
/rustc-1.53.0-src.tar.xz
/rust-1.52.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.52.0-i686-unknown-linux-gnu.tar.xz
/rust-1.52.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.52.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.52.0-x86_64-unknown-linux-gnu.tar.xz
/openssl-0.10.35.crate
/openssl-sys-0.9.65.crate
/rustc-1.54.0-src.tar.xz
/rust-1.53.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.53.0-i686-unknown-linux-gnu.tar.xz
/rust-1.53.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.53.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.53.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.55.0-src.tar.xz
/rust-1.54.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.54.0-i686-unknown-linux-gnu.tar.xz
/rust-1.54.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.54.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.54.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.56.1-src.tar.xz
/rust-1.55.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.55.0-i686-unknown-linux-gnu.tar.xz
/rust-1.55.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.55.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.55.0-x86_64-unknown-linux-gnu.tar.xz
/wasi-libc-ad5133410f66b93a2381db5b542aad5e0964db96.tar.gz
/rustc-1.57.0-src.tar.xz
/rust-1.56.1-aarch64-unknown-linux-gnu.tar.xz
/rust-1.56.1-i686-unknown-linux-gnu.tar.xz
/rust-1.56.1-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.56.1-s390x-unknown-linux-gnu.tar.xz
/rust-1.56.1-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.58.0-src.tar.xz
/rust-1.57.0-aarch64-unknown-linux-gnu.tar.xz
/rust-1.57.0-i686-unknown-linux-gnu.tar.xz
/rust-1.57.0-powerpc64le-unknown-linux-gnu.tar.xz
/rust-1.57.0-s390x-unknown-linux-gnu.tar.xz
/rust-1.57.0-x86_64-unknown-linux-gnu.tar.xz
/rustc-1.58.1-src.tar.xz
/rustc-1.59.0-src.tar.xz
/rustc-1.60.0-src.tar.xz
/rustc-1.61.0-src.tar.xz
/wasi-libc-9886d3d6200fcc3726329966860fc058707406cd.tar.gz
/rustc-1.62.0-src.tar.xz
/rustc-1.62.1-src.tar.xz
/rustc-1.63.0-src.tar.xz
/rustc-1.64.0-src.tar.xz
/rustc-1.65.0-src.tar.xz
/wasi-libc-wasi-sdk-16.tar.gz
/rustc-1.66.1-src.tar.xz
/wasi-libc-wasi-sdk-17.tar.gz
/rustc-1.67.1-src.tar.xz
/wasi-libc-1dfe5c302d1c5ab621f7abf04620fae92700fd22.tar.gz
/rustc-1.68.2-src.tar.xz
/rustc-1.69.0-src.tar.xz
/rustc-1.70.0-src.tar.xz
/wasi-libc-wasi-sdk-20.tar.gz
/rustc-1.71.0-src.tar.xz
/rustc-1.71.1-src.tar.xz
/rustc-1.72.0-src.tar.xz
/wasi-libc-7018e24d8fe248596819d2e884761676f3542a04.tar.gz
/rustc-1.72.1-src.tar.xz
/wasi-libc-bd950eb128bff337153de217b11270f948d04bb4.tar.gz
/rustc-1.73.0-src.tar.xz
/rustc-1.74.0-src.tar.xz
/rustc-1.74.1-src.tar.xz
/rustc-1.75.0-src.tar.xz
/rustc-1.76.0-src.tar.xz
/wasi-libc-03b228e46bb02fcc5927253e1b8ad715072b1ae4.tar.gz
/rustc-1.77.0-src.tar.xz
/rustc-1.77.2-src.tar.xz
/rustc-1.78.0-src.tar.xz
/rustc-1.79.0-src.tar.xz
/wasi-libc-wasi-sdk-22.tar.gz
/rustc-1.80.0-src.tar.xz
/rustc-1.80.1-src.tar.xz
/wasi-libc-3f43ea9abb24ed8d24d760989e1d87ea385f8eaa.tar.gz
/rustc-1.81.0-src.tar.xz
/wasi-libc-b9ef79d7dbd47c6c5bafdae760823467c2f60b70.tar.gz
/rustc-1.82.0-src.tar.xz

View File

@ -1,2 +0,0 @@
fdd94a3bdb321d18a0021d4dce9b8546a1db2eec SOURCES/rustc-1.79.0-src.tar.xz
13451249ddb71e69f12565ef4803b71ce4092191 SOURCES/wasi-libc-wasi-sdk-22.tar.gz

View File

@ -0,0 +1,147 @@
From c15469a7fec811d1a4f69ff26e18c6f383df41d2 Mon Sep 17 00:00:00 2001
From: Alex Crichton <alex@alexcrichton.com>
Date: Fri, 6 Sep 2024 09:21:33 -0700
Subject: [PATCH] Fix enabling wasm-component-ld to match other tools
It was [pointed out recently][comment] that enabling `wasm-component-ld`
as a host tool is different from other host tools. This commit refactors
the logic to match by deduplicating selection of when to build other
tools and then using the same logic for `wasm-component-ld`.
[comment]: https://github.com/rust-lang/rust/pull/127866#issuecomment-2333434720
---
src/bootstrap/src/core/build_steps/compile.rs | 2 +-
src/bootstrap/src/core/build_steps/dist.rs | 2 +-
src/bootstrap/src/core/build_steps/tool.rs | 38 +++----------------
src/bootstrap/src/lib.rs | 17 +++++----
4 files changed, 17 insertions(+), 42 deletions(-)
diff --git a/src/bootstrap/src/core/build_steps/compile.rs b/src/bootstrap/src/core/build_steps/compile.rs
index 1936c91ef83c..102c9fd25543 100644
--- a/src/bootstrap/src/core/build_steps/compile.rs
+++ b/src/bootstrap/src/core/build_steps/compile.rs
@@ -1912,7 +1912,7 @@ fn run(self, builder: &Builder<'_>) -> Compiler {
// delegates to the `rust-lld` binary for linking and then runs
// logic to create the final binary. This is used by the
// `wasm32-wasip2` target of Rust.
- if builder.build_wasm_component_ld() {
+ if builder.tool_enabled("wasm-component-ld") {
let wasm_component_ld_exe =
builder.ensure(crate::core::build_steps::tool::WasmComponentLd {
compiler: build_compiler,
diff --git a/src/bootstrap/src/core/build_steps/dist.rs b/src/bootstrap/src/core/build_steps/dist.rs
index 4957de2e1b79..ccb5656d6716 100644
--- a/src/bootstrap/src/core/build_steps/dist.rs
+++ b/src/bootstrap/src/core/build_steps/dist.rs
@@ -473,7 +473,7 @@ fn prepare_image(builder: &Builder<'_>, compiler: Compiler, image: &Path) {
);
}
}
- if builder.build_wasm_component_ld() {
+ if builder.tool_enabled("wasm-component-ld") {
let src_dir = builder.sysroot_libdir(compiler, host).parent().unwrap().join("bin");
let ld = exe("wasm-component-ld", compiler.host);
builder.copy_link(&src_dir.join(&ld), &dst_dir.join(&ld));
diff --git a/src/bootstrap/src/core/build_steps/tool.rs b/src/bootstrap/src/core/build_steps/tool.rs
index 3a1eb43b801f..3c2d791c2090 100644
--- a/src/bootstrap/src/core/build_steps/tool.rs
+++ b/src/bootstrap/src/core/build_steps/tool.rs
@@ -693,14 +693,7 @@ impl Step for Cargo {
fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_> {
let builder = run.builder;
- run.path("src/tools/cargo").default_condition(
- builder.config.extended
- && builder.config.tools.as_ref().map_or(
- true,
- // If `tools` is set, search list for this tool.
- |tools| tools.iter().any(|tool| tool == "cargo"),
- ),
- )
+ run.path("src/tools/cargo").default_condition(builder.tool_enabled("cargo"))
}
fn make_run(run: RunConfig<'_>) {
@@ -772,14 +765,7 @@ impl Step for RustAnalyzer {
fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_> {
let builder = run.builder;
- run.path("src/tools/rust-analyzer").default_condition(
- builder.config.extended
- && builder
- .config
- .tools
- .as_ref()
- .map_or(true, |tools| tools.iter().any(|tool| tool == "rust-analyzer")),
- )
+ run.path("src/tools/rust-analyzer").default_condition(builder.tool_enabled("rust-analyzer"))
}
fn make_run(run: RunConfig<'_>) {
@@ -821,12 +807,8 @@ fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_> {
run.path("src/tools/rust-analyzer")
.path("src/tools/rust-analyzer/crates/proc-macro-srv-cli")
.default_condition(
- builder.config.extended
- && builder.config.tools.as_ref().map_or(true, |tools| {
- tools.iter().any(|tool| {
- tool == "rust-analyzer" || tool == "rust-analyzer-proc-macro-srv"
- })
- }),
+ builder.tool_enabled("rust-analyzer")
+ || builder.tool_enabled("rust-analyzer-proc-macro-srv"),
)
}
@@ -874,16 +856,8 @@ impl Step for LlvmBitcodeLinker {
fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_> {
let builder = run.builder;
- run.path("src/tools/llvm-bitcode-linker").default_condition(
- builder.config.extended
- && builder
- .config
- .tools
- .as_ref()
- .map_or(builder.build.unstable_features(), |tools| {
- tools.iter().any(|tool| tool == "llvm-bitcode-linker")
- }),
- )
+ run.path("src/tools/llvm-bitcode-linker")
+ .default_condition(builder.tool_enabled("llvm-bitcode-linker"))
}
fn make_run(run: RunConfig<'_>) {
diff --git a/src/bootstrap/src/lib.rs b/src/bootstrap/src/lib.rs
index c76ce3409562..780024e307ed 100644
--- a/src/bootstrap/src/lib.rs
+++ b/src/bootstrap/src/lib.rs
@@ -1407,16 +1407,17 @@ fn default_wasi_runner(&self) -> Option<String> {
None
}
- /// Returns whether it's requested that `wasm-component-ld` is built as part
- /// of the sysroot. This is done either with the `extended` key in
- /// `config.toml` or with the `tools` set.
- fn build_wasm_component_ld(&self) -> bool {
- if self.config.extended {
- return true;
+ /// Returns whether the specified tool is configured as part of this build.
+ ///
+ /// This requires that both the `extended` key is set and the `tools` key is
+ /// either unset or specifically contains the specified tool.
+ fn tool_enabled(&self, tool: &str) -> bool {
+ if !self.config.extended {
+ return false;
}
match &self.config.tools {
- Some(set) => set.contains("wasm-component-ld"),
- None => false,
+ Some(set) => set.contains(tool),
+ None => true,
}
}
--
2.46.0

View File

@ -1,19 +1,21 @@
From 61b5cc96337da2121221dd1bcdb63fd36551d065 Mon Sep 17 00:00:00 2001
From 3d8c6d095581e8d7585f3772cfd16f6367f3c008 Mon Sep 17 00:00:00 2001
From: Josh Stone <jistone@redhat.com>
Date: Wed, 1 Nov 2023 15:21:15 -0700
Date: Fri, 16 Aug 2024 10:12:58 -0700
Subject: [PATCH] Use lld provided by system
---
compiler/rustc_target/src/spec/base/wasm.rs | 3 +--
.../src/spec/targets/aarch64_unknown_none_softfloat.rs | 2 +-
compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs | 1 +
compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs | 2 +-
compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs | 1 +
3 files changed, 3 insertions(+), 3 deletions(-)
5 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/compiler/rustc_target/src/spec/base/wasm.rs b/compiler/rustc_target/src/spec/base/wasm.rs
index 87ade9e58cf4..2ddff95febab 100644
index f237391016e7..08bcd9699b4a 100644
--- a/compiler/rustc_target/src/spec/base/wasm.rs
+++ b/compiler/rustc_target/src/spec/base/wasm.rs
@@ -91,8 +91,7 @@ macro_rules! args {
@@ -85,8 +85,7 @@ macro_rules! args {
// arguments just yet
limit_rdylib_exports: false,
@ -23,8 +25,33 @@ index 87ade9e58cf4..2ddff95febab 100644
linker_flavor: LinkerFlavor::WasmLld(Cc::No),
pre_link_args,
diff --git a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
index 222d5651b521..4b780bc8a8e7 100644
--- a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
+++ b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
@@ -14,7 +14,7 @@ pub fn target() -> Target {
let opts = TargetOptions {
abi: "softfloat".into(),
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
- linker: Some("rust-lld".into()),
+ linker: Some("lld".into()),
features: "+v8a,+strict-align,-neon,-fp-armv8".into(),
relocation_model: RelocModel::Static,
disable_redzone: true,
diff --git a/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs b/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs
index 429303170b6b..19d4ec53f6d8 100644
--- a/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs
+++ b/compiler/rustc_target/src/spec/targets/aarch64_unknown_uefi.rs
@@ -9,6 +9,7 @@ pub fn target() -> Target {
base.max_atomic_width = Some(128);
base.add_pre_link_args(LinkerFlavor::Msvc(Lld::No), &["/machine:arm64"]);
base.features = "+v8a".into();
+ base.linker = Some("lld".into());
Target {
llvm_target: "aarch64-unknown-windows".into(),
diff --git a/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs b/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs
index 9aa95a35f8e5..a9172f9441b7 100644
index 549706998d46..b7e9158ddef5 100644
--- a/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs
+++ b/compiler/rustc_target/src/spec/targets/x86_64_unknown_none.rs
@@ -17,7 +17,7 @@ pub fn target() -> Target {
@ -33,11 +60,11 @@ index 9aa95a35f8e5..a9172f9441b7 100644
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
- linker: Some("rust-lld".into()),
+ linker: Some("lld".into()),
features:
"-mmx,-sse,-sse2,-sse3,-ssse3,-sse4.1,-sse4.2,-3dnow,-3dnowa,-avx,-avx2,+soft-float"
.into(),
features: "-mmx,-sse,-sse2,-sse3,-ssse3,-sse4.1,-sse4.2,-avx,-avx2,+soft-float".into(),
supported_sanitizers: SanitizerSet::KCFI | SanitizerSet::KERNELADDRESS,
disable_redzone: true,
diff --git a/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs b/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs
index 5abfb8162f70..13cb43bda1a4 100644
index 6da1fcca58c8..c84ae44576d4 100644
--- a/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs
+++ b/compiler/rustc_target/src/spec/targets/x86_64_unknown_uefi.rs
@@ -16,6 +16,7 @@ pub fn target() -> Target {
@ -48,18 +75,6 @@ index 5abfb8162f70..13cb43bda1a4 100644
// We disable MMX and SSE for now, even though UEFI allows using them. Problem is, you have to
// enable these CPU features explicitly before their first use, otherwise their instructions
diff -Naur a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs
--- a/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs 2024-03-17 12:03:00.000000000 -0700
+++ b/compiler/rustc_target/src/spec/targets/aarch64_unknown_none_softfloat.rs 2024-03-22 10:02:17.742806274 -0700
@@ -14,7 +14,7 @@
let opts = TargetOptions {
abi: "softfloat".into(),
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
- linker: Some("rust-lld".into()),
+ linker: Some("lld".into()),
features: "+v8a,+strict-align,-neon,-fp-armv8".into(),
relocation_model: RelocModel::Static,
disable_redzone: true,
--
2.41.0
2.46.0

View File

@ -1,4 +1,4 @@
From 2b99134e2884fa56bcab6d360885ec5421048e66 Mon Sep 17 00:00:00 2001
From babdaf8354098399ec98c96eb3a3627664d6ba03 Mon Sep 17 00:00:00 2001
From: Josh Stone <jistone@redhat.com>
Date: Thu, 28 Sep 2023 18:14:28 -0700
Subject: [PATCH 1/2] bootstrap: allow disabling target self-contained
@ -11,10 +11,10 @@ Subject: [PATCH 1/2] bootstrap: allow disabling target self-contained
4 files changed, 22 insertions(+)
diff --git a/config.example.toml b/config.example.toml
index f94553dd63f7..5ec969c80a37 100644
index f1dc32234ccf..82207f19d471 100644
--- a/config.example.toml
+++ b/config.example.toml
@@ -869,6 +869,11 @@
@@ -880,6 +880,11 @@
# argument as the test binary.
#runner = <none> (string)
@ -27,10 +27,10 @@ index f94553dd63f7..5ec969c80a37 100644
# Distribution options
#
diff --git a/src/bootstrap/src/core/build_steps/compile.rs b/src/bootstrap/src/core/build_steps/compile.rs
index e927b491c71e..69a80d01d6b9 100644
index edf18e2ebf33..d48d027f329c 100644
--- a/src/bootstrap/src/core/build_steps/compile.rs
+++ b/src/bootstrap/src/core/build_steps/compile.rs
@@ -356,6 +356,10 @@ fn copy_self_contained_objects(
@@ -367,6 +367,10 @@ fn copy_self_contained_objects(
compiler: &Compiler,
target: TargetSelection,
) -> Vec<(PathBuf, DependencyType)> {
@ -42,10 +42,10 @@ index e927b491c71e..69a80d01d6b9 100644
t!(fs::create_dir_all(&libdir_self_contained));
let mut target_deps = vec![];
diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs
index 3e1bc9a9acdd..5e24a9cc4f60 100644
index bdfee55d8d18..47fcd50e7e03 100644
--- a/src/bootstrap/src/core/config/config.rs
+++ b/src/bootstrap/src/core/config/config.rs
@@ -586,6 +586,7 @@ pub struct Target {
@@ -589,6 +589,7 @@ pub struct Target {
pub runner: Option<String>,
pub no_std: bool,
pub codegen_backends: Option<Vec<String>>,
@ -53,7 +53,7 @@ index 3e1bc9a9acdd..5e24a9cc4f60 100644
}
impl Target {
@@ -594,6 +595,9 @@ pub fn from_triple(triple: &str) -> Self {
@@ -597,6 +598,9 @@ pub fn from_triple(triple: &str) -> Self {
if triple.contains("-none") || triple.contains("nvptx") || triple.contains("switch") {
target.no_std = true;
}
@ -63,7 +63,7 @@ index 3e1bc9a9acdd..5e24a9cc4f60 100644
target
}
}
@@ -1150,6 +1154,7 @@ struct TomlTarget {
@@ -1165,6 +1169,7 @@ struct TomlTarget {
no_std: Option<bool> = "no-std",
codegen_backends: Option<Vec<String>> = "codegen-backends",
runner: Option<String> = "runner",
@ -71,7 +71,7 @@ index 3e1bc9a9acdd..5e24a9cc4f60 100644
}
}
@@ -1870,6 +1875,9 @@ fn get_table(option: &str) -> Result<TomlConfig, toml::de::Error> {
@@ -1967,6 +1972,9 @@ fn get_table(option: &str) -> Result<TomlConfig, toml::de::Error> {
if let Some(s) = cfg.no_std {
target.no_std = s;
}
@ -82,10 +82,10 @@ index 3e1bc9a9acdd..5e24a9cc4f60 100644
target.cxx = cfg.cxx.map(PathBuf::from);
target.ar = cfg.ar.map(PathBuf::from);
diff --git a/src/bootstrap/src/lib.rs b/src/bootstrap/src/lib.rs
index 5ed6b357e20a..c23b21d65713 100644
index 82b640f54234..f724aba50241 100644
--- a/src/bootstrap/src/lib.rs
+++ b/src/bootstrap/src/lib.rs
@@ -1348,6 +1348,11 @@ fn no_std(&self, target: TargetSelection) -> Option<bool> {
@@ -1326,6 +1326,11 @@ fn no_std(&self, target: TargetSelection) -> Option<bool> {
self.config.target_config.get(&target).map(|t| t.no_std)
}
@ -98,5 +98,5 @@ index 5ed6b357e20a..c23b21d65713 100644
/// and `remote-test-server` binaries.
fn remote_tested(&self, target: TargetSelection) -> bool {
--
2.44.0
2.46.0

View File

@ -0,0 +1,163 @@
From 5d3e8210feabae1d80a9f21c18c9173b1fdc43ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=AE=B8=E6=9D=B0=E5=8F=8B=20Jieyou=20Xu=20=28Joe=29?=
<39484203+jieyouxu@users.noreply.github.com>
Date: Thu, 17 Oct 2024 22:58:45 +0800
Subject: [PATCH] bootstrap: allow setting `--jobs` in config.toml
(cherry picked from commit 65458aed68fe6786068bab00e5a46d7ecdd2a072)
---
config.example.toml | 5 ++
src/bootstrap/src/core/config/config.rs | 5 +-
src/bootstrap/src/core/config/flags.rs | 3 +-
src/bootstrap/src/core/config/tests.rs | 58 +++++++++++++++++++++++
src/bootstrap/src/utils/change_tracker.rs | 5 ++
5 files changed, 73 insertions(+), 3 deletions(-)
diff --git a/config.example.toml b/config.example.toml
index f1dc32234ccf..40c7ac9f5023 100644
--- a/config.example.toml
+++ b/config.example.toml
@@ -401,6 +401,11 @@
# Specify the location of the Android NDK. Used when targeting Android.
#android-ndk = "/path/to/android-ndk-r26d"
+# Number of parallel jobs to be used for building and testing. If set to `0` or
+# omitted, it will be automatically determined. This is the `-j`/`--jobs` flag
+# passed to cargo invocations.
+#jobs = 0
+
# =============================================================================
# General install configuration options
# =============================================================================
diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs
index bdfee55d8d18..c1e0f8c6b338 100644
--- a/src/bootstrap/src/core/config/config.rs
+++ b/src/bootstrap/src/core/config/config.rs
@@ -872,6 +872,7 @@ struct Build {
metrics: Option<bool> = "metrics",
android_ndk: Option<PathBuf> = "android-ndk",
optimized_compiler_builtins: Option<bool> = "optimized-compiler-builtins",
+ jobs: Option<u32> = "jobs",
}
}
@@ -1256,7 +1257,6 @@ pub(crate) fn parse_inner(
config.rustc_error_format = flags.rustc_error_format;
config.json_output = flags.json_output;
config.on_fail = flags.on_fail;
- config.jobs = Some(threads_from_config(flags.jobs as u32));
config.cmd = flags.cmd;
config.incremental = flags.incremental;
config.dry_run = if flags.dry_run { DryRun::UserSelected } else { DryRun::Disabled };
@@ -1477,8 +1477,11 @@ fn get_table(option: &str) -> Result<TomlConfig, toml::de::Error> {
metrics: _,
android_ndk,
optimized_compiler_builtins,
+ jobs,
} = toml.build.unwrap_or_default();
+ config.jobs = Some(threads_from_config(flags.jobs.unwrap_or(jobs.unwrap_or(0))));
+
if let Some(file_build) = build {
config.build = TargetSelection::from_user(&file_build);
};
diff --git a/src/bootstrap/src/core/config/flags.rs b/src/bootstrap/src/core/config/flags.rs
index c3f174028149..7fdd5f8b8cae 100644
--- a/src/bootstrap/src/core/config/flags.rs
+++ b/src/bootstrap/src/core/config/flags.rs
@@ -110,11 +110,10 @@ pub struct Flags {
short,
long,
value_hint = clap::ValueHint::Other,
- default_value_t = std::thread::available_parallelism().map_or(1, std::num::NonZeroUsize::get),
value_name = "JOBS"
)]
/// number of jobs to run in parallel
- pub jobs: usize,
+ pub jobs: Option<u32>,
// This overrides the deny-warnings configuration option,
// which passes -Dwarnings to the compiler invocations.
#[arg(global = true, long)]
diff --git a/src/bootstrap/src/core/config/tests.rs b/src/bootstrap/src/core/config/tests.rs
index 219c5a6ec914..bc49074fa316 100644
--- a/src/bootstrap/src/core/config/tests.rs
+++ b/src/bootstrap/src/core/config/tests.rs
@@ -317,3 +317,61 @@ fn order_of_clippy_rules() {
assert_eq!(expected, actual);
}
+
+#[test]
+fn parse_jobs() {
+ assert_eq!(parse("build.jobs = 1").jobs, Some(1));
+}
+
+#[test]
+fn jobs_precedence() {
+ // `--jobs` should take precedence over using `--set build.jobs`.
+
+ let config = Config::parse_inner(
+ Flags::parse(&[
+ "check".to_owned(),
+ "--config=/does/not/exist".to_owned(),
+ "--jobs=67890".to_owned(),
+ "--set=build.jobs=12345".to_owned(),
+ ]),
+ |&_| toml::from_str(""),
+ );
+ assert_eq!(config.jobs, Some(67890));
+
+ // `--set build.jobs` should take precedence over `config.toml`.
+ let config = Config::parse_inner(
+ Flags::parse(&[
+ "check".to_owned(),
+ "--config=/does/not/exist".to_owned(),
+ "--set=build.jobs=12345".to_owned(),
+ ]),
+ |&_| {
+ toml::from_str(
+ r#"
+ [build]
+ jobs = 67890
+ "#,
+ )
+ },
+ );
+ assert_eq!(config.jobs, Some(12345));
+
+ // `--jobs` > `--set build.jobs` > `config.toml`
+ let config = Config::parse_inner(
+ Flags::parse(&[
+ "check".to_owned(),
+ "--jobs=123".to_owned(),
+ "--config=/does/not/exist".to_owned(),
+ "--set=build.jobs=456".to_owned(),
+ ]),
+ |&_| {
+ toml::from_str(
+ r#"
+ [build]
+ jobs = 789
+ "#,
+ )
+ },
+ );
+ assert_eq!(config.jobs, Some(123));
+}
diff --git a/src/bootstrap/src/utils/change_tracker.rs b/src/bootstrap/src/utils/change_tracker.rs
index 51a25104e4cf..1f6a1064a5dc 100644
--- a/src/bootstrap/src/utils/change_tracker.rs
+++ b/src/bootstrap/src/utils/change_tracker.rs
@@ -235,4 +235,9 @@ pub fn human_readable_changes(changes: &[ChangeInfo]) -> String {
severity: ChangeSeverity::Info,
summary: "The `build.profiler` option now tries to use source code from `download-ci-llvm` if possible, instead of checking out the `src/llvm-project` submodule.",
},
+ ChangeInfo {
+ change_id: 131838,
+ severity: ChangeSeverity::Info,
+ summary: "Allow setting `--jobs` in config.toml with `build.jobs`.",
+ },
];
--
2.47.0

View File

@ -1,19 +1,19 @@
From e3b7d2e3d3b4fcbc6591de606957c0fd59b5e547 Mon Sep 17 00:00:00 2001
From 3fdce19416e80a48c5b2b77b2cdec697d0b5e225 Mon Sep 17 00:00:00 2001
From: Josh Stone <jistone@redhat.com>
Date: Thu, 28 Sep 2023 18:18:16 -0700
Subject: [PATCH 2/2] set an external library path for wasm32-wasi
---
compiler/rustc_codegen_ssa/src/back/link.rs | 9 +++++++++
compiler/rustc_codegen_ssa/src/back/link.rs | 10 ++++++++++
compiler/rustc_target/src/spec/mod.rs | 4 ++++
compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs | 7 ++++---
3 files changed, 17 insertions(+), 3 deletions(-)
.../rustc_target/src/spec/targets/wasm32_wasip1.rs | 7 ++++---
3 files changed, 18 insertions(+), 3 deletions(-)
diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs
index f5e8d5fc92a9..f4ad3f725427 100644
index e8143b9a5f38..5a928a18b3ea 100644
--- a/compiler/rustc_codegen_ssa/src/back/link.rs
+++ b/compiler/rustc_codegen_ssa/src/back/link.rs
@@ -1563,6 +1563,12 @@ fn get_object_file_path(sess: &Session, name: &str, self_contained: bool) -> Pat
@@ -1621,6 +1621,12 @@ fn get_object_file_path(sess: &Session, name: &str, self_contained: bool) -> Pat
return file_path;
}
}
@ -23,13 +23,14 @@ index f5e8d5fc92a9..f4ad3f725427 100644
+ return file_path;
+ }
+ }
for search_path in fs.search_paths() {
for search_path in sess.target_filesearch(PathKind::Native).search_paths() {
let file_path = search_path.dir.join(name);
if file_path.exists() {
@@ -2049,6 +2055,9 @@ fn add_library_search_dirs(cmd: &mut dyn Linker, sess: &Session, self_contained:
let lib_path = sess.target_filesearch(PathKind::All).get_self_contained_lib_path();
cmd.include_path(&fix_windows_verbatim_for_gcc(&lib_path));
}
@@ -2123,6 +2129,10 @@ fn add_library_search_dirs(
ControlFlow::<()>::Continue(())
},
);
+
+ if let Some(lib_path) = &sess.target.options.external_lib_path {
+ cmd.include_path(Path::new(lib_path.as_ref()));
+ }
@ -37,10 +38,10 @@ index f5e8d5fc92a9..f4ad3f725427 100644
/// Add options making relocation sections in the produced ELF files read-only
diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs
index 941d767b850d..cd0a2ce51989 100644
index d5f227a84a4c..54c22c8ebed6 100644
--- a/compiler/rustc_target/src/spec/mod.rs
+++ b/compiler/rustc_target/src/spec/mod.rs
@@ -1881,6 +1881,7 @@ pub struct TargetOptions {
@@ -2053,6 +2053,7 @@ pub struct TargetOptions {
/// Objects to link before and after all other object code.
pub pre_link_objects: CrtObjects,
pub post_link_objects: CrtObjects,
@ -48,7 +49,7 @@ index 941d767b850d..cd0a2ce51989 100644
/// Same as `(pre|post)_link_objects`, but when self-contained linking mode is enabled.
pub pre_link_objects_self_contained: CrtObjects,
pub post_link_objects_self_contained: CrtObjects,
@@ -2368,6 +2369,7 @@ fn default() -> TargetOptions {
@@ -2540,6 +2541,7 @@ fn default() -> TargetOptions {
relro_level: RelroLevel::None,
pre_link_objects: Default::default(),
post_link_objects: Default::default(),
@ -56,7 +57,7 @@ index 941d767b850d..cd0a2ce51989 100644
pre_link_objects_self_contained: Default::default(),
post_link_objects_self_contained: Default::default(),
link_self_contained: LinkSelfContainedDefault::False,
@@ -3064,6 +3066,7 @@ macro_rules! key {
@@ -3221,6 +3223,7 @@ macro_rules! key {
key!(linker_is_gnu_json = "linker-is-gnu", bool);
key!(pre_link_objects = "pre-link-objects", link_objects);
key!(post_link_objects = "post-link-objects", link_objects);
@ -64,7 +65,7 @@ index 941d767b850d..cd0a2ce51989 100644
key!(pre_link_objects_self_contained = "pre-link-objects-fallback", link_objects);
key!(post_link_objects_self_contained = "post-link-objects-fallback", link_objects);
// Deserializes the backwards-compatible variants of `-Clink-self-contained`
@@ -3327,6 +3330,7 @@ macro_rules! target_option_val {
@@ -3482,6 +3485,7 @@ macro_rules! target_option_val {
target_option_val!(linker_is_gnu_json, "linker-is-gnu");
target_option_val!(pre_link_objects);
target_option_val!(post_link_objects);
@ -73,11 +74,11 @@ index 941d767b850d..cd0a2ce51989 100644
target_option_val!(post_link_objects_self_contained, "post-link-objects-fallback");
target_option_val!(link_args - pre_link_args_json, "pre-link-args");
diff --git a/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs b/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs
index 7cbe9f09e6ca..b524890c2ec5 100644
index 29e6dff2068f..dbe021ef064c 100644
--- a/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs
+++ b/compiler/rustc_target/src/spec/targets/wasm32_wasip1.rs
@@ -20,11 +20,12 @@ pub fn target() -> Target {
options.os = "wasi".into();
@@ -19,11 +19,12 @@ pub fn target() -> Target {
options.env = "p1".into();
options.add_pre_link_args(LinkerFlavor::WasmLld(Cc::Yes), &["--target=wasm32-wasi"]);
- options.pre_link_objects_self_contained = crt_objects::pre_wasi_self_contained();
@ -93,5 +94,5 @@ index 7cbe9f09e6ca..b524890c2ec5 100644
// Right now this is a bit of a workaround but we're currently saying that
// the target by default has a static crt which we're taking as a signal
--
2.44.0
2.46.0

View File

@ -1,212 +0,0 @@
From 49166c7dd925244f631277b4aa9ae4233f300884 Mon Sep 17 00:00:00 2001
From: Nilstrieb <48135649+Nilstrieb@users.noreply.github.com>
Date: Sat, 27 Jul 2024 15:08:11 +0200
Subject: [PATCH] Disable jump threading of float equality
Jump threading stores values as `u128` (`ScalarInt`) and does its
comparisons for equality as integer comparisons.
This works great for integers. Sadly, not everything is an integer.
Floats famously have wonky equality semantcs, with `NaN!=NaN` and
`0.0 == -0.0`. This does not match our beautiful integer bitpattern
equality and therefore causes things to go horribly wrong.
While jump threading could be extended to support floats by remembering
that they're floats in the value state and handling them properly,
it's signficantly easier to just disable it for now.
(cherry picked from commit eca0a7e72346ba123ace318a0f9c28c57d990aeb)
---
.../rustc_mir_transform/src/jump_threading.rs | 7 +++
...ding.floats.JumpThreading.panic-abort.diff | 59 +++++++++++++++++++
...ing.floats.JumpThreading.panic-unwind.diff | 59 +++++++++++++++++++
tests/mir-opt/jump_threading.rs | 12 ++++
4 files changed, 137 insertions(+)
create mode 100644 tests/mir-opt/jump_threading.floats.JumpThreading.panic-abort.diff
create mode 100644 tests/mir-opt/jump_threading.floats.JumpThreading.panic-unwind.diff
diff --git a/compiler/rustc_mir_transform/src/jump_threading.rs b/compiler/rustc_mir_transform/src/jump_threading.rs
index a458297210db..e2d2864ad2a0 100644
--- a/compiler/rustc_mir_transform/src/jump_threading.rs
+++ b/compiler/rustc_mir_transform/src/jump_threading.rs
@@ -493,6 +493,13 @@ fn process_assign(
BinOp::Ne => ScalarInt::FALSE,
_ => return None,
};
+ if value.const_.ty().is_floating_point() {
+ // Floating point equality does not follow bit-patterns.
+ // -0.0 and NaN both have special rules for equality,
+ // and therefore we cannot use integer comparisons for them.
+ // Avoid handling them, though this could be extended in the future.
+ return None;
+ }
let value = value.const_.normalize(self.tcx, self.param_env).try_to_scalar_int()?;
let conds = conditions.map(self.arena, |c| Condition {
value,
diff --git a/tests/mir-opt/jump_threading.floats.JumpThreading.panic-abort.diff b/tests/mir-opt/jump_threading.floats.JumpThreading.panic-abort.diff
new file mode 100644
index 000000000000..6ca37e96d297
--- /dev/null
+++ b/tests/mir-opt/jump_threading.floats.JumpThreading.panic-abort.diff
@@ -0,0 +1,59 @@
+- // MIR for `floats` before JumpThreading
++ // MIR for `floats` after JumpThreading
+
+ fn floats() -> u32 {
+ let mut _0: u32;
+ let _1: f64;
+ let mut _2: bool;
+ let mut _3: bool;
+ let mut _4: f64;
+ scope 1 {
+ debug x => _1;
+ }
+
+ bb0: {
+ StorageLive(_1);
+ StorageLive(_2);
+ _2 = const true;
+- switchInt(move _2) -> [0: bb2, otherwise: bb1];
++ goto -> bb1;
+ }
+
+ bb1: {
+ _1 = const -0f64;
+ goto -> bb3;
+ }
+
+ bb2: {
+ _1 = const 1f64;
+ goto -> bb3;
+ }
+
+ bb3: {
+ StorageDead(_2);
+ StorageLive(_3);
+ StorageLive(_4);
+ _4 = _1;
+ _3 = Eq(move _4, const 0f64);
+ switchInt(move _3) -> [0: bb5, otherwise: bb4];
+ }
+
+ bb4: {
+ StorageDead(_4);
+ _0 = const 0_u32;
+ goto -> bb6;
+ }
+
+ bb5: {
+ StorageDead(_4);
+ _0 = const 1_u32;
+ goto -> bb6;
+ }
+
+ bb6: {
+ StorageDead(_3);
+ StorageDead(_1);
+ return;
+ }
+ }
+
diff --git a/tests/mir-opt/jump_threading.floats.JumpThreading.panic-unwind.diff b/tests/mir-opt/jump_threading.floats.JumpThreading.panic-unwind.diff
new file mode 100644
index 000000000000..6ca37e96d297
--- /dev/null
+++ b/tests/mir-opt/jump_threading.floats.JumpThreading.panic-unwind.diff
@@ -0,0 +1,59 @@
+- // MIR for `floats` before JumpThreading
++ // MIR for `floats` after JumpThreading
+
+ fn floats() -> u32 {
+ let mut _0: u32;
+ let _1: f64;
+ let mut _2: bool;
+ let mut _3: bool;
+ let mut _4: f64;
+ scope 1 {
+ debug x => _1;
+ }
+
+ bb0: {
+ StorageLive(_1);
+ StorageLive(_2);
+ _2 = const true;
+- switchInt(move _2) -> [0: bb2, otherwise: bb1];
++ goto -> bb1;
+ }
+
+ bb1: {
+ _1 = const -0f64;
+ goto -> bb3;
+ }
+
+ bb2: {
+ _1 = const 1f64;
+ goto -> bb3;
+ }
+
+ bb3: {
+ StorageDead(_2);
+ StorageLive(_3);
+ StorageLive(_4);
+ _4 = _1;
+ _3 = Eq(move _4, const 0f64);
+ switchInt(move _3) -> [0: bb5, otherwise: bb4];
+ }
+
+ bb4: {
+ StorageDead(_4);
+ _0 = const 0_u32;
+ goto -> bb6;
+ }
+
+ bb5: {
+ StorageDead(_4);
+ _0 = const 1_u32;
+ goto -> bb6;
+ }
+
+ bb6: {
+ StorageDead(_3);
+ StorageDead(_1);
+ return;
+ }
+ }
+
diff --git a/tests/mir-opt/jump_threading.rs b/tests/mir-opt/jump_threading.rs
index 57f4e4a2654f..3e7e8995f1a3 100644
--- a/tests/mir-opt/jump_threading.rs
+++ b/tests/mir-opt/jump_threading.rs
@@ -514,6 +514,16 @@ fn assume(a: u8, b: bool) -> u8 {
)
}
+fn floats() -> u32 {
+ // CHECK-LABEL: fn floats(
+ // CHECK: switchInt(
+
+ // Test for issue #128243, where float equality was assumed to be bitwise.
+ // When adding float support, it must be ensured that this continues working properly.
+ let x = if true { -0.0 } else { 1.0 };
+ if x == 0.0 { 0 } else { 1 }
+}
+
fn main() {
// CHECK-LABEL: fn main(
too_complex(Ok(0));
@@ -528,6 +538,7 @@ fn main() {
disappearing_bb(7);
aggregate(7);
assume(7, false);
+ floats();
}
// EMIT_MIR jump_threading.too_complex.JumpThreading.diff
@@ -542,3 +553,4 @@ fn main() {
// EMIT_MIR jump_threading.disappearing_bb.JumpThreading.diff
// EMIT_MIR jump_threading.aggregate.JumpThreading.diff
// EMIT_MIR jump_threading.assume.JumpThreading.diff
+// EMIT_MIR jump_threading.floats.JumpThreading.diff
--
2.46.0

View File

@ -1,49 +0,0 @@
From 26fa5c2c300f3c3a3ee3109c009bd4a6803a2a4c Mon Sep 17 00:00:00 2001
From: Nikita Popov <npopov@redhat.com>
Date: Tue, 11 Jun 2024 10:13:07 +0200
Subject: [PATCH] Make issue-122805.rs big endian compatible
Instead of not generating the function at all on big endian (which
makes the CHECK lines fail), instead use to_le() on big endian,
so that we essentially perform a bswap for both endiannesses.
---
tests/codegen/issues/issue-122805.rs | 21 ++++++++++++---------
1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/tests/codegen/issues/issue-122805.rs b/tests/codegen/issues/issue-122805.rs
index 6d108ada6dd..8e03c6c8884 100644
--- a/tests/codegen/issues/issue-122805.rs
+++ b/tests/codegen/issues/issue-122805.rs
@@ -39,17 +39,20 @@
// OPT3WINX64-NEXT: store <8 x i16>
// CHECK-NEXT: ret void
#[no_mangle]
-#[cfg(target_endian = "little")]
pub fn convert(value: [u16; 8]) -> [u8; 16] {
+ #[cfg(target_endian = "little")]
+ let bswap = u16::to_be;
+ #[cfg(target_endian = "big")]
+ let bswap = u16::to_le;
let addr16 = [
- value[0].to_be(),
- value[1].to_be(),
- value[2].to_be(),
- value[3].to_be(),
- value[4].to_be(),
- value[5].to_be(),
- value[6].to_be(),
- value[7].to_be(),
+ bswap(value[0]),
+ bswap(value[1]),
+ bswap(value[2]),
+ bswap(value[3]),
+ bswap(value[4]),
+ bswap(value[5]),
+ bswap(value[6]),
+ bswap(value[7]),
];
unsafe { core::mem::transmute::<_, [u8; 16]>(addr16) }
}
--
2.45.1

View File

@ -1,264 +0,0 @@
From 706f06c39a9e08a4708a53722429d13ae4069c2f Mon Sep 17 00:00:00 2001
From: Josh Stone <jistone@redhat.com>
Date: Wed, 1 May 2024 15:25:26 -0700
Subject: [PATCH] Use an explicit x86-64 cpu in tests that are sensitive to it
There are a few tests that depend on some target features **not** being
enabled by default, and usually they are correct with the default x86-64
target CPU. However, in downstream builds we have modified the default
to fit our distros -- `x86-64-v2` in RHEL 9 and `x86-64-v3` in RHEL 10
-- and the latter especially trips tests that expect not to have AVX.
These cases are few enough that we can just set them back explicitly.
---
tests/assembly/simd-intrinsic-mask-reduce.rs | 1 +
tests/assembly/x86_64-floating-point-clamp.rs | 2 +-
.../codegen/target-feature-inline-closure.rs | 2 +-
tests/ui/asm/x86_64/target-feature-attr.rs | 1 +
.../ui/asm/x86_64/target-feature-attr.stderr | 8 +++---
.../const-eval/const_fn_target_feature.rs | 2 +-
.../rfc-2396-target_feature-11/safe-calls.rs | 1 +
.../safe-calls.stderr | 28 +++++++++----------
tests/ui/sse2.rs | 4 +--
9 files changed, 26 insertions(+), 23 deletions(-)
diff --git a/tests/assembly/simd-intrinsic-mask-reduce.rs b/tests/assembly/simd-intrinsic-mask-reduce.rs
index 763401755fad..0d77fc410511 100644
--- a/tests/assembly/simd-intrinsic-mask-reduce.rs
+++ b/tests/assembly/simd-intrinsic-mask-reduce.rs
@@ -1,6 +1,7 @@
// verify that simd mask reductions do not introduce additional bit shift operations
//@ revisions: x86 aarch64
//@ [x86] compile-flags: --target=x86_64-unknown-linux-gnu -C llvm-args=-x86-asm-syntax=intel
+//@ [x86] compile-flags: -C target-cpu=x86-64
//@ [x86] needs-llvm-components: x86
//@ [aarch64] compile-flags: --target=aarch64-unknown-linux-gnu
//@ [aarch64] needs-llvm-components: aarch64
diff --git a/tests/assembly/x86_64-floating-point-clamp.rs b/tests/assembly/x86_64-floating-point-clamp.rs
index 4a72a7f44fa0..b963aee35590 100644
--- a/tests/assembly/x86_64-floating-point-clamp.rs
+++ b/tests/assembly/x86_64-floating-point-clamp.rs
@@ -2,7 +2,7 @@
// so check to make sure that's what it's actually emitting.
//@ assembly-output: emit-asm
-//@ compile-flags: --crate-type=lib -O -C llvm-args=-x86-asm-syntax=intel
+//@ compile-flags: --crate-type=lib -O -C llvm-args=-x86-asm-syntax=intel -C target-cpu=x86-64
//@ only-x86_64
//@ ignore-sgx
diff --git a/tests/codegen/target-feature-inline-closure.rs b/tests/codegen/target-feature-inline-closure.rs
index 88bd413a8707..20bb4e66ff21 100644
--- a/tests/codegen/target-feature-inline-closure.rs
+++ b/tests/codegen/target-feature-inline-closure.rs
@@ -1,5 +1,5 @@
//@ only-x86_64
-//@ compile-flags: -Copt-level=3
+//@ compile-flags: -Copt-level=3 -Ctarget-cpu=x86-64
#![crate_type = "lib"]
#![feature(target_feature_11)]
diff --git a/tests/ui/asm/x86_64/target-feature-attr.rs b/tests/ui/asm/x86_64/target-feature-attr.rs
index 820be132ef79..51829be15065 100644
--- a/tests/ui/asm/x86_64/target-feature-attr.rs
+++ b/tests/ui/asm/x86_64/target-feature-attr.rs
@@ -1,4 +1,5 @@
//@ only-x86_64
+//@ compile-flags: -C target-cpu=x86-64
#![feature(avx512_target_feature)]
diff --git a/tests/ui/asm/x86_64/target-feature-attr.stderr b/tests/ui/asm/x86_64/target-feature-attr.stderr
index c852726ee7ff..1a9962732cfb 100644
--- a/tests/ui/asm/x86_64/target-feature-attr.stderr
+++ b/tests/ui/asm/x86_64/target-feature-attr.stderr
@@ -1,23 +1,23 @@
error: register class `ymm_reg` requires the `avx` target feature
- --> $DIR/target-feature-attr.rs:18:40
+ --> $DIR/target-feature-attr.rs:19:40
|
LL | asm!("vaddps {2:y}, {0:y}, {1:y}", in(ymm_reg) x, in(ymm_reg) y, lateout(ymm_reg) x);
| ^^^^^^^^^^^^^
error: register class `ymm_reg` requires the `avx` target feature
- --> $DIR/target-feature-attr.rs:18:55
+ --> $DIR/target-feature-attr.rs:19:55
|
LL | asm!("vaddps {2:y}, {0:y}, {1:y}", in(ymm_reg) x, in(ymm_reg) y, lateout(ymm_reg) x);
| ^^^^^^^^^^^^^
error: register class `ymm_reg` requires the `avx` target feature
- --> $DIR/target-feature-attr.rs:18:70
+ --> $DIR/target-feature-attr.rs:19:70
|
LL | asm!("vaddps {2:y}, {0:y}, {1:y}", in(ymm_reg) x, in(ymm_reg) y, lateout(ymm_reg) x);
| ^^^^^^^^^^^^^^^^^^
error: register class `kreg` requires at least one of the following target features: avx512bw, avx512f
- --> $DIR/target-feature-attr.rs:33:23
+ --> $DIR/target-feature-attr.rs:34:23
|
LL | asm!("/* {0} */", in(kreg) x);
| ^^^^^^^^^^
diff --git a/tests/ui/consts/const-eval/const_fn_target_feature.rs b/tests/ui/consts/const-eval/const_fn_target_feature.rs
index b56b68a57958..d0de9d8d7a34 100644
--- a/tests/ui/consts/const-eval/const_fn_target_feature.rs
+++ b/tests/ui/consts/const-eval/const_fn_target_feature.rs
@@ -1,5 +1,5 @@
//@ only-x86_64
-//@ compile-flags:-C target-feature=+ssse3
+//@ compile-flags: -C target-cpu=x86-64 -C target-feature=+ssse3
#![crate_type = "lib"]
diff --git a/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.rs b/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.rs
index c73b8d7e4d29..6fb0688008e6 100644
--- a/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.rs
+++ b/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.rs
@@ -1,4 +1,5 @@
//@ only-x86_64
+//@ compile-flags: -C target-cpu=x86-64
#![feature(target_feature_11)]
diff --git a/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.stderr b/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.stderr
index d9d7e297f8e9..fed3da6594cb 100644
--- a/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.stderr
+++ b/tests/ui/rfcs/rfc-2396-target_feature-11/safe-calls.stderr
@@ -1,5 +1,5 @@
error[E0133]: call to function `sse2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:25:5
+ --> $DIR/safe-calls.rs:26:5
|
LL | sse2();
| ^^^^^^ call to function with `#[target_feature]`
@@ -8,7 +8,7 @@ LL | sse2();
= note: the sse2 target feature being enabled in the build configuration does not remove the requirement to list it in `#[target_feature]`
error[E0133]: call to function `avx_bmi2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:27:5
+ --> $DIR/safe-calls.rs:28:5
|
LL | avx_bmi2();
| ^^^^^^^^^^ call to function with `#[target_feature]`
@@ -16,7 +16,7 @@ LL | avx_bmi2();
= help: in order for the call to be safe, the context requires the following additional target features: avx and bmi2
error[E0133]: call to function `Quux::avx_bmi2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:29:5
+ --> $DIR/safe-calls.rs:30:5
|
LL | Quux.avx_bmi2();
| ^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
@@ -24,7 +24,7 @@ LL | Quux.avx_bmi2();
= help: in order for the call to be safe, the context requires the following additional target features: avx and bmi2
error[E0133]: call to function `avx_bmi2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:35:5
+ --> $DIR/safe-calls.rs:36:5
|
LL | avx_bmi2();
| ^^^^^^^^^^ call to function with `#[target_feature]`
@@ -32,7 +32,7 @@ LL | avx_bmi2();
= help: in order for the call to be safe, the context requires the following additional target features: avx and bmi2
error[E0133]: call to function `Quux::avx_bmi2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:37:5
+ --> $DIR/safe-calls.rs:38:5
|
LL | Quux.avx_bmi2();
| ^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
@@ -40,7 +40,7 @@ LL | Quux.avx_bmi2();
= help: in order for the call to be safe, the context requires the following additional target features: avx and bmi2
error[E0133]: call to function `sse2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:43:5
+ --> $DIR/safe-calls.rs:44:5
|
LL | sse2();
| ^^^^^^ call to function with `#[target_feature]`
@@ -49,7 +49,7 @@ LL | sse2();
= note: the sse2 target feature being enabled in the build configuration does not remove the requirement to list it in `#[target_feature]`
error[E0133]: call to function `avx_bmi2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:45:5
+ --> $DIR/safe-calls.rs:46:5
|
LL | avx_bmi2();
| ^^^^^^^^^^ call to function with `#[target_feature]`
@@ -57,7 +57,7 @@ LL | avx_bmi2();
= help: in order for the call to be safe, the context requires the following additional target feature: bmi2
error[E0133]: call to function `Quux::avx_bmi2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:47:5
+ --> $DIR/safe-calls.rs:48:5
|
LL | Quux.avx_bmi2();
| ^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
@@ -65,7 +65,7 @@ LL | Quux.avx_bmi2();
= help: in order for the call to be safe, the context requires the following additional target feature: bmi2
error[E0133]: call to function `sse2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:54:5
+ --> $DIR/safe-calls.rs:55:5
|
LL | sse2();
| ^^^^^^ call to function with `#[target_feature]`
@@ -74,7 +74,7 @@ LL | sse2();
= note: the sse2 target feature being enabled in the build configuration does not remove the requirement to list it in `#[target_feature]`
error[E0133]: call to function `sse2` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:58:15
+ --> $DIR/safe-calls.rs:59:15
|
LL | const _: () = sse2();
| ^^^^^^ call to function with `#[target_feature]`
@@ -83,7 +83,7 @@ LL | const _: () = sse2();
= note: the sse2 target feature being enabled in the build configuration does not remove the requirement to list it in `#[target_feature]`
error[E0133]: call to function `sse2_and_fxsr` with `#[target_feature]` is unsafe and requires unsafe function or block
- --> $DIR/safe-calls.rs:61:15
+ --> $DIR/safe-calls.rs:62:15
|
LL | const _: () = sse2_and_fxsr();
| ^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
@@ -92,7 +92,7 @@ LL | const _: () = sse2_and_fxsr();
= note: the fxsr and sse2 target features being enabled in the build configuration does not remove the requirement to list them in `#[target_feature]`
error: call to function `sse2` with `#[target_feature]` is unsafe and requires unsafe block (error E0133)
- --> $DIR/safe-calls.rs:68:5
+ --> $DIR/safe-calls.rs:69:5
|
LL | sse2();
| ^^^^^^ call to function with `#[target_feature]`
@@ -101,12 +101,12 @@ LL | sse2();
= help: in order for the call to be safe, the context requires the following additional target feature: sse2
= note: the sse2 target feature being enabled in the build configuration does not remove the requirement to list it in `#[target_feature]`
note: an unsafe function restricts its caller, but its body is safe by default
- --> $DIR/safe-calls.rs:67:1
+ --> $DIR/safe-calls.rs:68:1
|
LL | unsafe fn needs_unsafe_block() {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: the lint level is defined here
- --> $DIR/safe-calls.rs:64:8
+ --> $DIR/safe-calls.rs:65:8
|
LL | #[deny(unsafe_op_in_unsafe_fn)]
| ^^^^^^^^^^^^^^^^^^^^^^
diff --git a/tests/ui/sse2.rs b/tests/ui/sse2.rs
index fa6d79713b4b..c203ca2716ff 100644
--- a/tests/ui/sse2.rs
+++ b/tests/ui/sse2.rs
@@ -20,6 +20,6 @@ fn main() {
"SSE2 was not detected as available on an x86 platform");
}
// check a negative case too -- allowed on x86, but not enabled by default
- assert!(cfg!(not(target_feature = "avx2")),
- "AVX2 shouldn't be detected as available by default on any platform");
+ assert!(cfg!(not(target_feature = "avx512f")),
+ "AVX512 shouldn't be detected as available by default on any platform");
}
--
2.44.0

View File

@ -1,44 +0,0 @@
diff -up rustc-1.79.0-src/src/tools/cargo/Cargo.lock.orig rustc-1.79.0-src/src/tools/cargo/Cargo.lock
--- rustc-1.79.0-src/src/tools/cargo/Cargo.lock.orig 2024-06-13 16:37:16.640599290 -0700
+++ rustc-1.79.0-src/src/tools/cargo/Cargo.lock 2024-06-13 16:37:16.646599231 -0700
@@ -2150,7 +2150,6 @@ checksum = "ee4126d8b4ee5c9d9ea891dd875c
dependencies = [
"cc",
"libc",
- "libssh2-sys",
"libz-sys",
"openssl-sys",
"pkg-config",
@@ -2191,20 +2190,6 @@ dependencies = [
"pkg-config",
"vcpkg",
]
-
-[[package]]
-name = "libssh2-sys"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dc8a030b787e2119a731f1951d6a773e2280c660f8ec4b0f5e1505a386e71ee"
-dependencies = [
- "cc",
- "libc",
- "libz-sys",
- "openssl-sys",
- "pkg-config",
- "vcpkg",
-]
[[package]]
name = "libz-sys"
diff -up rustc-1.79.0-src/src/tools/cargo/Cargo.toml.orig rustc-1.79.0-src/src/tools/cargo/Cargo.toml
--- rustc-1.79.0-src/src/tools/cargo/Cargo.toml.orig 2024-06-13 16:37:16.646599231 -0700
+++ rustc-1.79.0-src/src/tools/cargo/Cargo.toml 2024-06-13 16:39:06.040526596 -0700
@@ -44,7 +44,7 @@ curl = "0.4.46"
curl-sys = "0.4.72"
filetime = "0.2.23"
flate2 = { version = "1.0.28", default-features = false, features = ["zlib"] }
-git2 = "0.18.3"
+git2 = { version = "0.18.3", default-features = false, features = ["https"] }
git2-curl = "0.19.0"
gix = { version = "0.63.0", default-features = false, features = ["blocking-http-transport-curl", "progress-tree", "revision", "parallel", "dirwalk"] }
glob = "0.3.1"

View File

@ -1,23 +0,0 @@
diff -up rustc-beta-src/src/tools/cargo/Cargo.lock.orig rustc-beta-src/src/tools/cargo/Cargo.lock
--- rustc-beta-src/src/tools/cargo/Cargo.lock.orig 2006-07-24 10:21:28.000000000 +0900
+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2024-05-06 14:13:00.172595245 +0900
@@ -2191,7 +2191,6 @@ version = "0.28.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c10584274047cb335c23d3e61bcef8e323adae7c5c8c760540f73610177fc3f"
dependencies = [
- "cc",
"pkg-config",
"vcpkg",
]
diff -up rustc-beta-src/src/tools/cargo/Cargo.toml.orig rustc-beta-src/src/tools/cargo/Cargo.toml
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2024-05-06 14:13:00.173595257 +0900
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2024-05-06 14:13:54.089275003 +0900
@@ -77,7 +77,7 @@ proptest = "1.4.0"
pulldown-cmark = { version = "0.10.2", default-features = false, features = ["html"] }
rand = "0.8.5"
regex = "1.10.4"
-rusqlite = { version = "0.31.0", features = ["bundled"] }
+rusqlite = { version = "0.31.0", features = [] }
rustfix = { version = "0.8.2", path = "crates/rustfix" }
same-file = "1.0.6"
security-framework = "2.10.0"

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1-tmt-x86_64-aarch64.functional}
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1-tmt-s390x-ppc64le.functional}

View File

@ -29,6 +29,12 @@
# -Copt-level: set optimization level (default: highest optimization level)
# -Cdebuginfo: set debuginfo verbosity (default: full debug information)
# -Ccodegen-units: set number of parallel code generation units (default: 1)
# -Cforce-frame-pointers: force inclusion of frame pointers (default: enabled
# on x86_64 and aarch64 on Fedora 37+)
#
# Additionally, some linker flags are set which correspond to the default
# Fedora compiler flags for hardening and for embedding package versions into
# compiled binaries.
#
# ref. https://doc.rust-lang.org/rustc/codegen-options/index.html
%build_rustflags %{shrink:
@ -36,6 +42,8 @@
-Cdebuginfo=%rustflags_debuginfo
-Ccodegen-units=%rustflags_codegen_units
-Cstrip=none
%{expr:0%{?_include_frame_pointers} && ("%{_arch}" != "ppc64le" && "%{_arch}" != "s390x" && "%{_arch}" != "i386") ? "-Cforce-frame-pointers=yes" : ""}
%[0%{?_package_note_status} ? "-Clink-arg=%_package_note_flags" : ""]
}
# __cargo: cargo command with environment variables

29
rpminspect.yaml Normal file
View File

@ -0,0 +1,29 @@
---
debuginfo:
ignore:
# i686 has limited debuginfo. From rust.spec
# full debuginfo is exhausting memory; just do libstd for now
# https://github.com/rust-lang/rust/issues/45854
- /usr/lib/debug/usr/bin/rustc-*.i386.debug
doc:
# Doc inspection generates massive output which crash RHEL CI
ignore:
- /usr/share/doc/rust/html/*
unicode:
ignore:
# These files are known to contain forbidden unicode chars as
# they are tests for those.
- rustc-*-src/tests/ui/lint/issue-90614-accept-allow-text-direction-codepoint-in-comment-lint.rs
- rustc-*-src/tests/ui/parser/unicode-control-codepoints.rs
- rustc-*-src/compiler/rustc_lint/src/hidden_unicode_codepoints.rs
- rustc-*-src/compiler/rustc_lint_defs/src/builtin.rs
- rustc-*-src/vendor/idna/tests/IdnaTestV2.txt
- rustc-*-src/vendor/idna-*/tests/IdnaTestV2.txt
- rustc-*-src/vendor/mdbook*/tests/dummy_book/src/first/unicode.md
- rustc-*-src/vendor/mdbook*/tests/searchindex_fixture.json
- rustc-*-src/vendor/wast-*/tests/parse-fail/confusing-string?.wat
- rustc-*-src/vendor/wast-*/tests/parse-fail/confusing-block-comment?.wat
- rustc-*-src/vendor/wast-*/tests/parse-fail/confusing-line-comment?.wat
- rustc-*-src/src/llvm-project/clang-tools-extra/docs/clang-tidy/checks/misc/misleading-bidirectional.rst

View File

@ -1,6 +1,6 @@
Name: rust
Version: 1.79.0
Release: 2%{?dist}
Version: 1.82.0
Release: 1%{?dist}
Summary: The Rust Programming Language
License: (Apache-2.0 OR MIT) AND (Artistic-2.0 AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0 AND Unicode-DFS-2016)
# ^ written as: (rust itself) and (bundled libraries)
@ -14,9 +14,9 @@ ExclusiveArch: %{rust_arches}
# To bootstrap from scratch, set the channel and date from src/stage0.json
# e.g. 1.59.0 wants rustc: 1.58.0-2022-01-13
# or nightly wants some beta-YYYY-MM-DD
%global bootstrap_version 1.78.0
%global bootstrap_channel 1.78.0
%global bootstrap_date 2024-05-02
%global bootstrap_version 1.81.0
%global bootstrap_channel 1.81.0
%global bootstrap_date 2024-09-05
# Only the specified arches will use bootstrap binaries.
# NOTE: Those binaries used to be uploaded with every new release, but that was
@ -35,12 +35,18 @@ ExclusiveArch: %{rust_arches}
# NB: wasm32-wasi is being gradually replaced by wasm32-wasip1
# https://blog.rust-lang.org/2024/04/09/updates-to-rusts-wasi-targets.html
%global wasm_targets wasm32-unknown-unknown wasm32-wasi wasm32-wasip1
%if 0%{?fedora} || 0%{?rhel} >= 10
%if 0%{?fedora}
%global extra_targets x86_64-unknown-none x86_64-unknown-uefi
%endif
%if 0%{?rhel} >= 10
%global extra_targets x86_64-unknown-none
%endif
%endif
%ifarch aarch64
%if 0%{?fedora} || 0%{?rhel} >= 10
%if 0%{?fedora}
%global extra_targets aarch64-unknown-none-softfloat aarch64-unknown-uefi
%endif
%if 0%{?rhel} >= 10
%global extra_targets aarch64-unknown-none-softfloat
%endif
%endif
@ -52,7 +58,8 @@ ExclusiveArch: %{rust_arches}
# We need CRT files for *-wasi targets, at least as new as the commit in
# src/ci/docker/host-x86_64/dist-various-2/build-wasi-toolchain.sh
%global wasi_libc_url https://github.com/WebAssembly/wasi-libc
%global wasi_libc_ref wasi-sdk-22
#global wasi_libc_ref wasi-sdk-24
%global wasi_libc_ref b9ef79d7dbd47c6c5bafdae760823467c2f60b70
%global wasi_libc_name wasi-libc-%{wasi_libc_ref}
%global wasi_libc_source %{wasi_libc_url}/archive/%{wasi_libc_ref}/%{wasi_libc_name}.tar.gz
%global wasi_libc_dir %{_builddir}/%{wasi_libc_name}
@ -68,17 +75,17 @@ ExclusiveArch: %{rust_arches}
# We can also choose to just use Rust's bundled LLVM, in case the system LLVM
# is insufficient. Rust currently requires LLVM 17.0+.
%global min_llvm_version 17.0.0
%global bundled_llvm_version 18.1.7
%global bundled_llvm_version 19.1.1
#global llvm_compat_version 17
%global llvm llvm%{?llvm_compat_version}
%bcond_with bundled_llvm
# Requires stable libgit2 1.7, and not the next minor soname change.
# Requires stable libgit2 1.8, and not the next minor soname change.
# This needs to be consistent with the bindings in vendor/libgit2-sys.
%global min_libgit2_version 1.7.2
%global next_libgit2_version 1.8.0~
%global bundled_libgit2_version 1.7.2
%if 0%{?fedora} >= 39
%global min_libgit2_version 1.8.1
%global next_libgit2_version 1.9.0~
%global bundled_libgit2_version 1.8.1
%if 0%{?fedora} >= 41
%bcond_with bundled_libgit2
%else
%bcond_without bundled_libgit2
@ -86,7 +93,7 @@ ExclusiveArch: %{rust_arches}
# Cargo uses UPSERTs with omitted conflict targets
%global min_sqlite3_version 3.35
%global bundled_sqlite3_version 3.45.0
%global bundled_sqlite3_version 3.46.0
%if 0%{?rhel} && 0%{?rhel} < 10
%bcond_without bundled_sqlite3
%else
@ -152,16 +159,13 @@ Patch4: 0001-bootstrap-allow-disabling-target-self-contained.patch
Patch5: 0002-set-an-external-library-path-for-wasm32-wasi.patch
# We don't want to use the bundled library in libsqlite3-sys
Patch6: rustc-1.79.0-unbundle-sqlite.patch
Patch6: rustc-1.82.0-unbundle-sqlite.patch
# https://github.com/rust-lang/rust/pull/124597
Patch7: 0001-Use-an-explicit-x86-64-cpu-in-tests-that-are-sensiti.patch
# https://github.com/rust-lang/rust/pull/130034
Patch7: 0001-Fix-enabling-wasm-component-ld-to-match-other-tools.patch
# Fix codegen test failure on big endian: https://github.com/rust-lang/rust/pull/126263
Patch8: 0001-Make-issue-122805.rs-big-endian-compatible.patch
# https://github.com/rust-lang/rust/pull/128271
Patch9: 0001-Disable-jump-threading-of-float-equality.patch
# https://github.com/rust-lang/rust/pull/131838
Patch8: 0001-bootstrap-allow-setting-jobs-in-config.toml.patch
### RHEL-specific patches below ###
@ -171,7 +175,7 @@ Source101: cargo_vendor.attr
Source102: cargo_vendor.prov
# Disable cargo->libgit2->libssh2 on RHEL, as it's not approved for FIPS (rhbz1732949)
Patch100: rustc-1.79.0-disable-libssh2.patch
Patch100: rustc-1.82.0-disable-libssh2.patch
# Get the Rust triple for any arch.
%{lua: function rust_triple(arch)
@ -285,10 +289,20 @@ BuildRequires: procps-ng
# debuginfo-gdb tests need gdb
BuildRequires: gdb
# Work around https://bugzilla.redhat.com/show_bug.cgi?id=2275274:
# gdb currently prints a "Unable to load 'rpm' module. Please install the python3-rpm package."
# message that breaks version detection.
BuildRequires: python3-rpm
# For src/test/run-make/static-pie
BuildRequires: glibc-static
# For tests/run-make/pgo-branch-weights
# riscv64 does not support binutils-gold yet
%ifnarch riscv64
BuildRequires: binutils-gold
%endif
# Virtual provides for folks who attempt "dnf install rustc"
Provides: rustc = %{version}-%{release}
Provides: rustc%{?_isa} = %{version}-%{release}
@ -447,6 +461,12 @@ Requires: lld
%target_description x86_64-unknown-none embedded
%endif
%if %target_enabled aarch64-unknown-uefi
%target_package aarch64-unknown-uefi
Requires: lld
%target_description aarch64-unknown-uefi embedded
%endif
%if %target_enabled x86_64-unknown-uefi
%target_package x86_64-unknown-uefi
Requires: lld
@ -550,6 +570,9 @@ A tool for formatting Rust code according to style guidelines.
%package analyzer
Summary: Rust implementation of the Language Server Protocol
# /usr/bin/rust-analyzer is dynamically linked against internal rustc libs
Requires: %{name}%{?_isa} = %{version}-%{release}
# The standard library sources are needed for most functionality.
Recommends: %{name}-src
@ -637,7 +660,6 @@ rm -rf %{wasi_libc_dir}/dlmalloc/
%endif
%patch -P7 -p1
%patch -P8 -p1
%patch -P9 -p1
%if %with disabled_libssh2
%patch -P100 -p1
@ -733,12 +755,23 @@ end}
%{export_rust_env}
# Some builders have relatively little memory for their CPU count.
# At least 2GB per CPU is a good rule of thumb for building rustc.
ncpus=$(/usr/bin/getconf _NPROCESSORS_ONLN)
max_cpus=$(( ($(free -g | awk '/^Mem:/{print $2}') + 1) / 2 ))
if [ "$max_cpus" -ge 1 -a "$max_cpus" -lt "$ncpus" ]; then
ncpus="$max_cpus"
fi
# At least 4GB per CPU is a good rule of thumb for building rustc.
%if ! %defined constrain_build
%define constrain_build(m:) %{lua:
for l in io.lines('/proc/meminfo') do
if l:sub(1, 9) == "MemTotal:" then
local opt_m = math.tointeger(rpm.expand("%{-m*}"))
local mem_total = math.tointeger(string.match(l, "MemTotal:%s+(%d+)"))
local cpu_limit = math.max(1, mem_total // (opt_m * 1024))
if cpu_limit < math.tointeger(rpm.expand("%_smp_build_ncpus")) then
rpm.define("_smp_build_ncpus " .. cpu_limit)
end
break
end
end
}
%endif
%constrain_build -m 4096
%if %defined mingw_targets
%define mingw_target_config %{shrink:
@ -807,9 +840,12 @@ test -r "%{profiler}"
%{!?llvm_has_filecheck: --disable-codegen-tests} \
%{!?with_llvm_static: --enable-llvm-link-shared } } \
--disable-llvm-static-stdcpp \
--disable-llvm-bitcode-linker \
--disable-lld \
--disable-rpath \
%{enable_debuginfo} \
%{enable_rust_opts} \
--set build.jobs=%_smp_build_ncpus \
--set build.build-stage=2 \
--set build.doc-stage=2 \
--set build.install-stage=2 \
@ -829,7 +865,7 @@ test -r "%{profiler}"
%define profraw $PWD/build/profiles
%define profdata $PWD/build/rustc.profdata
mkdir -p "%{profraw}"
%{__x} build -j "$ncpus" sysroot --rust-profile-generate="%{profraw}"
%{__x} build sysroot --rust-profile-generate="%{profraw}"
# Build cargo as a workload to generate compiler profiles
env LLVM_PROFILE_FILE="%{profraw}/default_%%m_%%p.profraw" \
%{__x} --keep-stage=0 --keep-stage=1 build cargo
@ -841,7 +877,7 @@ rm -r "%{profraw}" build/%{rust_triple}/stage2*/
%endif
# Build the compiler normally (with or without PGO)
%{__x} build -j "$ncpus" sysroot
%{__x} build sysroot
# Build everything else normally
%{__x} build
@ -967,23 +1003,26 @@ rm -rf "$TMP_HELLO"
# The results are not stable on koji, so mask errors and just log it.
# Some of the larger test artifacts are manually cleaned to save space.
# Bootstrap is excluded because it's not something we ship, and a lot of its
# - Bootstrap is excluded because it's not something we ship, and a lot of its
# tests are geared toward the upstream CI environment.
timeout -v 90m %{__x} test --no-fail-fast --skip src/bootstrap || :
# - Crashes are excluded because they are less reliable, especially stuff like
# SIGSEGV across different arches -- UB can do all kinds of weird things.
# They're only meant to notice "accidental" fixes anyway, not *should* crash.
%{__x} test --no-fail-fast --skip={src/bootstrap,tests/crashes} || :
rm -rf "./build/%{rust_triple}/test/"
%ifarch aarch64
# https://github.com/rust-lang/rust/issues/123733
%define cargo_test_skip --test-args "--skip panic_abort_doc_tests"
%endif
timeout -v 30m %{__x} test --no-fail-fast cargo %{?cargo_test_skip} || :
%{__x} test --no-fail-fast cargo %{?cargo_test_skip} || :
rm -rf "./build/%{rust_triple}/stage2-tools/%{rust_triple}/cit/"
timeout -v 30m %{__x} test --no-fail-fast clippy || :
%{__x} test --no-fail-fast clippy || :
timeout -v 30m %{__x} test --no-fail-fast rust-analyzer || :
%{__x} test --no-fail-fast rust-analyzer || :
timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
%{__x} test --no-fail-fast rustfmt || :
%ldconfig_scriptlets
@ -1057,6 +1096,10 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
%target_files x86_64-unknown-none
%endif
%if %target_enabled aarch64-unknown-uefi
%target_files aarch64-unknown-uefi
%endif
%if %target_enabled x86_64-unknown-uefi
%target_files x86_64-unknown-uefi
%endif
@ -1139,26 +1182,43 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
%changelog
* Tue Nov 05 2024 Josh Stone <jistone@redhat.com> - 1.82.0-1
- Update to 1.82.0
* Fri Oct 25 2024 Josh Stone <jistone@redhat.com> - 1.81.0-1
- Update to 1.81.0
* Tue Oct 22 2024 Josh Stone <jistone@redhat.com> - 1.80.1-1
- Update to 1.80.1
* Tue Aug 13 2024 Josh Stone <jistone@redhat.com> - 1.79.0-2
- Disable jump threading of float equality
* Fri Jun 21 2024 Josh Stone <jistone@redhat.com> - 1.79.0-1
* Wed Jul 03 2024 Nikita Popov <npopov@redhat.com> - 1.79.0-1
- Update to 1.79.0
* Fri Jun 21 2024 Josh Stone <jistone@redhat.com> - 1.78.0-1
* Tue Jun 18 2024 Nikita Popov <npopov@redhat.com> - 1.78.0-1
- Update to 1.78.0
- Make std-static-wasm* noarch again
* Thu May 09 2024 Josh Stone <jistone@redhat.com> - 1.77.2-1
* Thu May 02 2024 Josh Stone <jistone@redhat.com> - 1.77.2-3
- Fix the coverage-dump tool for tests.
* Tue Apr 30 2024 Josh Stone <jistone@redhat.com> - 1.77.2-2
- Use bundled sqlite3 when the system version is too old.
* Fri Apr 19 2024 Josh Stone <jistone@redhat.com> - 1.77.2-1
- Update to 1.77.2.
* Wed Apr 17 2024 Josh Stone <jistone@redhat.com> - 1.76.0-1
* Tue Apr 16 2024 Josh Stone <jistone@redhat.com> - 1.76.0-1
- Update to 1.76.0.
- Sync rust-toolset macros to rust-packaging v25.2
* Fri Jan 05 2024 Josh Stone <jistone@redhat.com> - 1.75.0-1
- Update to 1.75.0.
* Fri Jan 05 2024 Josh Stone <jistone@redhat.com> - 1.74.1-2
- Rebuild in a new side-tag.
* Wed Jan 03 2024 Josh Stone <jistone@redhat.com> - 1.74.1-1
- Update to 1.74.1.
@ -1184,14 +1244,14 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
* Tue Jul 18 2023 Josh Stone <jistone@redhat.com> - 1.70.0-1
- Update to 1.70.0.
* Fri May 26 2023 Josh Stone <jistone@redhat.com> - 1.69.0-1
* Wed May 10 2023 Josh Stone <jistone@redhat.com> - 1.69.0-1
- Update to 1.69.0.
- Obsolete rust-analysis.
* Fri May 19 2023 Josh Stone <jistone@redhat.com> - 1.68.2-1
* Tue May 09 2023 Josh Stone <jistone@redhat.com> - 1.68.2-1
- Update to 1.68.2.
* Thu May 18 2023 Josh Stone <jistone@redhat.com> - 1.67.1-1
* Mon May 08 2023 Josh Stone <jistone@redhat.com> - 1.67.1-1
- Update to 1.67.1.
* Wed Jan 11 2023 Josh Stone <jistone@redhat.com> - 1.66.1-1
@ -1201,6 +1261,9 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
- Update to 1.65.0.
- rust-analyzer now obsoletes rls.
* Wed Oct 12 2022 Josh Stone <jistone@redhat.com> - 1.64.0-2
- Rebuild for LLVM 15.0.1.
* Thu Sep 22 2022 Josh Stone <jistone@redhat.com> - 1.64.0-1
- Update to 1.64.0.
- Add rust-analyzer.
@ -1236,65 +1299,106 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
* Wed Dec 15 2021 Josh Stone <jistone@redhat.com> - 1.57.0-1
- Update to 1.57.0.
* Thu Dec 02 2021 Josh Stone <jistone@redhat.com> - 1.56.1-2
* Wed Dec 01 2021 Josh Stone <jistone@redhat.com> - 1.56.1-2
- Add rust-std-static-wasm32-wasi
Resolves: rhbz#1980080
Resolves: rhbz#1980082
* Tue Nov 02 2021 Josh Stone <jistone@redhat.com> - 1.56.0-1
* Thu Nov 04 2021 Josh Stone <jistone@redhat.com> - 1.56.1-1
- Update to 1.56.1.
* Fri Oct 29 2021 Josh Stone <jistone@redhat.com> - 1.55.0-1
- Update to 1.55.0.
- Backport support for LLVM 13.
* Tue Aug 17 2021 Josh Stone <jistone@redhat.com> - 1.54.0-2
- Make std-static-wasm* arch-specific to avoid s390x.
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 1.54.0-2
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
* Thu Jul 29 2021 Josh Stone <jistone@redhat.com> - 1.54.0-1
* Wed Aug 04 2021 Josh Stone <jistone@redhat.com> - 1.54.0-1
- Update to 1.54.0.
* Tue Jul 20 2021 Josh Stone <jistone@redhat.com> - 1.53.0-2
- Use llvm-ranlib to fix wasm archives.
* Mon Jun 21 2021 Josh Stone <jistone@redhat.com> - 1.53.0-1
* Tue Jun 22 2021 Josh Stone <jistone@redhat.com> - 1.53.0-1
- Update to 1.53.0.
- Update openssl crates to published versions for 3.0 support.
* Tue Jun 15 2021 Josh Stone <jistone@redhat.com> - 1.52.1-2
* Tue Jun 15 2021 Mohan Boddu <mboddu@redhat.com> - 1.52.1-4
- Rebuilt for RHEL 9 BETA for openssl 3.0
* Mon Jun 07 2021 Josh Stone <jistone@redhat.com> - 1.52.1-3
- Set rust.codegen-units-std=1 for all targets again.
- Add rust-std-static-wasm32-unknown-unknown.
* Tue May 25 2021 Josh Stone <jistone@redhat.com> - 1.52.1-1
* Tue May 18 2021 Josh Stone <jistone@redhat.com> - 1.52.1-2
- Rebuild for OpenSSL 3.0.0-alpha16
* Thu May 13 2021 Josh Stone <jistone@redhat.com> - 1.52.1-1
- Update to 1.52.1. Includes security fixes for CVE-2020-36323,
CVE-2021-28876, CVE-2021-28878, CVE-2021-28879, and CVE-2021-31162.
- Initial support for OpenSSL 3.0.0-alpha15
* Mon May 24 2021 Josh Stone <jistone@redhat.com> - 1.51.0-1
- Update to 1.51.0. Update to 1.51.0. Includes security fixes for
CVE-2021-28875 and CVE-2021-28877.
* Wed Apr 28 2021 Josh Stone <jistone@redhat.com> - 1.51.0-1
- Update to 1.51.0. Includes security fixes for CVE-2021-28875
and CVE-2021-28877.
* Mon May 24 2021 Josh Stone <jistone@redhat.com> - 1.50.0-1
* Tue Apr 27 2021 Josh Stone <jistone@redhat.com> - 1.50.0-1
- Update to 1.50.0.
* Wed Jan 13 2021 Josh Stone <jistone@redhat.com> - 1.49.0-1
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.49.0-5
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
* Fri Feb 12 2021 Josh Stone <jistone@redhat.com> - 1.49.0-4
- Rebuild without bootstrap binaries
* Thu Feb 11 2021 Josh Stone <jistone@redhat.com> - 1.49.0-3
- Re-bootstrap due to removed LLVM targets
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.49.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jan 05 2021 Josh Stone <jistone@redhat.com> - 1.49.0-1
- Update to 1.49.0.
* Tue Jan 12 2021 Josh Stone <jistone@redhat.com> - 1.48.0-1
* Tue Dec 29 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 1.48.0-3
- De-bootstrap
* Mon Dec 28 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 1.48.0-2
- Rebuild for libgit2 1.1.x
* Thu Nov 19 2020 Josh Stone <jistone@redhat.com> - 1.48.0-1
- Update to 1.48.0.
* Thu Oct 22 2020 Josh Stone <jistone@redhat.com> - 1.47.0-1
* Sat Oct 10 2020 Jeff Law <law@redhat.com> - 1.47.0-2
- Re-enable LTO
* Thu Oct 08 2020 Josh Stone <jistone@redhat.com> - 1.47.0-1
- Update to 1.47.0.
* Wed Oct 14 2020 Josh Stone <jistone@redhat.com> - 1.46.0-1
* Fri Aug 28 2020 Fabio Valentini <decathorpe@gmail.com> - 1.46.0-2
- Fix LTO with doctests (backported cargo PR#8657).
* Thu Aug 27 2020 Josh Stone <jistone@redhat.com> - 1.46.0-1
- Update to 1.46.0.
* Tue Aug 04 2020 Josh Stone <jistone@redhat.com> - 1.45.2-1
* Mon Aug 03 2020 Josh Stone <jistone@redhat.com> - 1.45.2-1
- Update to 1.45.2.
* Thu Jul 30 2020 Josh Stone <jistone@redhat.com> - 1.45.1-1
- Update to 1.45.1.
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.45.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Jul 16 2020 Josh Stone <jistone@redhat.com> - 1.45.0-1
- Update to 1.45.0.
* Tue Jul 14 2020 Josh Stone <jistone@redhat.com> - 1.44.1-1
* Wed Jul 01 2020 Jeff Law <law@redhat.com> - 1.44.1-2
- Disable LTO
* Thu Jun 18 2020 Josh Stone <jistone@redhat.com> - 1.44.1-1
- Update to 1.44.1.
* Thu Jun 04 2020 Josh Stone <jistone@redhat.com> - 1.44.0-1
- Update to 1.44.0.
* Thu May 07 2020 Josh Stone <jistone@redhat.com> - 1.43.1-1
- Update to 1.43.1.
@ -1307,27 +1411,39 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
* Thu Feb 27 2020 Josh Stone <jistone@redhat.com> - 1.41.1-1
- Update to 1.41.1.
* Thu Feb 20 2020 Josh Stone <jistone@redhat.com> - 1.41.0-2
- Rebuild with llvm9.0
* Thu Jan 30 2020 Josh Stone <jistone@redhat.com> - 1.41.0-1
- Update to 1.41.0.
* Thu Jan 16 2020 Josh Stone <jistone@redhat.com> - 1.40.0-1
- Update to 1.40.0.
- Fix compiletest with newer (local-rebuild) libtest
* Thu Jan 16 2020 Josh Stone <jistone@redhat.com> - 1.40.0-3
- Build compiletest with in-tree libtest
* Tue Jan 07 2020 Josh Stone <jistone@redhat.com> - 1.40.0-2
- Fix compiletest with newer (local-rebuild) libtest
- Fix ARM EHABI unwinding
* Thu Dec 19 2019 Josh Stone <jistone@redhat.com> - 1.40.0-1
- Update to 1.40.0.
* Tue Nov 12 2019 Josh Stone <jistone@redhat.com> - 1.39.0-2
- Fix a couple build and test issues with rustdoc.
* Thu Nov 07 2019 Josh Stone <jistone@redhat.com> - 1.39.0-1
- Update to 1.39.0.
* Fri Sep 27 2019 Josh Stone <jistone@redhat.com> - 1.38.0-2
- Filter the libraries included in rust-std (rhbz1756487)
* Thu Sep 26 2019 Josh Stone <jistone@redhat.com> - 1.38.0-1
- Update to 1.38.0.
* Thu Aug 15 2019 Josh Stone <jistone@redhat.com> - 1.37.0-1
- Update to 1.37.0.
- Disable libssh2 (git+ssh support).
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.36.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jul 04 2019 Josh Stone <jistone@redhat.com> - 1.36.0-1
- Update to 1.36.0.
@ -1341,88 +1457,259 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
* Tue May 14 2019 Josh Stone <jistone@redhat.com> - 1.34.2-1
- Update to 1.34.2 -- fixes CVE-2019-12083.
* Thu May 09 2019 Josh Stone <jistone@redhat.com> - 1.34.1-1
* Tue Apr 30 2019 Josh Stone <jistone@redhat.com> - 1.34.1-3
- Set rust.codegen-units-std=1
* Fri Apr 26 2019 Josh Stone <jistone@redhat.com> - 1.34.1-2
- Remove the ThinLTO workaround.
* Thu Apr 25 2019 Josh Stone <jistone@redhat.com> - 1.34.1-1
- Update to 1.34.1.
- Add a ThinLTO fix for rhbz1701339.
* Thu Apr 11 2019 Josh Stone <jistone@redhat.com> - 1.34.0-1
- Update to 1.34.0.
* Wed Apr 10 2019 Josh Stone <jistone@redhat.com> - 1.33.0-1
* Fri Mar 01 2019 Josh Stone <jistone@redhat.com> - 1.33.0-2
- Fix deprecations for self-rebuild
* Thu Feb 28 2019 Josh Stone <jistone@redhat.com> - 1.33.0-1
- Update to 1.33.0.
* Tue Apr 09 2019 Josh Stone <jistone@redhat.com> - 1.32.0-1
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.32.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jan 17 2019 Josh Stone <jistone@redhat.com> - 1.32.0-1
- Update to 1.32.0.
* Fri Dec 14 2018 Josh Stone <jistone@redhat.com> - 1.31.0-5
- Restore rust-lldb.
* Mon Jan 07 2019 Josh Stone <jistone@redhat.com> - 1.31.1-9
- Update to 1.31.1 for RLS fixes.
* Thu Dec 13 2018 Josh Stone <jistone@redhat.com> - 1.31.0-4
- Backport fixes for rls.
* Thu Dec 13 2018 Josh Stone <jistone@redhat.com> - 1.31.0-3
* Thu Dec 06 2018 Josh Stone <jistone@redhat.com> - 1.31.0-8
- Update to 1.31.0 -- Rust 2018!
- clippy/rls/rustfmt are no longer -preview
* Wed Dec 12 2018 Josh Stone <jistone@redhat.com> - 1.30.1-2
* Thu Nov 08 2018 Josh Stone <jistone@redhat.com> - 1.30.1-7
- Update to 1.30.1.
* Tue Nov 06 2018 Josh Stone <jistone@redhat.com> - 1.29.2-1
* Thu Oct 25 2018 Josh Stone <jistone@redhat.com> - 1.30.0-6
- Update to 1.30.0.
* Mon Oct 22 2018 Josh Stone <jistone@redhat.com> - 1.29.2-5
- Rebuild without bootstrap binaries.
* Sat Oct 20 2018 Josh Stone <jistone@redhat.com> - 1.29.2-4
- Re-bootstrap armv7hl due to rhbz#1639485
* Fri Oct 12 2018 Josh Stone <jistone@redhat.com> - 1.29.2-3
- Update to 1.29.2.
* Thu Nov 01 2018 Josh Stone <jistone@redhat.com> - 1.28.0-1
- Update to 1.28.0.
* Thu Nov 01 2018 Josh Stone <jistone@redhat.com> - 1.27.2-1
- Update to 1.27.2.
* Wed Oct 10 2018 Josh Stone <jistone@redhat.com> - 1.26.2-12
- Fix "fp" target feature for AArch64 (#1632880)
* Mon Oct 08 2018 Josh Stone <jistone@redhat.com> - 1.26.2-11
* Tue Sep 25 2018 Josh Stone <jistone@redhat.com> - 1.29.1-2
- Update to 1.29.1.
- Security fix for str::repeat (pending CVE).
* Fri Oct 05 2018 Josh Stone <jistone@redhat.com> - 1.26.2-10
* Thu Sep 13 2018 Josh Stone <jistone@redhat.com> - 1.29.0-1
- Update to 1.29.0.
- Add a clippy-preview subpackage
* Mon Aug 13 2018 Josh Stone <jistone@redhat.com> - 1.28.0-3
- Use llvm6.0 instead of llvm-7 for now
* Tue Aug 07 2018 Josh Stone <jistone@redhat.com> - 1.28.0-2
- Rebuild for LLVM ppc64/s390x fixes
* Thu Aug 02 2018 Josh Stone <jistone@redhat.com> - 1.28.0-1
- Update to 1.28.0.
* Tue Jul 24 2018 Josh Stone <jistone@redhat.com> - 1.27.2-4
- Update to 1.27.2.
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.27.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jul 10 2018 Josh Stone <jistone@redhat.com> - 1.27.1-2
- Update to 1.27.1.
- Security fix for CVE-2018-1000622
* Thu Jun 21 2018 Josh Stone <jistone@redhat.com> - 1.27.0-1
- Update to 1.27.0.
* Tue Jun 05 2018 Josh Stone <jistone@redhat.com> - 1.26.2-4
- Rebuild without bootstrap binaries.
* Thu Oct 04 2018 Josh Stone <jistone@redhat.com> - 1.26.2-9
- Bootstrap without SCL packaging. (rhbz1635067)
* Tue Aug 28 2018 Tom Stellard <tstellar@redhat.com> - 1.26.2-8
- Use python3 prefix for lldb Requires
* Mon Aug 13 2018 Josh Stone <jistone@redhat.com> - 1.26.2-7
- Build with platform-python
* Tue Aug 07 2018 Josh Stone <jistone@redhat.com> - 1.26.2-6
- Exclude rust-src from auto-requires
* Thu Aug 02 2018 Josh Stone <jistone@redhat.com> - 1.26.2-5
- Rebuild without bootstrap binaries.
* Tue Jul 31 2018 Josh Stone <jistone@redhat.com> - 1.26.2-4
- Bootstrap as a module.
* Mon Jun 04 2018 Josh Stone <jistone@redhat.com> - 1.26.2-3
* Tue Jun 05 2018 Josh Stone <jistone@redhat.com> - 1.26.2-3
- Update to 1.26.2.
- Re-bootstrap to deal with LLVM symbol changes.
* Wed May 30 2018 Josh Stone <jistone@redhat.com> - 1.26.1-2
* Tue May 29 2018 Josh Stone <jistone@redhat.com> - 1.26.1-2
- Update to 1.26.1.
* Fri May 18 2018 Josh Stone <jistone@redhat.com> - 1.26.0-1
* Thu May 10 2018 Josh Stone <jistone@redhat.com> - 1.26.0-1
- Update to 1.26.0.
* Mon Apr 16 2018 Dan Callaghan <dcallagh@redhat.com> - 1.25.0-3
- Add cargo, rls, and analysis
* Tue Apr 10 2018 Josh Stone <jistone@redhat.com> - 1.25.0-2
- Filter codegen-backends from Provides too.
* Tue Apr 03 2018 Josh Stone <jistone@redhat.com> - 1.25.0-1
* Thu Mar 29 2018 Josh Stone <jistone@redhat.com> - 1.25.0-1
- Update to 1.25.0.
- Add rustfmt-preview as a subpackage.
* Thu Feb 22 2018 Josh Stone <jistone@redhat.com> - 1.24.0-1
* Thu Mar 01 2018 Josh Stone <jistone@redhat.com> - 1.24.1-1
- Update to 1.24.1.
* Wed Feb 21 2018 Josh Stone <jistone@redhat.com> - 1.24.0-3
- Backport a rebuild fix for rust#48308.
* Mon Feb 19 2018 Josh Stone <jistone@redhat.com> - 1.24.0-2
- rhbz1546541: drop full-bootstrap; cmp libs before symlinking.
- Backport pr46592 to fix local_rebuild bootstrapping.
- Backport pr48362 to fix relative/absolute libdir.
* Thu Feb 15 2018 Josh Stone <jistone@redhat.com> - 1.24.0-1
- Update to 1.24.0.
* Tue Jan 16 2018 Josh Stone <jistone@redhat.com> - 1.23.0-2
* Mon Feb 12 2018 Iryna Shcherbina <ishcherb@redhat.com> - 1.23.0-4
- Update Python 2 dependency declarations to new packaging standards
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
* Tue Feb 06 2018 Josh Stone <jistone@redhat.com> - 1.23.0-3
- Use full-bootstrap to work around a rebuild issue.
- Patch binaryen for GCC 8
* Thu Feb 01 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.23.0-2
- Switch to %%ldconfig_scriptlets
* Mon Jan 08 2018 Josh Stone <jistone@redhat.com> - 1.23.0-1
- Update to 1.23.0.
* Thu Nov 23 2017 Josh Stone <jistone@redhat.com> - 1.22.1-1
- Update to 1.22.1.
* Thu Oct 12 2017 Josh Stone <jistone@redhat.com> - 1.21.0-1
- Update to 1.21.0.
* Mon Sep 11 2017 Josh Stone <jistone@redhat.com> - 1.20.0-2
- ABI fixes for ppc64 and s390x.
* Thu Aug 31 2017 Josh Stone <jistone@redhat.com> - 1.20.0-1
- Update to 1.20.0.
- Add a rust-src subpackage.
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.19.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.19.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Mon Jul 24 2017 Josh Stone <jistone@redhat.com> - 1.19.0-2
- Use find-debuginfo.sh --keep-section .rustc
* Thu Jul 20 2017 Josh Stone <jistone@redhat.com> - 1.19.0-1
- Update to 1.19.0.
* Thu Jun 08 2017 Josh Stone <jistone@redhat.com> - 1.18.0-1
- Update to 1.18.0.
* Mon May 08 2017 Josh Stone <jistone@redhat.com> - 1.17.0-2
- Move shared libraries back to libdir and symlink in rustlib
* Thu Apr 27 2017 Josh Stone <jistone@redhat.com> - 1.17.0-1
- Update to 1.17.0.
* Mon Mar 20 2017 Josh Stone <jistone@redhat.com> - 1.16.0-3
- Make rust-lldb arch-specific to deal with lldb deps
* Fri Mar 17 2017 Josh Stone <jistone@redhat.com> - 1.16.0-2
- Limit rust-lldb arches
* Thu Mar 16 2017 Josh Stone <jistone@redhat.com> - 1.16.0-1
- Update to 1.16.0.
- Use rustbuild instead of the old makefiles.
- Update bootstrapping to include rust-std and cargo.
- Add a rust-lldb subpackage.
* Thu Feb 09 2017 Josh Stone <jistone@redhat.com> - 1.15.1-1
- Update to 1.15.1.
- Require rust-rpm-macros for new crate packaging.
- Keep shared libraries under rustlib/, only debug-stripped.
- Merge and clean up conditionals for epel7.
* Fri Dec 23 2016 Josh Stone <jistone@redhat.com> - 1.14.0-2
- Rebuild without bootstrap binaries.
* Mon Jan 15 2018 Josh Stone <jistone@redhat.com> - 1.23.0-1
- Bootstrap 1.23 on el8.
* Thu Dec 22 2016 Josh Stone <jistone@redhat.com> - 1.14.0-1
- Update to 1.14.0.
- Rewrite bootstrap logic to target specific arches.
- Bootstrap ppc64, ppc64le, s390x. (thanks to Sinny Kumari for testing!)
* Thu Nov 10 2016 Josh Stone <jistone@redhat.com> - 1.13.0-1
- Update to 1.13.0.
- Use hardening flags for linking.
- Split the standard library into its own package
- Centralize rustlib/ under /usr/lib/ for multilib integration.
* Thu Oct 20 2016 Josh Stone <jistone@redhat.com> - 1.12.1-1
- Update to 1.12.1.
* Fri Oct 14 2016 Josh Stone <jistone@redhat.com> - 1.12.0-7
- Rebuild with LLVM 3.9.
- Add ncurses-devel for llvm-config's -ltinfo.
* Thu Oct 13 2016 Josh Stone <jistone@redhat.com> - 1.12.0-6
- Rebuild with llvm-static, preparing for 3.9
* Fri Oct 07 2016 Josh Stone <jistone@redhat.com> - 1.12.0-5
- Rebuild with fixed eu-strip (rhbz1380961)
* Fri Oct 07 2016 Josh Stone <jistone@redhat.com> - 1.12.0-4
- Rebuild without bootstrap binaries.
* Thu Oct 06 2016 Josh Stone <jistone@redhat.com> - 1.12.0-3
- Bootstrap aarch64.
- Use jemalloc's MALLOC_CONF to work around #36944.
- Apply pr36933 to really disable armv7hl NEON.
* Sat Oct 01 2016 Josh Stone <jistone@redhat.com> - 1.12.0-2
- Protect .rustc from rpm stripping.
* Fri Sep 30 2016 Josh Stone <jistone@redhat.com> - 1.12.0-1
- Update to 1.12.0.
- Always use --local-rust-root, even for bootstrap binaries.
- Remove the rebuild conditional - the build system now figures it out.
- Let minidebuginfo do its thing, since metadata is no longer a note.
- Let rust build its own compiler-rt builtins again.
* Sat Sep 03 2016 Josh Stone <jistone@redhat.com> - 1.11.0-3
- Rebuild without bootstrap binaries.
* Fri Sep 02 2016 Josh Stone <jistone@redhat.com> - 1.11.0-2
- Bootstrap armv7hl, with backported no-neon patch.
* Wed Aug 24 2016 Josh Stone <jistone@redhat.com> - 1.11.0-1
- Update to 1.11.0.
- Drop the backported patches.
- Patch get-stage0.py to trust existing bootstrap binaries.
- Use libclang_rt.builtins from compiler-rt, dodging llvm-static issues.
- Use --local-rust-root to make sure the right bootstrap is used.
* Sat Aug 13 2016 Josh Stone <jistone@redhat.com> 1.10.0-4
- Rebuild without bootstrap binaries.
* Fri Aug 12 2016 Josh Stone <jistone@redhat.com> - 1.10.0-3
- Initial import into Fedora (#1356907), bootstrapped
- Format license text as suggested in review.
- Note how the tests already run in parallel.
- Undefine _include_minidebuginfo, because it duplicates ".note.rustc".
- Don't let checks fail the whole build.
- Note that -doc can't be noarch, as rpmdiff doesn't allow variations.
* Tue Jul 26 2016 Josh Stone <jistone@redhat.com> - 1.10.0-2
- Update -doc directory ownership, and mark its licenses.
- Package and declare licenses for libbacktrace and hoedown.
- Set bootstrap_base as a global.
- Explicitly require python2.
* Thu Jul 14 2016 Josh Stone <jistone@fedoraproject.org> - 1.10.0-1
- Initial package, bootstrapped

View File

@ -0,0 +1,44 @@
diff -up rustc-beta-src/src/tools/cargo/Cargo.lock.orig rustc-beta-src/src/tools/cargo/Cargo.lock
--- rustc-beta-src/src/tools/cargo/Cargo.lock.orig 2024-09-06 10:36:55.743405666 -0700
+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2024-09-06 10:36:55.745405652 -0700
@@ -2156,7 +2156,6 @@ checksum = "10472326a8a6477c3c20a64547b0
dependencies = [
"cc",
"libc",
- "libssh2-sys",
"libz-sys",
"openssl-sys",
"pkg-config",
@@ -2197,20 +2196,6 @@ dependencies = [
"pkg-config",
"vcpkg",
]
-
-[[package]]
-name = "libssh2-sys"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dc8a030b787e2119a731f1951d6a773e2280c660f8ec4b0f5e1505a386e71ee"
-dependencies = [
- "cc",
- "libc",
- "libz-sys",
- "openssl-sys",
- "pkg-config",
- "vcpkg",
-]
[[package]]
name = "libz-sys"
diff -up rustc-beta-src/src/tools/cargo/Cargo.toml.orig rustc-beta-src/src/tools/cargo/Cargo.toml
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2024-09-06 10:36:55.746405645 -0700
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2024-09-06 10:37:13.849280464 -0700
@@ -44,7 +44,7 @@ curl = "0.4.46"
curl-sys = "0.4.73"
filetime = "0.2.23"
flate2 = { version = "1.0.30", default-features = false, features = ["zlib"] }
-git2 = "0.19.0"
+git2 = { version = "0.19.0", default-features = false, features = ["https"] }
git2-curl = "0.20.0"
gix = { version = "0.64.0", default-features = false, features = ["blocking-http-transport-curl", "progress-tree", "parallel", "dirwalk"] }
glob = "0.3.1"

View File

@ -0,0 +1,23 @@
diff -up rustc-beta-src/src/tools/cargo/Cargo.lock.orig rustc-beta-src/src/tools/cargo/Cargo.lock
--- rustc-beta-src/src/tools/cargo/Cargo.lock.orig 2024-09-06 10:30:29.435107742 -0700
+++ rustc-beta-src/src/tools/cargo/Cargo.lock 2024-09-06 10:31:57.168492758 -0700
@@ -2194,7 +2194,6 @@ version = "0.30.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149"
dependencies = [
- "cc",
"pkg-config",
"vcpkg",
]
diff -up rustc-beta-src/src/tools/cargo/Cargo.toml.orig rustc-beta-src/src/tools/cargo/Cargo.toml
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig 2024-09-06 10:30:29.435107742 -0700
+++ rustc-beta-src/src/tools/cargo/Cargo.toml 2024-09-06 10:31:27.942697616 -0700
@@ -77,7 +77,7 @@ proptest = "1.5.0"
pulldown-cmark = { version = "0.11.0", default-features = false, features = ["html"] }
rand = "0.8.5"
regex = "1.10.5"
-rusqlite = { version = "0.32.0", features = ["bundled"] }
+rusqlite = { version = "0.32.0", features = [] }
rustfix = { version = "0.8.2", path = "crates/rustfix" }
same-file = "1.0.6"
security-framework = "2.11.1"

2
sources Normal file
View File

@ -0,0 +1,2 @@
SHA512 (rustc-1.82.0-src.tar.xz) = d158c7c71c1814bde2a3ec3cbeabe34949bd3201b730c0d7ec6baad4158bb28dd13696c430a6b99dc38b9d23ad7ddf8dde7d2487cbfbbbe9c3473016994210f0
SHA512 (wasi-libc-b9ef79d7dbd47c6c5bafdae760823467c2f60b70.tar.gz) = 089ee1f9faeccae85697823d415e34aac56df28cd9db99952a148cb9f91532edbae4ea78f8cd9a223903caadeeb17cbc31d55ea65b020692e4841ddf3914821e