remove some path case normalization

The change allows `raco setup' to reach a fixed point under Windows
for "redex/examples/cont-mark-transform".

I'm more and more convinced that `normal-case-path' is never
a good idea. In some cases, maybe it's good to recognize a
few extra equivalences, but it works badly when paths are taken
from many sources and are not consistently normalized. It's better
to just preserve case.

For basic normalization, `simplify-path' is the right choice. Use
inode identity (as `raco setup' does) when anything stronger
than `simplify-path' is needed.
This commit is contained in:
Matthew Flatt 2011-08-30 13:18:05 -06:00
parent 959db06c7c
commit 35a8359c6d
2 changed files with 2 additions and 3 deletions

View File

@ -20,8 +20,7 @@
;; tree, so we explode the paths. This is slower than the old way
;; (by a factor of 2 or so), but it's simpler and more portable.
(define (explode-path path)
(let loop ([path (simplify-path
(normal-case-path (path->complete-path path)))]
(let loop ([path (simplify-path (path->complete-path path))]
[rest null])
(let-values ([(base name dir?) (split-path path)])
(if (path? base)

View File

@ -656,7 +656,7 @@
[dir-table (make-hash)]
[doing-path (lambda (path)
(unless (verbose)
(let ([path (normal-case-path (path-only path))])
(let ([path (path-only path)])
(unless (hash-ref dir-table path #f)
(hash-set! dir-table path #t)
(print-verbose oop path)))))])