Compare commits
No commits in common. "c8-stream-rhel8" and "c10s" have entirely different histories.
c8-stream-
...
c10s
1
.fmf/version
Normal file
1
.fmf/version
Normal file
@ -0,0 +1 @@
|
||||
1
|
447
.gitignore
vendored
447
.gitignore
vendored
@ -1,2 +1,445 @@
|
||||
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.0-src.tar.xz
|
||||
/rust-1.51.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
/rust-1.51.0-armv7-unknown-linux-gnueabihf.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
|
||||
/rustc-1.52.1-src.tar.xz
|
||||
/rustc-1.53.0-src.tar.xz
|
||||
/rust-1.52.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
/rust-1.52.0-armv7-unknown-linux-gnueabihf.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
|
||||
/rustc-1.54.0-src.tar.xz
|
||||
/rust-1.53.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
/rust-1.53.0-armv7-unknown-linux-gnueabihf.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-powerpc64-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-armv7-unknown-linux-gnueabihf.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-powerpc64-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.0-src.tar.xz
|
||||
/rust-1.55.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
/rust-1.55.0-armv7-unknown-linux-gnueabihf.tar.xz
|
||||
/rust-1.55.0-i686-unknown-linux-gnu.tar.xz
|
||||
/rust-1.55.0-powerpc64-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
|
||||
/rustc-1.56.1-src.tar.xz
|
||||
/rustc-1.57.0-src.tar.xz
|
||||
/wasi-libc-ad5133410f66b93a2381db5b542aad5e0964db96.tar.gz
|
||||
/rust-1.56.1-aarch64-unknown-linux-gnu.tar.xz
|
||||
/rust-1.56.1-armv7-unknown-linux-gnueabihf.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-armv7-unknown-linux-gnueabihf.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
|
||||
/rust-1.58.0-aarch64-unknown-linux-gnu.tar.xz
|
||||
/rust-1.58.0-armv7-unknown-linux-gnueabihf.tar.xz
|
||||
/rust-1.58.0-i686-unknown-linux-gnu.tar.xz
|
||||
/rust-1.58.0-powerpc64le-unknown-linux-gnu.tar.xz
|
||||
/rust-1.58.0-s390x-unknown-linux-gnu.tar.xz
|
||||
/rust-1.58.0-x86_64-unknown-linux-gnu.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.0-src.tar.xz
|
||||
/wasi-libc-wasi-sdk-17.tar.gz
|
||||
/rustc-1.66.1-src.tar.xz
|
||||
/rustc-1.67.0-src.tar.xz
|
||||
/rustc-1.67.1-src.tar.xz
|
||||
/rustc-1.68.0-src.tar.xz
|
||||
/wasi-libc-wasi-sdk-19.tar.gz
|
||||
/rustc-1.68.1-src.tar.xz
|
||||
/rustc-1.68.2-src.tar.xz
|
||||
/rustc-1.69.0-src.tar.xz
|
||||
/wasi-libc-1dfe5c302d1c5ab621f7abf04620fae92700fd22.tar.gz
|
||||
/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
|
||||
|
@ -1,2 +0,0 @@
|
||||
fdd94a3bdb321d18a0021d4dce9b8546a1db2eec SOURCES/rustc-1.79.0-src.tar.xz
|
||||
13451249ddb71e69f12565ef4803b71ce4092191 SOURCES/wasi-libc-wasi-sdk-22.tar.gz
|
147
0001-Fix-enabling-wasm-component-ld-to-match-other-tools.patch
Normal file
147
0001-Fix-enabling-wasm-component-ld-to-match-other-tools.patch
Normal 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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
163
0001-bootstrap-allow-setting-jobs-in-config.toml.patch
Normal file
163
0001-bootstrap-allow-setting-jobs-in-config.toml.patch
Normal 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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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"
|
@ -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"
|
607
changelog
Normal file
607
changelog
Normal file
@ -0,0 +1,607 @@
|
||||
* Fri Apr 05 2024 Josh Stone <jistone@redhat.com> - 1.77.0-3
|
||||
- Ensure more consistency in PGO flags -- fixes Cargo tests
|
||||
|
||||
* Thu Mar 21 2024 Davide Cavalca <dcavalca@fedoraproject.org> - 1.77.0-2
|
||||
- Add build target for aarch64-unknown-none-softfloat
|
||||
|
||||
* Thu Mar 21 2024 Nikita Popov <npopov@redhat.com> - 1.77.0-1
|
||||
- Update to 1.77.0
|
||||
|
||||
* Thu Feb 08 2024 Josh Stone <jistone@redhat.com> - 1.76.0-1
|
||||
- Update to 1.76.0.
|
||||
|
||||
* Tue Jan 30 2024 Josh Stone <jistone@redhat.com> - 1.75.0-3
|
||||
- Consolidate 32-bit build compromises.
|
||||
- Update rust-toolset and add rust-srpm-macros for ELN.
|
||||
|
||||
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.75.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Dec 31 2023 Josh Stone <jistone@redhat.com> - 1.75.0-1
|
||||
- Update to 1.75.0.
|
||||
|
||||
* Thu Dec 07 2023 Josh Stone <jistone@redhat.com> - 1.74.1-1
|
||||
- Update to 1.74.1.
|
||||
|
||||
* Thu Nov 16 2023 Josh Stone <jistone@redhat.com> - 1.74.0-1
|
||||
- Update to 1.74.0.
|
||||
|
||||
* Thu Oct 26 2023 Josh Stone <jistone@redhat.com> - 1.73.0-2
|
||||
- Use thin-LTO and PGO for rustc itself.
|
||||
|
||||
* Thu Oct 05 2023 Josh Stone <jistone@redhat.com> - 1.73.0-1
|
||||
- Update to 1.73.0.
|
||||
- Drop el7 conditionals from the spec.
|
||||
|
||||
* Fri Sep 29 2023 Josh Stone <jistone@redhat.com> - 1.72.1-3
|
||||
- Fix the profiler runtime with compiler-rt-17
|
||||
- Switch to unbundled wasi-libc on Fedora
|
||||
- Use emmalloc instead of CC0 dlmalloc when bundling wasi-libc
|
||||
|
||||
* Mon Sep 25 2023 Josh Stone <jistone@redhat.com> - 1.72.1-2
|
||||
- Fix LLVM dependency for ELN
|
||||
- Add build target for x86_64-unknown-none
|
||||
- Add build target for x86_64-unknown-uefi
|
||||
|
||||
* Tue Sep 19 2023 Josh Stone <jistone@redhat.com> - 1.72.1-1
|
||||
- Update to 1.72.1.
|
||||
- Migrated to SPDX license
|
||||
|
||||
* Thu Aug 24 2023 Josh Stone <jistone@redhat.com> - 1.72.0-1
|
||||
- Update to 1.72.0.
|
||||
|
||||
* Mon Aug 07 2023 Josh Stone <jistone@redhat.com> - 1.71.1-1
|
||||
- Update to 1.71.1.
|
||||
- Security fix for CVE-2023-38497
|
||||
|
||||
* Tue Jul 25 2023 Josh Stone <jistone@redhat.com> - 1.71.0-3
|
||||
- Relax the suspicious_double_ref_op lint
|
||||
- Enable the profiler runtime for native hosts
|
||||
|
||||
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.71.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Mon Jul 17 2023 Josh Stone <jistone@redhat.com> - 1.71.0-1
|
||||
- Update to 1.71.0.
|
||||
|
||||
* Fri Jun 23 2023 Josh Stone <jistone@redhat.com> - 1.70.0-2
|
||||
- Override default target CPUs to match distro settings
|
||||
|
||||
* Thu Jun 01 2023 Josh Stone <jistone@redhat.com> - 1.70.0-1
|
||||
- Update to 1.70.0.
|
||||
|
||||
* Fri May 05 2023 Josh Stone <jistone@redhat.com> - 1.69.0-3
|
||||
- Fix debuginfo with LLVM 16
|
||||
|
||||
* Mon May 01 2023 Josh Stone <jistone@redhat.com> - 1.69.0-2
|
||||
- Build with LLVM 15 on Fedora 38+
|
||||
|
||||
* Thu Apr 20 2023 Josh Stone <jistone@redhat.com> - 1.69.0-1
|
||||
- Update to 1.69.0.
|
||||
- Obsolete rust-analysis.
|
||||
|
||||
* Tue Mar 28 2023 Josh Stone <jistone@redhat.com> - 1.68.2-1
|
||||
- Update to 1.68.2.
|
||||
|
||||
* Thu Mar 23 2023 Josh Stone <jistone@redhat.com> - 1.68.1-1
|
||||
- Update to 1.68.1.
|
||||
|
||||
* Thu Mar 09 2023 Josh Stone <jistone@redhat.com> - 1.68.0-1
|
||||
- Update to 1.68.0.
|
||||
|
||||
* Tue Mar 07 2023 David Michael <fedora.dm0@gmail.com> - 1.67.1-3
|
||||
- Add a virtual Provides to rust-std-static containing the target triple.
|
||||
|
||||
* Mon Feb 20 2023 Orion Poplawski <orion@nwra.com> - 1.67.1-2
|
||||
- Ship rust-toolset for EPEL7
|
||||
|
||||
* Thu Feb 09 2023 Josh Stone <jistone@redhat.com> - 1.67.1-1
|
||||
- Update to 1.67.1.
|
||||
|
||||
* Fri Feb 03 2023 Josh Stone <jistone@redhat.com> - 1.67.0-3
|
||||
- Unbundle libgit2 on Fedora 38.
|
||||
|
||||
* Fri Jan 27 2023 Adam Williamson <awilliam@redhat.com> - 1.67.0-2
|
||||
- Backport PR #107360 to fix build of mesa
|
||||
- Backport 675fa0b3 to fix bootstrapping failure
|
||||
|
||||
* Thu Jan 26 2023 Josh Stone <jistone@redhat.com> - 1.67.0-1
|
||||
- Update to 1.67.0.
|
||||
|
||||
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.66.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Tue Jan 10 2023 Josh Stone <jistone@redhat.com> - 1.66.1-1
|
||||
- Update to 1.66.1.
|
||||
- Security fix for CVE-2022-46176
|
||||
|
||||
* Thu Dec 15 2022 Josh Stone <jistone@redhat.com> - 1.66.0-1
|
||||
- Update to 1.66.0.
|
||||
|
||||
* Thu Nov 03 2022 Josh Stone <jistone@redhat.com> - 1.65.0-1
|
||||
- Update to 1.65.0.
|
||||
- rust-analyzer now obsoletes rls.
|
||||
|
||||
* Thu Sep 22 2022 Josh Stone <jistone@redhat.com> - 1.64.0-1
|
||||
- Update to 1.64.0.
|
||||
- Add rust-analyzer.
|
||||
|
||||
* Thu Aug 11 2022 Josh Stone <jistone@redhat.com> - 1.63.0-1
|
||||
- Update to 1.63.0.
|
||||
|
||||
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.62.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Tue Jul 19 2022 Josh Stone <jistone@redhat.com> - 1.62.1-1
|
||||
- Update to 1.62.1.
|
||||
|
||||
* Wed Jul 13 2022 Josh Stone <jistone@redhat.com> - 1.62.0-2
|
||||
- Prevent unsound coercions from functions with opaque return types.
|
||||
|
||||
* Thu Jun 30 2022 Josh Stone <jistone@redhat.com> - 1.62.0-1
|
||||
- Update to 1.62.0.
|
||||
|
||||
* Mon May 23 2022 Josh Stone <jistone@redhat.com> - 1.61.0-2
|
||||
- Add missing target_feature to the list of well known cfg names
|
||||
|
||||
* Thu May 19 2022 Josh Stone <jistone@redhat.com> - 1.61.0-1
|
||||
- Update to 1.61.0.
|
||||
- Add rust-toolset for ELN.
|
||||
|
||||
* Thu Apr 07 2022 Josh Stone <jistone@redhat.com> - 1.60.0-1
|
||||
- Update to 1.60.0.
|
||||
|
||||
* Fri Mar 25 2022 Josh Stone <jistone@redhat.com> - 1.59.0-4
|
||||
- Fix the archive index for wasm32-wasi's libc.a
|
||||
|
||||
* Fri Mar 04 2022 Stephen Gallagher <sgallagh@redhat.com> - 1.59.0-3
|
||||
- Rebuild against the bootstrapped build
|
||||
|
||||
* Fri Mar 04 2022 Stephen Gallagher <sgallagh@redhat.com> - 1.59.0-2.1
|
||||
- Bootstrapping for Fedora ELN
|
||||
|
||||
* Tue Mar 01 2022 Josh Stone <jistone@redhat.com> - 1.59.0-2
|
||||
- Fix s390x hangs, rhbz#2058803
|
||||
|
||||
* Thu Feb 24 2022 Josh Stone <jistone@redhat.com> - 1.59.0-1
|
||||
- Update to 1.59.0.
|
||||
- Revert to libgit2 1.3.x
|
||||
|
||||
* Sun Feb 20 2022 Igor Raits <igor.raits@gmail.com> - 1.58.1-2
|
||||
- Rebuild for libgit2 1.4.x
|
||||
|
||||
* Thu Jan 20 2022 Josh Stone <jistone@redhat.com> - 1.58.1-1
|
||||
- Update to 1.58.1.
|
||||
|
||||
* Thu Jan 13 2022 Josh Stone <jistone@redhat.com> - 1.58.0-1
|
||||
- Update to 1.58.0.
|
||||
|
||||
* Wed Jan 05 2022 Josh Stone <jistone@redhat.com> - 1.57.0-2
|
||||
- Add rust-std-static-i686-pc-windows-gnu
|
||||
- Add rust-std-static-x86_64-pc-windows-gnu
|
||||
|
||||
* Thu Dec 02 2021 Josh Stone <jistone@redhat.com> - 1.57.0-1
|
||||
- Update to 1.57.0, fixes rhbz#2028675.
|
||||
- Backport rust#91070, fixes rhbz#1990657
|
||||
- Add rust-std-static-wasm32-wasi
|
||||
|
||||
* Sun Nov 28 2021 Igor Raits <ignatenkobrain@fedoraproject.org> - 1.56.1-3
|
||||
- De-bootstrap (libgit2)
|
||||
|
||||
* Sun Nov 28 2021 Igor Raits <ignatenkobrain@fedoraproject.org> - 1.56.1-2
|
||||
- Rebuild for libgit2 1.3.x
|
||||
|
||||
* Mon Nov 01 2021 Josh Stone <jistone@redhat.com> - 1.56.1-1
|
||||
- Update to 1.56.1.
|
||||
|
||||
* Thu Oct 21 2021 Josh Stone <jistone@redhat.com> - 1.56.0-1
|
||||
- Update to 1.56.0.
|
||||
|
||||
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 1.55.0-2
|
||||
- Rebuilt with OpenSSL 3.0.0
|
||||
|
||||
* Thu Sep 09 2021 Josh Stone <jistone@redhat.com> - 1.55.0-1
|
||||
- Update to 1.55.0.
|
||||
- Use llvm-ranlib for wasm rlibs; Fixes rhbz#2002612
|
||||
|
||||
* Tue Aug 24 2021 Josh Stone <jistone@redhat.com> - 1.54.0-2
|
||||
- Build with LLVM 12 on Fedora 35+
|
||||
|
||||
* Thu Jul 29 2021 Josh Stone <jistone@redhat.com> - 1.54.0-1
|
||||
- Update to 1.54.0.
|
||||
|
||||
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.53.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Thu Jul 08 2021 Josh Stone <jistone@redhat.com> - 1.53.0-2
|
||||
- Exclude wasm on s390x for lack of lld
|
||||
|
||||
* Thu Jun 17 2021 Josh Stone <jistone@redhat.com> - 1.53.0-1
|
||||
- Update to 1.53.0.
|
||||
|
||||
* Wed Jun 02 2021 Josh Stone <jistone@redhat.com> - 1.52.1-2
|
||||
- Set rust.codegen-units-std=1 for all targets again.
|
||||
- Add rust-std-static-wasm32-unknown-unknown.
|
||||
- Rebuild f34 with LLVM 12.
|
||||
|
||||
* Mon May 10 2021 Josh Stone <jistone@redhat.com> - 1.52.1-1
|
||||
- Update to 1.52.1.
|
||||
|
||||
* Thu May 06 2021 Josh Stone <jistone@redhat.com> - 1.52.0-1
|
||||
- Update to 1.52.0.
|
||||
|
||||
* Fri Apr 16 2021 Josh Stone <jistone@redhat.com> - 1.51.0-3
|
||||
- Security fixes for CVE-2020-36323, CVE-2021-31162
|
||||
|
||||
* Wed Apr 14 2021 Josh Stone <jistone@redhat.com> - 1.51.0-2
|
||||
- Security fixes for CVE-2021-28876, CVE-2021-28878, CVE-2021-28879
|
||||
- Fix bootstrap for stage0 rust 1.51
|
||||
|
||||
* Thu Mar 25 2021 Josh Stone <jistone@redhat.com> - 1.51.0-1
|
||||
- Update to 1.51.0.
|
||||
|
||||
* Thu Feb 11 2021 Josh Stone <jistone@redhat.com> - 1.50.0-1
|
||||
- Update to 1.50.0.
|
||||
|
||||
* 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 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* Thu Apr 23 2020 Josh Stone <jistone@redhat.com> - 1.43.0-1
|
||||
- Update to 1.43.0.
|
||||
|
||||
* Thu Mar 12 2020 Josh Stone <jistone@redhat.com> - 1.42.0-1
|
||||
- Update to 1.42.0.
|
||||
|
||||
* 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-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.
|
||||
|
||||
* 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.
|
||||
|
||||
* Wed May 29 2019 Josh Stone <jistone@redhat.com> - 1.35.0-2
|
||||
- Fix compiletest for rebuild testing.
|
||||
|
||||
* Thu May 23 2019 Josh Stone <jistone@redhat.com> - 1.35.0-1
|
||||
- Update to 1.35.0.
|
||||
|
||||
* Tue May 14 2019 Josh Stone <jistone@redhat.com> - 1.34.2-1
|
||||
- Update to 1.34.2 -- fixes CVE-2019-12083.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* Mon Jan 07 2019 Josh Stone <jistone@redhat.com> - 1.31.1-9
|
||||
- Update to 1.31.1 for RLS fixes.
|
||||
|
||||
* 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
|
||||
|
||||
* Thu Nov 08 2018 Josh Stone <jistone@redhat.com> - 1.30.1-7
|
||||
- Update to 1.30.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.
|
||||
|
||||
* 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).
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* Tue May 29 2018 Josh Stone <jistone@redhat.com> - 1.26.1-2
|
||||
- Update to 1.26.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.
|
||||
|
||||
* Thu Mar 29 2018 Josh Stone <jistone@redhat.com> - 1.25.0-1
|
||||
- Update to 1.25.0.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* 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
|
7
gating.yaml
Normal file
7
gating.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- rhel-10
|
||||
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}
|
62
macros.rust-srpm
Normal file
62
macros.rust-srpm
Normal file
@ -0,0 +1,62 @@
|
||||
# rust_arches: list of architectures where building Rust is supported
|
||||
#
|
||||
# Since RPM itself now depends on Rust code (via its GPG backend, rpm-sequoia),
|
||||
# this list will probably always be a superset of all architectures that are
|
||||
# supported by Fedora, which is why it is no longer required to set
|
||||
# "ExclusiveArch: rust_arches" for Rust packages in Fedora.
|
||||
%rust_arches x86_64 %{ix86} armv7hl aarch64 ppc64 ppc64le riscv64 s390x
|
||||
|
||||
# version_no_tilde: lua macro for reconstructing the original crate version
|
||||
# from the RPM version (i.e. replace any "~" characters with "-")
|
||||
%version_no_tilde() %{lua:
|
||||
local sep = rpm.expand('%1')
|
||||
local ver = rpm.expand('%2')
|
||||
\
|
||||
if sep == '%1' then
|
||||
sep = '-'
|
||||
end
|
||||
\
|
||||
if ver == '%2' then
|
||||
ver = rpm.expand('%version')
|
||||
end
|
||||
ver = ver:gsub('~', sep)
|
||||
\
|
||||
print(ver)
|
||||
}
|
||||
|
||||
# __crates_url: default API endpoint for downloading .crate files from crates.io
|
||||
%__crates_url https://crates.io/api/v1/crates/
|
||||
|
||||
# crates_source: lua macro for constructing the Source URL for a crate
|
||||
%crates_source() %{lua:
|
||||
local crate = rpm.expand('%1')
|
||||
local version = rpm.expand('%2')
|
||||
local url = rpm.expand('%__crates_url')
|
||||
\
|
||||
-- first argument missing: fall back to %crate
|
||||
if crate == '%1' then
|
||||
crate = rpm.expand('%crate')
|
||||
end
|
||||
-- %crate macro not defined: fall back to %name
|
||||
if crate == '%crate' then
|
||||
crate = rpm.expand('%name')
|
||||
end
|
||||
\
|
||||
-- second argument missing: fall back to %crate_version
|
||||
if version == '%2' then
|
||||
version = rpm.expand('%crate_version')
|
||||
end
|
||||
-- %crate_version macro not defined: fall back to %version
|
||||
if version == '%crate_version' then
|
||||
version = rpm.expand('%version')
|
||||
end
|
||||
-- replace '~' with '-' for backwards compatibility
|
||||
-- can be removed in the future
|
||||
version = version:gsub('~', '-')
|
||||
\
|
||||
print(url .. crate .. '/' .. version .. '/download#/' .. crate .. '-' .. version .. '.crate')
|
||||
}
|
||||
|
||||
# __cargo_skip_build: unused macro, set to 0 for backwards compatibility
|
||||
%__cargo_skip_build 0
|
||||
|
@ -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
|
||||
@ -118,32 +126,31 @@ EOF}\
|
||||
%{nil} \
|
||||
}
|
||||
|
||||
# NB: cargo_build/test/install do not use the -n/-a/-f argument parsing like
|
||||
# Fedora's rust-packaging, because that change would break anyone that's
|
||||
# already passing arguments directly to cargo after the macro. Instead, one can
|
||||
# explicitly use --no-default-features, --all-features, or --features XYZ.
|
||||
|
||||
# cargo_build: builds the crate with cargo
|
||||
%cargo_build\
|
||||
# cargo_build: builds the crate with cargo with the specified feature flags
|
||||
%cargo_build(naf:)\
|
||||
%{shrink: \
|
||||
%{__cargo} build \
|
||||
%{__cargo_common_opts} \
|
||||
--profile rpm \
|
||||
%{__cargo_parse_opts %{-n} %{-a} %{-f:-f%{-f*}}} \
|
||||
%* \
|
||||
}
|
||||
|
||||
# cargo_test: runs the test suite with cargo
|
||||
# cargo_test: runs the test suite with cargo with the specified feature flags
|
||||
#
|
||||
# To pass command-line arguments to the cargo test runners directly (for
|
||||
# example, to skip certain tests during package builds), the
|
||||
# "cargo test" argument parsing need to be bypassed,
|
||||
# i.e. "%%cargo_test -- --skip foo" for skipping all tests with names that
|
||||
# example, to skip certain tests during package builds), both the cargo_test
|
||||
# macro argument parsing and "cargo test" argument parsing need to be bypassed,
|
||||
# i.e. "%%cargo_test -- -- --skip foo" for skipping all tests with names that
|
||||
# match "foo".
|
||||
%cargo_test\
|
||||
%cargo_test(naf:)\
|
||||
%{shrink: \
|
||||
%{__cargo} test \
|
||||
%{__cargo_common_opts} \
|
||||
--profile rpm \
|
||||
--no-fail-fast \
|
||||
%{__cargo_parse_opts %{-n} %{-a} %{-f:-f%{-f*}}} \
|
||||
%* \
|
||||
}
|
||||
|
||||
# cargo_install: install files into the buildroot
|
||||
@ -153,7 +160,7 @@ EOF}\
|
||||
# "$CARGO_HOME/.crates.toml" file, which is used to keep track of which version
|
||||
# of a specific binary has been installed, but which conflicts between builds
|
||||
# of different Rust applications and is not needed when building RPM packages.
|
||||
%cargo_install\
|
||||
%cargo_install(t:naf:)\
|
||||
(\
|
||||
set -euo pipefail \
|
||||
%{shrink: \
|
||||
@ -162,6 +169,8 @@ set -euo pipefail \
|
||||
--profile rpm \
|
||||
--no-track \
|
||||
--path . \
|
||||
%{__cargo_parse_opts %{-n} %{-a} %{-f:-f%{-f*}}} \
|
||||
%* \
|
||||
} \
|
||||
)
|
||||
|
5
plans/ci.fmf
Normal file
5
plans/ci.fmf
Normal file
@ -0,0 +1,5 @@
|
||||
summary: CI Gating Plan
|
||||
discover:
|
||||
how: fmf
|
||||
execute:
|
||||
how: tmt
|
24
rpminspect.yaml
Normal file
24
rpminspect.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
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
|
||||
|
||||
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
|
@ -1,6 +1,6 @@
|
||||
Name: rust
|
||||
Version: 1.79.0
|
||||
Release: 2%{?dist}
|
||||
Version: 1.82.0
|
||||
Release: %autorelease
|
||||
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)
|
||||
@ -8,15 +8,15 @@ URL: https://www.rust-lang.org
|
||||
|
||||
# Only x86_64, i686, and aarch64 are Tier 1 platforms at this time.
|
||||
# https://doc.rust-lang.org/nightly/rustc/platform-support.html
|
||||
%global rust_arches x86_64 i686 aarch64 ppc64le s390x
|
||||
%global rust_arches x86_64 i686 armv7hl aarch64 ppc64le s390x riscv64
|
||||
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,26 +159,24 @@ 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 ###
|
||||
|
||||
# Simple rpm macros for rust-toolset (as opposed to full rust-packaging)
|
||||
Source100: macros.rust-toolset
|
||||
Source101: cargo_vendor.attr
|
||||
Source102: cargo_vendor.prov
|
||||
Source101: macros.rust-srpm
|
||||
Source102: cargo_vendor.attr
|
||||
Source103: 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 +290,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 +462,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 +571,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
|
||||
|
||||
@ -591,11 +615,25 @@ useful as a reference for code completion tools in various editors.
|
||||
|
||||
%if 0%{?rhel}
|
||||
|
||||
%package toolset-srpm-macros
|
||||
Summary: RPM macros for building Rust source packages
|
||||
BuildArch: noarch
|
||||
|
||||
# This used to be from its own source package, versioned like rust2rpm.
|
||||
Obsoletes: rust-srpm-macros < 18~
|
||||
Provides: rust-srpm-macros = 25.2
|
||||
|
||||
%description toolset-srpm-macros
|
||||
RPM macros for building source packages for Rust projects.
|
||||
|
||||
|
||||
%package toolset
|
||||
Summary: Rust Toolset
|
||||
BuildArch: noarch
|
||||
Requires: rust = %{version}-%{release}
|
||||
Requires: cargo = %{version}-%{release}
|
||||
Requires: rust-toolset-srpm-macros = %{version}-%{release}
|
||||
Conflicts: cargo-rpm-macros
|
||||
|
||||
%description toolset
|
||||
This is the metapackage for Rust Toolset, bringing in the Rust compiler,
|
||||
@ -637,7 +675,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 +770,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 +855,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 +880,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 +892,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
|
||||
@ -933,8 +984,9 @@ rm -f %{buildroot}%{rustlibdir}/%{rust_triple}/bin/rust-ll*
|
||||
%if 0%{?rhel}
|
||||
# This allows users to build packages using Rust Toolset.
|
||||
%{__install} -D -m 644 %{S:100} %{buildroot}%{rpmmacrodir}/macros.rust-toolset
|
||||
%{__install} -D -m 644 %{S:101} %{buildroot}%{_fileattrsdir}/cargo_vendor.attr
|
||||
%{__install} -D -m 755 %{S:102} %{buildroot}%{_rpmconfigdir}/cargo_vendor.prov
|
||||
%{__install} -D -m 644 %{S:101} %{buildroot}%{rpmmacrodir}/macros.rust-srpm
|
||||
%{__install} -D -m 644 %{S:102} %{buildroot}%{_fileattrsdir}/cargo_vendor.attr
|
||||
%{__install} -D -m 755 %{S:103} %{buildroot}%{_rpmconfigdir}/cargo_vendor.prov
|
||||
%endif
|
||||
|
||||
|
||||
@ -967,23 +1019,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 +1112,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
|
||||
@ -1131,6 +1190,9 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
|
||||
|
||||
|
||||
%if 0%{?rhel}
|
||||
%files toolset-srpm-macros
|
||||
%{rpmmacrodir}/macros.rust-srpm
|
||||
|
||||
%files toolset
|
||||
%{rpmmacrodir}/macros.rust-toolset
|
||||
%{_fileattrsdir}/cargo_vendor.attr
|
||||
@ -1139,290 +1201,4 @@ timeout -v 30m %{__x} test --no-fail-fast rustfmt || :
|
||||
|
||||
|
||||
%changelog
|
||||
* 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
|
||||
- Update to 1.79.0
|
||||
|
||||
* Fri Jun 21 2024 Josh Stone <jistone@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
|
||||
- Update to 1.77.2.
|
||||
|
||||
* Wed Apr 17 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.
|
||||
|
||||
* Wed Jan 03 2024 Josh Stone <jistone@redhat.com> - 1.74.1-1
|
||||
- Update to 1.74.1.
|
||||
|
||||
* Tue Oct 17 2023 Josh Stone <jistone@redhat.com> - 1.73.0-1
|
||||
- Update to 1.73.0.
|
||||
- Use emmalloc instead of CC0 dlmalloc when bundling wasi-libc
|
||||
|
||||
* Thu Oct 12 2023 Josh Stone <jistone@redhat.com> - 1.72.1-1
|
||||
- Update to 1.72.1.
|
||||
- Migrated to SPDX license
|
||||
|
||||
* Tue Aug 08 2023 Josh Stone <jistone@redhat.com> - 1.71.1-1
|
||||
- Update to 1.71.1.
|
||||
- Security fix for CVE-2023-38497
|
||||
|
||||
* Wed Jul 26 2023 Josh Stone <jistone@redhat.com> - 1.71.0-2
|
||||
- Relax the suspicious_double_ref_op lint (rhbz2225471)
|
||||
- Enable the profiler runtime for native hosts (rhbz2213875)
|
||||
|
||||
* Thu Jul 20 2023 Josh Stone <jistone@redhat.com> - 1.71.0-1
|
||||
- Update to 1.71.0.
|
||||
|
||||
* 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
|
||||
- Update to 1.69.0.
|
||||
- Obsolete rust-analysis.
|
||||
|
||||
* Fri May 19 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
|
||||
- Update to 1.67.1.
|
||||
|
||||
* Wed Jan 11 2023 Josh Stone <jistone@redhat.com> - 1.66.1-1
|
||||
- Update to 1.66.1.
|
||||
|
||||
* Fri Jan 06 2023 Josh Stone <jistone@redhat.com> - 1.65.0-1
|
||||
- Update to 1.65.0.
|
||||
- rust-analyzer now obsoletes rls.
|
||||
|
||||
* Thu Sep 22 2022 Josh Stone <jistone@redhat.com> - 1.64.0-1
|
||||
- Update to 1.64.0.
|
||||
- Add rust-analyzer.
|
||||
|
||||
* Wed Sep 07 2022 Josh Stone <jistone@redhat.com> - 1.63.0-1
|
||||
- Update to 1.63.0.
|
||||
|
||||
* Tue Jul 19 2022 Josh Stone <jistone@redhat.com> - 1.62.1-1
|
||||
- Update to 1.62.1.
|
||||
|
||||
* Wed Jul 13 2022 Josh Stone <jistone@redhat.com> - 1.62.0-2
|
||||
- Prevent unsound coercions from functions with opaque return types.
|
||||
|
||||
* Thu Jun 30 2022 Josh Stone <jistone@redhat.com> - 1.62.0-1
|
||||
- Update to 1.62.0.
|
||||
|
||||
* Fri Jun 03 2022 Josh Stone <jistone@redhat.com> - 1.61.0-1
|
||||
- Update to 1.61.0.
|
||||
- Add rust-toolset as a subpackage.
|
||||
|
||||
* Wed Apr 20 2022 Josh Stone <jistone@redhat.com> - 1.60.0-1
|
||||
- Update to 1.60.0.
|
||||
|
||||
* Tue Apr 19 2022 Josh Stone <jistone@redhat.com> - 1.59.0-1
|
||||
- Update to 1.59.0.
|
||||
|
||||
* Thu Jan 20 2022 Josh Stone <jistone@redhat.com> - 1.58.1-1
|
||||
- Update to 1.58.1.
|
||||
|
||||
* Thu Jan 13 2022 Josh Stone <jistone@redhat.com> - 1.58.0-1
|
||||
- Update to 1.58.0.
|
||||
|
||||
* 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
|
||||
- Add rust-std-static-wasm32-wasi
|
||||
Resolves: rhbz#1980080
|
||||
|
||||
* Tue Nov 02 2021 Josh Stone <jistone@redhat.com> - 1.56.0-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.
|
||||
|
||||
* Thu Jul 29 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
|
||||
- Update to 1.53.0.
|
||||
|
||||
* Tue Jun 15 2021 Josh Stone <jistone@redhat.com> - 1.52.1-2
|
||||
- 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
|
||||
- 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.
|
||||
|
||||
* 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.
|
||||
|
||||
* Mon May 24 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
|
||||
- Update to 1.49.0.
|
||||
|
||||
* Tue Jan 12 2021 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
|
||||
- Update to 1.47.0.
|
||||
|
||||
* Wed Oct 14 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
|
||||
- Update to 1.45.2.
|
||||
|
||||
* 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
|
||||
- Update to 1.44.1.
|
||||
|
||||
* Thu May 07 2020 Josh Stone <jistone@redhat.com> - 1.43.1-1
|
||||
- Update to 1.43.1.
|
||||
|
||||
* Thu Apr 23 2020 Josh Stone <jistone@redhat.com> - 1.43.0-1
|
||||
- Update to 1.43.0.
|
||||
|
||||
* Thu Mar 12 2020 Josh Stone <jistone@redhat.com> - 1.42.0-1
|
||||
- Update to 1.42.0.
|
||||
|
||||
* Thu Feb 27 2020 Josh Stone <jistone@redhat.com> - 1.41.1-1
|
||||
- Update to 1.41.1.
|
||||
|
||||
* 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
|
||||
- Build compiletest with in-tree libtest
|
||||
- Fix ARM EHABI unwinding
|
||||
|
||||
* 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.
|
||||
|
||||
* 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).
|
||||
|
||||
* Thu Jul 04 2019 Josh Stone <jistone@redhat.com> - 1.36.0-1
|
||||
- Update to 1.36.0.
|
||||
|
||||
* Wed May 29 2019 Josh Stone <jistone@redhat.com> - 1.35.0-2
|
||||
- Fix compiletest for rebuild testing.
|
||||
|
||||
* Thu May 23 2019 Josh Stone <jistone@redhat.com> - 1.35.0-1
|
||||
- Update to 1.35.0.
|
||||
|
||||
* 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
|
||||
- Update to 1.34.1.
|
||||
|
||||
* 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
|
||||
- Update to 1.33.0.
|
||||
|
||||
* Tue Apr 09 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.
|
||||
|
||||
* 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
|
||||
- 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
|
||||
- Update to 1.30.1.
|
||||
|
||||
* Tue Nov 06 2018 Josh Stone <jistone@redhat.com> - 1.29.2-1
|
||||
- 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
|
||||
- Security fix for str::repeat (pending CVE).
|
||||
|
||||
* Fri Oct 05 2018 Josh Stone <jistone@redhat.com> - 1.26.2-10
|
||||
- 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
|
||||
- Update to 1.26.2.
|
||||
|
||||
* Wed May 30 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
|
||||
- Update to 1.26.0.
|
||||
|
||||
* 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
|
||||
- Update to 1.25.0.
|
||||
- Add rustfmt-preview as a subpackage.
|
||||
|
||||
* Thu Feb 22 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
|
||||
- Rebuild without bootstrap binaries.
|
||||
|
||||
* Mon Jan 15 2018 Josh Stone <jistone@redhat.com> - 1.23.0-1
|
||||
- Bootstrap 1.23 on el8.
|
||||
%autochangelog
|
44
rustc-1.82.0-disable-libssh2.patch
Normal file
44
rustc-1.82.0-disable-libssh2.patch
Normal 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"
|
23
rustc-1.82.0-unbundle-sqlite.patch
Normal file
23
rustc-1.82.0-unbundle-sqlite.patch
Normal 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
2
sources
Normal file
@ -0,0 +1,2 @@
|
||||
SHA512 (rustc-1.82.0-src.tar.xz) = d158c7c71c1814bde2a3ec3cbeabe34949bd3201b730c0d7ec6baad4158bb28dd13696c430a6b99dc38b9d23ad7ddf8dde7d2487cbfbbbe9c3473016994210f0
|
||||
SHA512 (wasi-libc-b9ef79d7dbd47c6c5bafdae760823467c2f60b70.tar.gz) = 089ee1f9faeccae85697823d415e34aac56df28cd9db99952a148cb9f91532edbae4ea78f8cd9a223903caadeeb17cbc31d55ea65b020692e4841ddf3914821e
|
63
tests/Sanity/basic-smoke/Makefile
Normal file
63
tests/Sanity/basic-smoke/Makefile
Normal file
@ -0,0 +1,63 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/rust/Sanity/basic-smoke
|
||||
# Description: basic-smoke
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/rust/Sanity/basic-smoke
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Martin Cermak <mcermak@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: basic-smoke" >> $(METADATA)
|
||||
@echo "Type: Sanity" >> $(METADATA)
|
||||
@echo "TestTime: 10m" >> $(METADATA)
|
||||
@echo "RunFor: rust" >> $(METADATA)
|
||||
@echo "Requires: rust" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
3
tests/Sanity/basic-smoke/PURPOSE
Normal file
3
tests/Sanity/basic-smoke/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
||||
PURPOSE of /tools/rust/Sanity/basic-smoke
|
||||
Description: basic-smoke
|
||||
Author: Martin Cermak <mcermak@redhat.com>
|
13
tests/Sanity/basic-smoke/main.fmf
Normal file
13
tests/Sanity/basic-smoke/main.fmf
Normal file
@ -0,0 +1,13 @@
|
||||
summary: basic-smoke
|
||||
description: ''
|
||||
contact:
|
||||
- Jesus Checa Hidalgo <jcheca@redhat.com>
|
||||
component:
|
||||
- rust
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- rust
|
||||
duration: 10m
|
||||
extra-summary: /tools/rust/Sanity/basic-smoke
|
||||
extra-task: /tools/rust/Sanity/basic-smoke
|
55
tests/Sanity/basic-smoke/runtest.sh
Executable file
55
tests/Sanity/basic-smoke/runtest.sh
Executable file
@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/rust/Sanity/basic-smoke
|
||||
# Description: basic-smoke
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2017 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="$(rpm -qf $(which rustc))"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
HELLO_SRC=$( mktemp )
|
||||
HELLO_BIN=$( mktemp )
|
||||
echo 'fn main() { println!("hello"); }' > $HELLO_SRC
|
||||
rlRun "which rustc"
|
||||
rlRun "rustc -V"
|
||||
rlRun "rustc -o $HELLO_BIN $HELLO_SRC"
|
||||
rlRun "$HELLO_BIN"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
63
tests/Sanity/build-stratisd/Makefile
Normal file
63
tests/Sanity/build-stratisd/Makefile
Normal file
@ -0,0 +1,63 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/rust/Sanity/build-stratisd
|
||||
# Description: rpmbuild stratisd
|
||||
# Author: Edjunior Machado <emachado@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/rust/Sanity/build-stratisd
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Edjunior Machado <emachado@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: rpmbuild stratisd" >> $(METADATA)
|
||||
@echo "Type: Sanity" >> $(METADATA)
|
||||
@echo "TestTime: 1h" >> $(METADATA)
|
||||
@echo "RunFor: rust" >> $(METADATA)
|
||||
@echo "Requires: rust rpm-build yum-utils stratisd" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Releases: RHEL8 RHEL9" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
3
tests/Sanity/build-stratisd/PURPOSE
Normal file
3
tests/Sanity/build-stratisd/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
||||
PURPOSE of /tools/rust/Sanity/build-stratisd
|
||||
Description: rpmbuild stratisd
|
||||
Author: Edjunior Machado <emachado@redhat.com>
|
17
tests/Sanity/build-stratisd/main.fmf
Normal file
17
tests/Sanity/build-stratisd/main.fmf
Normal file
@ -0,0 +1,17 @@
|
||||
summary: rpmbuild stratisd
|
||||
description:
|
||||
- 'Ensure that rust does not break stratisd rpmbuild'
|
||||
contact:
|
||||
- Jesus Checa Hidalgo <jcheca@redhat.com>
|
||||
component:
|
||||
- rust
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- rust
|
||||
- rpm-build
|
||||
- yum-utils
|
||||
- stratisd
|
||||
duration: 1h
|
||||
extra-summary: /tools/rust/Sanity/build-stratisd
|
||||
extra-task: /tools/rust/Sanity/build-stratisd
|
65
tests/Sanity/build-stratisd/runtest.sh
Executable file
65
tests/Sanity/build-stratisd/runtest.sh
Executable file
@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/rust/Sanity/build-stratisd
|
||||
# Description: rpmbuild stratisd
|
||||
# Author: Edjunior Machado <emachado@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="$(rpm -qf $(which rustc))"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE || rlDie "rustc not found. Aborting testcase..."
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
PKG_TO_BUILD=stratisd
|
||||
rlPhaseStart FAIL ${PKG_TO_BUILD}FetchSrcAndInstallBuildDeps
|
||||
if ! rlCheckRpm $PKG_TO_BUILD; then
|
||||
rlRun "yum install -y $PKG_TO_BUILD"
|
||||
rlAssertRpm $PKG_TO_BUILD
|
||||
fi
|
||||
rlFetchSrcForInstalled $PKG_TO_BUILD
|
||||
rlRun SRPM=$(ls -1 ${PKG_TO_BUILD}*src.rpm)
|
||||
rlRun "rpm -ivh $SRPM"
|
||||
rlRun SPECDIR="$(rpm -E '%{_specdir}')"
|
||||
|
||||
rlRun "yum-builddep -y ${SRPM}"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
set -o pipefail
|
||||
rlRun "rpmbuild -bb ${SPECDIR}/${PKG_TO_BUILD}.spec |& tee ${SRPM}_rpmbuild.log"
|
||||
rlFileSubmit "${SRPM}_rpmbuild.log"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
65
tests/Sanity/rpmbuild-librsvg2/Makefile
Normal file
65
tests/Sanity/rpmbuild-librsvg2/Makefile
Normal file
@ -0,0 +1,65 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/rust/Sanity/rpmbuild-librsvg2
|
||||
# Description: rpmbuild librsvg2
|
||||
# Author: Edjunior Machado <emachado@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/rust/Sanity/rpmbuild-librsvg2
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Edjunior Machado <emachado@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: rpmbuild librsvg2" >> $(METADATA)
|
||||
@echo "Type: Sanity" >> $(METADATA)
|
||||
@echo "TestTime: 1h" >> $(METADATA)
|
||||
@echo "RunFor: rust" >> $(METADATA)
|
||||
# Due to bz1980717 librsvg2 requires git to build the srpm, but it's missing
|
||||
# from the BuildRequires
|
||||
@echo "Requires: rust rpm-build yum-utils librsvg2 git" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Releases: RHEL8 RHEL9" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
3
tests/Sanity/rpmbuild-librsvg2/PURPOSE
Normal file
3
tests/Sanity/rpmbuild-librsvg2/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
||||
PURPOSE of /tools/rust/Sanity/rpmbuild-librsvg2
|
||||
Description: rpmbuild librsvg2
|
||||
Author: Edjunior Machado <emachado@redhat.com>
|
18
tests/Sanity/rpmbuild-librsvg2/main.fmf
Normal file
18
tests/Sanity/rpmbuild-librsvg2/main.fmf
Normal file
@ -0,0 +1,18 @@
|
||||
summary: rpmbuild librsvg2
|
||||
description:
|
||||
- 'Ensure that rust does not break librsvg2 rpmbuild'
|
||||
contact:
|
||||
- Jesus Checa Hidalgo <jcheca@redhat.com>
|
||||
component:
|
||||
- rust
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- rust
|
||||
- rpm-build
|
||||
- yum-utils
|
||||
- librsvg2
|
||||
- git
|
||||
duration: 1h
|
||||
extra-summary: /tools/rust/Sanity/rpmbuild-librsvg2
|
||||
extra-task: /tools/rust/Sanity/rpmbuild-librsvg2
|
68
tests/Sanity/rpmbuild-librsvg2/runtest.sh
Executable file
68
tests/Sanity/rpmbuild-librsvg2/runtest.sh
Executable file
@ -0,0 +1,68 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/rust/Sanity/rpmbuild-librsvg2
|
||||
# Description: rpmbuild librsvg2
|
||||
# Author: Edjunior Machado <emachado@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="$(rpm -qf $(which rustc))"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE || rlDie "rustc not found. Aborting testcase..."
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
PKG_TO_BUILD=librsvg2
|
||||
rlPhaseStart FAIL ${PKG_TO_BUILD}FetchSrcAndInstallBuildDeps
|
||||
if ! rlCheckRpm $PKG_TO_BUILD; then
|
||||
rlRun "yum install -y $PKG_TO_BUILD ${YUM_SWITCHES}"
|
||||
rlAssertRpm $PKG_TO_BUILD
|
||||
fi
|
||||
rlFetchSrcForInstalled $PKG_TO_BUILD
|
||||
rlRun SRPM=$(ls -1 ${PKG_TO_BUILD}*src.rpm)
|
||||
rlRun "rpm -ivh $SRPM"
|
||||
rlRun SPECDIR="$(rpm -E '%{_specdir}')"
|
||||
|
||||
# librsvg2 contains dynamic dependencies. builddep needs to be run
|
||||
# from the srpm (not the spec file) to be able to generate them:
|
||||
# https://fedoraproject.org/wiki/Changes/DynamicBuildRequires#rpmbuild
|
||||
rlRun "yum-builddep -y ${SRPM} ${YUM_SWITCHES}"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
set -o pipefail
|
||||
rlRun "rpmbuild -bb ${SPECDIR}/${PKG_TO_BUILD}.spec |& tee ${SRPM}_rpmbuild.log"
|
||||
rlFileSubmit "${SRPM}_rpmbuild.log"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
64
tests/Sanity/rust-wasm-smoke-test/Makefile
Normal file
64
tests/Sanity/rust-wasm-smoke-test/Makefile
Normal file
@ -0,0 +1,64 @@
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/rust/Sanity/rust-wasm-smoke-test
|
||||
# Description: Test that the rust wasm target is enabled and can compile correctly
|
||||
# Author: Jesus Checa <jcheca@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/rust/Sanity/rust-wasm-smoke-test
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE lib.rs test.js
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Jesus Checa <jcheca@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Test that the rust wasm target is enabled and can compile correctly" >> $(METADATA)
|
||||
@echo "Type: Sanity" >> $(METADATA)
|
||||
@echo "TestTime: 5m" >> $(METADATA)
|
||||
@echo "RunFor: rust" >> $(METADATA)
|
||||
@echo "Requires: rust rust-std-static-wasm32-unknown-unknown nodejs" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2+" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
@echo "Releases: -RHEL4 -RHELClient5 -RHELServer5 -RHEL7" >> $(METADATA)
|
||||
@echo "Architectures: aarch64 ppc64le x86_64" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
3
tests/Sanity/rust-wasm-smoke-test/PURPOSE
Normal file
3
tests/Sanity/rust-wasm-smoke-test/PURPOSE
Normal file
@ -0,0 +1,3 @@
|
||||
PURPOSE of /tools/rust/Sanity/rust-wasm-smoke-test
|
||||
Description: Test that the rust wasm target is enabled and can compile correctly
|
||||
Author: Jesus Checa <jcheca@redhat.com>
|
12
tests/Sanity/rust-wasm-smoke-test/lib.rs
Normal file
12
tests/Sanity/rust-wasm-smoke-test/lib.rs
Normal file
@ -0,0 +1,12 @@
|
||||
#[no_mangle]
|
||||
pub fn fib(index: u32) -> u32 {
|
||||
let mut nminus2;
|
||||
let mut nminus1 = 1;
|
||||
let mut n = 0;
|
||||
for _ in 0..index {
|
||||
nminus2 = nminus1;
|
||||
nminus1 = n;
|
||||
n = nminus2 + nminus1;
|
||||
}
|
||||
n
|
||||
}
|
15
tests/Sanity/rust-wasm-smoke-test/main.fmf
Normal file
15
tests/Sanity/rust-wasm-smoke-test/main.fmf
Normal file
@ -0,0 +1,15 @@
|
||||
summary: Test that the rust wasm target is enabled and can compile correctly
|
||||
description: ''
|
||||
contact:
|
||||
- Jesus Checa <jcheca@redhat.com>
|
||||
component:
|
||||
- rust
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- rust
|
||||
- rust-std-static-wasm32-unknown-unknown
|
||||
- nodejs
|
||||
duration: 5m
|
||||
extra-summary: /tools/rust/Sanity/rust-wasm-smoke-test
|
||||
extra-task: /tools/rust/Sanity/rust-wasm-smoke-test
|
53
tests/Sanity/rust-wasm-smoke-test/runtest.sh
Executable file
53
tests/Sanity/rust-wasm-smoke-test/runtest.sh
Executable file
@ -0,0 +1,53 @@
|
||||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/rust/Sanity/rust-wasm-smoke-test
|
||||
# Description: Test that the rust wasm target is enabled and can compile correctly
|
||||
# Author: Jesus Checa <jcheca@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGES="$(rpm -qf $(which rustc)) rust-std-static-wasm32-unknown-unknown"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm --all
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp lib.rs $TmpDir"
|
||||
rlRun "cp test.js $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "rustc --target wasm32-unknown-unknown --crate-type=cdylib lib.rs -o fib.wasm" 0 "Building WASM binary"
|
||||
rlRun "node test.js" 0 "Testing WASM binary"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
28
tests/Sanity/rust-wasm-smoke-test/test.js
Normal file
28
tests/Sanity/rust-wasm-smoke-test/test.js
Normal file
@ -0,0 +1,28 @@
|
||||
function js_fibonacci(index) {
|
||||
let nminus2 = 0;
|
||||
let nminus1 = 1;
|
||||
let n = 0;
|
||||
for(let i = 0; i < index; ++i) {
|
||||
nminus2 = nminus1;
|
||||
nminus1 = n;
|
||||
n = nminus1 + nminus2;
|
||||
}
|
||||
return n;
|
||||
}
|
||||
|
||||
const fs = require('fs');
|
||||
const buf = fs.readFileSync('./fib.wasm');
|
||||
const lib = WebAssembly.instantiate(new Uint8Array(buf)).
|
||||
then(res => {
|
||||
var fib = res.instance.exports.fib;
|
||||
for (var i=1; i<=10; i++) {
|
||||
if(fib(i) != js_fibonacci(i)){
|
||||
console.log("Mismatch between wasm and JS functions");
|
||||
process.exit(1);
|
||||
}
|
||||
}
|
||||
}).catch(e => {
|
||||
console.log(e);
|
||||
process.exit(1);
|
||||
}
|
||||
);
|
Loading…
Reference in New Issue
Block a user