summary refs log tree commit diff
path: root/gnu/packages/rust.scm
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2018-04-18 09:40:06 +0300
committerEfraim Flashner <efraim@flashner.co.il>2018-04-18 09:49:57 +0300
commit94b22905ab4ebc8de4c42082df51de96bb824dd7 (patch)
tree0f2a5ba9367a8e8a4dfee1c43a4d58651c1b7de8 /gnu/packages/rust.scm
parent9d39c300cf6e0d8d6bf20b26ce00a4bab5e9d04c (diff)
downloadguix-94b22905ab4ebc8de4c42082df51de96bb824dd7.tar.gz
gnu: rust: Skip test_loading_cosine test.
* gnu/packages/rust.scm (rust-1.19.0)[arguments]: Modify custom
'patch-tests phase to skip test_loading_cosine test.
(rust-1.24.0)[arguments]: Modify inherited 'patch-tests to point to
updated code locations.
Diffstat (limited to 'gnu/packages/rust.scm')
-rw-r--r--gnu/packages/rust.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm
index 9ba2c42c68..0a9d5bb382 100644
--- a/gnu/packages/rust.scm
+++ b/gnu/packages/rust.scm
@@ -192,6 +192,10 @@ in turn be used to build the final Rust.")
                ;; Our ld-wrapper cannot process non-UTF8 bytes in LIBRARY_PATH.
                ;; <https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00193.html>
                (delete-file-recursively "src/test/run-make/linker-output-non-utf8")
+               (substitute* "src/librustc_back/dynamic_lib.rs"
+                 ;; This test is known to fail on aarch64 and powerpc64le:
+                 ;; https://github.com/rust-lang/rust/issues/45410
+                 (("fn test_loading_cosine") "#[ignore]\nfn test_loading_cosine"))
                #t)))
          (add-after 'patch-source-shebangs 'patch-cargo-checksums
            (lambda* _
@@ -468,6 +472,31 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\"
        (substitute-keyword-arguments (package-arguments base-rust)
          ((#:phases phases)
           `(modify-phases ,phases
+             (replace 'patch-tests
+               (lambda* (#:key inputs #:allow-other-keys)
+                 (let ((bash (assoc-ref inputs "bash")))
+                   (substitute* "src/libstd/process.rs"
+                     ;; The newline is intentional.
+                     ;; There's a line length "tidy" check in Rust which would
+                     ;; fail otherwise.
+                     (("\"/bin/sh\"") (string-append "\n\"" bash "/bin/sh\"")))
+                   (substitute* "src/libstd/net/tcp.rs"
+                     ;; There is no network in build environment
+                     (("fn connect_timeout_unroutable")
+                      "#[ignore]\nfn connect_timeout_unroutable"))
+                   ;; <https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00222.html>
+                   (substitute* "src/libstd/sys/unix/process/process_common.rs"
+                    (("fn test_process_mask") "#[allow(unused_attributes)]
+    #[ignore]
+    fn test_process_mask"))
+                   ;; Our ld-wrapper cannot process non-UTF8 bytes in LIBRARY_PATH.
+                   ;; <https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00193.html>
+                   (delete-file-recursively "src/test/run-make/linker-output-non-utf8")
+                   (substitute* "src/librustc_metadata/dynamic_lib.rs"
+                     ;; This test is known to fail on aarch64 and powerpc64le:
+                     ;; https://github.com/rust-lang/rust/issues/45410
+                     (("fn test_loading_cosine") "#[ignore]\nfn test_loading_cosine"))
+                   #t)))
              (delete 'fix-mtime-bug))))))))
 
 (define-public rust