On Wed, Apr 03, 2002 at 01:33:05PM -0600, Craig A. Berry wrote:
> During the core build, the PERLRUN macro has relative paths, so you can't
> change the current directory without losing the ability to run Perl. This
> works around that by running the Makefile.PL before changing directories.
>
> --- lib/ExtUtils/MM_VMS.pm;-0 Sat Mar 30 10:34:51 2002
> +++ lib/ExtUtils/MM_VMS.pm Tue Apr 2 15:51:09 2002
> @@ -1577,8 +1577,8 @@
> q{
> disttest : distdir
> startdir = F$Environment("Default")
> + $(PERLRUN) [.$(DISTVNAME)]Makefile.PL
> Set Default [.$(DISTVNAME)]
> - $(PERLRUN) Makefile.PL
> $(MMS)$(MMSQUALIFIERS)
> $(MMS)$(MMSQUALIFIERS) test
> Set Default 'startdir'
> [end of patch]
This is working by accident (at least it is on Unix). The Descrip.MMS
you're generating is actually in the startdir, not in the distdir.
Since the distdir mirrors the startdir, you can get away with it. At
least, this is how it behaves on Unix.
I may have to convert $(PERL) into an absolute path.
> This gets us a bit further but the basic.t still fails because its own
> compile.t test (the one it creates on the fly) fails. I haven't tracked
> down why yet:
>
> $ perl [.t]compile.t
> 1..2
> not ok 1
> ok 2 - TEST_VERBOSE
>
> Directory depth issues have also not been addressed yet as far as I know.
I talked with Thomas about this. It's a real problem in MakeMaker.
MakeMaker builds deep paths. For example, MakeMaker itself:
[.ExtUtils-MakeMaker.blib.lib.auto.ExtUtils.MakeMaker].exists
[.ExtUtils-MakeMaker.blib.lib.ExtUtils.Command]MM.pm
6 levels deep just to build a simple module like MakeMaker (yes,
MakeMaker is simple). If you're root is something like
user:[schwern.src] you're at 8 levels. The limit.
So anything but the simplest modules won't make on ODS 2 volumes.
No idea what to do about it.
--
Michael G. Schwern <[EMAIL PROTECTED]> http://www.pobox.com/~schwern/
Perl Quality Assurance <[EMAIL PROTECTED]> Kwalitee Is Job One
There is nothing wrong. We have taken control of this sig file. We will
return it to you as soon as you are groovy.