diff options
author | Theodoros Foradis <theodoros@foradis.org> | 2017-09-09 20:57:49 +0300 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2017-10-11 11:12:33 +0200 |
commit | 91cabd3e58db8ff53f8f566f3c4cd614ea691223 (patch) | |
tree | 18abebf19c60680631870d4e28d580d60310abda /gnu/packages | |
parent | 1da02b6a49dde86c8a4029a19ab26b8a5a66d743 (diff) | |
download | guix-91cabd3e58db8ff53f8f566f3c4cd614ea691223.tar.gz |
gnu: Add xyce-parallel.
* gnu/packages/engineering.scm (trilinos-parallel-xyce) (xyce-parallel): New variables. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/engineering.scm | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index feff757c61..110c63f052 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -30,6 +30,7 @@ #:use-module (guix monads) #:use-module (guix store) #:use-module (guix utils) + #:use-module ((srfi srfi-1) #:hide (zip)) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) @@ -1377,3 +1378,40 @@ unique design feature of Trilinos is its focus on packages.") capable of solving extremely large circuit problems by supporting large-scale parallel computing platforms. It also supports serial execution.") (license license:gpl3+))) + +(define trilinos-parallel-xyce + (package (inherit trilinos-serial-xyce) + (name "trilinos-parallel-xyce") + (arguments + `(,@(substitute-keyword-arguments (package-arguments trilinos-serial-xyce) + ((#:configure-flags flags) + `(append (list "-DTrilinos_ENABLE_ShyLU=ON" + "-DTrilinos_ENABLE_Zoltan=ON" + "-DTPL_ENABLE_MPI=ON") + ,flags))))) + (inputs + `(("mpi" ,openmpi) + ,@(package-inputs trilinos-serial-xyce))))) + +(define-public xyce-parallel + (package (inherit xyce-serial) + (name "xyce-parallel") + (arguments + `(,@(substitute-keyword-arguments (package-arguments xyce-serial) + ((#:configure-flags flags) + `(list "CXXFLAGS=-O3 -std=c++11" + "CXX=mpiCC" + "CC=mpicc" + "F77=mpif77" + "--enable-mpi" + "--enable-isorropia=no" + "--enable-zoltan=no" + (string-append + "ARCHDIR=" + (assoc-ref %build-inputs "trilinos"))))))) + (propagated-inputs + `(("mpi" ,openmpi))) + (inputs + `(("trilinos" ,trilinos-parallel-xyce) + ,@(alist-delete "trilinos" + (package-inputs xyce-serial)))))) |