summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Müller <ulm@gentoo.org>2008-08-01 14:53:09 +0000
committerUlrich Müller <ulm@gentoo.org>2008-08-01 14:53:09 +0000
commit43a430a3ac4b05d70e8aa858823dcd9f7558f3e1 (patch)
tree8e0debee872677aa0f9364e0506dde48f6d3267a /app-emacs/slime/files
parentVersion bump: new CVS snapshot. (diff)
downloadgentoo-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')
-rw-r--r--app-emacs/slime/files/2.0_p20080731/70slime-gentoo.el16
-rw-r--r--app-emacs/slime/files/2.0_p20080731/changelog-date.patch17
-rw-r--r--app-emacs/slime/files/2.0_p20080731/dont-call-init.patch12
-rw-r--r--app-emacs/slime/files/2.0_p20080731/fix-ecl.patch98
-rw-r--r--app-emacs/slime/files/2.0_p20080731/fix-slime-indentation.patch110
-rw-r--r--app-emacs/slime/files/2.0_p20080731/fix-swank-listener-hooks-contrib.patch13
-rw-r--r--app-emacs/slime/files/2.0_p20080731/inspect-presentations.patch40
-rw-r--r--app-emacs/slime/files/2.0_p20080731/module-load-gentoo.patch42
-rw-r--r--app-emacs/slime/files/2.0_p20080731/swank.asd78
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