commit:     3fea7beee694cc0d1e63127e4a6aef19128fd99b
Author:     Chema Alonso Josa <nimiux <AT> gentoo <DOT> org>
AuthorDate: Sun Apr  8 15:40:07 2018 +0000
Commit:     José María Alonso <nimiux <AT> gentoo <DOT> org>
CommitDate: Sun Apr  8 15:40:07 2018 +0000
URL:        https://gitweb.gentoo.org/proj/lisp.git/commit/?id=3fea7bee

app-emacs/slime: Fixes doc build

 .../slime/files/slime-2.20-fix-doc-build.patch     | 94 ++++++++++++++++++++++
 app-emacs/slime/files/swank-loader.lisp            |  4 -
 app-emacs/slime/metadata.xml                       | 43 ++++++++++
 app-emacs/slime/slime-2.20.ebuild                  | 18 +++--
 4 files changed, 148 insertions(+), 11 deletions(-)

diff --git a/app-emacs/slime/files/slime-2.20-fix-doc-build.patch 
b/app-emacs/slime/files/slime-2.20-fix-doc-build.patch
new file mode 100644
index 00000000..c95608c7
--- /dev/null
+++ b/app-emacs/slime/files/slime-2.20-fix-doc-build.patch
@@ -0,0 +1,94 @@
+diff -Nuar a/doc/slime.texi b/doc/slime.texi
+--- a/doc/slime.texi   2017-08-28 13:51:57.000000000 +0200
++++ b/doc/slime.texi   2018-04-08 17:21:16.004697168 +0200
+@@ -1219,7 +1219,8 @@
+ Describe the slot at point.
+ 
+ @kbditem{e, slime-inspector-eval}
+-Evaluate an expression in the context of the inspected object.
++Evaluate an expression in the context of the inspected object.  The
++variable @code{*} will be bound to the inspected object.
+ 
+ @kbditem{v, slime-inspector-toggle-verbose}
+ Toggle between verbose and terse mode. Default is determined by
+@@ -1250,8 +1251,7 @@
+ Store the value under point in the variable `*'.  This can
+ then be used to access the object in the REPL.
+ 
+-@kbditempair{TAB, S-TAB, slime-inspector-next-inspectable-object,
+-slime-inspector-previous-inspectable-object}
++@kbditempair{TAB, S-TAB, slime-inspector-next-inspectable-object, 
slime-inspector-previous-inspectable-object}
+ 
+ Jump to the next and previous inspectable object respectively.
+ 
+@@ -2016,7 +2016,7 @@
+ On the emacs side you will use something like
+ @example
+ (setq slime-net-coding-system 'utf-8-unix)
+-(slime-connect "127.0.0.1" 4005))
++(slime-connect "localhost" 4005))
+ @end example
+ to connect to this lisp image from the same machine.
+ 
+@@ -2028,7 +2028,7 @@
+ remote machine.
+ 
+ @example
+-ssh -L4005:127.0.0.1:4005 username@@remote.example.com
++ssh -L4005:localhost:4005 username@@remote.example.com
+ @end example
+ 
+ That ssh invocation creates an ssh tunnel between the port 4005 on our
+@@ -2044,9 +2044,9 @@
+ @end example
+ 
+ The @kbd{RET RET} sequence just means that we want to use the default
+-host (@code{127.0.0.1}) and the default port (@code{4005}). Even
++host (@code{localhost}) and the default port (@code{4005}). Even
+ though we're connecting to a remote machine the ssh tunnel fools Emacs
+-into thinking it's actually @code{127.0.0.1}.
++into thinking it's actually @code{localhost}.
+ 
+ @c -----------------------
+ @node Setting up pathname translations
+@@ -2323,8 +2323,7 @@
+ 
+ @table @kbd
+ 
+-@kbditempair{C-<up>, C-<down>,
+-             slime-repl-forward-input, slime-repl-backward-input}
++@kbditempair{C-<up>, C-<down>, slime-repl-forward-input, 
slime-repl-backward-input}
+ Go to the next/previous history item.
+ 
+ @kbditempair{M-n, M-p, slime-repl-next-input, slime-repl-previous-input}
+@@ -2333,16 +2332,14 @@
+ a row, the second invocation uses the same search pattern (even if the
+ current input has changed).
+ 
+-@kbditempair{M-s, M-r,
+-slime-repl-next-matching-input, slime-repl-previous-matching-input}
++@kbditempair{M-s, M-r, slime-repl-next-matching-input, 
slime-repl-previous-matching-input}
+ Search forward/reverse through command history with regex
+ 
+ @c @code{slime-repl-@{next,previous@}-input}@*
+ @c @code{slime-repl-@{next,previous@}-matching-input}@*
+ @c @code{comint}-style input history commands.
+ 
+-@kbditempair{C-c C-n, C-c C-p,
+-slime-repl-next-prompt, slime-repl-previous-prompt}
++@kbditempair{C-c C-n, C-c C-p, slime-repl-next-prompt, 
slime-repl-previous-prompt}
+ Move between the current and previous prompts in the @REPL{} buffer.
+ Pressing RET on a line with old input copies that line to the newest
+ prompt.
+@@ -2655,6 +2652,11 @@
+ If @code{slime-autodoc-use-multiline-p} is set to non-nil,
+ allow long autodoc messages to resize echo area display.
+ 
++@vindex slime-autodoc-mode-string
++@code{slime-autodoc-mode-string} is a string that will be displayed in
++the mode line when autodoc-mode is enabled, or nil, if you prefer no
++indication. You can customize this variable.
++
+ @node ASDF
+ @section ASDF
+ 

diff --git a/app-emacs/slime/files/swank-loader.lisp 
b/app-emacs/slime/files/swank-loader.lisp
deleted file mode 100644
index 4d9b1573..00000000
--- a/app-emacs/slime/files/swank-loader.lisp
+++ /dev/null
@@ -1,4 +0,0 @@
-
-;; This file is NOT part of SLIME
-
-(asdf:oos 'asdf:load-op :swank)

diff --git a/app-emacs/slime/metadata.xml b/app-emacs/slime/metadata.xml
new file mode 100644
index 00000000..17cb00f7
--- /dev/null
+++ b/app-emacs/slime/metadata.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+<maintainer type="project">
+  <email>gnu-em...@gentoo.org</email>
+  <name>Gentoo GNU Emacs project</name>
+</maintainer>
+<maintainer type="project">
+  <email>common-l...@gentoo.org</email>
+  <name>Gentoo Common Lisp Project</name>
+</maintainer>
+<longdescription>
+  SLIME: The Superior Lisp Interaction Mode for Emacs.  SLIME is a
+  fresh, new Emacs mode for Common Lisp development inspired by existing
+  systems such Emacs Lisp and ILISP. Feature highlights include:
+
+    * slime-mode: An Emacs minor-mode to enhance lisp-mode with:
+      o Code evaluation, compilation, and macroexpansion.
+      o Online documentation (describe, apropos, hyperspec).
+      o Definition finding (aka Meta-Point aka M-.).
+      o Symbol and package name completion.
+      o Automatic macro indentation based on &amp;body.
+      o Cross-reference interface (WHO-CALLS, etc).
+      o ... and more.
+
+    * SLDB: Common Lisp debugger with an Emacs-based user interface.
+
+    * REPL: The Read-Eval-Print Loop ("top-level") is written in Emacs
+      Lisp for tighter integration with Emacs. The REPL also has builtin
+      "shortcut" commands similar those of the McCLIM Listener.
+
+    * Compilation notes: SLIME is able to take compiler messages and
+      annotate them directly into source buffers.
+
+    * Inspector: Interactive object-inspector in an Emacs buffer.
+</longdescription>
+<use>
+  <flag name="xref">Install xref.lisp cross-referencing tool</flag>
+</use>
+<upstream>
+  <remote-id type="github">slime/slime</remote-id>
+</upstream>
+</pkgmetadata>

diff --git a/app-emacs/slime/slime-2.20.ebuild 
b/app-emacs/slime/slime-2.20.ebuild
index b8a5bdb9..73d436c1 100644
--- a/app-emacs/slime/slime-2.20.ebuild
+++ b/app-emacs/slime/slime-2.20.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=6
 
-inherit elisp eutils
+inherit elisp
 
 DESCRIPTION="SLIME, the Superior Lisp Interaction Mode (Extended)"
 HOMEPAGE="http://common-lisp.net/project/slime/";
@@ -25,22 +25,26 @@ CLPACKAGE=swank
 CLSYSTEMS=swank
 SITEFILE=70${PN}-gentoo.el
 
+PATCHES=(
+       # Should be fixed in >=app-emacs/slime-2.20
+       "${FILESDIR}/${PN}-2.20-fix-doc-build.patch"
+)
+
 src_prepare() {
+       default
        # Remove xref.lisp (which is non-free) unless USE flag is set
        use xref || rm -f xref.lisp
-       eapply_user
 }
 
 src_compile() {
        elisp-compile *.el || die
        BYTECOMPFLAGS="${BYTECOMPFLAGS} -L contrib -l slime" \
                elisp-compile contrib/*.el lib/*.el || die
-       emake -j1 -C doc slime.info || die "Cannot build info docs"
 
-       #if use doc; then
-       #       VARTEXFONTS="${T}"/fonts \
-       #               emake -j1 -C doc slime.pdf || die "emake doc failed"
-       #fi
+       if use doc ; then
+               VARTEXFONTS="${T}"/fonts \
+                       emake -C doc all
+       fi
 }
 
 src_install() {

Reply via email to