I've submitted this via http://rt.cpan.org against bug 327:

http://rt.cpan.org/NoAuth/Bug.html?id=327

and here are the patch files I submitted there. Sorry if there's bad
formatting; it's my first patch submission.

Note that the patch to the MM_Unix file is strictly a cleanup patch, now
that the complex behavior has been migrated to the MM_Win32 module.

Let me know what happens to this, if you would.

--Jeremy



*** ExtUtils/MM_Win32.pm.backup Sat Aug 31 01:40:56 2002

--- ExtUtils/MM_Win32.pm        Sat Aug 31 01:59:02 2002

***************

*** 79,84 ****

--- 79,117 ----

      }

  }     # end of command.com workarounds

  

+ sub subdir_x {

+   my $self = shift;

+   my $subdir = shift;

+   if (Win32::IsWin95()) {

+     # Win-9x has nasty problem in command.com that can't cope with

+     # &&. Also, Dmake and Nmake disagree about how to make a

+     # commandseries silent:

+     if ($NMAKE) {

+       return <<EOT;

+ 

+ subdirs ::

+       \@cd $subdir

+       \@\$(MAKE) all \$(PASTHRU)

+       \@cd ..

+ EOT

+     }

+     elsif ($DMAKE) {

+       return <<EOT;

+ 

+ subdirs ::

+ @[

+       cd $subdir

+       \$(MAKE) all \$(PASTHRU)

+       cd ..

+ ]

+ EOT

+     }

+   }

+   # if not windows 95, or not nmake/dmake, fall back to base

+   # implementation, which uses NOECHO and "&&" operator

+   return $self->ExtUtils::MM_Unix::subdir_x($subdir, @_);

+ }

+ 

  sub dlsyms {

      my($self,%attribs) = @_;

  

*** ExtUtils/MM_Unix.pm.backup  Sat Aug 31 01:31:06 2002

--- ExtUtils/MM_Unix.pm Sat Aug 31 01:55:42 2002

***************

*** 3315,3339 ****

  sub subdir_x {

      my($self, $subdir) = @_;

      my(@m);

!     if ($Is_Win32 && Win32::IsWin95()) {

!       # XXX: dmake-specific, like rest of Win95 port

!       return <<EOT;

! subdirs ::

! @[

!       cd $subdir

!       \$(MAKE) all \$(PASTHRU)

!       cd ..

! ]

! EOT

!     }

!     else {

!       return <<EOT;

  

  subdirs ::

        $self->{NOECHO}cd $subdir && \$(MAKE) all \$(PASTHRU)

  

  EOT

-     }

  }

  

  =item subdirs (o)

--- 3315,3326 ----

  sub subdir_x {

      my($self, $subdir) = @_;

      my(@m);

!     return <<EOT;

  

  subdirs ::

        $self->{NOECHO}cd $subdir && \$(MAKE) all \$(PASTHRU)

  

  EOT

  }

  

  =item subdirs (o)

Reply via email to