diff options
author | Vinicius Monego <monego@posteo.net> | 2023-07-30 11:18:23 -0300 |
---|---|---|
committer | Vinicius Monego <monego@posteo.net> | 2023-09-30 10:37:47 -0300 |
commit | 35a00cf3dc040513ee8314f3ea3b98ff10256785 (patch) | |
tree | 8bb79927dc32982240489e3bacffc87b1e8cd37d | |
parent | 39eb0d8a9454b96dbdbc5d098c95d9da4fb071ae (diff) | |
download | guix-35a00cf3dc040513ee8314f3ea3b98ff10256785.tar.gz guix-35a00cf3dc040513ee8314f3ea3b98ff10256785.zip |
gnu: Add pagmo.
* gnu/packages/maths.scm (pagmo): New variable.
-rw-r--r-- | gnu/packages/maths.scm | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 9e34da7ad0..24fcd95493 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1390,6 +1390,39 @@ Extern C linkage permits the package routines to be called from C++.") NonLinear Programming) problems. It builds on top of Cbc and Ipopt.") (license license:epl1.0))) +(define-public pagmo + (package + (name "pagmo") + (version "2.19.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/esa/pagmo2") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0g0j0k0cwp8kyyggj80s5cd24bl6gqmf6f5g7j2axswr2bdj16fg")))) + (build-system cmake-build-system) + (arguments + (list #:configure-flags #~(list "-DPAGMO_BUILD_TESTS=ON" + "-DPAGMO_WITH_EIGEN3=ON"))) + ;; Eigen is optional, enables some extra features. + (inputs (list boost eigen tbb)) + (home-page "https://esa.github.io/pagmo2/") + (synopsis + "Platform to perform parallel computations of optimisation tasks") + (description "@code{pagmo} is a C++ scientific library for massively +parallel optimization. It is built around the idea of providing a unified +interface to optimization algorithms and to optimization problems and to make +their deployment in massively parallel environments easy.") + ;; Pagmo only supports 64-bit x86, ARM and PowerPC: + ;; https://esa.github.io/pagmo2/install.html + (supported-systems '("x86_64-linux" "aarch64-linux" "armhf-linux" + "powerpc64le-linux")) + ;; Dual licensed, user choice. + (license (list license:lgpl3+ license:gpl3+)))) + (define-public gctp (package (name "gctp") |