Subject: [bug#69634] [PATCH] gnu: hypre: don't run test phase when tests? is false

From: Lars Bilke <[email-masked]>
Date: Fri, 08 Mar 2024 12:08:11 +0100

Without this patch it is not possible to build hypre with --tune on
machines which do not support the architecture to optimize for. The
check phase no honors the tests? property.

Change-Id: I475fabd7d9f73ed320b97a4767830d82190c2b15
---
 gnu/packages/maths.scm | 25 +++++++++++++++----------
 1 file changed, 15 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 1f61ee0583..6b3a5e2e55 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -7135,16 +7135,21 @@ (define-public hypre
            (lambda _
              (invoke "make" "-C" "docs")))
          (replace 'check
-           (lambda _
-             (setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/hypre/lib"))
-             (setenv "PATH" (string-append "." ":" (getenv "PATH")))
-             (invoke "make" "check" "CHECKRUN=")
-             (for-each (lambda (filename)
-                         (let ((size (stat:size (stat filename))))
-                           (when (positive? size)
-                             (error (format #f "~a size ~d; error indication~%"
-                                            filename size)))))
-                       (find-files "test" ".*\\.err$"))))
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (setenv "LD_LIBRARY_PATH"
+                       (string-append (getcwd) "/hypre/lib"))
+               (setenv "PATH"
+                       (string-append "." ":"
+                                      (getenv "PATH")))
+               (invoke "make" "check" "CHECKRUN=")
+               (for-each (lambda (filename)
+                           (let ((size (stat:size (stat filename))))
+                             (when (positive? size)
+                               (error (format #f
+                                       "~a size ~d; error indication~%"
+                                       filename size)))))
+                         (find-files "test" ".*\\.err$")))))
          (add-after 'install 'install-docs
            (lambda* (#:key outputs #:allow-other-keys)
              ;; Custom install because docs/Makefile doesn't honor ${docdir}.

base-commit: 75bad75367fcf2c289fae3b40dbcc850f92177be
-- 
2.43.0