Hi all, http://rt.cpan.org/Ticket/Display.html?id=20532
Steve is attempting to make an EU::MM-compatible distro with .xs files and .inc files. xs_files => {'Foo.xs' => 'Foo.xs'} needs to be: xs_files => {'./Foo.xs' => './Foo.xs'} I've found that _infer_xs_spec() is the culprit responsible for attempting to create "/Foo.c". (because File::Spec->catfile("", "foo") gives "/foo".) Now, I can either put something like this in _infer_xs_spec() ... my( $v, $d, $f ) = File::Spec->splitpath( $file ); $d = '.' unless(length($d)); # don't create file in / ... or we can say that xs_files keys and values must contain a slash (in this case, must start with a "./") and find an appropriate place to die with a nice message about that. The related confusion of deleting the xs_files value in this case: xs_files => {'Foo.xs' => './Foo.xs'} is because of the 'eq' check causing './Foo.xs' to be added to cleanup. This should probably be an is_same_file sort of check instead, no? --Eric -- "Politics is not a bad profession. If you succeed there are many rewards, if you disgrace yourself you can always write a book." --Ronald Reagan --------------------------------------------------- http://scratchcomputing.com ---------------------------------------------------