guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

06/13: gnu: dune-istl: Update to 2.7.1.


From: guix-commits
Subject: 06/13: gnu: dune-istl: Update to 2.7.1.
Date: Thu, 20 Jan 2022 09:29:40 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit 8159cd08d2e6cfe6f0974e52f8a37ba19a623f13
Author: Felix Gruber <felgru@posteo.net>
AuthorDate: Sat Dec 18 13:36:54 2021 +0000

    gnu: dune-istl: Update to 2.7.1.
    
    * gnu/packages/maths.scm (dune-istl): Update to 2.7.1.
      [arguments]: Parallelize build-tests phase.
      [source](patches) Remove patch that is no longer needed.
    * gnu/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch: Remove file.
    * gnu/local.mk (dist_patch_DATA): Remove above patch.
    
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 gnu/local.mk                                       |  1 -
 gnu/packages/maths.scm                             | 13 ++--
 .../patches/dune-istl-2.7-fix-non-mpi-tests.patch  | 82 ----------------------
 3 files changed, 8 insertions(+), 88 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index f9e24bdbe5..03f6d90b9e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1002,7 +1002,6 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
   %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch     \
   %D%/packages/patches/dstat-skip-devices-without-io.patch     \
-  %D%/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch   \
   %D%/packages/patches/dvd+rw-tools-add-include.patch          \
   %D%/packages/patches/dynaconf-unvendor-deps.patch            \
   %D%/packages/patches/ecl-16-format-directive-limit.patch     \
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 92dabdba8e..8dc1c958e4 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -6526,7 +6526,7 @@ This package contains the basic DUNE grid classes.")
 (define-public dune-istl
   (package
     (name "dune-istl")
-    (version "2.7.0")
+    (version "2.7.1")
     (source
      (origin
        (method url-fetch)
@@ -6534,8 +6534,7 @@ This package contains the basic DUNE grid classes.")
                            version "/dune-istl-" version ".tar.gz"))
        (sha256
         (base32
-         "0gl3wgz5rs6sb4m83440ny45sbx7z7lnbi3gx6r9nm3rvy5j33f9"))
-       (patches (search-patches "dune-istl-2.7-fix-non-mpi-tests.patch"))))
+         "1cy69s1266hvnh8blznlvvkrf8i2g640rc3mf7kp872wgvdz4nb9"))))
     (build-system cmake-build-system)
     (arguments
      `(#:phases
@@ -6553,8 +6552,12 @@ This package contains the basic DUNE grid classes.")
                         ":"))
                #t)))
          (add-after 'build 'build-tests
-           (lambda* (#:key make-flags #:allow-other-keys)
-             (apply invoke "make" "build_tests" make-flags))))))
+           (lambda* (#:key make-flags parallel-build? #:allow-other-keys)
+             (apply invoke "make" "build_tests"
+                    `(,@(if parallel-build?
+                            `("-j" ,(number->string (parallel-job-count)))
+                            '())
+                      ,@make-flags)))))))
     (inputs
      (list dune-common
            ;; Optional
diff --git a/gnu/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch 
b/gnu/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch
deleted file mode 100644
index ee2bb8f676..0000000000
--- a/gnu/packages/patches/dune-istl-2.7-fix-non-mpi-tests.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-Fix build of dune-istl's tests
-
-Patch copied from upstream source repository:
-
-https://gitlab.dune-project.org/core/dune-istl/-/commit/9eee3462df5a64881c08574f9291e76db398de0a
-
-From 9eee3462df5a64881c08574f9291e76db398de0a Mon Sep 17 00:00:00 2001
-From: Felix Gruber <felgru@posteo.net>
-Date: Sat, 4 Apr 2020 15:27:09 +0200
-Subject: [PATCH] make tests succeed when MPI is disabled
-
-When MPI is not available or explicitly disabled with the CMake build
-option -DCMAKE_IDSABLE_FIND_PACKAGE_MPI=TRUE, some tests were unable to
-build.
-
-The tests created from solverfactorytest.cc.in and part of
-scalarproductstest.cc use Dune::OwnerOverlapCopyCommunication which is
-defined behind `#if HAVE_MPI` and is thus not available in a non-MPI
-build. I've thus disabled those tests when MPI is unavailable.
-
-The matrixmarkettest did not work without MPI, as it contained some code
-using the wrong template parameters when HAVE_MPI was not set. Those
-template paramters have been fixed now.
-
-I've confirmed, that after my changes `make build_tests` succeeds to
-build all tests and that those tests run without failure.
----
- dune/istl/test/CMakeLists.txt        | 3 ++-
- dune/istl/test/matrixmarkettest.cc   | 2 +-
- dune/istl/test/scalarproductstest.cc | 2 ++
- 3 files changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/dune/istl/test/CMakeLists.txt b/dune/istl/test/CMakeLists.txt
-index ffd87969..2c7b2387 100644
---- a/dune/istl/test/CMakeLists.txt
-+++ b/dune/istl/test/CMakeLists.txt
-@@ -77,7 +77,8 @@ set(DUNE_TEST_FACTORY_BLOCK_SIZES
- function(add_factory_test BLOCK)
-   STRING(REGEX REPLACE "[^a-zA-Z0-9]" "" BLOCK_CLEAN ${BLOCK})
-   configure_file(solverfactorytest.cc.in solverfactorytest_${BLOCK_CLEAN}.cc)
--  dune_add_test(SOURCES 
${CMAKE_CURRENT_BINARY_DIR}/solverfactorytest_${BLOCK_CLEAN}.cc)
-+  dune_add_test(SOURCES 
${CMAKE_CURRENT_BINARY_DIR}/solverfactorytest_${BLOCK_CLEAN}.cc
-+                CMAKE_GUARD HAVE_MPI)
- endfunction(add_factory_test)
-
- foreach(FIELD_TYPE ${DUNE_TEST_FACTORY_FIELD_TYPES})
-diff --git a/dune/istl/test/matrixmarkettest.cc 
b/dune/istl/test/matrixmarkettest.cc
-index b335afe6..ce30e8ae 100644
---- a/dune/istl/test/matrixmarkettest.cc
-+++ b/dune/istl/test/matrixmarkettest.cc
-@@ -52,7 +52,7 @@ int testMatrixMarket(int N)
-   storeMatrixMarket(mat, std::string("testmat"), comm);
-   storeMatrixMarket(bv, std::string("testvec"), comm, false);
- #else
--  typedef Dune::MatrixAdapter<BCRSMat,BVector,BVector> Operator;
-+  typedef Dune::MatrixAdapter<Matrix,Vector,Vector> Operator;
-   Operator op(mat);
-   op.apply(bv, cv);
-
-diff --git a/dune/istl/test/scalarproductstest.cc 
b/dune/istl/test/scalarproductstest.cc
-index 452b1d89..f46ce2a9 100644
---- a/dune/istl/test/scalarproductstest.cc
-+++ b/dune/istl/test/scalarproductstest.cc
-@@ -115,6 +115,7 @@ int main(int argc, char** argv)
-     scalarProductTest<ScalarProduct, Vector>(scalarProduct,numBlocks);
-   }
-
-+#if HAVE_MPI
-   // Test the ParallelScalarProduct class
-   {
-     using Vector = BlockVector<FieldVector<double,BlockSize> >;
-@@ -139,6 +140,7 @@ int main(int argc, char** argv)
-     ScalarProduct scalarProduct(communicator,SolverCategory::nonoverlapping);
-     scalarProductTest<ScalarProduct, Vector>(scalarProduct,numBlocks);
-   }
-+#endif
-
-   return t.exit();
- }
---
-2.25.1
-



reply via email to

[Prev in Thread] Current Thread [Next in Thread]