[Omake] Case-insensitive filesystems
Aleksey Nogin
nogin at metaprl.org
Tue Dec 12 15:12:38 PST 2006
On 12.12.2006 15:04, Jason Hickey wrote:
>> Another (partial) option would be to replicate the existing ocamldep
>> logic - at least for the OCaml dependencies. Unfortunately, the
>> ocamldep's logic for "foo" in path "a:b:c" is "the first of a/foo
>> a/Foo b/foo b/Foo c/foo c/Foo" so it can not be cleanly implemented
>> via the current cache interface :-(
>
> The Omake_node knows in principle what to do for case-insensitive
> filesystems (although has not been heavily used or tested). Each $(file
> ...) value has two names, the usual name, and the canonical name. The
> choice of canonical name is currently hard-coded: the canonical name is
> the same as the normal name on Unix, and it is the lowercase name on Win32.
>
> It this were configured correctly, the cache would do the right thing.
>
I think you misunderstood - the above "the first of a/foo a/Foo b/foo
b/Foo c/foo c/Foo" is what ocamldep _always_ does, including on the case
sensitive filesystems. To do that we'd either have to traverse the
include path manually (slow) or extend the cache API...
Aleksey
More information about the OMake-Devel
mailing list