diff options
author | Ulrich Müller <ulm@gentoo.org> | 2008-08-01 14:53:09 +0000 |
---|---|---|
committer | Ulrich Müller <ulm@gentoo.org> | 2008-08-01 14:53:09 +0000 |
commit | 43a430a3ac4b05d70e8aa858823dcd9f7558f3e1 (patch) | |
tree | 8e0debee872677aa0f9364e0506dde48f6d3267a /app-emacs/slime/files | |
parent | Version bump: new CVS snapshot. (diff) | |
download | gentoo-2-43a430a3ac4b05d70e8aa858823dcd9f7558f3e1.tar.gz gentoo-2-43a430a3ac4b05d70e8aa858823dcd9f7558f3e1.tar.bz2 gentoo-2-43a430a3ac4b05d70e8aa858823dcd9f7558f3e1.zip |
Version bump: new CVS snapshot.
(Portage version: 2.2_rc3/cvs/Linux 2.6.25-gentoo-r6 i686)
(Signed Manifest commit)
Diffstat (limited to 'app-emacs/slime/files')
9 files changed, 426 insertions, 0 deletions
diff --git a/app-emacs/slime/files/2.0_p20080731/70slime-gentoo.el b/app-emacs/slime/files/2.0_p20080731/70slime-gentoo.el new file mode 100644 index 000000000000..ef14fdcfd34e --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/70slime-gentoo.el @@ -0,0 +1,16 @@ + +;;; slime site-lisp configuration + +(add-to-list 'load-path "@SITELISP@") +(add-to-list 'load-path "@SITELISP@/contrib") +(autoload 'slime-highlight-edits-mode "slime-highlight-edits" nil t) + +(require 'slime) +(slime-setup '(slime-fancy slime-asdf slime-banner)) + +;; this allows us not to require dev-lisp/hyperspec +;; (which is non-free) as a hard dependency +(setq common-lisp-hyperspec-root + (if (file-exists-p "/usr/share/doc/hyperspec/HyperSpec") + "file:///usr/share/doc/hyperspec/HyperSpec/" + "http://www.lispworks.com/reference/HyperSpec/")) diff --git a/app-emacs/slime/files/2.0_p20080731/changelog-date.patch b/app-emacs/slime/files/2.0_p20080731/changelog-date.patch new file mode 100644 index 000000000000..8b70c017e523 --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/changelog-date.patch @@ -0,0 +1,17 @@ +--- slime-2.0_p20080731-old/slime.el 2008-08-01 15:48:07.000000000 +0200 ++++ slime-2.0_p20080731/slime.el 2008-08-01 15:51:15.000000000 +0200 +@@ -97,13 +97,7 @@ + (defun slime-changelog-date () + "Return the datestring of the latest entry in the ChangeLog file. + Return nil if the ChangeLog file cannot be found." +- (let ((changelog (concat slime-path "ChangeLog"))) +- (if (file-exists-p changelog) +- (with-temp-buffer +- (insert-file-contents-literally changelog nil 0 100) +- (goto-char (point-min)) +- (symbol-name (read (current-buffer)))) +- nil)))) ++ "@SLIME-CHANGELOG-DATE@")) + + (defvar slime-protocol-version nil) + (setq slime-protocol-version diff --git a/app-emacs/slime/files/2.0_p20080731/dont-call-init.patch b/app-emacs/slime/files/2.0_p20080731/dont-call-init.patch new file mode 100644 index 000000000000..8f300474fc9b --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/dont-call-init.patch @@ -0,0 +1,12 @@ +diff -ur slime.orig/slime.el slime/slime.el +--- slime.orig/slime.el 2008-02-18 14:16:13.000000000 +0100 ++++ slime/slime.el 2008-02-18 14:19:55.000000000 +0100 +@@ -1432,7 +1432,6 @@ + (format "%S\n\n" + `(progn + (load ,(expand-file-name loader) :verbose t) +- (funcall (read-from-string "swank-loader:init")) + (funcall (read-from-string "swank:start-server") + ,port-filename + :coding-system ,encoding))))) +Only in slime: slime.el.~1.905.~ diff --git a/app-emacs/slime/files/2.0_p20080731/fix-ecl.patch b/app-emacs/slime/files/2.0_p20080731/fix-ecl.patch new file mode 100644 index 000000000000..42a0b24547e2 --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/fix-ecl.patch @@ -0,0 +1,98 @@ +diff --git a/swank-ecl.lisp b/swank-ecl.lisp +index 6d3786f..c6ddbd5 100644 +--- a/swank-ecl.lisp ++++ b/swank-ecl.lisp +@@ -12,6 +12,7 @@ + + (defvar *tmp*) + ++(eval-when (:compile-toplevel) + (if (find-package :gray) + (import-from :gray *gray-stream-symbols* :swank-backend) + (import-from :ext *gray-stream-symbols* :swank-backend)) +@@ -21,12 +22,13 @@ + :eql-specializer-object + :generic-function-declarations + :specializer-direct-methods +- :compute-applicable-methods-using-classes)) ++ :compute-applicable-methods-using-classes))) + + + ;;;; TCP Server + +-(require 'sockets) ++(eval-when (:compile-toplevel :load-toplevel :execute) ++ (require 'sockets)) + + (defun resolve-hostname (name) + (car (sb-bsd-sockets:host-ent-addresses +@@ -206,23 +208,24 @@ + + ;;; Debugging + +-(import +- '(si::*break-env* +- si::*ihs-top* +- si::*ihs-current* +- si::*ihs-base* +- si::*frs-base* +- si::*frs-top* +- si::*tpl-commands* +- si::*tpl-level* +- si::frs-top +- si::ihs-top +- si::ihs-fun +- si::ihs-env +- si::sch-frs-base +- si::set-break-env +- si::set-current-ihs +- si::tpl-commands)) ++(eval-when (:compile-toplevel) ++ (import ++ '(si::*break-env* ++ si::*ihs-top* ++ si::*ihs-current* ++ si::*ihs-base* ++ si::*frs-base* ++ si::*frs-top* ++ si::*tpl-commands* ++ si::*tpl-level* ++ si::frs-top ++ si::ihs-top ++ si::ihs-fun ++ si::ihs-env ++ si::sch-frs-base ++ si::set-break-env ++ si::set-current-ihs ++ si::tpl-commands))) + + (defvar *backtrace* '()) + +@@ -230,10 +233,10 @@ + (and + (symbolp x) + (member (symbol-package x) +- (list #.(find-package :swank) +- #.(find-package :swank-backend) +- #.(ignore-errors (find-package :swank-mop)) +- #.(ignore-errors (find-package :swank-loader)))) ++ (list (find-package :swank) ++ (find-package :swank-backend) ++ (ignore-errors (find-package :swank-mop)) ++ (ignore-errors (find-package :swank-loader)))) + t)) + + (defun is-swank-source-p (name) +diff --git a/swank.lisp b/swank.lisp +index 8c6ef3a..38479ea 100644 +--- a/swank.lisp ++++ b/swank.lisp +@@ -1419,7 +1419,7 @@ converted to lower case." + (process-form-for-emacs (cdr form)))) + (character (format nil "?~C" form)) + (symbol (concatenate 'string (when (eq (symbol-package form) +- #.(find-package "KEYWORD")) ++ (find-package "KEYWORD")) + ":") + (string-downcase (symbol-name form)))) + (number (let ((*print-base* 10)) diff --git a/app-emacs/slime/files/2.0_p20080731/fix-slime-indentation.patch b/app-emacs/slime/files/2.0_p20080731/fix-slime-indentation.patch new file mode 100644 index 000000000000..f66d5777fb00 --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/fix-slime-indentation.patch @@ -0,0 +1,110 @@ +diff --git a/contrib/slime-indentation.el b/contrib/slime-indentation.el +index d30478c..9cdc817 100644 +--- a/contrib/slime-indentation.el ++++ b/contrib/slime-indentation.el +@@ -1031,27 +1031,27 @@ stored." + + (mapcar #'define-cl-indent + '((block 1) +- (case (4 &rest (&whole 2 &rest 3))) ++ (case (4 &rest (&whole 2 &rest 1))) + (ccase . case) (ecase . case) + (typecase . case) (etypecase . case) (ctypecase . case) +- (handler-bind . let) +- (handler-case (4 &rest (&whole 2 4 &rest 2))) + (catch 1) + (cond cl-indent:indent-cond) + (defvar (4 2 2)) +- (defconstant . defvar) (defparameter . defvar) +- (defclass (6 6 (&whole 2 &rest 1) &rest 2)) +- (define-modify-macro +- (4 &body)) ++ (defconstant . defvar) ++ (defparameter . defvar) ++ (defclass (6 4 (&whole 2 &rest 1) &rest 2 &rest 1)) (define-condition . defclass) ++ (define-modify-macro (4 (&whole 4 &rest 1) &body)) + (defsetf (4 (&whole 4 &rest 1) 4 &body)) + (defun (4 (&whole 4 &rest 1) &body)) +- (defmacro . defun) (define-setf-method . defun) (deftype . defun) ++ (define-setf-method . defun) ++ (define-setf-expander . defun) ++ (defmacro . defun) (deftype . defun) + (defgeneric cl-indent:indent-defgeneric) + (defmethod cl-indent:indent-defmethod) ++ (defpackage (4 2)) + (defstruct ((&whole 4 &rest (&whole 2 &rest 1)) + &rest (&whole 2 &rest 1))) +- (destructuring-bind +- ((&whole 6 &rest 1) 4 &body)) ++ (destructuring-bind ((&whole 6 &rest 1) 4 &body)) + (do ((&whole 4 &rest (&whole 1 &rest 2)) ; ((arg step incr)) + (&whole 4 &rest 3) ; result: ((condition) (form) ...) + &rest cl-indent:indent-do)) +@@ -1062,27 +1062,26 @@ stored." + (dolist ((&whole 4 2 1) &body)) + (dotimes . dolist) + (eval-when 1) +- (flet ((&whole 4 &rest (&whole 1 (&whole 4 &rest 1) &body)) +- &body)) ++ (flet ((&whole 4 &rest (&whole 1 (&whole 4 &rest 1) &body)) &body)) + (labels . flet) (macrolet . flet) +- (if (&rest 2)) ++ (handler-case (4 &rest (&whole 2 4 &rest 2))) ++ (if (&rest 4)) + ;; FIXME: Which of those do I really want? + ;; (lambda ((&whole 4 &rest 1) &body)) +- (lambda ((&whole 4 &rest 1) +- &rest cl-indent:indent-function-lambda-hack)) ++ (lambda ((&whole 4 &rest 1) &rest cl-indent:indent-function-lambda-hack)) + (let ((&whole 4 &rest (&whole 1 1 2)) &body)) + (let* . let) (compiler-let . let) ++ (handler-bind . let) (restart-bind . let) + (locally 1) + (loop cl-indent::indent-loop-macro) +- (multiple-value-bind +- ((&whole 6 &rest 1) 4 &body)) +- (multiple-value-call +- (4 &body)) ++ (:method ((&whole 4 &rest 1) &body)) ; in `defgeneric' ++ (multiple-value-bind ((&whole 6 &rest 1) 4 &body)) ++ (multiple-value-call (4 &body)) + (multiple-value-list 1) + (multiple-value-prog1 1) +- (multiple-value-setq +- (4 2)) +- (print-unreadable-object 1) ++ (multiple-value-setq (4 2)) ++ (multiple-value-setf . multiple-value-setq) ++ (print-unreadable-object ((&whole 4 1 &rest 1) &body)) + ;; Combines the worst features of BLOCK, LET and TAGBODY + (prog ((&whole 4 &rest 1) &rest cl-indent:indent-tagbody)) + (prog* . prog) +@@ -1093,14 +1092,15 @@ stored." + (restart-case . handler-case) + (return 0) + (return-from (nil &body)) ++ (symbol-macrolet . let) + (tagbody cl-indent:indent-tagbody) + (throw 1) + (unless 1) +- (unwind-protect +- (5 &body)) ++ (unwind-protect (5 &body)) + (values 0) + (when 1) +- (with-accessors (6 4 &body)) ++ (with-accessors . multiple-value-bind) ++ (with-condition-restarts . multiple-value-bind) + (with-compilation-unit (4 &body)) + (with-hash-table-iterator (4 &body)) + (with-output-to-string (4 &body)) +@@ -1109,7 +1109,8 @@ stored." + (with-open-stream . with-open-file) + (with-package-iterator (4 &body)) + (with-simple-restart (4 &body)) +- (with-slots (6 4 &body)))) ++ (with-slots . multiple-value-bind) ++ (with-standard-io-syntax (2)))) + + ;; OK, we're almost finished. + ;; diff --git a/app-emacs/slime/files/2.0_p20080731/fix-swank-listener-hooks-contrib.patch b/app-emacs/slime/files/2.0_p20080731/fix-swank-listener-hooks-contrib.patch new file mode 100644 index 000000000000..1e4d4281f85f --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/fix-swank-listener-hooks-contrib.patch @@ -0,0 +1,13 @@ +diff --git a/contrib/swank-listener-hooks.lisp b/contrib/swank-listener-hooks.lisp +index 64dd7cb..81e6eff 100644 +--- a/contrib/swank-listener-hooks.lisp ++++ b/contrib/swank-listener-hooks.lisp +@@ -5,6 +5,8 @@ + ;; I guess that only Alan Ruttenberg knows how to use this code. It + ;; was in swank.lisp for a long time, so here it is. -- Helmut Eller + ++(in-package :swank) ++ + (defvar *slime-repl-advance-history* nil + "In the dynamic scope of a single form typed at the repl, is set to nil to + prevent the repl from advancing the history - * ** *** etc.") diff --git a/app-emacs/slime/files/2.0_p20080731/inspect-presentations.patch b/app-emacs/slime/files/2.0_p20080731/inspect-presentations.patch new file mode 100644 index 000000000000..2a1cfae16545 --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/inspect-presentations.patch @@ -0,0 +1,40 @@ +diff -Naur slime.old/contrib/slime-presentations.el slime/contrib/slime-presentations.el +--- slime.old/contrib/slime-presentations.el 2007-10-28 22:21:39.000000000 +0100 ++++ slime/contrib/slime-presentations.el 2007-10-28 22:22:31.000000000 +0100 +@@ -44,6 +44,15 @@ + (make-variable-buffer-local + (defvar slime-presentation-start-to-point (make-hash-table))) + ++(setq slime-inspector-value-provider ++ (lambda () ++ (multiple-value-bind (presentation start end) ++ (slime-presentation-around-point (point)) ++ (when presentation ++ ;; Point is within a presentation, so don't prompt, just ++ ;; inspect the presented object; don't play DWIM. ++ (slime-presentation-expression presentation))))) ++ + (defun slime-mark-presentation-start (id &optional target) + "Mark the beginning of a presentation with the given ID. + TARGET can be nil (regular process output) or :repl-result." +diff -Naur slime.old/slime.el slime/slime.el +--- slime.old/slime.el 2007-10-28 22:21:38.000000000 +0100 ++++ slime/slime.el 2007-10-28 22:22:31.000000000 +0100 +@@ -7454,11 +7454,15 @@ + (defvar slime-inspector-mark-stack '()) + (defvar slime-saved-window-config) + ++(defvar slime-inspector-value-provider nil) ++ + (defun slime-inspect (string) + "Eval an expression and inspect the result." + (interactive +- (list (slime-read-from-minibuffer "Inspect value (evaluated): " +- (slime-sexp-at-point)))) ++ (list (or (and slime-inspector-value-provider ++ (funcall slime-inspector-value-provider)) ++ (slime-read-from-minibuffer "Inspect value (evaluated): " ++ (slime-sexp-at-point))))) + (slime-eval-async `(swank:init-inspector ,string) 'slime-open-inspector)) + + (define-derived-mode slime-inspector-mode fundamental-mode "Slime-Inspector" diff --git a/app-emacs/slime/files/2.0_p20080731/module-load-gentoo.patch b/app-emacs/slime/files/2.0_p20080731/module-load-gentoo.patch new file mode 100644 index 000000000000..e2b29c5a5456 --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/module-load-gentoo.patch @@ -0,0 +1,42 @@ +diff --git a/swank.lisp b/swank.lisp +index 8c6ef3a..3ef640a 100644 +--- a/swank.lisp ++++ b/swank.lisp +@@ -2270,10 +2270,13 @@ Record compiler notes signalled as `compiler-condition's." + "Load the module MODULE." + (dolist (module (if (listp modules) modules (list modules))) + (unless (member (string module) *modules* :test #'string=) +- (require module (or filename (module-filename module))))) ++ (let ((*load-print* nil) ++ (*load-verbose* nil) ++ #+cmu (ext:*gc-verbose* nil)) ++ (require module (or filename (module-filename module)))))) + *modules*) + +-(defvar *find-module* 'find-module ++(defvar *find-module* 'find-module-gentoo + "Pluggable function to locate modules. + The function receives a module name as argument and should return + the filename of the module (or nil if the file doesn't exist).") +@@ -2303,6 +2306,21 @@ the filename of the module (or nil if the file doesn't exist).") + (some (lambda (dir) (some #'probe-file (module-canditates name dir))) + *load-path*))) + ++(defun swank-fasl-pathname () ++ (make-pathname :name nil :type nil ++ :defaults (car (asdf:output-files ++ (make-instance 'asdf:compile-op) ++ (car (asdf:module-components ++ (asdf:find-system :swank))))))) ++ ++(defun append-dir (pathname dir) ++ (make-pathname :directory (append (pathname-directory pathname) dir))) ++ ++(defun find-module-gentoo (module) ++ (or (let ((*load-path* (list (append-dir (swank-fasl-pathname) '("contrib")) ++ (append-dir swank-loader:*source-directory* '("contrib"))))) ++ (find-module module)) ++ (find-module module))) + + ;;;; Macroexpansion + diff --git a/app-emacs/slime/files/2.0_p20080731/swank.asd b/app-emacs/slime/files/2.0_p20080731/swank.asd new file mode 100644 index 000000000000..8285c6874915 --- /dev/null +++ b/app-emacs/slime/files/2.0_p20080731/swank.asd @@ -0,0 +1,78 @@ +;;; -*- mode: lisp; syntax: common-lisp; package: common-lisp -*- + +(defpackage #:swank-system + (:use #:common-lisp #:asdf)) + +(defpackage #:swank-loader + (:use #:common-lisp) + (:export #:*source-directory*)) + +(in-package #:swank-system) + +(defun load-user-init-file () + "Load the user init file, return NIL if it does not exist." + (load (merge-pathnames (user-homedir-pathname) + (make-pathname :name ".swank" :type "lisp")) + :if-does-not-exist nil)) + +(defun load-site-init-file () + (load (make-pathname :name "site-init" :type "lisp" + :defaults *load-truename*) + :if-does-not-exist nil)) + +(defclass no-load-file (cl-source-file) ()) + +(defmethod perform ((op load-op) (c no-load-file)) nil) + +(defmacro define-swank-system (sysdep-files) + `(defsystem swank + :name "Swank is the Common Lips back-end to SLIME" + :serial t + :components ((:file "swank-backend") + (:file "nregex") + ,@(mapcar #'(lambda (component) + (if (atom component) + (list :file component) + component)) + sysdep-files) + (:file "swank") + (:module "contrib" + :components ((:no-load-file "swank-arglists") + (:no-load-file "swank-asdf") + (:no-load-file "swank-c-p-c") + (:no-load-file "swank-fancy-inspector") + (:no-load-file "swank-fuzzy") + (:no-load-file "swank-indentation") + (:no-load-file "swank-listener-hooks") + (:no-load-file "swank-motd") + (:no-load-file "swank-presentations") + (:no-load-file "swank-presentation-streams")))) + :depends-on (#+sbcl sb-bsd-sockets) + :perform (load-op :after (op swank) + (load-site-init-file) + (load-user-init-file)))) + +#+(or cmu scl sbcl openmcl lispworks allegro clisp armedbear cormanlisp ecl) +(define-swank-system + #+cmu (swank-source-path-parser swank-source-file-cache swank-cmucl) + #+scl (swank-source-path-parser swank-source-file-cache swank-scl) + #+sbcl (swank-source-path-parser swank-source-file-cache swank-sbcl swank-gray) + #+openmcl (metering swank-openmcl swank-gray) + #+lispworks (swank-lispworks swank-gray) + #+allegro (swank-allegro swank-gray) + #+clisp (xref metering swank-clisp swank-gray) + #+armedbear (swank-abcl) + #+cormanlisp (swank-corman swank-gray) + #+ecl (swank-source-path-parser swank-source-file-cache swank-ecl swank-gray)) + +#-(or cmu scl sbcl openmcl lispworks allegro clisp armedbear cormanlisp ecl) +(error "Your CL implementation is not supported !") + +(in-package #:swank-loader) + +(defparameter *source-directory* + (asdf:component-pathname (asdf:find-system :swank))) + +;; (funcall (intern (string :warn-unimplemented-interfaces) :swank-backend)) + +;; swank.asd ends here |