summary refs log tree commit diff
path: root/gnu/packages/maths.scm
diff options
context:
space:
mode:
authorEric Brown <ecbrown@ericcbrown.com>2021-05-25 00:58:50 -0500
committerLudovic Courtès <ludo@gnu.org>2021-05-28 23:04:43 +0200
commitf5871b19cc32593149b91ca3f33075200844b4c0 (patch)
treea4056674c76a5cf1a9991fbf881bceda2ee53920 /gnu/packages/maths.scm
parenta44fa3742c34a017d1a9a06c45c03f429614e584 (diff)
downloadguix-f5871b19cc32593149b91ca3f33075200844b4c0.tar.gz
gnu: Add cbc.
* gnu/packages/maths.scm (cbc): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/maths.scm')
-rw-r--r--gnu/packages/maths.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 3d7248417b..59598a242d 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -1798,6 +1798,35 @@ large-scale nonlinear optimization.  It provides C++, C, and Fortran
 interfaces.")
     (license license:epl1.0)))
 
+(define-public cbc
+  (package
+    (name "cbc")
+    (version "2.10.5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://www.coin-or.org/download/source/"
+                                  "Cbc/Cbc-" version ".tgz"))
+              (sha256
+               (base32
+                "0wk9vr6zc62gw71v7gnra5wxqlcljcgbhm5lasx236v791b986ns"))
+              (modules '((guix build utils)))
+              (snippet
+               ;; Make sure we don't use the bundled software.
+               '(delete-file-recursively "ThirdParty"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("gfortran" ,gfortran)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("openblas" ,openblas)))
+    (home-page "https://www.coin-or.org")
+    (synopsis "Branch-and-cut solver")
+    (description
+     "Cbc (Coin-or branch and cut) is a mixed integer linear programming
+solver written in C++.  It can be used as a library or as a standalone
+executable.")
+    (license license:epl1.0)))
+
 (define-public clp
   (package
     (name "clp")