# New Ticket Created by  Andy Dougherty 
# Please include the string:  [perl #45201]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=45201 >


I stumbled upon this one while trying 'Configure.pl --test'.  My default
system perl is unsuitable for building parrot.  I just specify the full
path to the perl I actually want to use, and everything just works.

Well, almost.  lib/Parrot/Configure/Options/Test.pm calls a plain
'prove', and I don't have the correct perl's 'prove' command in my $PATH.

This simple patch ensures that the 'prove' command called is the one
associated with this version of perl.

diff -r -u parrot-current/lib/Parrot/Configure/Options/Test.pm 
parrot-andy/lib/Parrot/Configure/Options/Test.pm
--- parrot-current/lib/Parrot/Configure/Options/Test.pm Mon Sep  3 15:49:16 2007
+++ parrot-andy/lib/Parrot/Configure/Options/Test.pm    Wed Sep  5 12:11:18 2007
@@ -3,6 +3,8 @@
 package Parrot::Configure::Options::Test;
 use strict;
 use warnings;
+use Config;      # to find the correct $Config{scriptdir}/prove
+use File::Spec;  # to construct the path to the correct 'prove'
 
 our @preconfiguration_tests = qw(
     t/configure/*.t
@@ -38,7 +40,9 @@
     my $self = shift;
     if ($self->{run_configure_tests}) {
         print "As you requested, we'll start with some tests of the 
configuration tools.\n\n";
-        system(qq{prove @preconfiguration_tests})
+        # Find the 'prove' command associated with *this* version of perl.
+        my $prove = File::Spec->catfile($Config{'scriptdir'} , 'prove');
+        system(qq{$prove @preconfiguration_tests})
             and die "Pre-configuration tests did not complete successfully; 
Configure.pl will not continue.";
         print <<"TEST";
 
@@ -55,7 +59,8 @@
     if ($self->{run_build_tests}) {
         print "\n\n";
         print "As you requested, I will now run some tests of the build 
tools.\n\n";
-        system(qq{prove @postconfiguration_tests})
+        my $prove = File::Spec->catfile($Config{'scriptdir'} , 'prove');
+        system(qq{$prove @postconfiguration_tests})
             and die "Post-configuration and build tools tests did not complete 
successfully; running 'make' might be dubious.";
     }
     return 1;

-- 
    Andy Dougherty              [EMAIL PROTECTED]

Reply via email to