Hi David,

If you want a patch that will make the tests succeed, I bet the attached would do it.

Is it the right solution? Beats me. I still haven't gotten my hands on a system where I can replicate the problem.

 -Ken

=== lib/Module/Build/Base.pm
==================================================================
--- lib/Module/Build/Base.pm    (revision 1998)
+++ lib/Module/Build/Base.pm    (local)
@@ -3971,11 +3971,11 @@
   my ($self, @cmd) = @_;
   $self->log_info("@cmd\n");
 
-#  my %seen;
-#  my $sep = ref($self) ? $self->config('path_sep') : $Config{path_sep};
-#  local $ENV{PERL5LIB} = join $sep, grep {
-#    ! $seen{$_}++ and -d $_
-#  } split($sep, $ENV{PERL5LIB});
+  my %seen;
+  my $sep = ref($self) ? $self->config('path_sep') : $Config{path_sep};
+  local $ENV{PERL5LIB} = join $sep, grep {
+    ! $seen{$_}++ and -d $_
+  } split($sep, $ENV{PERL5LIB});
 
 
   my $status = system(@cmd);
=== t/ext.t
==================================================================
--- t/ext.t     (revision 1998)
+++ t/ext.t     (local)
@@ -95,9 +95,12 @@
 
 {
   # Make sure run_perl_script() propagates @INC
-  local @INC = ('whosiewhatzit', @INC);
+  my $dir = 'whosiewhatzit';
+  mkdir $dir, 0777;
+  local @INC = ($dir, @INC);
   my $output = stdout_of( sub { Module::Build->run_perl_script('', ['-le', 
'print for @INC']) } );
-  like $output, qr{^whosiewhatzit}m;
+  like $output, qr{^$dir}m;
+  rmdir $dir;
 }
 
 ##################################################################



On Sep 11, 2006, at 12:46 PM, David Bogen wrote:

All:

I've been working through this problem and after digging through the
mailing list archives and various bug reports, I'm seemingly no closer
to a resolution than when I started.

The problem is that I seemingly cannot get Module::Build to...wait for
it...build.  The platform:  RedHat Enterprise Linux 4 (Update 4).

I've tried this patch:

+
+  my %seen;
+  local $ENV{PERL5LIB} = join $self->config->{path_sep}, grep {
+    ! $seen{$_}++ and -d $_
+  } split($self->config->{path_sep}, $ENV{PERL5LIB});
+
+

This patch:

  my %seen;
  local $ENV{PERL5LIB} =3D join(':', grep({
    ! $seen{$_}++ and -d $_
  } split(/:/, $ENV{PERL5LIB})));


Building from subversion:

  svn export https://svn.perl.org/modules/Module-Build/trunk mb
  perl Build.PL
  ./Build
  ./Build test

The primary problem with the unpatched source is the seemingly
un-killable "Argument Too Long" error. Applying the first patch gets me
the hash undefined errors.  The second patch results the t/ext errors
similar to those already seen on this list this is posting:

  http://www.nntp.perl.org/group/perl.module.build/287

Building from subversion puts me right back into the loving embrace of
the "Argument too long" error.

Have I missed something?  Is there a definitive method for getting
Module::Build to, well, build on RedHat's Enterprise Linux?

David

--
David Bogen   :: (608) 263-0168
Unix SysAdmin :: IceCube Project
[EMAIL PROTECTED]

Reply via email to