* [bug#56760] [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0. @ 2022-07-25 12:30 Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience 0 siblings, 2 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 12:30 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience 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 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build. 2022-07-25 12:30 [bug#56760] [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0 Paul A. Patience @ 2022-07-25 12:33 ` Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 2/6] gnu: dealii: Use G-expressions Paul A. Patience ` (4 more replies) 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience 1 sibling, 5 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 12:33 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH 2/6] gnu: dealii: Use G-expressions. 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience @ 2022-07-25 12:33 ` Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 3/6] gnu: dealii: Update to 9.4.0 Paul A. Patience ` (3 subsequent siblings) 4 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 12:33 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH 3/6] gnu: dealii: Update to 9.4.0. 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 2/6] gnu: dealii: Use G-expressions Paul A. Patience @ 2022-07-25 12:33 ` Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels Paul A. Patience ` (2 subsequent siblings) 4 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 12:33 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels. 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 2/6] gnu: dealii: Use G-expressions Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 3/6] gnu: dealii: Update to 9.4.0 Paul A. Patience @ 2022-07-25 12:33 ` Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0 Paul A. Patience 4 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 12:33 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions. 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience ` (2 preceding siblings ...) 2022-07-25 12:33 ` [bug#56760] [PATCH 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels Paul A. Patience @ 2022-07-25 12:33 ` Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0 Paul A. Patience 4 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 12:33 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0. 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience ` (3 preceding siblings ...) 2022-07-25 12:33 ` [bug#56760] [PATCH 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions Paul A. Patience @ 2022-07-25 12:33 ` Paul A. Patience 4 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 12:33 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0. 2022-07-25 12:30 [bug#56760] [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0 Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience @ 2022-07-25 15:11 ` Paul A. Patience 2022-07-25 15:11 ` [bug#56760] [PATCH v2 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience ` (6 more replies) 1 sibling, 7 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 15:11 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience 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 ^ permalink raw reply [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 1/6] gnu: trilinos-for-dealii-openmpi: Fix build. 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience @ 2022-07-25 15:11 ` Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 2/6] gnu: dealii: Use G-expressions Paul A. Patience ` (5 subsequent siblings) 6 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 15:11 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 2/6] gnu: dealii: Use G-expressions. 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience 2022-07-25 15:11 ` [bug#56760] [PATCH v2 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience @ 2022-07-25 15:12 ` Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 3/6] gnu: dealii: Update to 9.4.0 Paul A. Patience ` (4 subsequent siblings) 6 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 15:12 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 3/6] gnu: dealii: Update to 9.4.0. 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience 2022-07-25 15:11 ` [bug#56760] [PATCH v2 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 2/6] gnu: dealii: Use G-expressions Paul A. Patience @ 2022-07-25 15:12 ` Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels Paul A. Patience ` (3 subsequent siblings) 6 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 15:12 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels. 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience ` (2 preceding siblings ...) 2022-07-25 15:12 ` [bug#56760] [PATCH v2 3/6] gnu: dealii: Update to 9.4.0 Paul A. Patience @ 2022-07-25 15:12 ` Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions Paul A. Patience ` (2 subsequent siblings) 6 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 15:12 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions. 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience ` (3 preceding siblings ...) 2022-07-25 15:12 ` [bug#56760] [PATCH v2 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels Paul A. Patience @ 2022-07-25 15:12 ` Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0 Paul A. Patience 2022-08-01 15:22 ` bug#56760: [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos " Ludovic Courtès 6 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 15:12 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0. 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience ` (4 preceding siblings ...) 2022-07-25 15:12 ` [bug#56760] [PATCH v2 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions Paul A. Patience @ 2022-07-25 15:12 ` Paul A. Patience 2022-07-26 11:41 ` Paul A. Patience 2022-08-01 15:22 ` bug#56760: [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos " Ludovic Courtès 6 siblings, 1 reply; 16+ messages in thread From: Paul A. Patience @ 2022-07-25 15:12 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience * 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 ^ permalink raw reply related [flat|nested] 16+ messages in thread
* [bug#56760] [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0. 2022-07-25 15:12 ` [bug#56760] [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0 Paul A. Patience @ 2022-07-26 11:41 ` Paul A. Patience 0 siblings, 0 replies; 16+ messages in thread From: Paul A. Patience @ 2022-07-26 11:41 UTC (permalink / raw) To: 56760; +Cc: Paul A. Patience 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 ^ permalink raw reply [flat|nested] 16+ messages in thread
* bug#56760: [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0. 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience ` (5 preceding siblings ...) 2022-07-25 15:12 ` [bug#56760] [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0 Paul A. Patience @ 2022-08-01 15:22 ` Ludovic Courtès 6 siblings, 0 replies; 16+ messages in thread From: Ludovic Courtès @ 2022-08-01 15:22 UTC (permalink / raw) To: Paul A. Patience; +Cc: 56760-done Hi, "Paul A. Patience" <paul@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’. ^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2022-08-01 15:23 UTC | newest] Thread overview: 16+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-07-25 12:30 [bug#56760] [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos to 13.4.0 Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 2/6] gnu: dealii: Use G-expressions Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 3/6] gnu: dealii: Update to 9.4.0 Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions Paul A. Patience 2022-07-25 12:33 ` [bug#56760] [PATCH 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0 Paul A. Patience 2022-07-25 15:11 ` [bug#56760] [PATCH v2 0/6] dealii: Update to 9.4.0 and its Trilinos " Paul A. Patience 2022-07-25 15:11 ` [bug#56760] [PATCH v2 1/6] gnu: trilinos-for-dealii-openmpi: Fix build Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 2/6] gnu: dealii: Use G-expressions Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 3/6] gnu: dealii: Update to 9.4.0 Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 4/6] gnu: trilinos-for-dealii-openmpi: Remove input labels Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions Paul A. Patience 2022-07-25 15:12 ` [bug#56760] [PATCH v2 6/6] gnu: trilinos-for-dealii-openmpi: Update to 13.4.0 Paul A. Patience 2022-07-26 11:41 ` Paul A. Patience 2022-08-01 15:22 ` bug#56760: [PATCH 0/6] dealii: Update to 9.4.0 and its Trilinos " Ludovic Courtès
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/guix.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.