bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: vms:test variables


From: h.becker
Subject: Re: vms:test variables
Date: Sat, 12 Apr 2014 13:50:51 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130519 Icedove/17.0.5

On 04/12/2014 01:31 AM, John E. Malmberg wrote:
> On 4/11/2014 5:18 PM, h.becker wrote:
>> I hacked a fix for the automatic variables. To pass the test, the vms
>> version of the test script needs a fix as well:
>>
>> --- ../origtests/automatic      Fri Apr 11 18:11:32 2014
>> +++ tests/scripts/variables/automatic   Fri Apr 11 18:10:19 2014
>> @@ -73,9 +73,10 @@
>>     # Fix vms directory syntax
>>     $answer =~ s#\]/#\]#g;
>>     # vms returns current directory as []
>> -  $answer =~ s#\s\.,# \[\],#;
>> +  $answer =~ s#\s\.,# \[\],#g;
>>     # vms returns current directory as [] with a comma separator
>>     $answer =~ s#\s\.\s# \[\],#g;
>> +  $answer =~ s#\]\s\[#\],\[#g;
>>     # vms has comma separator instead of space.
>>     $answer =~ s/baz\.z\s\[/baz\.z,\[/g;
>>     $answer =~ s/baz\.z\sb/baz\.z,b/g;
> 
> I see that.
> 
> The test is still failing for me:
> 
> Expected output fragment:
> 
> $^ = baz.z,[-.tests]bar.y, $(^D) = [],[-.tests], $(^F) = baz.z,bar.y
> $+ = baz.z,[-.tests]bar.y,baz.z, $(+D) = [],[-.tests],[], $(+F) =
> baz.z,bar.y,baz.z
> 
> Actual output:
> 
> ! $^ = baz.z,[-.tests]bar.y, $(^D) = baz.z,[-.tests], $(^F) = bar.y
> ! $+ = baz.z,[-.tests]bar.y,baz.z, $(+D) = baz.z,[-.tests], $(+F) =
> bar.y,baz.z
> 
> The first line is missing bar.z.
> 
> In the second line expected ",[]" is missing, and so is the second baz.z.

As mentioned, you need a fix: for func_notdir_suffix() and
func_basename_dir() (in function.c). As I said, I hacked one. Both
functions expect a whitespace separated argument but on/for VMS they get
a comma separated one: the parsing fails.

With the fix:

$ mcr USR_ODS5:[BECKER_H.MAKE.MAKE]MAKE.EXE -f
[.tests.work.variables]automatic.mk;1
touch baz.z
touch [-.tests]bar.y
$@ = [-.tests]foo.x, $(@D) = [-.tests], $(@F) = foo.x
$* = [-.tests]foo, $(*D) = [-.tests], $(*F) = foo
$< = baz.z, $(<D) = [], $(<F) = baz.z
$^ = baz.z,[-.tests]bar.y, $(^D) = [],[-.tests], $(^F) = baz.z,bar.y
$+ = baz.z,[-.tests]bar.y,baz.z, $(+D) = [],[-.tests],[], $(+F) =
baz.z,bar.y,baz.z
$? = baz.z,[-.tests]bar.y, $(?D) = [],[-.tests], $(?F) = baz.z,bar.y
touch [-.tests]foo.x
$





reply via email to

[Prev in Thread] Current Thread [Next in Thread]