Michael G Schwern wrote:

>On Fri, Dec 17, 2004 at 09:50:07AM +0000, Steve Hay wrote:
>  
>
>>>But nmake does this:
>>>cd foo
>>>command
>>>cd ..
>>>      
>>>
>>Did you mean "nmake on Win95 does this..."?
>>    
>>
>
>I think so.  I try not to think about it too much.
>  
>
I try not to think about 95 too much either ;)  I don't have any 95 
machines that I can test on, though, so that means the MM_Win95.pm 
changes are still untested unless someone else comes to the rescue.

>
>  
>
>>test :: $(TEST_TYPE)
>>    $(NOECHO) $(ABSPERLRUN)  -e "if( -f '$(FIRST_MAKEFILE)' ) { \
>>    system '$(MAKE) test $(MACROSTART)$(PASTHRU)$(MACROEND)' \
>>}"
>>
>>test_dynamic :: pure_all
>>    $(FULLPERLRUN) "-MExtUtils::Command::MM" "-e" 
>>"test_harness($(TEST_VERBOSE), '$(INST_LIB)', '$(INST_ARCHLIB)')" 
>>$(TEST_FILES)
>>
>>Running "nmake test_dynamic" in the svn version's t/Big-Dummy works 
>>fine: the Big-Dummy tests are run once only.
>>
>>Any idea why the test target came out differently in this way?
>>    
>>
>
>Do an update, I think I just fixed that.
>
Still didn't work (revision 2168).

I think it's the change to MM_Unix::test() that's responsible.  6.25 has 
this:

    if ($Is_Win95) {
        push(@m, map(qq{\t\$(NOECHO) \$(PERLRUN) -e "exit unless -f 
shift; chdir '$_'; system q[\$(MAKE) test \$(PASTHRU)]" 
\$(FIRST_MAKEFILE)\n}, @{$self->{DIR}}));
    }
    else {
        push(@m, map("\t\$(NOECHO) cd $_ && \$(TEST_F) 
\$(FIRST_MAKEFILE) && \$(MAKE) test \$(PASTHRU)\n", @{$self->{DIR}}));
    }

while rev2168 has this:

    foreach my $dir (@{ $self->{DIR} }) {
        my $test = $self->oneliner(sprintf <<'CODE');
if( -f '$(FIRST_MAKEFILE)' ) {
    system '$(MAKE) test $(MACROSTART)$(PASTHRU)$(MACROEND)'
}
CODE

        push(@m, "\t\$(NOECHO) $test\n");
    }

which would seem to account for the difference in the Makefiles in my 
previous mail.

Does that new CODE section need a chdir before the "-f" test and 
"system" command, rather like what you just did elsewhere in change 2168?

- Steve


------------------------------------------------
Radan Computational Ltd.

We would like to take this opportunity to wish all our customers, suppliers and 
colleagues seasons greetings.  We will not be sending corporate greetings 
cards this year.  Instead, we will be making a donation to charity.

The information contained in this message and any files transmitted with it are 
confidential and intended for the addressee(s) only.  If you have received this 
message in error or there are any problems, please notify the sender 
immediately.  The unauthorized use, disclosure, copying or alteration of this 
message is strictly forbidden.  Note that any views or opinions presented in 
this email are solely those of the author and do not necessarily represent 
those of Radan Computational Ltd.  The recipient(s) of this message should 
check it and any attached files for viruses: Radan Computational will accept no 
liability for any damage caused by any virus transmitted by this email.

Reply via email to