source: tags/1.0.0/abcl/contrib/jss/compat.lisp

Last change on this file was 13430, checked in by Mark Evenson, 13 years ago

Refactor ASDF extensions from JSS into ABCL-ASDF.

The JAR-FILE, JAR-DIRECTORY, and CLASS-FILE-DIRECTORY ASDF extensions
are now part of the ABCL-ASDF contrib as we aim to centralize all such
things in one place. *ADDED-TO-CLASSPATH* is now part of the
ABCL-ASDF package as well.

There is currently a (mostly) recursive relationship between JSS and
ABCL-ASDF, as each (mostly) requires the other for operation.
JSS:ENSURE-COMPATIBILITY will ensure that JSS continues to understand
the refactored extensions.

File size: 858 bytes
Line 
1(in-package :jss)
2
3(defparameter *cl-user-compatibility* nil
4  "Whether backwards compatibility with JSS's use of CL-USER has been enabled.")
5
6(defun ensure-compatibility ()
7  (require 'abcl-asdf)
8  (loop :for symbol :in '("add-directory-jars-to-class-path"
9                          "need-to-add-directory-jar?")
10        :do 
11          (unintern (intern symbol "CL-USER") :cl-user)
12        :do
13          (import (intern symbol "ABCL-ASDF") :cl-user))
14  (let ((dont-export '(*cl-user-compatibility* add-to-classpath)))
15    (loop :for symbol :being :each :external-symbol :in :jss 
16       :when (not (find symbol dont-export))
17         :do 
18           (unintern symbol :cl-user)
19         :and :do
20           (import symbol :cl-user)))
21  (setf *cl-user-compatibility* t))
22
23;;; Because we're the last file in the ASDF system at the moment
24(provide 'jss)
25
26
27   
Note: See TracBrowser for help on using the repository browser.