From patchwork Mon Jul 25 12:33:31 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "Paul A. Patience" X-Patchwork-Id: 40944 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 092F427BBEA; Mon, 25 Jul 2022 13:50:25 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 4295E27BBE9 for ; Mon, 25 Jul 2022 13:50:24 +0100 (BST) Received: from localhost ([::1]:38884 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oFxXT-000828-Cv for patchwork@mira.cbaines.net; Mon, 25 Jul 2022 08:50:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51326) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oFxHg-000792-1J for guix-patches@gnu.org; Mon, 25 Jul 2022 08:34:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:59776) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oFxHf-00086M-Mi for guix-patches@gnu.org; Mon, 25 Jul 2022 08:34:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oFxHf-0003RR-IU for guix-patches@gnu.org; Mon, 25 Jul 2022 08:34:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#56760] [PATCH 5/6] gnu: trilinos-for-dealii-openmpi: Use G-expressions. Resent-From: "Paul A. Patience" Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 25 Jul 2022 12:34:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56760 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 56760@debbugs.gnu.org Cc: "Paul A. Patience" Received: via spool by 56760-submit@debbugs.gnu.org id=B56760.165875243013170 (code B ref 56760); Mon, 25 Jul 2022 12:34:03 +0000 Received: (at 56760) by debbugs.gnu.org; 25 Jul 2022 12:33:50 +0000 Received: from localhost ([127.0.0.1]:49517 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oFxHR-0003QM-Ue for submit@debbugs.gnu.org; Mon, 25 Jul 2022 08:33:50 -0400 Received: from mail-4323.proton.ch ([185.70.43.23]:57317) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oFxHQ-0003Q6-2I for 56760@debbugs.gnu.org; Mon, 25 Jul 2022 08:33:48 -0400 Date: Mon, 25 Jul 2022 12:33:31 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apatience.com; s=protonmail2; t=1658752422; x=1659011622; bh=vPWI640IU8QxlI42zXnKAC+z2oDumo5aZNV+edWm8qo=; h=Date:To:From:Cc:Reply-To:Subject:Message-ID:In-Reply-To: References:Feedback-ID:From:To:Cc:Date:Subject:Reply-To: Feedback-ID:Message-ID; b=HjT078YISZcwEgdljxXxhj14FBZXThUnXeKpx6030W2s9eaCcbddX5qxbJgvARIVn vzgvzC15SqsKzrfpNrMkDjfn+wZ+LpuFIRQVnxmoXtdySWYAjv3nfBjYiTCBNwB7u1 XcRrdq9IS9KR6KN3QFzgCNBBWuWIRLyi+4F8gpaHT/jSGV5IVHdqfRl+LduVweKp30 Ajw20Pl401K5wJy6zPdCezVw1b78VOjNYfew3rY6NFhH7vwwFg+Ed0koPZOg8Skt4r 94BmysRKgZSC0KGLZ/WLp9zTaNEhkVVc8WheCP/CNu4qGYylwL3JN8NLZDAvjkDz6A QRGxD1oWA8yYw== From: "Paul A. Patience" Message-ID: <20220725123303.3863582-5-paul@apatience.com> In-Reply-To: <20220725123303.3863582-1-paul@apatience.com> References: <20220725123303.3863582-1-paul@apatience.com> Feedback-ID: 19227857:user:proton MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: "Paul A. Patience" Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * 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(-) -- 2.37.1 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