summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorDavid Elsing <david.elsing@posteo.net>2023-06-25 10:03:58 +0000
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2023-07-01 11:53:20 +0200
commit770f4ef198cf23f9cfabef95f38f24abe9502b35 (patch)
tree128bb5e0ee925fcfc058d41a002dab7bde0f7bba /gnu
parent1a86c362a1d5c46ce3cc374daf185140ce8cc9f3 (diff)
gnu: clingo: Unbundle dependencies.
* gnu/packages/potassco.scm: (clingo)[#:phases]: Patch CMakeLists.txt files to use external dependencies. [native-inputs]: Add mpark-variant, tl-optional, tsl-hopscotch-map, tsl-ordered-map and tsl-sparse-map. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/potassco.scm24
1 files changed, 20 insertions, 4 deletions
diff --git a/gnu/packages/potassco.scm b/gnu/packages/potassco.scm
index 03d243cdc7..b8e51e7d47 100644
--- a/gnu/packages/potassco.scm
+++ b/gnu/packages/potassco.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022, 2023 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2023 Simon Tournier <zimon.toutoune@gmail.com>
+;;; Copyright © 2023 David Elsing <david.elsing@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -31,6 +32,7 @@
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (gnu packages check)
+ #:use-module (gnu packages cpp)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages libffi)
#:use-module (gnu packages pkg-config)
@@ -153,8 +155,7 @@ satisfiability checking (SAT).")
(snippet
#~(begin
(delete-file-recursively "clasp")
- ;; TODO: Unvendor other third-party stuff
- (delete-file-recursively "third_party/catch")))
+ (delete-file-recursively "third_party")))
(sha256
(base32
"19s59ndcm2yj0kxlikfxnx2bmp6b7n31wq1zvwc7hyk37rqarwys"))))
@@ -173,12 +174,22 @@ satisfiability checking (SAT).")
(lambda _
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(clasp\\)")
- "find_package(clasp REQUIRED)"))
+ "find_package(clasp REQUIRED)")
+ (("add_subdirectory\\(third_party\\)")
+ (string-append
+ "find_package(tsl-hopscotch-map)\n"
+ "find_package(tl-optional)\n"
+ "find_package(mpark_variant)\n"
+ "find_package(tsl-sparse-map)\n"
+ "find_package(tsl-ordered-map)\n"
+ "find_package(Catch2 3 REQUIRED)")))
(substitute* "libclingo/CMakeLists.txt"
(("\"cmake/Clingo\"") "\"cmake/clingo\"")
(("ClingoConfig\\.cmake") "clingo-config.cmake")
(("ClingoConfigVersion\\.cmake")
"clingo-config-version.cmake"))
+ (substitute* "libgringo/CMakeLists.txt"
+ (("mpark::variant") "mpark_variant"))
(substitute* "cmake/ClingoConfig.cmake.in"
(("find_package\\(Clasp") "find_package(clasp"))
(rename-file "cmake/ClingoConfig.cmake.in"
@@ -199,7 +210,12 @@ satisfiability checking (SAT).")
"propagator" "propgator-sequence-mining"
"symbol" "visitor"))))))))))
(inputs (list catch2-3.1 clasp libpotassco))
- (native-inputs (list pkg-config))
+ (native-inputs (list mpark-variant
+ pkg-config
+ tl-optional
+ tsl-hopscotch-map
+ tsl-ordered-map
+ tsl-sparse-map))
(home-page "https://potassco.org/")
(synopsis "Grounder and solver for logic programs")
(description "Clingo computes answer sets for a given logic program.")