summaryrefslogtreecommitdiff
path: root/editors/sly-quicklisp
diff options
context:
space:
mode:
authorLi-Wen Hsu <lwhsu@FreeBSD.org>2021-03-16 10:38:16 +0000
committerLi-Wen Hsu <lwhsu@FreeBSD.org>2021-03-16 10:38:16 +0000
commit7b94aff4ea1b930810cc29027de515eca25173c1 (patch)
tree54c3582fd4d82b4cc29d7a85e3b0273114eba73e /editors/sly-quicklisp
parentAdd editors/sly-named-readtables (diff)
Add editors/sly-quicklisp: SLY basic support for Quicklisp
PR: 253995 Submitted by: Olivier Certner <olivier.freebsd@free.fr>
Notes
Notes: svn path=/head/; revision=568551
Diffstat (limited to 'editors/sly-quicklisp')
-rw-r--r--editors/sly-quicklisp/Makefile52
-rw-r--r--editors/sly-quicklisp/distinfo3
-rw-r--r--editors/sly-quicklisp/files/patch-sly-quicklisp.el13
-rw-r--r--editors/sly-quicklisp/pkg-descr4
-rw-r--r--editors/sly-quicklisp/pkg-message27
-rw-r--r--editors/sly-quicklisp/pkg-plist6
6 files changed, 105 insertions, 0 deletions
diff --git a/editors/sly-quicklisp/Makefile b/editors/sly-quicklisp/Makefile
new file mode 100644
index 000000000000..c8f7eae01568
--- /dev/null
+++ b/editors/sly-quicklisp/Makefile
@@ -0,0 +1,52 @@
+# $FreeBSD$
+
+PORTNAME= sly-quicklisp
+PORTVERSION= 20200707
+CATEGORIES= editors elisp
+PKGNAMESUFFIX= ${EMACS_PKGNAMESUFFIX}
+
+MAINTAINER= olce.freebsd.ports@certner.fr
+COMMENT= Basic Quicklisp support for SLY
+
+LICENSE= PD
+
+MY_DEPENDS= ${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/sly/sly.el:editors/sly
+BUILD_DEPENDS= ${MY_DEPENDS}
+RUN_DEPENDS= ${MY_DEPENDS}
+
+USES= emacs
+USE_GITHUB= yes
+GH_ACCOUNT= joaotavora
+GH_TAGNAME= 4707b62803d7a29f172e9c5ff993b91187a9aaf3
+
+NO_ARCH= yes
+
+EMACS_COMPILE= ${EMACS_CMD} --batch --no-site-file -L ${WRKSRC} -f batch-byte-compile
+
+PLIST_THIS_LISPDIR= ${EMACS_VERSION_SITE_LISPDIR}/${PORTNAME}
+THIS_LISPDIR= ${PREFIX}/${PLIST_THIS_LISPDIR}
+PLIST_SUB+= THIS_LISPDIR=${PLIST_THIS_LISPDIR}
+
+# File is buggy and can't be used as documented upstream
+EXCLUDED_FILES= ${PORTNAME}-autoloads.el
+
+OPTIONS_DEFINE= DOCS
+
+PORTDOCS= README.md screenshot.png
+
+do-build:
+ cd ${WRKSRC} && ${EMACS_COMPILE} sly-*.el
+
+do-install:
+ @${MKDIR} ${STAGEDIR}${THIS_LISPDIR}
+ (cd ${WRKSRC} && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${THIS_LISPDIR} \
+ "! ( -depth 1 ( ${EXCLUDED_FILES:C/^(.*)$/-name \1 -o/} \
+ ${PORTDOCS:C/^(.*)$/-name \1 -o/} \
+ -name LICENSE -o -name *\.md -o -name \.[^.]* ) )")
+
+post-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${PORTDOCS:%=${WRKSRC}/%} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/editors/sly-quicklisp/distinfo b/editors/sly-quicklisp/distinfo
new file mode 100644
index 000000000000..5bdec69e28fa
--- /dev/null
+++ b/editors/sly-quicklisp/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1613654208
+SHA256 (joaotavora-sly-quicklisp-20200707-4707b62803d7a29f172e9c5ff993b91187a9aaf3_GH0.tar.gz) = 3971edb307545f8389f113e3eca28fc5325cfe26a23b28a480a30b8086e061c7
+SIZE (joaotavora-sly-quicklisp-20200707-4707b62803d7a29f172e9c5ff993b91187a9aaf3_GH0.tar.gz) = 45904
diff --git a/editors/sly-quicklisp/files/patch-sly-quicklisp.el b/editors/sly-quicklisp/files/patch-sly-quicklisp.el
new file mode 100644
index 000000000000..39072257289e
--- /dev/null
+++ b/editors/sly-quicklisp/files/patch-sly-quicklisp.el
@@ -0,0 +1,13 @@
+--- sly-quicklisp.el.orig 2020-07-07 16:35:00 UTC
++++ sly-quicklisp.el
+@@ -91,10 +91,5 @@ in `sly-editing-mode-hook', i.e. lisp files."
+ sly-quicklisp--enabled-dists)
+ "NO QL dists reported so far. Load a system using `sly-quickload'")))
+
+-;;; Automatically add ourselves to `sly-contribs' when this file is loaded
+-;;;###autoload
+-(with-eval-after-load 'sly
+- (add-to-list 'sly-contribs 'sly-quicklisp 'append))
+-
+ (provide 'sly-quicklisp)
+ ;;; sly-quicklisp.el ends here
diff --git a/editors/sly-quicklisp/pkg-descr b/editors/sly-quicklisp/pkg-descr
new file mode 100644
index 000000000000..1fca247bc542
--- /dev/null
+++ b/editors/sly-quicklisp/pkg-descr
@@ -0,0 +1,4 @@
+sly-quicklisp is an external contrib for SLY that provides a `sly-quickload'
+command (C-c C-d C-q) that prompts the user for a package to install.
+
+WWW: https://github.com/joaotavora/sly-quicklisp
diff --git a/editors/sly-quicklisp/pkg-message b/editors/sly-quicklisp/pkg-message
new file mode 100644
index 000000000000..1913bf82d4ee
--- /dev/null
+++ b/editors/sly-quicklisp/pkg-message
@@ -0,0 +1,27 @@
+[
+{ type: install
+ message: <<EOM
+To use the sly-quicklisp contrib, you must:
+1. Register sly-quicklisp into SLY. You just have to add this line to some init
+ file:
+(require 'sly-quicklisp)
+ Doing this is not strictly necessary if you want to automatically activate
+ this contrib using `sly-contribs' (see below), but it never hurts.
+ This contrib's automatic activation at load was disabled, contrary to what
+ upstream does. Upstream's autoloads file is consequently not necessary, and
+ not included in this package.
+2. Ensure that Quicklisp is loaded by your Common Lisp implementation. If this
+ is not the case, an error will be signaled at contrib activation, from which
+ you can recover by using SLY's CONTINUE restart (will disable the contrib).
+
+If you want sly-quicklisp to be automatically activated on each new SLY
+session, put it in the `sly-contribs' list. E.g., you can add something like
+this in some Emacs' init file:
+(setq sly-contribs '(sly-fancy sly-quicklisp))
+or customize the variable.
+
+To enable it on demand in already running SLY sessions instead, just use the
+`sly-enable-contrib' command, or modify `sly-contribs' and run `sly-setup'.
+EOM
+}
+]
diff --git a/editors/sly-quicklisp/pkg-plist b/editors/sly-quicklisp/pkg-plist
new file mode 100644
index 000000000000..f456f2733181
--- /dev/null
+++ b/editors/sly-quicklisp/pkg-plist
@@ -0,0 +1,6 @@
+%%THIS_LISPDIR%%/sly-quicklisp-tests.el
+%%THIS_LISPDIR%%/sly-quicklisp-tests.elc
+%%THIS_LISPDIR%%/sly-quicklisp.el
+%%THIS_LISPDIR%%/sly-quicklisp.elc
+%%THIS_LISPDIR%%/slynk-quicklisp.asd
+%%THIS_LISPDIR%%/slynk-quicklisp.lisp