forked from slime/slime
-
Notifications
You must be signed in to change notification settings - Fork 0
/
swank.asd
36 lines (30 loc) · 1.18 KB
/
swank.asd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
;;; -*- lisp -*-
;; ASDF system definition for loading the Swank server independently
;; of Emacs.
;;
;; This is only useful if you want to start a Swank server in a Lisp
;; processes that doesn't run under Emacs. Lisp processes created by
;; `M-x slime' automatically start the server.
;; Usage:
;;
;; (require :swank)
;; (swank:create-swank-server PORT) => ACTUAL-PORT
;;
;; (PORT can be zero to mean "any available port".)
;; Then the Swank server is running on localhost:ACTUAL-PORT. You can
;; use `M-x slime-connect' to connect Emacs to it.
;;
;; This code has been placed in the Public Domain. All warranties
;; are disclaimed.
(defclass swank-loader-file (asdf:cl-source-file) ())
;;;; after loading run init
(defmethod asdf:perform ((o asdf:load-op) (f swank-loader-file))
;; swank-loader computes its own source/fasl relation based on the
;; TRUENAME of the loader file, so we need a "manual" CL:LOAD
;; invocation here.
(load (asdf::component-pathname f))
;; After loading, run the swank-loader init routines.
(funcall (read-from-string "swank-loader::init") :reload t))
(asdf:defsystem :swank
:default-component-class swank-loader-file
:components ((:file "swank-loader")))