Public bug reported: Binary package hint: common-lisp-controller
When an ASD file references source files (components) in a subdirectory below the directory in which the ASD resides, CLC will not correctly create the subdirectory structure in the target compile path. You have to manually create the subdirectory structure. I've modified post-sysdef-install.lisp to create requisite directories as and when files are compiled. What I did is adding a LET form and an ENSURE-DIRECTORIES-EXIST form to alternative-root-path-to-fasl-path (near the end of the DEFUN). Here is a code snippet that shows the modified function: ========== (defun alternative-root-path-to-fasl-path (source) "Converts a path in anywhere to a path beneath the fasl root" (let ((source-path (pathname-directory source :case :local))) (cond ;; it could already be beneath /var/cache/common-lisp ((and (eq (first source-path) :ABSOLUTE) (string= (second source-path) "var") (string= (third source-path) "cache") (string= (fourth source-path) "common-lisp")) ;; just let it be source) ;; it could be a library package ((and (eq (first source-path) :ABSOLUTE) (string= (second source-path) "usr") (string= (third source-path) "lib")) ;; just let it be source) (t (let ((result-path (merge-pathnames (make-pathname :directory (append (list :RELATIVE "local") (rest source-path)) :case :local :defaults source) *fasl-root*))) (ensure-directories-exist (format nil "~A" result-path)) result-path))))) ========== End of bug report. ** Affects: common-lisp-controller (Ubuntu) Importance: Undecided Status: New -- Trouble compiling a system where source files are in a subdirectory from .ASD https://bugs.launchpad.net/bugs/178944 You received this bug notification because you are a member of Ubuntu Bugs, which is the bug contact for Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs