ASDF and Allegro CL (patch)

David Lichteblau <[email protected]>
Newsgroups gmane.lisp.cclan.general
Message-ID <[email protected]>
ASDF does not quite work with Allegro CL if .asd-files are symbolic
links, since links are not resolved and COMPILE-FILE ends up looking for
sources in (say) ~/systems instead of .../package/.

The following patch resolves pathnames explicitly.

Index: asdf.lisp
===================================================================
RCS file: /cvsroot/cclan/asdf/asdf.lisp,v
retrieving revision 1.29
diff -u -r1.29 asdf.lisp
--- asdf.lisp	19 Jun 2002 18:29:53 -0000	1.29
+++ asdf.lisp	25 Jun 2002 22:22:04 -0000
@@ -245,6 +245,10 @@
     "/home/dan/src/sourceforge/cclan/asdf/systems/"
     #+nil "telent:asdf;systems;"))
 
+(defun pathname-resolve-symbolic-links (pathname)
+  #+allegro (excl:pathname-resolve-symbolic-links pathname)
+  #-allegro pathname)
+
 (defun system-definition-pathname (system)
   (let ((name (coerce-name system)))
     (dolist (dir *central-registry*)
@@ -258,7 +262,8 @@
 			 :defaults defaults
 			 :version :newest))))
 	(if (and file (probe-file file))
-	    (return-from system-definition-pathname file))))
+	    (return-from system-definition-pathname
+	      (pathname-resolve-symbolic-links file)))))
     nil))
   
 
David
-- 
FAILURE IS NOT AN OPTION - it comes bundled with the software.


-------------------------------------------------------
This sf.net email is sponsored by: Jabber Inc.
Don't miss the IM event of the season | Special offer for OSDN members! 
JabConf 2002, Aug. 20-22, Keystone, CO http://www.jabberconf.com/osdn
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.