mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-05-18 15:15:54 +02:00
gnu: Add netcdf-cxx4 and netcdf-cxx4-parallel-openmpi.
* gnu/packages/maths.scm (netcdf-cxx4): New variable. * gnu/packages/maths.scm (netcdf-cxx4-parallel-openmpi: New variable. Change-Id: I9781aa31567b80e20c528abb5e9289bc625bb3eb Co-authored-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
committed by
Ludovic Courtès
parent
edc4f16cef
commit
f00dedf06a
@@ -2381,6 +2381,71 @@ sharing of scientific data.")
|
||||
(home-page (package-home-page netcdf))
|
||||
(license (package-license netcdf))))
|
||||
|
||||
(define-public netcdf-cxx4
|
||||
(package
|
||||
(name "netcdf-cxx4")
|
||||
(version "4.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Unidata/netcdf-cxx4")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05kydd5z9iil5iv4fp7l11cicda5n5lsg5sdmsmc55xpspnsg7hr"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-configure
|
||||
(lambda _
|
||||
(substitute* "libnetcdf-cxx.settings.in"
|
||||
;; Don't record the build-time host, time and gcc path to make the
|
||||
;; settings file reproducible.
|
||||
(("@CONFIG_DATE@")
|
||||
"Not set (Guix build)")
|
||||
(("@host_cpu@-@host_vendor@-@host_os@")
|
||||
"Linux")
|
||||
(("@CC_VERSION@")
|
||||
"gcc"))
|
||||
;; The filter tests fail with 'Caught unexpected exception'.
|
||||
(substitute* "cxx4/CMakeLists.txt"
|
||||
(("add_bin_test\\(cxx4 test_filter\\)")
|
||||
""))
|
||||
(substitute* "examples/CMakeLists.txt"
|
||||
(("add_sh_test\\(examples tst_filter\\)")
|
||||
""))))
|
||||
(add-after 'install 'clear-reference-to-compiler
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Do not retain a reference to GCC and other build only inputs.
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* (string-append out "/bin/ncxx4-config")
|
||||
(("cc=([[:graph:]]+)/bin/gcc")
|
||||
"cc=\"gcc")
|
||||
(("cxx=([[:graph:]]+)/bin/c\\+\\+")
|
||||
"cxx=\"c++"))))))
|
||||
#:configure-flags (list (string-append "-DHDF5_C_LIBRARY_hdf5="
|
||||
(search-input-file
|
||||
%build-inputs
|
||||
"/lib/libhdf5.so")))))
|
||||
(inputs (list netcdf hdf5))
|
||||
(home-page "https://github.com/Unidata/netcdf-cxx4")
|
||||
(synopsis "NetCDF C++ interface")
|
||||
(description
|
||||
"This package provides a C++ interface to the NetCDF library for
|
||||
scientific data storage.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public netcdf-cxx4-parallel-openmpi
|
||||
(package
|
||||
(inherit netcdf-cxx4)
|
||||
(name "netcdf-cxx4-parallel-openmpi")
|
||||
(synopsis "NetCDF C++ interface (with MPI support)")
|
||||
(inputs (modify-inputs (package-inputs netcdf-cxx4)
|
||||
(prepend openmpi)
|
||||
(replace "hdf5" hdf5-parallel-openmpi)
|
||||
(replace "netcdf" netcdf-parallel-openmpi)))))
|
||||
|
||||
(define-public n2p2
|
||||
(package
|
||||
(name "n2p2")
|
||||
|
||||
Reference in New Issue
Block a user