GNU bug report logs - #56760
[PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0.

Previous Next

Package: guix-patches;

Reported by: "Paul A. Patience" <paul <at> apatience.com>

Date: Mon, 25 Jul 2022 12:31:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 56760 in the body.
You can then email your comments to 56760 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 12:31:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Paul A. Patience" <paul <at> apatience.com>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Mon, 25 Jul 2022 12:31:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: guix-patches <at> gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0.
Date: Mon, 25 Jul 2022 12:30:15 +0000
The first patch fixes the failing Trilinos build, which means that
dealii-openmpi hasn't been buildable for some time.

Paul A. Patience (6):
  gnu: trilinos-for-dealii-openmpi: Fix build.
  gnu: dealii: Use G-expressions.
  gnu: dealii: Update to 9.4.0.
  gnu: trilinos-for-dealii-openmpi: Remove input labels.
  gnu: trilinos-for-dealii-openmpi: Use G-expressions.
  gnu: trilinos-for-dealii-openmpi: Update to 13.4.0.

 gnu/packages/maths.scm | 269 ++++++++++++++++++++---------------------
 1 file changed, 132 insertions(+), 137 deletions(-)

--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 12:34:01 GMT) Full text and rfc822 format available.

Message #8 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build.
Date: Mon, 25 Jul 2022 12:33:07 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi)[native-inputs]:
Add gcc-7 to fix the failing build with newer versions of gcc.
---
 gnu/packages/maths.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 458bffee61..948776e9d4 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5153,7 +5153,10 @@ (define trilinos-for-dealii-openmpi
         (base32 "0fnwlhzsh85qj38cq3igbs8nm1b2jdgr2z734sapmyyzsy21mkgp"))))
     (build-system cmake-build-system)
     (native-inputs
-     `(("gfortran" ,gfortran)
+     `(;; The build fails with the current gcc.
+       ;; Use the version from when Trilinos was added.
+       ("gcc" ,gcc-7)
+       ("gfortran" ,gfortran)
        ;; Trilinos's repository contains several C-shell scripts, but adding
        ;; tcsh to the native inputs does not result in the check phase running
        ;; any more tests than without it (nor is tcsh required to build
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 12:34:02 GMT) Full text and rfc822 format available.

Message #11 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH 2/6] gnu: dealii: Use G-expressions.
Date: Mon, 25 Jul 2022 12:33:12 +0000
* gnu/packages/maths.scm (dealii)[snippet, arguments]: Use
G-expressions.
(dealii-openmpi)[arguments]: Same.
---
 gnu/packages/maths.scm | 60 ++++++++++++++++++++++--------------------
 1 file changed, 32 insertions(+), 28 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 948776e9d4..7d4049c689 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5287,7 +5287,7 @@ (define-public dealii
        (modules '((guix build utils)))
        (snippet
         ;; Remove bundled boost, muparser, TBB and UMFPACK.
-        '(delete-file-recursively "bundled"))))
+        #~(delete-file-recursively "bundled"))))
     (build-system cmake-build-system)
     (outputs '("out" "doc"))
     (native-inputs
@@ -5315,32 +5315,36 @@ (define-public dealii
            sundials-5
            tbb))
     (arguments
-     `(#:build-type "DebugRelease" ; Supports only Debug, Release and DebugRelease.
-       ;; The tests take too long and must be explicitly enabled with "make
-       ;; setup_tests".
-       ;; See https://www.dealii.org/developer/developers/testsuite.html.
-       ;; (They can also be run for an already installed deal.II.)
-       #:tests? #f
-       #:configure-flags
-       (let ((doc (string-append (assoc-ref %outputs "doc")
-                                 "/share/doc/" ,name "-" ,version)))
-         `("-DDEAL_II_COMPONENT_DOCUMENTATION=ON"
-           ,(string-append "-DDEAL_II_DOCREADME_RELDIR=" doc)
-           ,(string-append "-DDEAL_II_DOCHTML_RELDIR=" doc "/html")
-           ;; Don't compile the examples because the source and CMakeLists.txt
-           ;; are installed anyway, allowing users to do so for themselves.
-           "-DDEAL_II_COMPILE_EXAMPLES=OFF"
-           ,(string-append "-DDEAL_II_EXAMPLES_RELDIR=" doc "/examples")))
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'install 'remove-build-logs
-           ;; These build logs leak the name of the build directory by storing
-           ;; the values of CMAKE_SOURCE_DIR and CMAKE_BINARY_DIR.
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let ((doc (string-append (assoc-ref outputs "doc")
-                                       "/share/doc/" ,name "-" ,version)))
-               (for-each delete-file (map (lambda (f) (string-append doc "/" f))
-                                          '("detailed.log" "summary.log")))))))))
+     (list #:build-type "DebugRelease"  ; Only Debug, Release or DebugRelease.
+           ;; The tests take too long and must be explicitly enabled with
+           ;; "make setup_tests".
+           ;; See https://www.dealii.org/developer/developers/testsuite.html.
+           ;; (They can also be run for an already installed deal.II.)
+           #:tests? #f
+           #:configure-flags
+           #~(let ((doc (string-append #$output:doc "/share/doc/"
+                                       #$name "-" #$version)))
+               (list "-DDEAL_II_COMPONENT_DOCUMENTATION=ON"
+                     (string-append "-DDEAL_II_DOCREADME_RELDIR=" doc)
+                     (string-append "-DDEAL_II_DOCHTML_RELDIR=" doc "/html")
+                     ;; Don't compile the examples because the source and
+                     ;; CMakeLists.txt are installed anyway, allowing users to
+                     ;; do so for themselves.
+                     "-DDEAL_II_COMPILE_EXAMPLES=OFF"
+                     (string-append "-DDEAL_II_EXAMPLES_RELDIR=" doc
+                                    "/examples")))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'install 'remove-build-logs
+                 ;; These build logs leak the name of the build directory by
+                 ;; storing the values of CMAKE_SOURCE_DIR and
+                 ;; CMAKE_BINARY_DIR.
+                 (lambda _
+                   (let ((doc (string-append #$output:doc "/share/doc/"
+                                             #$name "-" #$version)))
+                     (for-each delete-file
+                               (map (lambda (f) (string-append doc "/" f))
+                                    '("detailed.log" "summary.log")))))))))
     (home-page "https://www.dealii.org/")
     (synopsis "Finite element library")
     (description
@@ -5373,7 +5377,7 @@ (define-public dealii-openmpi
     (arguments
      (substitute-keyword-arguments (package-arguments dealii)
        ((#:configure-flags flags)
-        `(cons "-DDEAL_II_WITH_MPI=ON" ,flags))))
+        #~(cons "-DDEAL_II_WITH_MPI=ON" #$flags))))
     (synopsis "Finite element library (with MPI support)")))

 (define-public flann
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 12:34:02 GMT) Full text and rfc822 format available.

Message #14 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH 3/6] gnu: dealii: Update to 9.4.0.
Date: Mon, 25 Jul 2022 12:33:18 +0000
* gnu/packages/maths.scm (dealii): Update to 9.4.0.
[propagated-inputs]: Replace sundials-5 with sundials.
(dealii-openmpi)[propagated-inputs]: Replace sundials-openmpi-5 with
sundials-openmpi.
---
 gnu/packages/maths.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 7d4049c689..a2123d2dc8 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5276,14 +5276,14 @@ (define trilinos-for-dealii-openmpi
 (define-public dealii
   (package
     (name "dealii")
-    (version "9.3.3")
+    (version "9.4.0")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://github.com/dealii/dealii/releases/"
                            "download/v" version "/dealii-" version ".tar.gz"))
        (sha256
-        (base32 "0a8s4yxcbvzmfgv5qcg27h2ss4fcnyhrhhs35glqj59l9cbmkysx"))
+        (base32 "0v73q6f35f2yrjihaq6vh9lma07qc4cdv75nwmc3c5yrdh07g1i3"))
        (modules '((guix build utils)))
        (snippet
         ;; Remove bundled boost, muparser, TBB and UMFPACK.
@@ -5311,8 +5311,7 @@ (define-public dealii
      (list boost
            hdf5
            suitesparse                  ; For UMFPACK.
-           ;; SUNDIALS 6.0.0 and later will be supported in deal.II 9.4.0.
-           sundials-5
+           sundials
            tbb))
     (arguments
      (list #:build-type "DebugRelease"  ; Only Debug, Release or DebugRelease.
@@ -5372,7 +5371,7 @@ (define-public dealii-openmpi
                 p4est-openmpi
                 petsc-openmpi
                 slepc-openmpi
-                sundials-openmpi-5
+                sundials-openmpi
                 trilinos-for-dealii-openmpi)))
     (arguments
      (substitute-keyword-arguments (package-arguments dealii)
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 12:34:03 GMT) Full text and rfc822 format available.

Message #17 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels.
Date: Mon, 25 Jul 2022 12:33:25 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi)[native-inputs,
inputs, propagated-inputs]: Remove labels.
---
 gnu/packages/maths.scm | 53 +++++++++++++++++++++---------------------
 1 file changed, 27 insertions(+), 26 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index a2123d2dc8..27b92d369c 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5153,34 +5153,35 @@ (define trilinos-for-dealii-openmpi
         (base32 "0fnwlhzsh85qj38cq3igbs8nm1b2jdgr2z734sapmyyzsy21mkgp"))))
     (build-system cmake-build-system)
     (native-inputs
-     `(;; The build fails with the current gcc.
-       ;; Use the version from when Trilinos was added.
-       ("gcc" ,gcc-7)
-       ("gfortran" ,gfortran)
-       ;; Trilinos's repository contains several C-shell scripts, but adding
-       ;; tcsh to the native inputs does not result in the check phase running
-       ;; any more tests than without it (nor is tcsh required to build
-       ;; Trilinos).
-       ;; It seems that Trilinos has replaced its use of C-shell test scripts
-       ;; with CMake's testing facilities.
-       ;; For example,
-       ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
-       ;; states that Zoltan's C-shell test script
-       ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests now
-       ;; performed through CMake.
-       ;;
-       ;; Perl is required for some Zoltan tests and Python 2 for one ML test.
-       ;;
-       ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
-       ("perl" ,perl)
-       ("python" ,python-2)))
+     (list
+      ;; The build fails with the current gcc.
+      ;; Use the version from when Trilinos was added.
+      gcc-7
+      gfortran
+      ;; Trilinos's repository contains several C-shell scripts, but adding
+      ;; tcsh to the native inputs does not result in the check phase running
+      ;; any more tests than without it (nor is tcsh required to build
+      ;; Trilinos).
+      ;; It seems that Trilinos has replaced its use of C-shell test scripts
+      ;; with CMake's testing facilities.
+      ;; For example,
+      ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
+      ;; states that Zoltan's C-shell test script
+      ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests now
+      ;; performed through CMake.
+      ;;
+      ;; Perl is required for some Zoltan tests and Python 2 for one ML test.
+      ;;
+      ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
+      perl
+      python-2))
     (inputs
-     `(("blas" ,openblas)
-       ("lapack" ,lapack)
-       ("mumps" ,mumps-openmpi)
-       ("scalapack" ,scalapack)))
+     (list openblas
+           lapack
+           mumps-openmpi
+           scalapack))
     (propagated-inputs
-     `(("mpi" ,openmpi)))
+     (list openmpi))
     (arguments
      `(#:build-type "Release"
        #:configure-flags
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 12:34:03 GMT) Full text and rfc822 format available.

Message #20 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions.
Date: Mon, 25 Jul 2022 12:33:31 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi)[arguments]: Use
G-expressions.
<#:phases>: Remove trailing boolean.
---
 gnu/packages/maths.scm | 162 +++++++++++++++++++++--------------------
 1 file changed, 83 insertions(+), 79 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 27b92d369c..751f1b4fd8 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5183,85 +5183,89 @@ (define trilinos-for-dealii-openmpi
     (propagated-inputs
      (list openmpi))
     (arguments
-     `(#:build-type "Release"
-       #:configure-flags
-       `("-DBUILD_SHARED_LIBS=ON"
-         ;; Obtain the equivalent of RelWithDebInfo but with -O3 (the Release
-         ;; default) rather than -O2 (the RelWithDebInfo default), to conform
-         ;; to candi's trilinos.package's compilation flags, which are -g -O3.
-         "-DCMAKE_C_FLAGS=-g"
-         "-DCMAKE_CXX_FLAGS=-g"
-         "-DCMAKE_Fortran_FLAGS=-g"
-
-         ;; Trilinos libraries that deal.II can interface with.
-         "-DTrilinos_ENABLE_Amesos=ON"
-         "-DTrilinos_ENABLE_AztecOO=ON"
-         "-DTrilinos_ENABLE_Epetra=ON"
-         "-DTrilinos_ENABLE_EpetraExt=ON"
-         "-DTrilinos_ENABLE_Ifpack=ON"
-         "-DTrilinos_ENABLE_ML=ON"
-         "-DTrilinos_ENABLE_MueLu=ON"
-         "-DTrilinos_ENABLE_ROL=ON"
-         ;; Optional; required for deal.II's GridIn::read_exodusii, but
-         ;; depends on netcdf.
-         ;; Enable if and when someone needs it.
-         ;;"-DTrilinos_ENABLE_SEACAS=ON"
-         "-DTrilinos_ENABLE_Sacado=ON"
-         "-DTrilinos_ENABLE_Teuchos=ON"
-         "-DTrilinos_ENABLE_Tpetra=ON"
-         "-DTrilinos_ENABLE_Zoltan=ON"
-
-         ;; Third-party libraries (TPLs) that Trilinos can interface with.
-         "-DBLAS_LIBRARY_NAMES=openblas"
-         "-DTPL_ENABLE_MPI=ON"
-         "-DTPL_ENABLE_MUMPS=ON"
-         "-DTPL_ENABLE_SCALAPACK=ON"
-
-         ;; Enable the tests but not the examples (which are enabled by
-         ;; default when enabling tests).
-         ;; Although some examples are run as tests, they are otherwise
-         ;; unnecessary since this is a private package meant for
-         ;; dealii-openmpi.
-         ;; Besides, some MueLu and ROL examples require a lot of memory to
-         ;; compile.
-         ;;
-         ;; (For future reference, note that some ROL and SEACAS examples
-         ;; require removing gfortran from CPLUS_INCLUDE_PATH as in the
-         ;; dune-istl, dune-localfunctions and dune-alugrid packages.)
-         "-DTrilinos_ENABLE_TESTS=ON"
-         "-DTrilinos_ENABLE_EXAMPLES=OFF"
-         ;; MueLu tests require considerably more time and memory to compile
-         ;; than the rest of the tests.
-         "-DMueLu_ENABLE_TESTS=OFF"
-
-         ;; The following options were gleaned from candi's trilinos.package.
-         ;; (We do not enable the complex instantiations, which are anyway
-         ;; provided only as an option in trilinos.package, because they are
-         ;; costly in compilation time and memory usage, and disk space [1].)
-         ;;
-         ;; [1]: https://www.docs.trilinos.org/files/TrilinosBuildReference.html#enabling-float-and-complex-scalar-types
-         "-DTrilinos_ENABLE_Ifpack2=OFF"
-         "-DTeuchos_ENABLE_FLOAT=ON"
-         "-DTpetra_INST_INT_LONG=ON"
-         "-DTPL_ENABLE_Boost=OFF")
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'configure 'fix-kokkos-config
-           (lambda _
-             ;; GNU Make 4.3 accidentally leaves the backslash preceding the
-             ;; number sign in strings containing a literal backslash–number
-             ;; sign (\#) [1, 2].
-             ;; This is still an issue in Trilinos 13.0.1, but should be fixed
-             ;; in the following version.
-             ;; (The latest versions of Kokkos incorporate the fix [2].)
-             ;;
-             ;; [1]: https://github.com/GEOSX/thirdPartyLibs/issues/136
-             ;; [2]: https://github.com/kokkos/kokkos/blob/3.4.00/Makefile.kokkos#L441
-             (substitute* "KokkosCore_config.h"
-               (("\\\\#") "#"))
-             #t))
-         (add-before 'check 'mpi-setup
-           ,%openmpi-setup))))
+     (list #:build-type "Release"
+           #:configure-flags
+           #~(list "-DBUILD_SHARED_LIBS=ON"
+                   ;; Obtain the equivalent of RelWithDebInfo but with -O3
+                   ;; (the Release default) rather than -O2 (the
+                   ;; RelWithDebInfo default), to conform to candi's
+                   ;; trilinos.package's compilation flags, which are -g -O3.
+                   "-DCMAKE_C_FLAGS=-g"
+                   "-DCMAKE_CXX_FLAGS=-g"
+                   "-DCMAKE_Fortran_FLAGS=-g"
+
+                   ;; Trilinos libraries that deal.II can interface with.
+                   "-DTrilinos_ENABLE_Amesos=ON"
+                   "-DTrilinos_ENABLE_AztecOO=ON"
+                   "-DTrilinos_ENABLE_Epetra=ON"
+                   "-DTrilinos_ENABLE_EpetraExt=ON"
+                   "-DTrilinos_ENABLE_Ifpack=ON"
+                   "-DTrilinos_ENABLE_ML=ON"
+                   "-DTrilinos_ENABLE_MueLu=ON"
+                   "-DTrilinos_ENABLE_ROL=ON"
+                   ;; Optional; required for deal.II's GridIn::read_exodusii,
+                   ;; but depends on netcdf.
+                   ;; Enable if and when someone needs it.
+                   ;;"-DTrilinos_ENABLE_SEACAS=ON"
+                   "-DTrilinos_ENABLE_Sacado=ON"
+                   "-DTrilinos_ENABLE_Teuchos=ON"
+                   "-DTrilinos_ENABLE_Tpetra=ON"
+                   "-DTrilinos_ENABLE_Zoltan=ON"
+
+                   ;; Third-party libraries (TPLs) that Trilinos can interface
+                   ;; with.
+                   "-DBLAS_LIBRARY_NAMES=openblas"
+                   "-DTPL_ENABLE_MPI=ON"
+                   "-DTPL_ENABLE_MUMPS=ON"
+                   "-DTPL_ENABLE_SCALAPACK=ON"
+
+                   ;; Enable the tests but not the examples (which are enabled
+                   ;; by default when enabling tests).
+                   ;; Although some examples are run as tests, they are
+                   ;; otherwise unnecessary since this is a private package
+                   ;; meant for dealii-openmpi.
+                   ;; Besides, some MueLu and ROL examples require a lot of
+                   ;; memory to compile.
+                   ;;
+                   ;; (For future reference, note that some ROL and SEACAS
+                   ;; examples require removing gfortran from
+                   ;; CPLUS_INCLUDE_PATH as in the dune-istl,
+                   ;; dune-localfunctions and dune-alugrid packages.)
+                   "-DTrilinos_ENABLE_TESTS=ON"
+                   "-DTrilinos_ENABLE_EXAMPLES=OFF"
+                   ;; MueLu tests require considerably more time and memory to
+                   ;; compile than the rest of the tests.
+                   "-DMueLu_ENABLE_TESTS=OFF"
+
+                   ;; The following options were gleaned from candi's
+                   ;; trilinos.package.
+                   ;; (We do not enable the complex instantiations, which are
+                   ;; anyway provided only as an option in trilinos.package,
+                   ;; because they are costly in compilation time and memory
+                   ;; usage, and disk space [1].)
+                   ;;
+                   ;; [1]: https://www.docs.trilinos.org/files/TrilinosBuildReference.html#enabling-float-and-complex-scalar-types
+                   "-DTrilinos_ENABLE_Ifpack2=OFF"
+                   "-DTeuchos_ENABLE_FLOAT=ON"
+                   "-DTpetra_INST_INT_LONG=ON"
+                   "-DTPL_ENABLE_Boost=OFF")
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'configure 'fix-kokkos-config
+                 (lambda _
+                   ;; GNU Make 4.3 accidentally leaves the backslash preceding
+                   ;; the number sign in strings containing a literal
+                   ;; backslash–number sign (\#) [1, 2].
+                   ;; This is still an issue in Trilinos 13.0.1, but should be
+                   ;; fixed in the following version.
+                   ;; (The latest versions of Kokkos incorporate the fix [2].)
+                   ;;
+                   ;; [1]: https://github.com/GEOSX/thirdPartyLibs/issues/136
+                   ;; [2]: https://github.com/kokkos/kokkos/blob/3.4.00/Makefile.kokkos#L441
+                   (substitute* "KokkosCore_config.h"
+                     (("\\\\#") "#"))))
+               (add-before 'check 'mpi-setup
+                 #$%openmpi-setup))))
     (home-page "https://trilinos.github.io/")
     (synopsis "Algorithms for engineering and scientific problems")
     (description
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 12:34:03 GMT) Full text and rfc822 format available.

Message #23 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0.
Date: Mon, 25 Jul 2022 12:33:36 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi): Update to
13.4.0.
[native-inputs]: Remove gcc-7.
[arguments]: Remove 'fix-kokkos-config' phase.
---
 gnu/packages/maths.scm | 58 +++++++++++++++---------------------------
 1 file changed, 21 insertions(+), 37 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 751f1b4fd8..73180a1831 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5139,7 +5139,7 @@ (define-public lpsolve
 (define trilinos-for-dealii-openmpi
   (package
     (name "trilinos-for-dealii-openmpi")
-    (version "12.18.1")
+    (version "13.4.0")
     (source
      (origin
        (method git-fetch)
@@ -5150,31 +5150,28 @@ (define trilinos-for-dealii-openmpi
                              (string-replace-substring version "." "-")))))
        (file-name (git-file-name "trilinos" version))
        (sha256
-        (base32 "0fnwlhzsh85qj38cq3igbs8nm1b2jdgr2z734sapmyyzsy21mkgp"))))
+        (base32 "11vkn86dbvyvsf3zipd65y2f8vg5if9n3k7h3i8ybj95d4ck5r2n"))))
     (build-system cmake-build-system)
     (native-inputs
-     (list
-      ;; The build fails with the current gcc.
-      ;; Use the version from when Trilinos was added.
-      gcc-7
-      gfortran
-      ;; Trilinos's repository contains several C-shell scripts, but adding
-      ;; tcsh to the native inputs does not result in the check phase running
-      ;; any more tests than without it (nor is tcsh required to build
-      ;; Trilinos).
-      ;; It seems that Trilinos has replaced its use of C-shell test scripts
-      ;; with CMake's testing facilities.
-      ;; For example,
-      ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
-      ;; states that Zoltan's C-shell test script
-      ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests now
-      ;; performed through CMake.
-      ;;
-      ;; Perl is required for some Zoltan tests and Python 2 for one ML test.
-      ;;
-      ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
-      perl
-      python-2))
+     (list gfortran
+           ;; Trilinos's repository contains several C-shell scripts, but
+           ;; adding tcsh to the native inputs does not result in the check
+           ;; phase running any more tests than without it (nor is tcsh
+           ;; required to build Trilinos).
+           ;; It seems that Trilinos has replaced its use of C-shell test
+           ;; scripts with CMake's testing facilities.
+           ;; For example,
+           ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
+           ;; states that Zoltan's C-shell test script
+           ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests
+           ;; now performed through CMake.
+           ;;
+           ;; Perl is required for some Zoltan tests and Python 2 for one ML
+           ;; test.
+           ;;
+           ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
+           perl
+           python-2))
     (inputs
      (list openblas
            lapack
@@ -5251,19 +5248,6 @@ (define trilinos-for-dealii-openmpi
                    "-DTPL_ENABLE_Boost=OFF")
            #:phases
            #~(modify-phases %standard-phases
-               (add-after 'configure 'fix-kokkos-config
-                 (lambda _
-                   ;; GNU Make 4.3 accidentally leaves the backslash preceding
-                   ;; the number sign in strings containing a literal
-                   ;; backslash–number sign (\#) [1, 2].
-                   ;; This is still an issue in Trilinos 13.0.1, but should be
-                   ;; fixed in the following version.
-                   ;; (The latest versions of Kokkos incorporate the fix [2].)
-                   ;;
-                   ;; [1]: https://github.com/GEOSX/thirdPartyLibs/issues/136
-                   ;; [2]: https://github.com/kokkos/kokkos/blob/3.4.00/Makefile.kokkos#L441
-                   (substitute* "KokkosCore_config.h"
-                     (("\\\\#") "#"))))
                (add-before 'check 'mpi-setup
                  #$%openmpi-setup))))
     (home-page "https://trilinos.github.io/")
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 15:13:02 GMT) Full text and rfc822 format available.

Message #26 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH v2 1/6] gnu: trilinos-for-dealii-openmpi: Fix build.
Date: Mon, 25 Jul 2022 15:11:54 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi)[native-inputs]:
Add gcc-7 to fix the failing build with newer versions of gcc.
---
 gnu/packages/maths.scm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 458bffee61..948776e9d4 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5153,7 +5153,10 @@ (define trilinos-for-dealii-openmpi
         (base32 "0fnwlhzsh85qj38cq3igbs8nm1b2jdgr2z734sapmyyzsy21mkgp"))))
     (build-system cmake-build-system)
     (native-inputs
-     `(("gfortran" ,gfortran)
+     `(;; The build fails with the current gcc.
+       ;; Use the version from when Trilinos was added.
+       ("gcc" ,gcc-7)
+       ("gfortran" ,gfortran)
        ;; Trilinos's repository contains several C-shell scripts, but adding
        ;; tcsh to the native inputs does not result in the check phase running
        ;; any more tests than without it (nor is tcsh required to build
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 15:13:02 GMT) Full text and rfc822 format available.

Message #29 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0.
Date: Mon, 25 Jul 2022 15:11:49 +0000
Fixed the failing Trilinos 13.4.0 build by disabling
Tpetra_INST_INT_LONG_LONG.

Paul A. Patience (6):
  gnu: trilinos-for-dealii-openmpi: Fix build.
  gnu: dealii: Use G-expressions.
  gnu: dealii: Update to 9.4.0.
  gnu: trilinos-for-dealii-openmpi: Remove input labels.
  gnu: trilinos-for-dealii-openmpi: Use G-expressions.
  gnu: trilinos-for-dealii-openmpi: Update to 13.4.0.

 gnu/packages/maths.scm | 281 +++++++++++++++++++++--------------------
 1 file changed, 144 insertions(+), 137 deletions(-)

--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 15:13:03 GMT) Full text and rfc822 format available.

Message #32 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH v2 2/6] gnu: dealii: Use G-expressions.
Date: Mon, 25 Jul 2022 15:12:02 +0000
* gnu/packages/maths.scm (dealii)[snippet, arguments]: Use
G-expressions.
(dealii-openmpi)[arguments]: Same.
---
 gnu/packages/maths.scm | 60 ++++++++++++++++++++++--------------------
 1 file changed, 32 insertions(+), 28 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 948776e9d4..7d4049c689 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5287,7 +5287,7 @@ (define-public dealii
        (modules '((guix build utils)))
        (snippet
         ;; Remove bundled boost, muparser, TBB and UMFPACK.
-        '(delete-file-recursively "bundled"))))
+        #~(delete-file-recursively "bundled"))))
     (build-system cmake-build-system)
     (outputs '("out" "doc"))
     (native-inputs
@@ -5315,32 +5315,36 @@ (define-public dealii
            sundials-5
            tbb))
     (arguments
-     `(#:build-type "DebugRelease" ; Supports only Debug, Release and DebugRelease.
-       ;; The tests take too long and must be explicitly enabled with "make
-       ;; setup_tests".
-       ;; See https://www.dealii.org/developer/developers/testsuite.html.
-       ;; (They can also be run for an already installed deal.II.)
-       #:tests? #f
-       #:configure-flags
-       (let ((doc (string-append (assoc-ref %outputs "doc")
-                                 "/share/doc/" ,name "-" ,version)))
-         `("-DDEAL_II_COMPONENT_DOCUMENTATION=ON"
-           ,(string-append "-DDEAL_II_DOCREADME_RELDIR=" doc)
-           ,(string-append "-DDEAL_II_DOCHTML_RELDIR=" doc "/html")
-           ;; Don't compile the examples because the source and CMakeLists.txt
-           ;; are installed anyway, allowing users to do so for themselves.
-           "-DDEAL_II_COMPILE_EXAMPLES=OFF"
-           ,(string-append "-DDEAL_II_EXAMPLES_RELDIR=" doc "/examples")))
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'install 'remove-build-logs
-           ;; These build logs leak the name of the build directory by storing
-           ;; the values of CMAKE_SOURCE_DIR and CMAKE_BINARY_DIR.
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let ((doc (string-append (assoc-ref outputs "doc")
-                                       "/share/doc/" ,name "-" ,version)))
-               (for-each delete-file (map (lambda (f) (string-append doc "/" f))
-                                          '("detailed.log" "summary.log")))))))))
+     (list #:build-type "DebugRelease"  ; Only Debug, Release or DebugRelease.
+           ;; The tests take too long and must be explicitly enabled with
+           ;; "make setup_tests".
+           ;; See https://www.dealii.org/developer/developers/testsuite.html.
+           ;; (They can also be run for an already installed deal.II.)
+           #:tests? #f
+           #:configure-flags
+           #~(let ((doc (string-append #$output:doc "/share/doc/"
+                                       #$name "-" #$version)))
+               (list "-DDEAL_II_COMPONENT_DOCUMENTATION=ON"
+                     (string-append "-DDEAL_II_DOCREADME_RELDIR=" doc)
+                     (string-append "-DDEAL_II_DOCHTML_RELDIR=" doc "/html")
+                     ;; Don't compile the examples because the source and
+                     ;; CMakeLists.txt are installed anyway, allowing users to
+                     ;; do so for themselves.
+                     "-DDEAL_II_COMPILE_EXAMPLES=OFF"
+                     (string-append "-DDEAL_II_EXAMPLES_RELDIR=" doc
+                                    "/examples")))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'install 'remove-build-logs
+                 ;; These build logs leak the name of the build directory by
+                 ;; storing the values of CMAKE_SOURCE_DIR and
+                 ;; CMAKE_BINARY_DIR.
+                 (lambda _
+                   (let ((doc (string-append #$output:doc "/share/doc/"
+                                             #$name "-" #$version)))
+                     (for-each delete-file
+                               (map (lambda (f) (string-append doc "/" f))
+                                    '("detailed.log" "summary.log")))))))))
     (home-page "https://www.dealii.org/")
     (synopsis "Finite element library")
     (description
@@ -5373,7 +5377,7 @@ (define-public dealii-openmpi
     (arguments
      (substitute-keyword-arguments (package-arguments dealii)
        ((#:configure-flags flags)
-        `(cons "-DDEAL_II_WITH_MPI=ON" ,flags))))
+        #~(cons "-DDEAL_II_WITH_MPI=ON" #$flags))))
     (synopsis "Finite element library (with MPI support)")))

 (define-public flann
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 15:13:03 GMT) Full text and rfc822 format available.

Message #35 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH v2 3/6] gnu: dealii: Update to 9.4.0.
Date: Mon, 25 Jul 2022 15:12:08 +0000
* gnu/packages/maths.scm (dealii): Update to 9.4.0.
[propagated-inputs]: Replace sundials-5 with sundials.
(dealii-openmpi)[propagated-inputs]: Replace sundials-openmpi-5 with
sundials-openmpi.
---
 gnu/packages/maths.scm | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 7d4049c689..a2123d2dc8 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5276,14 +5276,14 @@ (define trilinos-for-dealii-openmpi
 (define-public dealii
   (package
     (name "dealii")
-    (version "9.3.3")
+    (version "9.4.0")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://github.com/dealii/dealii/releases/"
                            "download/v" version "/dealii-" version ".tar.gz"))
        (sha256
-        (base32 "0a8s4yxcbvzmfgv5qcg27h2ss4fcnyhrhhs35glqj59l9cbmkysx"))
+        (base32 "0v73q6f35f2yrjihaq6vh9lma07qc4cdv75nwmc3c5yrdh07g1i3"))
        (modules '((guix build utils)))
        (snippet
         ;; Remove bundled boost, muparser, TBB and UMFPACK.
@@ -5311,8 +5311,7 @@ (define-public dealii
      (list boost
            hdf5
            suitesparse                  ; For UMFPACK.
-           ;; SUNDIALS 6.0.0 and later will be supported in deal.II 9.4.0.
-           sundials-5
+           sundials
            tbb))
     (arguments
      (list #:build-type "DebugRelease"  ; Only Debug, Release or DebugRelease.
@@ -5372,7 +5371,7 @@ (define-public dealii-openmpi
                 p4est-openmpi
                 petsc-openmpi
                 slepc-openmpi
-                sundials-openmpi-5
+                sundials-openmpi
                 trilinos-for-dealii-openmpi)))
     (arguments
      (substitute-keyword-arguments (package-arguments dealii)
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 15:13:03 GMT) Full text and rfc822 format available.

Message #38 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH v2 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels.
Date: Mon, 25 Jul 2022 15:12:16 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi)[native-inputs,
inputs, propagated-inputs]: Remove labels.
---
 gnu/packages/maths.scm | 53 +++++++++++++++++++++---------------------
 1 file changed, 27 insertions(+), 26 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index a2123d2dc8..27b92d369c 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5153,34 +5153,35 @@ (define trilinos-for-dealii-openmpi
         (base32 "0fnwlhzsh85qj38cq3igbs8nm1b2jdgr2z734sapmyyzsy21mkgp"))))
     (build-system cmake-build-system)
     (native-inputs
-     `(;; The build fails with the current gcc.
-       ;; Use the version from when Trilinos was added.
-       ("gcc" ,gcc-7)
-       ("gfortran" ,gfortran)
-       ;; Trilinos's repository contains several C-shell scripts, but adding
-       ;; tcsh to the native inputs does not result in the check phase running
-       ;; any more tests than without it (nor is tcsh required to build
-       ;; Trilinos).
-       ;; It seems that Trilinos has replaced its use of C-shell test scripts
-       ;; with CMake's testing facilities.
-       ;; For example,
-       ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
-       ;; states that Zoltan's C-shell test script
-       ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests now
-       ;; performed through CMake.
-       ;;
-       ;; Perl is required for some Zoltan tests and Python 2 for one ML test.
-       ;;
-       ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
-       ("perl" ,perl)
-       ("python" ,python-2)))
+     (list
+      ;; The build fails with the current gcc.
+      ;; Use the version from when Trilinos was added.
+      gcc-7
+      gfortran
+      ;; Trilinos's repository contains several C-shell scripts, but adding
+      ;; tcsh to the native inputs does not result in the check phase running
+      ;; any more tests than without it (nor is tcsh required to build
+      ;; Trilinos).
+      ;; It seems that Trilinos has replaced its use of C-shell test scripts
+      ;; with CMake's testing facilities.
+      ;; For example,
+      ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
+      ;; states that Zoltan's C-shell test script
+      ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests now
+      ;; performed through CMake.
+      ;;
+      ;; Perl is required for some Zoltan tests and Python 2 for one ML test.
+      ;;
+      ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
+      perl
+      python-2))
     (inputs
-     `(("blas" ,openblas)
-       ("lapack" ,lapack)
-       ("mumps" ,mumps-openmpi)
-       ("scalapack" ,scalapack)))
+     (list openblas
+           lapack
+           mumps-openmpi
+           scalapack))
     (propagated-inputs
-     `(("mpi" ,openmpi)))
+     (list openmpi))
     (arguments
      `(#:build-type "Release"
        #:configure-flags
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 15:13:04 GMT) Full text and rfc822 format available.

Message #41 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH v2 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions.
Date: Mon, 25 Jul 2022 15:12:24 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi)[arguments]: Use
G-expressions.
<#:phases>: Remove trailing boolean.
---
 gnu/packages/maths.scm | 162 +++++++++++++++++++++--------------------
 1 file changed, 83 insertions(+), 79 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 27b92d369c..751f1b4fd8 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5183,85 +5183,89 @@ (define trilinos-for-dealii-openmpi
     (propagated-inputs
      (list openmpi))
     (arguments
-     `(#:build-type "Release"
-       #:configure-flags
-       `("-DBUILD_SHARED_LIBS=ON"
-         ;; Obtain the equivalent of RelWithDebInfo but with -O3 (the Release
-         ;; default) rather than -O2 (the RelWithDebInfo default), to conform
-         ;; to candi's trilinos.package's compilation flags, which are -g -O3.
-         "-DCMAKE_C_FLAGS=-g"
-         "-DCMAKE_CXX_FLAGS=-g"
-         "-DCMAKE_Fortran_FLAGS=-g"
-
-         ;; Trilinos libraries that deal.II can interface with.
-         "-DTrilinos_ENABLE_Amesos=ON"
-         "-DTrilinos_ENABLE_AztecOO=ON"
-         "-DTrilinos_ENABLE_Epetra=ON"
-         "-DTrilinos_ENABLE_EpetraExt=ON"
-         "-DTrilinos_ENABLE_Ifpack=ON"
-         "-DTrilinos_ENABLE_ML=ON"
-         "-DTrilinos_ENABLE_MueLu=ON"
-         "-DTrilinos_ENABLE_ROL=ON"
-         ;; Optional; required for deal.II's GridIn::read_exodusii, but
-         ;; depends on netcdf.
-         ;; Enable if and when someone needs it.
-         ;;"-DTrilinos_ENABLE_SEACAS=ON"
-         "-DTrilinos_ENABLE_Sacado=ON"
-         "-DTrilinos_ENABLE_Teuchos=ON"
-         "-DTrilinos_ENABLE_Tpetra=ON"
-         "-DTrilinos_ENABLE_Zoltan=ON"
-
-         ;; Third-party libraries (TPLs) that Trilinos can interface with.
-         "-DBLAS_LIBRARY_NAMES=openblas"
-         "-DTPL_ENABLE_MPI=ON"
-         "-DTPL_ENABLE_MUMPS=ON"
-         "-DTPL_ENABLE_SCALAPACK=ON"
-
-         ;; Enable the tests but not the examples (which are enabled by
-         ;; default when enabling tests).
-         ;; Although some examples are run as tests, they are otherwise
-         ;; unnecessary since this is a private package meant for
-         ;; dealii-openmpi.
-         ;; Besides, some MueLu and ROL examples require a lot of memory to
-         ;; compile.
-         ;;
-         ;; (For future reference, note that some ROL and SEACAS examples
-         ;; require removing gfortran from CPLUS_INCLUDE_PATH as in the
-         ;; dune-istl, dune-localfunctions and dune-alugrid packages.)
-         "-DTrilinos_ENABLE_TESTS=ON"
-         "-DTrilinos_ENABLE_EXAMPLES=OFF"
-         ;; MueLu tests require considerably more time and memory to compile
-         ;; than the rest of the tests.
-         "-DMueLu_ENABLE_TESTS=OFF"
-
-         ;; The following options were gleaned from candi's trilinos.package.
-         ;; (We do not enable the complex instantiations, which are anyway
-         ;; provided only as an option in trilinos.package, because they are
-         ;; costly in compilation time and memory usage, and disk space [1].)
-         ;;
-         ;; [1]: https://www.docs.trilinos.org/files/TrilinosBuildReference.html#enabling-float-and-complex-scalar-types
-         "-DTrilinos_ENABLE_Ifpack2=OFF"
-         "-DTeuchos_ENABLE_FLOAT=ON"
-         "-DTpetra_INST_INT_LONG=ON"
-         "-DTPL_ENABLE_Boost=OFF")
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'configure 'fix-kokkos-config
-           (lambda _
-             ;; GNU Make 4.3 accidentally leaves the backslash preceding the
-             ;; number sign in strings containing a literal backslash–number
-             ;; sign (\#) [1, 2].
-             ;; This is still an issue in Trilinos 13.0.1, but should be fixed
-             ;; in the following version.
-             ;; (The latest versions of Kokkos incorporate the fix [2].)
-             ;;
-             ;; [1]: https://github.com/GEOSX/thirdPartyLibs/issues/136
-             ;; [2]: https://github.com/kokkos/kokkos/blob/3.4.00/Makefile.kokkos#L441
-             (substitute* "KokkosCore_config.h"
-               (("\\\\#") "#"))
-             #t))
-         (add-before 'check 'mpi-setup
-           ,%openmpi-setup))))
+     (list #:build-type "Release"
+           #:configure-flags
+           #~(list "-DBUILD_SHARED_LIBS=ON"
+                   ;; Obtain the equivalent of RelWithDebInfo but with -O3
+                   ;; (the Release default) rather than -O2 (the
+                   ;; RelWithDebInfo default), to conform to candi's
+                   ;; trilinos.package's compilation flags, which are -g -O3.
+                   "-DCMAKE_C_FLAGS=-g"
+                   "-DCMAKE_CXX_FLAGS=-g"
+                   "-DCMAKE_Fortran_FLAGS=-g"
+
+                   ;; Trilinos libraries that deal.II can interface with.
+                   "-DTrilinos_ENABLE_Amesos=ON"
+                   "-DTrilinos_ENABLE_AztecOO=ON"
+                   "-DTrilinos_ENABLE_Epetra=ON"
+                   "-DTrilinos_ENABLE_EpetraExt=ON"
+                   "-DTrilinos_ENABLE_Ifpack=ON"
+                   "-DTrilinos_ENABLE_ML=ON"
+                   "-DTrilinos_ENABLE_MueLu=ON"
+                   "-DTrilinos_ENABLE_ROL=ON"
+                   ;; Optional; required for deal.II's GridIn::read_exodusii,
+                   ;; but depends on netcdf.
+                   ;; Enable if and when someone needs it.
+                   ;;"-DTrilinos_ENABLE_SEACAS=ON"
+                   "-DTrilinos_ENABLE_Sacado=ON"
+                   "-DTrilinos_ENABLE_Teuchos=ON"
+                   "-DTrilinos_ENABLE_Tpetra=ON"
+                   "-DTrilinos_ENABLE_Zoltan=ON"
+
+                   ;; Third-party libraries (TPLs) that Trilinos can interface
+                   ;; with.
+                   "-DBLAS_LIBRARY_NAMES=openblas"
+                   "-DTPL_ENABLE_MPI=ON"
+                   "-DTPL_ENABLE_MUMPS=ON"
+                   "-DTPL_ENABLE_SCALAPACK=ON"
+
+                   ;; Enable the tests but not the examples (which are enabled
+                   ;; by default when enabling tests).
+                   ;; Although some examples are run as tests, they are
+                   ;; otherwise unnecessary since this is a private package
+                   ;; meant for dealii-openmpi.
+                   ;; Besides, some MueLu and ROL examples require a lot of
+                   ;; memory to compile.
+                   ;;
+                   ;; (For future reference, note that some ROL and SEACAS
+                   ;; examples require removing gfortran from
+                   ;; CPLUS_INCLUDE_PATH as in the dune-istl,
+                   ;; dune-localfunctions and dune-alugrid packages.)
+                   "-DTrilinos_ENABLE_TESTS=ON"
+                   "-DTrilinos_ENABLE_EXAMPLES=OFF"
+                   ;; MueLu tests require considerably more time and memory to
+                   ;; compile than the rest of the tests.
+                   "-DMueLu_ENABLE_TESTS=OFF"
+
+                   ;; The following options were gleaned from candi's
+                   ;; trilinos.package.
+                   ;; (We do not enable the complex instantiations, which are
+                   ;; anyway provided only as an option in trilinos.package,
+                   ;; because they are costly in compilation time and memory
+                   ;; usage, and disk space [1].)
+                   ;;
+                   ;; [1]: https://www.docs.trilinos.org/files/TrilinosBuildReference.html#enabling-float-and-complex-scalar-types
+                   "-DTrilinos_ENABLE_Ifpack2=OFF"
+                   "-DTeuchos_ENABLE_FLOAT=ON"
+                   "-DTpetra_INST_INT_LONG=ON"
+                   "-DTPL_ENABLE_Boost=OFF")
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'configure 'fix-kokkos-config
+                 (lambda _
+                   ;; GNU Make 4.3 accidentally leaves the backslash preceding
+                   ;; the number sign in strings containing a literal
+                   ;; backslash–number sign (\#) [1, 2].
+                   ;; This is still an issue in Trilinos 13.0.1, but should be
+                   ;; fixed in the following version.
+                   ;; (The latest versions of Kokkos incorporate the fix [2].)
+                   ;;
+                   ;; [1]: https://github.com/GEOSX/thirdPartyLibs/issues/136
+                   ;; [2]: https://github.com/kokkos/kokkos/blob/3.4.00/Makefile.kokkos#L441
+                   (substitute* "KokkosCore_config.h"
+                     (("\\\\#") "#"))))
+               (add-before 'check 'mpi-setup
+                 #$%openmpi-setup))))
     (home-page "https://trilinos.github.io/")
     (synopsis "Algorithms for engineering and scientific problems")
     (description
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Mon, 25 Jul 2022 15:13:04 GMT) Full text and rfc822 format available.

Message #44 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0.
Date: Mon, 25 Jul 2022 15:12:33 +0000
* gnu/packages/maths.scm (trilinos-for-dealii-openmpi): Update to
13.4.0.
[native-inputs]: Remove gcc-7.
[arguments]: Remove 'fix-kokkos-config' phase.
---
 gnu/packages/maths.scm | 70 ++++++++++++++++++++----------------------
 1 file changed, 33 insertions(+), 37 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 751f1b4fd8..d3481da0a6 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5139,7 +5139,7 @@ (define-public lpsolve
 (define trilinos-for-dealii-openmpi
   (package
     (name "trilinos-for-dealii-openmpi")
-    (version "12.18.1")
+    (version "13.4.0")
     (source
      (origin
        (method git-fetch)
@@ -5150,31 +5150,28 @@ (define trilinos-for-dealii-openmpi
                              (string-replace-substring version "." "-")))))
        (file-name (git-file-name "trilinos" version))
        (sha256
-        (base32 "0fnwlhzsh85qj38cq3igbs8nm1b2jdgr2z734sapmyyzsy21mkgp"))))
+        (base32 "11vkn86dbvyvsf3zipd65y2f8vg5if9n3k7h3i8ybj95d4ck5r2n"))))
     (build-system cmake-build-system)
     (native-inputs
-     (list
-      ;; The build fails with the current gcc.
-      ;; Use the version from when Trilinos was added.
-      gcc-7
-      gfortran
-      ;; Trilinos's repository contains several C-shell scripts, but adding
-      ;; tcsh to the native inputs does not result in the check phase running
-      ;; any more tests than without it (nor is tcsh required to build
-      ;; Trilinos).
-      ;; It seems that Trilinos has replaced its use of C-shell test scripts
-      ;; with CMake's testing facilities.
-      ;; For example,
-      ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
-      ;; states that Zoltan's C-shell test script
-      ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests now
-      ;; performed through CMake.
-      ;;
-      ;; Perl is required for some Zoltan tests and Python 2 for one ML test.
-      ;;
-      ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
-      perl
-      python-2))
+     (list gfortran
+           ;; Trilinos's repository contains several C-shell scripts, but
+           ;; adding tcsh to the native inputs does not result in the check
+           ;; phase running any more tests than without it (nor is tcsh
+           ;; required to build Trilinos).
+           ;; It seems that Trilinos has replaced its use of C-shell test
+           ;; scripts with CMake's testing facilities.
+           ;; For example,
+           ;; packages/zoltan/doc/Zoltan_html/dev_html/dev_test_script.html [1]
+           ;; states that Zoltan's C-shell test script
+           ;; packages/zoltan/test/test_zoltan has been obsoleted by the tests
+           ;; now performed through CMake.
+           ;;
+           ;; Perl is required for some Zoltan tests and Python 2 for one ML
+           ;; test.
+           ;;
+           ;; [1]: https://cs.sandia.gov/zoltan/dev_html/dev_test_script.html
+           perl
+           python-2))
     (inputs
      (list openblas
            lapack
@@ -5248,22 +5245,21 @@ (define trilinos-for-dealii-openmpi
                    "-DTrilinos_ENABLE_Ifpack2=OFF"
                    "-DTeuchos_ENABLE_FLOAT=ON"
                    "-DTpetra_INST_INT_LONG=ON"
+                   ;; Disabling Tpetra_INST_INT_LONG_LONG is required only
+                   ;; because Tpetra's CMakeLists.txt [1] is incorrectly
+                   ;; testing for
+                   ;;
+                   ;;   DEFINED Tpetra_INST_INT_LONG AND Tpetra_INST_INT_UNSIGNED_LONG
+                   ;;
+                   ;; instead of
+                   ;;
+                   ;;   DEFINED Tpetra_INST_INT_LONG AND Tpetra_INST_INT_LONG
+                   ;;
+                   ;; [1]: https://github.com/trilinos/Trilinos/blob/0976cf2a8f9ee2991f4fb479f1056ca569eb22b9/packages/tpetra/CMakeLists.txt#L697
+                   "-DTpetra_INST_INT_LONG_LONG=OFF"
                    "-DTPL_ENABLE_Boost=OFF")
            #:phases
            #~(modify-phases %standard-phases
-               (add-after 'configure 'fix-kokkos-config
-                 (lambda _
-                   ;; GNU Make 4.3 accidentally leaves the backslash preceding
-                   ;; the number sign in strings containing a literal
-                   ;; backslash–number sign (\#) [1, 2].
-                   ;; This is still an issue in Trilinos 13.0.1, but should be
-                   ;; fixed in the following version.
-                   ;; (The latest versions of Kokkos incorporate the fix [2].)
-                   ;;
-                   ;; [1]: https://github.com/GEOSX/thirdPartyLibs/issues/136
-                   ;; [2]: https://github.com/kokkos/kokkos/blob/3.4.00/Makefile.kokkos#L441
-                   (substitute* "KokkosCore_config.h"
-                     (("\\\\#") "#"))))
                (add-before 'check 'mpi-setup
                  #$%openmpi-setup))))
     (home-page "https://trilinos.github.io/")
--
2.37.1






Information forwarded to guix-patches <at> gnu.org:
bug#56760; Package guix-patches. (Tue, 26 Jul 2022 11:42:01 GMT) Full text and rfc822 format available.

Message #47 received at 56760 <at> debbugs.gnu.org (full text, mbox):

From: "Paul A. Patience" <paul <at> apatience.com>
To: 56760 <at> debbugs.gnu.org
Cc: "Paul A. Patience" <paul <at> apatience.com>
Subject: Re: [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0.
Date: Tue, 26 Jul 2022 11:41:25 +0000

On 2022-07-25 08:12:33-07:00, Paul A. Patience wrote:
> * gnu/packages/maths.scm (trilinos-for-dealii-openmpi): Update to
> 13.4.0.

Actually, 13.4.0 has some linking errors even with the fix to the
configure flags.
So this patch shouldn't be applied, but the first 5 are ok.

Paul





Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Mon, 01 Aug 2022 15:23:01 GMT) Full text and rfc822 format available.

Notification sent to "Paul A. Patience" <paul <at> apatience.com>:
bug acknowledged by developer. (Mon, 01 Aug 2022 15:23:02 GMT) Full text and rfc822 format available.

Message #52 received at 56760-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: "Paul A. Patience" <paul <at> apatience.com>
Cc: 56760-done <at> debbugs.gnu.org
Subject: Re: bug#56760: [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos
 to 13.4.0.
Date: Mon, 01 Aug 2022 17:22:25 +0200
Hi,

"Paul A. Patience" <paul <at> apatience.com> skribis:

>   gnu: trilinos-for-dealii-openmpi: Fix build.
>   gnu: dealii: Use G-expressions.
>   gnu: dealii: Update to 9.4.0.
>   gnu: trilinos-for-dealii-openmpi: Remove input labels.
>   gnu: trilinos-for-dealii-openmpi: Use G-expressions.
>   gnu: trilinos-for-dealii-openmpi: Update to 13.4.0.

Pushed everything but the sixth patch, as you suggested.

Please resubmit it separately when it’s ready.

Thanks!

Ludo’.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 30 Aug 2022 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 291 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.