From 93c941d86b264637de20aa1b713757b704d4c1a6 Mon Sep 17 00:00:00 2001 From: Daniel Barlow Date: Wed, 19 Mar 2003 13:15:44 +0000 Subject: [PATCH] 0.7.13.32 Update contrib/asdf to newer upstream version ... fix loopiness ... add test-op definitions ... quote evaluation of *central-registry* components to make it more useful when a core is dumped containing asdf Rewrite asdf-using contrib makefiles to use common asdf-module.mk ... and their .asd files to define test-op --- contrib/asdf-module.mk | 17 +++++++++++++++++ contrib/asdf/asdf.lisp | 26 ++++++++++++++------------ contrib/sb-bsd-sockets/Makefile | 18 +----------------- contrib/sb-bsd-sockets/sb-bsd-sockets.asd | 3 +++ contrib/sb-rotate-byte/Makefile | 23 +---------------------- contrib/sb-rotate-byte/sb-rotate-byte.asd | 4 ++++ version.lisp-expr | 2 +- 7 files changed, 41 insertions(+), 52 deletions(-) create mode 100644 contrib/asdf-module.mk diff --git a/contrib/asdf-module.mk b/contrib/asdf-module.mk new file mode 100644 index 0000000..6179c56 --- /dev/null +++ b/contrib/asdf-module.mk @@ -0,0 +1,17 @@ +CC=gcc +export CC + +all: + $(MAKE) -C ../asdf + echo "(asdf:operate 'asdf:load-op :$(SYSTEM) :force t)" | \ + $(SBCL) --eval '(load "../asdf/asdf")' + +test: all + echo "(asdf:operate (quote asdf:load-op) :$(SYSTEM)) "\ + "(asdf:operate (quote asdf:test-op) :$(SYSTEM))" | \ + $(SBCL) --eval '(load "../asdf/asdf")' + + +install: + tar cf - . | ( cd $(INSTALL_DIR) && tar xpvf - ) + ( cd $(SBCL_HOME)/systems && ln -fs ../$(SYSTEM)/$(SYSTEM).asd . ) diff --git a/contrib/asdf/asdf.lisp b/contrib/asdf/asdf.lisp index 9f58c2b..4f7aff7 100644 --- a/contrib/asdf/asdf.lisp +++ b/contrib/asdf/asdf.lisp @@ -1,4 +1,4 @@ -;;; This is asdf: Another System Definition Facility. 1.65 +;;; This is asdf: Another System Definition Facility. 1.68 ;;; ;;; Feedback, bug reports, and patches are all welcome: please mail to ;;; . But note first that the canonical @@ -43,6 +43,7 @@ #:hyperdocumentation #:hyperdoc #:compile-op #:load-op #:load-source-op #:test-system-version + #:test-op #:operation ; operations #:feature ; sort-of operation #:version ; metaphorically sort-of an operation @@ -88,7 +89,7 @@ (in-package #:asdf) -(defvar *asdf-revision* (let* ((v "1.65") +(defvar *asdf-revision* (let* ((v "1.68") (colon (or (position #\: v) -1)) (dot (position #\. v))) (and v colon dot @@ -471,11 +472,8 @@ system.")) (not (eql c dep-c))) (when (eql force-p t) (setf (getf args :force) nil)) - ;; note we lose the parent slot, because we don't want - ;; forced to propagate backwards either (changes in depended-on - ;; systems shouldn't force recompilation of the depending system) (apply #'make-instance dep-o - ;:parent o + :parent o :original-initargs args args)) ((subtypep (type-of o) dep-o) o) @@ -769,6 +767,10 @@ system.")) (component-property c 'last-loaded-as-source))) nil t)) +(defclass test-op (operation) ()) + +(defmethod perform ((operation test-op) (c component)) + nil) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; invoking operations @@ -1021,18 +1023,18 @@ output to *trace-output*. Returns the shell's exit code." (provide name)))) (pushnew - (merge-pathnames "systems/" - (truename (sb-ext:posix-getenv "SBCL_HOME"))) + '(merge-pathnames "systems/" + (truename (sb-ext:posix-getenv "SBCL_HOME"))) *central-registry*) (pushnew - (merge-pathnames "site-systems/" - (truename (sb-ext:posix-getenv "SBCL_HOME"))) + '(merge-pathnames "site-systems/" + (truename (sb-ext:posix-getenv "SBCL_HOME"))) *central-registry*) (pushnew - (merge-pathnames ".sbcl/systems/" - (user-homedir-pathname)) + '(merge-pathnames ".sbcl/systems/" + (user-homedir-pathname)) *central-registry*) (pushnew 'module-provide-asdf sb-ext:*module-provider-functions*)) diff --git a/contrib/sb-bsd-sockets/Makefile b/contrib/sb-bsd-sockets/Makefile index bacd0ec..c1335eb 100644 --- a/contrib/sb-bsd-sockets/Makefile +++ b/contrib/sb-bsd-sockets/Makefile @@ -1,18 +1,2 @@ SYSTEM=sb-bsd-sockets -CC=gcc -export CC - -all: - $(MAKE) -C ../asdf - echo "(asdf:operate 'asdf:load-op :$(SYSTEM) :force t)" | \ - $(SBCL) --eval '(load "../asdf/asdf")' - -test: all - echo "(asdf:operate 'asdf:load-op :$(SYSTEM)) \ - (or (rt:do-tests) (error \"test failed, cannot install\"))" | \ - $(SBCL) --eval '(load "../asdf/asdf")' - - -install: - tar cf - . | ( cd $(INSTALL_DIR) && tar xpvf - ) - ( cd $(SBCL_HOME)/systems && ln -fs ../$(SYSTEM)/$(SYSTEM).asd . ) +include ../asdf-module.mk diff --git a/contrib/sb-bsd-sockets/sb-bsd-sockets.asd b/contrib/sb-bsd-sockets/sb-bsd-sockets.asd index 9c7233e..5422784 100644 --- a/contrib/sb-bsd-sockets/sb-bsd-sockets.asd +++ b/contrib/sb-bsd-sockets/sb-bsd-sockets.asd @@ -126,3 +126,6 @@ (:static-file "doc" :pathname "doc.lisp") (:static-file "TODO"))) +(defmethod perform ((o test-op) (c (eql (find-system :sb-bsd-sockets)))) + (or (funcall (intern "DO-TESTS" (find-package "RT"))) + (error "test-op failed"))) diff --git a/contrib/sb-rotate-byte/Makefile b/contrib/sb-rotate-byte/Makefile index a07369b..b84d8b3 100644 --- a/contrib/sb-rotate-byte/Makefile +++ b/contrib/sb-rotate-byte/Makefile @@ -1,23 +1,2 @@ -# FIXME I: This is more-or-less an exact copy of sb-bsd-sockets's -# Makefile. Maybe we should have a vanilla-asdf-module.mk? -# -# FIXME II: The thing that is preventing this is the use of RT as a -# regression tester... since we ask that modules do regression tests, -# maybe we should provide a regression test framework (in SB-RT, perhaps)? - SYSTEM=sb-rotate-byte - -all: - $(MAKE) -C ../asdf - echo "(asdf:operate 'asdf:load-op :$(SYSTEM) :force t)" | \ - $(SBCL) --eval '(load "../asdf/asdf")' - -test: all - echo "(asdf:operate 'asdf:load-op :$(SYSTEM)) \ - (load (compile-file \"rotate-byte-tests.lisp\"))" | \ - $(SBCL) --eval '(load "../asdf/asdf")' - - -install: - tar cf - . | ( cd $(INSTALL_DIR) && tar xpvf - ) - ( cd $(SBCL_HOME)/systems && ln -fs ../$(SYSTEM)/$(SYSTEM).asd . ) +include ../asdf-module.mk diff --git a/contrib/sb-rotate-byte/sb-rotate-byte.asd b/contrib/sb-rotate-byte/sb-rotate-byte.asd index 3adf23b..0451fd8 100644 --- a/contrib/sb-rotate-byte/sb-rotate-byte.asd +++ b/contrib/sb-rotate-byte/sb-rotate-byte.asd @@ -15,3 +15,7 @@ :pathname #.(make-pathname :directory '(:relative)) :if-component-dep-fails :ignore) (:file "rotate-byte" :depends-on ("compiler")))) + +(defmethod perform ((o test-op) (c (eql (find-system :sb-rotate-byte)))) + (or (load (compile-file "rotate-byte-tests.lisp")) + (error "test-op failed"))) diff --git a/version.lisp-expr b/version.lisp-expr index 3c4d3d7..0153acc 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -18,4 +18,4 @@ ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"0.7.13.31" +"0.7.13.32" -- 1.7.10.4