gnu: Add plasp.
* gnu/packages/patches/plasp-fix-normalization.patch: New file. * gnu/packages/patches/plasp-include-iostream.patch: New file. * gnu/local.mk (dist_patch_DATA): Register them here. * gnu/packages/potassoc.scm (plasp): New variable. Change-Id: I0d8d64153b180a7d1d8d81888f843458efdf5e51master
parent
9408fa3754
commit
c34c3b1c2b
|
@ -1751,6 +1751,8 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/password-store-tree-compat.patch \
|
||||
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \
|
||||
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
|
||||
%D%/packages/patches/plasp-fix-normalization.patch \
|
||||
%D%/packages/patches/plasp-include-iostream.patch \
|
||||
%D%/packages/patches/pocketfft-cpp-prefer-preprocessor-if.patch \
|
||||
%D%/packages/patches/pokerth-boost.patch \
|
||||
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
From cddbfa3ade23695dd9996f6e208615702a3a42e1 Mon Sep 17 00:00:00 2001
|
||||
From: Liliana Marie Prikler <liliana.prikler@ist.tugraz.at>
|
||||
Date: Thu, 23 Nov 2023 09:53:38 +0100
|
||||
Subject: [PATCH 1/2] normalization: No longer work around compiler bugs in
|
||||
Precondition.
|
||||
To: Patrick Lühne <patrick-github@luehne.de>
|
||||
Cc: Martin Gebser <martin.gebser@aau.at>
|
||||
|
||||
Newer versions of GCC (such as GCC 11) point out that std::move is meaningless
|
||||
in this position, so remove it.
|
||||
---
|
||||
lib/pddl/src/pddl/detail/normalization/Precondition.cpp | 9 +++------
|
||||
1 file changed, 3 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/lib/pddl/src/pddl/detail/normalization/Precondition.cpp b/lib/pddl/src/pddl/detail/normalization/Precondition.cpp
|
||||
index 4eebfee..4297e52 100644
|
||||
--- a/lib/pddl/src/pddl/detail/normalization/Precondition.cpp
|
||||
+++ b/lib/pddl/src/pddl/detail/normalization/Precondition.cpp
|
||||
@@ -83,8 +83,7 @@ normalizedAST::Literal normalizeNested(ast::AndPointer<ast::Precondition> &and_,
|
||||
|
||||
derivedPredicate->declaration->precondition = std::make_unique<normalizedAST::And<normalizedAST::Literal>>(std::move(normalizedArguments));
|
||||
|
||||
- // TODO: investigate, could be a compiler bug
|
||||
- return std::move(derivedPredicate);
|
||||
+ return derivedPredicate;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -112,8 +111,7 @@ normalizedAST::Literal normalizeNested(ast::ExistsPointer<ast::Precondition> &ex
|
||||
return normalizeTopLevel(x, normalizationContext);
|
||||
});
|
||||
|
||||
- // TODO: investigate, could be a compiler bug
|
||||
- return std::move(derivedPredicate);
|
||||
+ return derivedPredicate;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -174,8 +172,7 @@ normalizedAST::Literal normalizeNested(ast::OrPointer<ast::Precondition> &or_, d
|
||||
|
||||
derivedPredicate->declaration->precondition = std::make_unique<normalizedAST::Or<normalizedAST::Literal>>(std::move(normalizedArguments));
|
||||
|
||||
- // TODO: investigate, could be a compiler bug
|
||||
- return std::move(derivedPredicate);
|
||||
+ return derivedPredicate;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
--
|
||||
2.41.0
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
From 95c6a506e14cf248e2a3cae2ed3f41ed1eedf278 Mon Sep 17 00:00:00 2001
|
||||
From: Liliana Marie Prikler <liliana.prikler@ist.tugraz.at>
|
||||
Date: Thu, 23 Nov 2023 09:53:38 +0100
|
||||
Subject: [PATCH 2/2] app: Add missing #include <iostream>.
|
||||
To: Patrick Lühne <patrick-github@luehne.de>
|
||||
Cc: Martin Gebser <martin.gebser@aau.at>
|
||||
|
||||
---
|
||||
app/include/plasp-app/Command.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/app/include/plasp-app/Command.h b/app/include/plasp-app/Command.h
|
||||
index 5755ee3..671804b 100644
|
||||
--- a/app/include/plasp-app/Command.h
|
||||
+++ b/app/include/plasp-app/Command.h
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef __PLASP_APP__COMMAND_H
|
||||
#define __PLASP_APP__COMMAND_H
|
||||
|
||||
+#include <iostream> // std::cout, std::endl
|
||||
#include <tuple>
|
||||
|
||||
#include <cxxopts.hpp>
|
||||
--
|
||||
2.41.0
|
||||
|
|
@ -243,6 +243,38 @@ satisfiability checking (SAT).")
|
|||
over difference logic.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public plasp
|
||||
(package
|
||||
(name "plasp")
|
||||
(version "3.1.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/potassco/plasp")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "123v1bjzh7yjwgcc5k55rkfz0lfl8ish5p3z8x3pn8k1svd50xal"))
|
||||
(patches (search-patches
|
||||
"plasp-fix-normalization.patch"
|
||||
"plasp-include-iostream.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ; No ‘test’ target
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(copy-recursively "bin"
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/bin")))))))
|
||||
(inputs (list cxxopts mapbox-variant))
|
||||
(home-page "https://potassco.org/")
|
||||
(synopsis "ASP planning tools for PDDL")
|
||||
(description "@command{plasp} is a tool collection for planning in
|
||||
answer set programming. It supports a subset of PDDL 3.1 and SAS 3.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public emacs-pasp-mode
|
||||
(let ((commit "59385eb0e8ebcfc8c11dd811fb145d4b0fa3cc92")
|
||||
(revision "1"))
|
||||
|
|
Reference in New Issue