From 26ec69009f35a93593924c1df6fd3565e13f8bc2 Mon Sep 17 00:00:00 2001 From: Herman Rimm Date: Sat, 30 Mar 2024 12:42:39 +0100 Subject: gnu: Add chuffed. * gnu/packages/maths.scm (chuffed): Add variable. Change-Id: I77fc1ceb9caa42833689fba771010aeb38443e5e --- gnu/packages/maths.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 2990ab212e..1ca1c97117 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -306,6 +306,43 @@ programmatic functions.") (home-page "http://www.isthe.com/chongo/tech/comp/calc/") (license license:lgpl2.1))) +(define-public chuffed + (package + (name "chuffed") + (version "0.13.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/chuffed/chuffed") + (commit version))) + (sha256 + (base32 + "1c28q166qh84q4i5wz77fqvw7kld3fmhd245sgdvyxcbjpi2wr0m")))) + (build-system cmake-build-system) + (synopsis "Lazy clause generation solver") + (arguments '(#:tests? #f ; no 'check' target + #:modules ((guix build cmake-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-before 'build 'patch-msc + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "chuffed.msc" + ;; TODO: Replace fzn-chuffed and chuffed path + ;; before build. + (("\\.\\./../..") out) + (("\\.\\.") + (string-append + out "/share/minizinc"))))))))) + (description + "Chuffed is a state of the art lazy clause solver designed from the +ground up with lazy clause generation in mind. Lazy clause generation +is a hybrid approach to constraint solving that combines features of +finite domain propagation and Boolean satisfiability.") + (home-page "https://github.com/chuffed/chuffed") + (license license:expat))) + (define-public coda (package (name "coda") -- cgit v1.2.3