1.1--- a/lisp/lib/skel/comp/asd.lisp Sat Sep 21 18:18:14 2024 -0400
1.2+++ b/lisp/lib/skel/comp/asd.lisp Sat Sep 21 22:58:22 2024 -0400
1.3@@ -12,7 +12,7 @@
1.4 ;;; Code:
1.5 (in-package :skel/comp/asd)
1.6
1.7-(defclass sk-lisp-system (sk-module asdf:system)
1.8+(defclass sk-lisp-system (sk-mod asdf:system)
1.9 ;; these slots are inferred in ASDF:SYSTEM. Since we are primarily concerned
1.10 ;; with generating ASDF:SYSTEM definitions rather than parsing them we restore them here.
1.11 ((serial :initform nil :type boolean :accessor sk-lisp-system-serial)
1.12@@ -43,9 +43,12 @@
1.13 (defmethod sk-load ((self sk-lisp-system) &key force force-not verbose version)
1.14 (asdf:load-system self :force force :force-not force-not :verbose verbose :version version))
1.15
1.16-(defmethod sk-load-component ((kind (eql :lisp-system)) (form pathname) &optional (path *default-pathname-defaults*))
1.17+(defmethod sk-load-component ((kind (eql :asd)) (form pathname) &optional (path *default-pathname-defaults*))
1.18 (declare (ignore kind))
1.19- (parse-sk-lisp-system (pathname-name form) (merge-pathnames form path)))
1.20+ (let* ((type (pathname-type form))
1.21+ (name (namestring (if type (pathname-name form) form)))
1.22+ (fname (if type form (make-pathname :name name :type "asd"))))
1.23+ (parse-sk-lisp-system name (merge-pathnames fname path))))
1.24
1.25 (defmethod sk-compile ((self sk-lisp-system) &key force force-not verbose version &allow-other-keys)
1.26 (asdf:compile-system self :force force :force-not force-not :verbose verbose :version version))