commit:     8e893d94091af47d6a037ea3b172134f4b72ad9b
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Wed Mar  9 01:36:21 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Wed Mar  9 01:36:44 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e893d94

app-emacs/boogie-friends: new package; add 20210703 (2021.07.03 snapshot)

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 app-emacs/boogie-friends/Manifest                  |  1 +
 .../boogie-friends/boogie-friends-20210703.ebuild  | 46 ++++++++++++++++++++++
 .../files/50boogie-friends-gentoo.el               | 10 +++++
 .../files/boogie-friends-paths.patch               | 12 ++++++
 app-emacs/boogie-friends/metadata.xml              | 18 +++++++++
 5 files changed, 87 insertions(+)

diff --git a/app-emacs/boogie-friends/Manifest 
b/app-emacs/boogie-friends/Manifest
new file mode 100644
index 000000000000..e33124f47ef9
--- /dev/null
+++ b/app-emacs/boogie-friends/Manifest
@@ -0,0 +1 @@
+DIST boogie-friends-20210703.tar.gz 410267 BLAKE2B 
dd00a175e1a5f11916b35f852e90b4cbb6f5f59947075efd1b12b5bea341731a0cba3ba7f42d515d2b8600a96d52d1f2b51ee4fe68274df5e00993443ebc4ecd
 SHA512 
23488a452bd1baa1bc562efe3f7b53b94d58e4bc542a6c3d7c1baa255d379dd056c0cb4168e1d79caaaf746426f612aa5dea1e545931c549dcd0fa3f50751324

diff --git a/app-emacs/boogie-friends/boogie-friends-20210703.ebuild 
b/app-emacs/boogie-friends/boogie-friends-20210703.ebuild
new file mode 100644
index 000000000000..76b9981351b5
--- /dev/null
+++ b/app-emacs/boogie-friends/boogie-friends-20210703.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+H=1e3b6a8aee9fa7c113468838c5b647080caf3703
+
+inherit elisp
+
+DESCRIPTION="Emacs tools for interacting with Boogie, Dafny and Z3 (SMT2)"
+HOMEPAGE="https://github.com/boogie-org/boogie-friends/";
+SRC_URI="https://github.com/boogie-org/${PN}/archive/${H}.tar.gz -> 
${P}.tar.gz"
+S="${WORKDIR}/${PN}-${H}/emacs"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+RESTRICT="test"  # cask and dafny are needed for tests
+
+RDEPEND="
+       app-emacs/company-mode
+       app-emacs/dash
+       app-emacs/flycheck
+       app-emacs/yasnippet
+"
+BDEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${PN}-paths.patch )
+
+ELISP_REMOVE="boogie-friends-pkg.el"
+SITEFILE="50${PN}-gentoo.el"
+
+DOCS=( ../README.md pictures )
+
+src_prepare() {
+       elisp_src_prepare
+
+       sed -i "s|@SITEETC@|${EPREFIX}${SITEETC}/${PN}|" ./boogie-friends.el || 
die
+}
+
+src_install() {
+       elisp_src_install
+
+       insinto "${SITEETC}/${PN}"
+       doins -r etc
+}

diff --git a/app-emacs/boogie-friends/files/50boogie-friends-gentoo.el 
b/app-emacs/boogie-friends/files/50boogie-friends-gentoo.el
new file mode 100644
index 000000000000..60d2fd32c5ef
--- /dev/null
+++ b/app-emacs/boogie-friends/files/50boogie-friends-gentoo.el
@@ -0,0 +1,10 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'boogie-mode "boogie-mode"
+  "Major mode for editing Boogie programs." t)
+(add-to-list 'auto-mode-alist '("\\.bpl\\'" . boogie-mode))
+(autoload 'dafny-mode "dafny-mode"
+  "Major mode for editing Dafny programs." t)
+(add-to-list 'auto-mode-alist '("\\.dfy\\'" . dafny-mode))
+(autoload 'z3-smt2-mode "z3-smt2-mode"
+  "Major mode for editing SMT2 programs." t)
+(add-to-list 'auto-mode-alist '("\\.smt2\\'" . z3-smt2-mode))

diff --git a/app-emacs/boogie-friends/files/boogie-friends-paths.patch 
b/app-emacs/boogie-friends/files/boogie-friends-paths.patch
new file mode 100644
index 000000000000..46a01de6c8fa
--- /dev/null
+++ b/app-emacs/boogie-friends/files/boogie-friends-paths.patch
@@ -0,0 +1,12 @@
+index e55ba5b..e745367 100644
+--- a/boogie-friends.el
++++ b/boogie-friends.el
+@@ -70,7 +70,7 @@
+   "IDE extensions for the programming languages of the Boogie family."
+   :group 'languages)
+ 
+-(defconst boogie-friends-directory (file-name-directory load-file-name)
++(defconst boogie-friends-directory "@SITEETC@"
+   "Base directory of this package.")
+ 
+ (defconst boogie-friends-symbols-alist '(("<=" . ?≤) (">=" . ?≥) ("!=" . ?≠) 
(":=" . ?≔)

diff --git a/app-emacs/boogie-friends/metadata.xml 
b/app-emacs/boogie-friends/metadata.xml
new file mode 100644
index 000000000000..c4a8561cc195
--- /dev/null
+++ b/app-emacs/boogie-friends/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+
+<pkgmetadata>
+  <maintainer type="project">
+    <email>[email protected]</email>
+    <name>Gentoo GNU Emacs project</name>
+  </maintainer>
+  <longdescription>
+    This package is a collection of tools for writing verified programs in
+    languages of the Boogie family. Dafny and Boogie are the two currently
+    supported languages, besides Z3.
+  </longdescription>
+  <upstream>
+    <bugs-to>https://github.com/boogie-org/boogie-friends/issues/</bugs-to>
+    <remote-id type="github">boogie-org/boogie-friends</remote-id>
+  </upstream>
+</pkgmetadata>

Reply via email to