Commit 8cc46b8e authored by Francois-Rene Rideau's avatar Francois-Rene Rideau

2.29.6: some filesystem tweaks to accommodate Genera (!)

parent 921be307
......@@ -74,7 +74,7 @@
:licence "MIT"
:description "Another System Definition Facility"
:long-description "ASDF builds Common Lisp software organized into defined systems."
:version "2.29.5" ;; to be automatically updated by make bump-version
:version "2.29.6" ;; to be automatically updated by make bump-version
:depends-on ()
#+asdf3 :encoding #+asdf3 :utf-8
;; For most purposes, asdf itself specially counts as a builtin system.
......
......@@ -88,47 +88,48 @@ or the original (parsed) pathname if it is false (the default)."
(null nil)
(string (probe-file* (parse-namestring p) :truename truename))
(pathname
(handler-case
(or
#+allegro
(probe-file p :follow-symlinks truename)
#-(or allegro clisp gcl2.6)
(if truename
(probe-file p)
(and (not (wild-pathname-p p))
(and (not (wild-pathname-p p))
(handler-case
(or
#+allegro
(probe-file p :follow-symlinks truename)
#-(or allegro clisp gcl2.6)
(if truename
(probe-file p)
(ignore-errors
(let ((pp (translate-logical-pathname p)))
#+(or cmu scl) (unix:unix-stat (ext:unix-namestring pp))
#+(and lispworks unix) (system:get-file-stat pp)
#+sbcl (sb-unix:unix-stat (sb-ext:native-namestring pp))
#-(or cmu (and lispworks unix) sbcl scl) (file-write-date pp)))
p))
#+(or clisp gcl2.6)
#.(flet ((probe (probe)
`(let ((foundtrue ,probe))
(cond
(truename foundtrue)
(foundtrue p)))))
#+gcl2.6
(probe '(or (probe-file p)
(and (directory-pathname-p p)
(ignore-errors
(ensure-directory-pathname
(truename* (subpathname
(ensure-directory-pathname p) ".")))))))
#+clisp
(let* ((fs (find-symbol* '#:file-stat :posix nil))
(pp (find-symbol* '#:probe-pathname :ext nil))
(resolve (if pp
`(ignore-errors (,pp p))
'(or (truename* p)
(truename* (ignore-errors (ensure-directory-pathname p)))))))
(if fs
`(if truename
,resolve
(and (ignore-errors (,fs p)) p))
(probe resolve)))))
(file-error () nil))))))
(and
#+(or cmu scl) (unix:unix-stat (ext:unix-namestring pp))
#+(and lispworks unix) (system:get-file-stat pp)
#+sbcl (sb-unix:unix-stat (sb-ext:native-namestring pp))
#-(or cmu (and lispworks unix) sbcl scl) (file-write-date pp)
p))))
#+(or clisp gcl2.6)
#.(flet ((probe (probe)
`(let ((foundtrue ,probe))
(cond
(truename foundtrue)
(foundtrue p)))))
#+gcl2.6
(probe '(or (probe-file p)
(and (directory-pathname-p p)
(ignore-errors
(ensure-directory-pathname
(truename* (subpathname
(ensure-directory-pathname p) ".")))))))
#+clisp
(let* ((fs (find-symbol* '#:file-stat :posix nil))
(pp (find-symbol* '#:probe-pathname :ext nil))
(resolve (if pp
`(ignore-errors (,pp p))
'(or (truename* p)
(truename* (ignore-errors (ensure-directory-pathname p)))))))
(if fs
`(if truename
,resolve
(and (ignore-errors (,fs p)) p))
(probe resolve)))))
(file-error () nil)))))))
(defun directory* (pathname-spec &rest keys &key &allow-other-keys)
(apply 'directory pathname-spec
......
;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
;;; This is ASDF 2.29.5: Another System Definition Facility.
;;; This is ASDF 2.29.6: Another System Definition Facility.
;;;
;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>.
......
......@@ -31,9 +31,9 @@ Some constraints:
(in-package :asdf-test)
(declaim (optimize (speed 2) (safety 3) #-(or allegro gcl) (debug 3)
(declaim (optimize (speed 2) (safety 3) #-(or allegro gcl genera) (debug 3)
#+(or cmu scl) (c::brevity 2)))
(proclaim '(optimize (speed 2) (safety 3) #-(or allegro gcl) (debug 3)
(proclaim '(optimize (speed 2) (safety 3) #-(or allegro gcl genera) (debug 3)
#+(or cmu scl) (c::brevity 2)))
(defvar *trace-symbols*
......@@ -154,7 +154,8 @@ Some constraints:
(defparameter *test-directory*
(truename
(make-pathname :name nil :type nil :version nil
:defaults (or *load-pathname* *compile-file-pathname*))))
:defaults (or *load-pathname* *compile-file-pathname* *default-pathname-defaults*))))
(format t "bye, world~%")
(defun make-sub-pathname (&rest keys &key defaults &allow-other-keys)
(merge-pathnames (apply 'make-pathname keys) defaults))
(defun relative-dir (&rest dir) #-gcl (cons ':relative dir) #+gcl dir)
......
......@@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO
;; "3.4.5.67" would be a development version in the official upstream of 3.4.5.
;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5
;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67
(asdf-version "2.29.5")
(asdf-version "2.29.6")
(existing-version (asdf-version)))
(setf *asdf-version* asdf-version)
(when (and existing-version (not (equal asdf-version existing-version)))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment