Fix export of lib-dependent symbols
Sun Feb 7 07:33:38 UTC 2010 pix@kepibu.org
* Fix export of lib-dependent symbols
diff -rN -u old-cl-unification-1/cl-unification.asd new-cl-unification-1/cl-unification.asd
--- old-cl-unification-1/cl-unification.asd 2013-07-21 19:26:39.000000000 +0000
+++ new-cl-unification-1/cl-unification.asd 2013-07-21 19:26:39.000000000 +0000
@@ -1,11 +1,7 @@
;;;; -*- Mode: Lisp -*-
-
;;;; cl-unification.asd --
;;;; ASDF system file.
-;;;;===========================================================================
-;;;; Simple stuff that should be built in ASDF.
-
(defpackage "CL-UNIFICATION-SYSTEM" (:use "CL" "ASDF"))
(in-package "CL-UNIFICATION-SYSTEM")
@@ -13,9 +9,19 @@
(when (asdf:find-system 'asdf-system-connections nil)
(asdf:oos 'asdf:load-op 'asdf-system-connections))
-(defclass asdf-system-definition-file (asdf:cl-source-file) ())
-(defmethod source-file-type ((c asdf-system-definition-file) (s module)) "asd")
-
+(defclass load-only-file (cl-source-file)
+ ((last-loaded :accessor load-date :initform nil)))
+(defmethod operation-done-p ((op compile-op) (component load-only-file))
+ t)
+(defmethod perform :around ((op compile-op) (component load-only-file))
+ nil)
+(defmethod operation-done-p ((op load-op) (component load-only-file))
+ (and (load-date component)
+ (>= (load-date component) (file-write-date (component-pathname component)))))
+(defmethod perform ((op load-op) (component load-only-file))
+ (prog1 (load (component-pathname component))
+ (setf (load-date component)
+ (file-write-date (component-pathname component)))))
(asdf:defsystem :cl-unification
:author "Marco Antoniotti"
@@ -28,29 +34,20 @@
(:file "template-reader")
(:file "unifier")
(:file "match-block")
- (:file "apply-substitution")
- #+asdf-with-optional-dependencies
- (:module "lib-dependent"
- :pathname "lib-dependent"
- :depends-on ("templates-hierarchy" "unifier")
- :components ((:file "cl-ppcre-template"
- :depends-on (cl-ppcre))
- ))
- #-asdf-with-optional-dependencies
- (asdf-system-definition-file
- "cl-unification-lib")
- ))
+ (:file "apply-substitution")))
#+asdf-system-connections
(asdf:defsystem-connection cl-unification+cl-ppcre
:requires (:cl-ppcre :cl-unification)
- :components ((:module "lib-dependent"
+ :components ((:load-only-file "unification-package")
+ (:module "lib-dependent"
:components ((:file "cl-ppcre-template")))))
#+asdf-system-connections
(asdf:defsystem-connection cl-unification+named-readtables
:requires (:cl-unification :named-readtables)
- :components ((:module "lib-dependent"
+ :components ((:load-only-file "unification-package")
+ (:module "lib-dependent"
:components ((:file "named-readtable")))))
;;;; end of file -- cl-unification.asd --