From d44837f66c682e7111328adbfa34ea0cd6dfb6f6 Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Tue, 1 Sep 2020 00:29:38 +0100 Subject: [PATCH] wip --- .../rust-1.26-fix-simd-doctest-non-x86.patch | 25 ++++++++++++++ .../rust-1.27-fix-simd-doctest-non-x86.patch | 31 +++++++++++++++++ gnu/packages/rust.scm | 33 ++++++++++++++++++- 3 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/rust-1.26-fix-simd-doctest-non-x86.patch create mode 100644 gnu/packages/patches/rust-1.27-fix-simd-doctest-non-x86.patch diff --git a/gnu/packages/patches/rust-1.26-fix-simd-doctest-non-x86.patch b/gnu/packages/patches/rust-1.26-fix-simd-doctest-non-x86.patch new file mode 100644 index 0000000000..6d11fc9f12 --- /dev/null +++ b/gnu/packages/patches/rust-1.26-fix-simd-doctest-non-x86.patch @@ -0,0 +1,25 @@ +From: QuietMisdreavus +Backported from https://github.com/rust-lang/stdarch/pull/466/commits/072a51187df3ed7bb9f1f200be65ecef33b88c76 + +diff --git a/src/stdsimd/coresimd/mod.rs b/src/stdsimd/coresimd/mod.rs +index c35eb418..939417ba 100644 +--- a/src/stdsimd/coresimd/mod.rs ++++ b/src/stdsimd/coresimd/mod.rs +@@ -86,13 +86,17 @@ pub mod arch { + mod simd_llvm; + + #[cfg(any(target_arch = "x86", target_arch = "x86_64", dox))] ++#[doc(cfg(any(target_arch = "x86", target_arch = "x86_64")))] + mod x86; + #[cfg(any(target_arch = "x86_64", dox))] ++#[doc(cfg(target_arch = "x86_64"))] + mod x86_64; + + #[cfg(any(target_arch = "arm", target_arch = "aarch64", dox))] ++#[doc(cfg(any(target_arch = "arm", target_arch = "aarch64")))] + mod arm; + #[cfg(any(target_arch = "aarch64", dox))] ++#[doc(cfg(target_arch = "aarch64"))] + mod aarch64; + #[cfg(target_arch = "wasm32")] + mod wasm32; diff --git a/gnu/packages/patches/rust-1.27-fix-simd-doctest-non-x86.patch b/gnu/packages/patches/rust-1.27-fix-simd-doctest-non-x86.patch new file mode 100644 index 0000000000..0f67c3bee6 --- /dev/null +++ b/gnu/packages/patches/rust-1.27-fix-simd-doctest-non-x86.patch @@ -0,0 +1,31 @@ +From: QuietMisdreavus +Backported from https://github.com/rust-lang/stdarch/pull/466/commits/072a51187df3ed7bb9f1f200be65ecef33b88c76 + +diff --git a/src/stdsimd/coresimd/mod.rs b/src/stdsimd/coresimd/mod.rs +index 9cf63d14..27c91d8b 100644 +--- a/src/stdsimd/coresimd/mod.rs ++++ b/src/stdsimd/coresimd/mod.rs +@@ -121,18 +121,22 @@ pub mod arch { + mod simd_llvm; + + #[cfg(any(target_arch = "x86", target_arch = "x86_64", dox))] ++#[doc(cfg(any(target_arch = "x86", target_arch = "x86_64")))] + mod x86; + #[cfg(any(target_arch = "x86_64", dox))] ++#[doc(cfg(target_arch = "x86_64"))] + mod x86_64; + + #[cfg(any(target_arch = "aarch64", dox))] ++#[doc(cfg(target_arch = "aarch64"))] + mod aarch64; + #[cfg(any(target_arch = "arm", target_arch = "aarch64", dox))] ++#[doc(cfg(any(target_arch = "arm", target_arch = "aarch64")))] + mod arm; + #[cfg(target_arch = "wasm32")] + mod wasm32; + +-#[cfg(any(target_arch = "mips", target_arch = "mips64", dox))] ++#[doc(cfg(any(target_arch = "mips", target_arch = "mips64")))] + mod mips; + + mod nvptx; diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 05404de1d8..6f4ba0eb18 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -682,6 +682,11 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ;; XXX: Revisit this when we use gcc 6. (substitute* "src/binaryen/CMakeLists.txt" (("ADD_COMPILE_FLAG\\(\\\"-march=native\\\"\\)") "")) + #t)) + (add-after 'unpack 'remove-failing-test-aarch64 + (lambda _ + (if (string-prefix? "aarch64" ,(%current-system)) + (delete-file "src/test/compile-fail/required-lang-item.rs")) #t))))))))) (define-public rust-1.24 @@ -695,6 +700,11 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ((#:phases phases) `(modify-phases ,phases (delete 'use-readelf-for-tests) + (replace 'remove-failing-test-aarch64 + (lambda* _ + (if (string-prefix? "aarch64" ,(%current-system)) + (delete-file "src/test/run-pass/mir_heavy_promoted.rs")) + #t)) (replace 'patch-aarch64-test (lambda* _ (substitute* "src/librustc_metadata/dynamic_lib.rs" @@ -732,6 +742,11 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ;; This test wants to update the crate index. (("fn no_index_update") "#[ignore]\nfn no_index_update")) #t)) + (replace 'remove-failing-test-aarch64 + (lambda* _ + (if (string-prefix? "aarch64" ,(%current-system)) + (delete-file "src/test/debuginfo/pretty-uninitialized-vec.rs")) + #t)) (replace 'patch-aarch64-test (lambda _ (substitute* "src/librustc_metadata/dynamic_lib.rs" @@ -757,7 +772,9 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (inherit (package-source base-rust)) (patches (search-patches "rust-coresimd-doctest.patch" - "rust-1.25-accept-more-detailed-gdb-lines.patch")))) + "rust-1.25-accept-more-detailed-gdb-lines.patch" + ;; Fix for https://github.com/rust-lang/rust/issues/50988. + "rust-1.26-fix-simd-doctest-non-x86.patch")))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:phases phases) @@ -780,6 +797,14 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ;; (delete-file-recursively "src/test/run-make-fulldeps/linker-output-non-utf8") #t)) + (replace 'remove-failing-test-aarch64 + (lambda* _ + (if (string-prefix? "aarch64" ,(%current-system)) + (begin + (delete-file "src/test/compile-fail/dupe-symbols-7.rs") + (delete-file "src/test/compile-fail/issue-15919.rs") + (delete-file "src/test/debuginfo/pretty-uninitialized-vec.rs"))) + #t)) (replace 'patch-cargo-tests (lambda* _ (substitute* "src/tools/cargo/tests/testsuite/build.rs" @@ -828,6 +853,8 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (patches (search-patches "rust-coresimd-doctest.patch" "rust-bootstrap-stage0-test.patch" "rust-1.25-accept-more-detailed-gdb-lines.patch" + ;; Fix for https://github.com/rust-lang/rust/issues/50988. + "rust-1.27-fix-simd-doctest-non-x86.patch" "rust-reproducible-builds.patch")))) (native-inputs ;; FIXME: Rust 1.27 and some later versions require GDB 8.2 specifically. @@ -864,6 +891,8 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (patches (search-patches "rust-coresimd-doctest.patch" "rust-bootstrap-stage0-test.patch" "rust-1.25-accept-more-detailed-gdb-lines.patch" + ;; Fix for https://github.com/rust-lang/rust/issues/50988. + "rust-1.27-fix-simd-doctest-non-x86.patch" "rust-reproducible-builds.patch")))) (inputs ;; Use LLVM 6.0 @@ -898,6 +927,8 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (origin (inherit (package-source base-rust)) (patches (search-patches "rust-1.25-accept-more-detailed-gdb-lines.patch" + ;; Fix for https://github.com/rust-lang/rust/issues/50988. + "rust-1.27-fix-simd-doctest-non-x86.patch" "rust-reproducible-builds.patch"))))))) (define-public rust-1.30 -- 2.28.0