[PATCH] gnu: xyce: Update to 7.8.

  • Open
  • quality assurance status badge
Details
One participant
  • Robin Ole Heinemann
Owner
unassigned
Submitted by
Robin Ole Heinemann
Severity
normal
R
R
Robin Ole Heinemann wrote on 3 Jul 17:16 +0200
(address . guix-patches@gnu.org)(name . Robin Ole Heinemann)(address . robin.ole.heinemann@gmail.com)
7055f694200985944497842ed3668f4e93658eff.1720019772.git.robin.ole.heinemann@gmail.com
* gnu/packages/engineering.scm (xyce-{serial,parallel}): Update to 7.8.
[inputs]: Remove lapack. Add openblas.
[arguments]: Add option to 'configure-flags' to use openblas instead of
lapack.

Change-Id: Ie99689829c679851233e186c639924935de6b297
---
gnu/packages/engineering.scm | 181 ++++++++++++++++++-----------------
1 file changed, 93 insertions(+), 88 deletions(-)

Toggle diff (224 lines)
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 64335d89f7..344a12fd2e 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -2079,44 +2079,49 @@ (define trilinos-serial-xyce
(build-system cmake-build-system)
(arguments
`(#:out-of-source? #t
- #:phases
- (modify-phases %standard-phases
- ;; Delete unneeded tribits(build system) directory which makes validate-runpath
- ;; phase to fail.
- (add-before 'validate-runpath 'delete-tribits
- (lambda* (#:key outputs #:allow-other-keys)
- (delete-file-recursively
- (string-append (assoc-ref outputs "out")
- "/lib/cmake/tribits")))))
- #:configure-flags
- (list "-DCMAKE_CXX_FLAGS=-O3 -fPIC"
- "-DCMAKE_C_FLAGS=-O3 -fPIC"
- "-DCMAKE_Fortran_FLAGS=-O3 -fPIC"
- "-DTrilinos_ENABLE_NOX=ON"
- "-DNOX_ENABLE_LOCA=ON"
- "-DTrilinos_ENABLE_EpetraExt=ON"
- "-DEpetraExt_BUILD_BTF=ON"
- "-DEpetraExt_BUILD_EXPERIMENTAL=ON"
- "-DEpetraExt_BUILD_GRAPH_REORDERINGS=ON"
- "-DTrilinos_ENABLE_TrilinosCouplings=ON"
- "-DTrilinos_ENABLE_Ifpack=ON"
- "-DTrilinos_ENABLE_Isorropia=ON"
- "-DTrilinos_ENABLE_AztecOO=ON"
- "-DTrilinos_ENABLE_Belos=ON"
- "-DTrilinos_ENABLE_Teuchos=ON"
- "-DTeuchos_ENABLE_COMPLEX=ON"
- "-DTrilinos_ENABLE_Amesos=ON"
- "-DAmesos_ENABLE_KLU=ON"
- "-DAmesos_ENABLE_UMFPACK=ON"
- "-DTrilinos_ENABLE_Sacado=ON"
- "-DTrilinos_ENABLE_Kokkos=OFF"
- "-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF"
- "-DTPL_ENABLE_AMD=ON"
- "-DTPL_ENABLE_UMFPACK=ON"
- "-DTPL_ENABLE_BLAS=ON"
- "-DTPL_ENABLE_LAPACK=ON")))
+ #:phases (modify-phases %standard-phases
+ ;; Delete unneeded tribits(build system) directory which makes validate-runpath
+ ;; phase to fail.
+ (add-before 'validate-runpath 'delete-tribits
+ (lambda* (#:key outputs #:allow-other-keys)
+ (delete-file-recursively (string-append (assoc-ref
+ outputs "out")
+ "/lib/cmake/tribits")))))
+ #:configure-flags (list "-DCMAKE_CXX_FLAGS=-O3 -fPIC"
+ "-DCMAKE_C_FLAGS=-O3 -fPIC"
+ "-DCMAKE_Fortran_FLAGS=-O3 -fPIC"
+ "-DTrilinos_ENABLE_NOX=ON"
+ "-DNOX_ENABLE_LOCA=ON"
+ "-DTrilinos_ENABLE_EpetraExt=ON"
+ "-DEpetraExt_BUILD_BTF=ON"
+ "-DEpetraExt_BUILD_EXPERIMENTAL=ON"
+ "-DEpetraExt_BUILD_GRAPH_REORDERINGS=ON"
+ "-DTrilinos_ENABLE_TrilinosCouplings=ON"
+ "-DTrilinos_ENABLE_Ifpack=ON"
+ "-DTrilinos_ENABLE_Isorropia=ON"
+ "-DTrilinos_ENABLE_AztecOO=ON"
+ "-DTrilinos_ENABLE_Belos=ON"
+ "-DTrilinos_ENABLE_Teuchos=ON"
+ "-DTrilinos_ENABLE_COMPLEX_DOUBLE=ON"
+ "-DTrilinos_ENABLE_Amesos=ON"
+ "-DAmesos_ENABLE_KLU=ON"
+ "-DAmesos_ENABLE_UMFPACK=ON"
+ "-DTrilinos_ENABLE_Amesos2=ON"
+ "-DAmesos2_ENABLE_KLU2=ON"
+ "-DAmesos2_ENABLE_Basker=ON"
+ "-DTrilinos_ENABLE_Sacado=ON"
+ "-DTrilinos_ENABLE_Stokhos=ON"
+ "-DTrilinos_ENABLE_Kokkos=ON"
+ "-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF"
+ "-DTrilinos_ENABLE_CXX11=ON"
+ "-DTPL_ENABLE_AMD=ON"
+ "-DTPL_ENABLE_UMFPACK=ON"
+ "-DTPL_ENABLE_BLAS=ON"
+ "-DTPL_ENABLE_LAPACK=ON"
+ "-DBLAS_LIBRARY_NAMES=openblas"
+ "-DLAPACK_LIBRARY_NAMES=openblas")))
(native-inputs (list gfortran swig))
- (inputs (list boost lapack suitesparse))
+ (inputs (list boost openblas suitesparse))
(home-page "https://trilinos.org")
(synopsis "Engineering and scientific problems algorithms")
(description
@@ -2124,37 +2129,43 @@ (define trilinos-serial-xyce
technologies within an object-oriented software framework for the solution of
large-scale, complex multi-physics engineering and scientific problems. A
unique design feature of Trilinos is its focus on packages.")
- (license (list license:lgpl2.1+
- license:bsd-3))))
+ (license (list license:lgpl2.1+ license:bsd-3))))
+
+(define xyce-common-flags
+ (list "CXXFLAGS=-O3"
+ "--enable-stokhos"
+ "--enable-amesos2"
+ "LIBS=-lopenblas"))
(define-public xyce-serial
(package
(name "xyce-serial")
- (version "6.8")
+ (version "7.8.0")
(source
- (origin (method url-fetch)
- (uri (string-append "https://archive.org/download/Xyce-"
- version "/Xyce-" version ".tar.gz"))
- (sha256
- (base32
- "09flp1xywbb2laayd9rg8vd0fjsh115y6k1p71jacy0nrbdvvlcg"))))
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Xyce/Xyce")
+ (commit (string-append "Release-" version))))
+ (sha256
+ (base32 "01h2gln4qik12a2mp9ai52c21pd8316vsm2nxishw5dfn7cp58zr"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f
- #:configure-flags
- (list
- "CXXFLAGS=-O3"
- (string-append "ARCHDIR="
- (assoc-ref %build-inputs "trilinos")))))
- (native-inputs
- `(("bison" ,bison-3.0) ;'configure' fails with Bison 3.4
- ("flex" ,flex)
- ("fortran" ,gfortran)))
- (inputs
- `(("fftw" ,fftw)
- ("suitesparse" ,suitesparse)
- ("lapack" ,lapack)
- ("trilinos" ,trilinos-serial-xyce)))
+ (list
+ #:tests? #f
+ #:configure-flags #~(list
+ (string-append "ARCHDIR=" #$(this-package-input "trilinos"))
+ #$@xyce-common-flags)))
+ (native-inputs (list bison
+ flex
+ gfortran
+ autoconf
+ automake
+ libtool))
+ (inputs `(("fftw" ,fftw)
+ ("suitesparse" ,suitesparse)
+ ("openblas" ,openblas)
+ ("trilinos" ,trilinos-serial-xyce)))
(home-page "https://xyce.sandia.gov/")
(synopsis "High-performance analog circuit simulator")
(description
@@ -2164,39 +2175,33 @@ (define-public xyce-serial
(license license:gpl3+)))
(define trilinos-parallel-xyce
- (package (inherit trilinos-serial-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)))))
+ (substitute-keyword-arguments (package-arguments trilinos-serial-xyce)
+ ((#:configure-flags flags)
+ `(cons*
+ "-DTrilinos_ENABLE_ShyLU=ON"
+ "-DTrilinos_ENABLE_Zoltan=ON"
+ "-DTPL_ENABLE_MPI=ON"
+ ,flags))))
+ (inputs (modify-inputs (package-inputs trilinos-serial-xyce)
+ (append openmpi)))))
(define-public xyce-parallel
- (package (inherit xyce-serial)
+ (package
+ (inherit xyce-serial)
(name "xyce-parallel")
(arguments
- `(,@(substitute-keyword-arguments (package-arguments xyce-serial)
- ((#:configure-flags flags)
- `(list "CXXFLAGS=-O3"
- "CXX=mpiCC"
- "CC=mpicc"
- "F77=mpif77"
- "--enable-mpi"
- (string-append
- "ARCHDIR="
- (assoc-ref %build-inputs "trilinos")))))))
- (propagated-inputs
- `(("mpi" ,openmpi)))
- (inputs
- `(("trilinos" ,trilinos-parallel-xyce)
- ,@(alist-delete "trilinos"
- (package-inputs xyce-serial))))))
+ (substitute-keyword-arguments (package-arguments xyce-serial)
+ ((#:configure-flags _)
+ #~(list "CXX=mpiCC" "CC=mpicc" "F77=mpif77" "--enable-mpi"
+ (string-append "ARCHDIR=" #$(this-package-input "trilinos"))
+ #$@xyce-common-flags))))
+ (propagated-inputs (list openmpi))
+ (inputs (modify-inputs (package-inputs xyce-serial)
+ (replace "trilinos" trilinos-parallel-xyce)))))
(define-public freehdl
(package

base-commit: 85012e64819b39fd6112038134548b415fd5daff
--
2.45.1
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 71920@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 71920
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch