slynk.asd (3230B)
1 ;;; -*- lisp -*- 2 (in-package :asdf) 3 4 ;; ASDF system definition for loading the Slynk server independently 5 ;; of Emacs. 6 ;; 7 ;; Usage: 8 ;; 9 ;; (push #p"/path/to/this/file/" asdf:*central-registry*) 10 ;; (asdf:load-system :slynk) 11 ;; (slynk:create-server :port PORT) => ACTUAL-PORT 12 ;; 13 ;; (PORT can be zero to mean "any available port".) 14 ;; Then the Slynk server is running on localhost:ACTUAL-PORT. You can 15 ;; use `M-x sly-connect' to connect Emacs to it. 16 ;; 17 ;; This code has been placed in the Public Domain. All warranties 18 ;; are disclaimed. 19 20 (defsystem :slynk 21 :serial t 22 :components 23 ((:file "slynk-backend") 24 ;; If/when we require ASDF3, we shall use :if-feature instead 25 #+(or cmu sbcl scl) 26 (:file "slynk-source-path-parser") 27 #+(or cmu ecl sbcl scl) 28 (:file "slynk-source-file-cache") 29 #+clisp 30 (:file "xref") 31 #+(or clisp clozure clasp) 32 (:file "metering") 33 (:module "backend" 34 :serial t 35 :components (#+allegro 36 (:file "allegro") 37 #+armedbear 38 (:file "abcl") 39 #+clisp 40 (:file "clisp") 41 #+clozure 42 (:file "ccl") 43 #+cmu 44 (:file "cmucl") 45 #+cormanlisp 46 (:file "corman") 47 #+ecl 48 (:file "ecl") 49 #+lispworks 50 (:file "lispworks") 51 #+sbcl 52 (:file "sbcl") 53 #+clasp 54 (:file "clasp") 55 #+scl 56 (:file "scl") 57 #+mkcl 58 (:file "mkcl"))) 59 #-armedbear 60 (:file "slynk-gray") 61 (:file "slynk-match") 62 (:file "slynk-rpc") 63 (:file "slynk") 64 (:file "slynk-completion") 65 (:file "slynk-apropos"))) 66 67 (defmethod perform :after ((o load-op) (c (eql (find-system :slynk)))) 68 (format *debug-io* "~&SLYNK's ASDF loader finished.") 69 (funcall (read-from-string "slynk::init"))) 70 71 #+sbcl 72 (defmethod operate :around ((o load-op) (c (eql (find-system :slynk))) &key &allow-other-keys) 73 (let ((asdf:*compile-file-failure-behaviour* :warn) 74 (sb-ext:*on-package-variance* '(:warn t))) 75 (call-next-method))) 76 77 78 ;;; Contrib systems (should probably go into their own file one day) 79 ;;; 80 (defsystem :slynk/arglists 81 :depends-on (:slynk) 82 :components ((:file "../contrib/slynk-arglists"))) 83 84 (defsystem :slynk/fancy-inspector 85 :depends-on (:slynk) 86 :components ((:file "../contrib/slynk-fancy-inspector"))) 87 88 (defsystem :slynk/package-fu 89 :depends-on (:slynk) 90 :components ((:file "../contrib/slynk-package-fu"))) 91 92 (defsystem :slynk/mrepl 93 :depends-on (:slynk) 94 :components ((:file "../contrib/slynk-mrepl"))) 95 96 (defsystem :slynk/trace-dialog 97 :depends-on (:slynk) 98 :components ((:file "../contrib/slynk-trace-dialog"))) 99 100 (defsystem :slynk/profiler 101 :depends-on (:slynk) 102 :components ((:file "../contrib/slynk-profiler"))) 103 104 (defsystem :slynk/stickers 105 :depends-on (:slynk) 106 :components ((:file "../contrib/slynk-stickers"))) 107 108 (defsystem :slynk/indentation 109 :depends-on (:slynk) 110 :components ((:file "../contrib/slynk-indentation"))) 111 112 (defsystem :slynk/retro 113 :depends-on (:slynk) 114 :components ((:file "../contrib/slynk-retro"))) 115