----- Original Message ----- 
From: "Chris Marshall" <[EMAIL PROTECTED]>
To: "perldl list" <[email protected]>
Sent: Thursday, October 23, 2008 12:12 PM
Subject: [Perldl] please test PDL-cvs for round 02


> All-
>
> Fixes for the dumper.t and inlinepdlpp.t
> problems with PDL-2.4.3_01 have
> been pushed into the cvs tree (along with
> some other tweaks).
>
> Please test build on your system and let
> me know if it works for you.  It builds
> fine on cygwin but I would like a check
> from another OS (or two) before
> uploading PDL-2.4.3_02 to PAUSE/CPAN.
>
> I'll go ahead and upload in about 9hrs
> or when I get 2 more OS check reports,
> whichever comes first.
>

There's something wrong with Doug's MY::test rewrite in the latest CVS (for 
me, anyway).

We should be able to run:
perl Makefile.PL
make test

But if I try running 'dmake test' or 'nmake test' immediately after running 
'perl Makefile.PL', it just goes straight into running the tests - the 
nmake/dmake stage (that creates and populates the blib) is left out !! And 
then, if I run something like 'perl t/inlinepdlpp.t', I get an error that 
blib could not be found (even though there's no reason that the command I 
ran needs to find blib).

Does anybody else get the same ?

I won't have a chance to take a decent look at this until Monday.
Chris, if you want to get a 02 out before that, then go for it - I don't 
think the problem I'm seeing will have any bearing on CPAN-testers results. 
We can sort out the details later. But it looks like I'll be rewriting 
Doug's change as:

sub MY::test {
  if($^O =~ /MSWin32/i) {
    package MY; # so that "SUPER" works right
    my $inherited = shift->SUPER::test(@_);
    my @lines = split "\n", $inherited;
    my @new = ();
    my $pass = 1;
    foreach (@lines) {
    if ($pass) {
     push @new, $_;
     $pass = 0 if /^test\b/;
    } else {
     if (/^\s*$/) {
      push @new, '';
      $pass = 1;
     }
    }
   }
   return join("\n", @new,"\n");
  }
  else {
# This subroutine re-writes the 'test' section
# to get rid of 'pure_all' as a dependency for
# certain test targets.  This causes 'make test' to
# re-run the entire 'make' target instead of just testing
# PDL.
#
# It also gets rid of the 'subdirs-test' section, which
# attempts to run tests in individual sub-directories.
# This is also causing a significant rebuild after the main
# test is done.
# D. Hunt 10/20/2008
# But Win32 really needs the original.
# Sisyphus 23/10/08
  package MY; # so that "SUPER" works right
  my $inherited = shift->SUPER::test(@_);
  $inherited =~ s/pure_all//g;
  $inherited =~ s/subdirs\-test$//mg;
  return $inherited;
  }
}

Either that, or settle for PDL being the only module on CPAN that requires 
we run 'dmake'/'nmake' before 'dmake test'/'nmake test'.

Cheers,
Rob


_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to