Commit c5f9f5a7 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau

Merge branch 'master' into minimakefile

parents 6f24c2cb fe23060b
......@@ -230,8 +230,8 @@ children.")))
(defmethod component-relative-pathname ((component component))
;; SOURCE-FILE-TYPE below is strictly for backward-compatibility with ASDF1.
;; We ought to be able to extract this from the component alone with COMPONENT-TYPE.
;; TODO: track who uses it, and have them not use it anymore;
;; We ought to be able to extract this from the component alone with FILE-TYPE.
;; TODO: track who uses it in Quicklisp, and have them not use it anymore;
;; maybe issue a WARNING (then eventually CERROR) if the two methods diverge?
(parse-unix-namestring
(or (and (slot-boundp component 'relative-pathname)
......
(uiop:define-package :detect-multiply-used-files
(:nicknames :asdf/contrib/detect-multiply-used-files)
(:use :asdf :uiop :common-lisp)
(:export #:find-fishy-components #:register-component-files #:*file-components*))
......
......@@ -32,6 +32,7 @@ asdf.pdf: asdf.texinfo version.texinfo
website: all
rsync -lt --no-g ${webfiles} ${website}
rsync --recursive --no-g --delete asdf ${website}
rsync -lt --no-g ../debian/changelog ${website}/changelog
.PHONY: clean intermediate-clean manual-html
......
......@@ -24,8 +24,8 @@
(setf dir (normalize-pathname-directory-component dir))
(loop
:with head = (progn
(unless (and (consp dir) (cdr dir)) (return dir))
(subseq dir 0 1))
(unless (and (consp dir) (cdr dir)) (return dir))
(subseq dir 0 1))
:with tail = (rest dir)
:for (next rest) :on tail :do
(unless (equal next ".")
......@@ -63,10 +63,12 @@
(assert-pathname-equal true dir)
(setf true dir)))
(assert-pathname-equal true (truename (ensure-directory-pathname file)))
(assert-pathname-equal true (nest #+(and clisp windows) (ensure-directory-pathname)
(truename* file))
(assert-pathname-equal true (nest #+(or allegro (and clisp windows)) (ensure-directory-pathname)
(probe-file* file :truename t)))
(assert-pathname-equal true (nest #+(and clisp os-windows) (ensure-directory-pathname)
(truename* file)))
(assert-pathname-equal true
(let ((path (probe-file* file :truename t)))
#+(or allegro (and clisp os-windows)) (ensure-directory-pathname path)
#-(or allegro (and clisp os-windows)) path))
(assert-pathname-equal true (if-let (x (probe-file* file))
(ensure-absolute-pathname (ensure-directory-pathname x) 'get-pathname-defaults))))
(check-directory-doesnt-exist (file)
......@@ -99,7 +101,7 @@
(check-true-dpd-test))
#-(or abcl genera xcl ;; on these platforms, chdir changes D-P-D so these tests are not meaningful
(and sbcl os-windows)) ;; SBCL on Windows really hates a relative D-P-D.
(and sbcl os-windows)) ;; SBCL on Windows really hates a relative D-P-D.
(progn
;; SBCL hates to get (truename #p"") when D-P-D is itself #p"". See https://bugs.launchpad.net/sbcl/+bug/1472414
(DBG "4"
......@@ -113,7 +115,7 @@
;; On implementations where chdir doesn't side-effect D-P-D, we can have D-P-D be relative to GETCWD...
;; except on allegro, that hates this trick.
(with-expected-failure (#+(or allegro gcl) t)
(with-expected-failure (#+(or allegro gcl (and clisp os-windows)) t)
(unless (absolute-pathname-p *default-pathname-defaults*)
(DBG "6"
(chdir asdf-directory)
......
......@@ -69,6 +69,8 @@ a CL pathname satisfying all the specified constraints as per ENSURE-PATHNAME"
(when (stringp p) (setf p (with-pathname-defaults () (parse-namestring p))))
(values
(or (ignore-errors (truename p))
;; this is here because trying to find the truename of a directory pathname WITHOUT supplying
;; a trailing directory separator, causes an error on some lisps.
#+(or clisp gcl) (if-let (d (ensure-directory-pathname p)) (ignore-errors (truename d)))))))
(defun safe-file-write-date (pathname)
......
......@@ -207,7 +207,9 @@ when merging, making or parsing pathnames")
where leaving the defaults NIL or unspecified means a (NIL-PATHNAME), except
on ABCL, Genera and XCL, where it remains unchanged for it doubles as current-directory."
`(let ((*default-pathname-defaults*
,(or defaults #-(or abcl genera xcl) '*nil-pathname* #+(or abcl genera) '*default-pathname-defaults*)))
,(or defaults
#-(or abcl genera xcl) '*nil-pathname*
#+(or abcl genera xcl) '*default-pathname-defaults*)))
,@body)))
......
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