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/password-store-tree-compat.patch \
|
||||||
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.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/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/pocketfft-cpp-prefer-preprocessor-if.patch \
|
||||||
%D%/packages/patches/pokerth-boost.patch \
|
%D%/packages/patches/pokerth-boost.patch \
|
||||||
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.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.")
|
over difference logic.")
|
||||||
(license license:expat)))
|
(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
|
(define-public emacs-pasp-mode
|
||||||
(let ((commit "59385eb0e8ebcfc8c11dd811fb145d4b0fa3cc92")
|
(let ((commit "59385eb0e8ebcfc8c11dd811fb145d4b0fa3cc92")
|
||||||
(revision "1"))
|
(revision "1"))
|
||||||
|
|
Reference in New Issue